<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    stone2083

    RaspCTL V0.1.0 Released

    轉自:https://code.google.com/p/stonelab/wiki/RaspCTL
    COPY過來格式比較亂,將就地看吧。原文直接看googlecode wiki吧 :)

    什么是RaspCTL
    RaspCTL是Raspberry Pi和Control字母的組合,表示樹莓派控制端。 RaspCTL是一款通過手機終端(泛義上包括手機,平板,電腦等設備)控制樹莓派的軟件。
    目前,通過Raspberry&RaspCTL組合,打造成家庭多媒體播放機頂盒,在此場景中,RaspCTL非常類似XBMC平臺。未來,會不斷擴展RaspCTL功能,成為控制家庭物聯網的設備中心,比如控制攝像頭,空調開關等。此乃后話,按下不表。


    為什么選擇Raspberry Pi&RaspCTL
    為什么選擇Raspberry Pi

    我們先來看看Raspberry Pi的相關參數:

    CPU 700 MHz, ARM1176JZF-S
    GPU(顯卡) Broadcom VideoCore? IV,OpenGL ES 2.0, 1080p30 h.264/MPEG-4 AVC high-profile decoder
    MEM(內存) 512M
    分辨率 1080P
    輸出接口 1*SD口 2*USB口 1*音頻口 1*HDMI口 1*網卡
    尺寸 85.6 x 53.98 x 17mm (一張信用卡大小)
    價格 $35


    好吧,一起來總結下Raspberry Pi的優勢吧

    • 小巧:只有一張信用卡大小
    • GPU強悍: 硬解1080P,30幀/S,通俗地將,差不多是iphone4S手機的2倍性能
    • 輸出接口豐富: 包括2*USB,1*HDMI
    • 性價比高:$35

      從這些特性看,Raspberry非常合適充當高清視頻播放機頂盒,來替代目前的華數機頂盒(華數官方壟斷,費用高,質量差)。 家庭中,只要購置了Raspberry Pi和寬帶,高清電影電視,免費看。 :)

    為什么選擇RaspCTL
    只有一個原因:Raspberry Pi CPU很弱:700MHZ。 同樣,我們來看一組數據:

    • Raspbian Terminal下 CPU LOAD在0.2左右
    • Raspbian XWindows下, CPU占用率差不多在70%以上
    • XBian下,CPU占用率在95%以上
      如果,Raspberry Pi CPU能強悍那么一點點,那么XBian一定是首選,我也不會重新創造RaspCTL這個輪子了。只是目前,XBMC在Raspberry Pi(XBian)上的性能太糟糕了。 從數據看,只有在Raspbian Terminal下的性能,才能符合用戶的期望,所以作者編寫了RaspCTL這個控制端。通過手機終端的界面,來操作Raspbian Terminal,實現多媒體播放的功能。

    RaspCTL(V0.1.0)功能特性

    1. 支持視屏,音頻播放
      • 支持播放,暫停,停止,快進,快退,播放列表,上一首,下一首等
    2. 支持本地文件查看
      • 查看多媒體文件
    3. 配置系統信息
      • 配置多媒體文件根路徑等
    4. 視頻網站真實URL分析
      • 支持包括優酷,土豆,迅雷,百度等82個網站視頻URL分析
    5. 制定Plugins規范
      • 可非常方便開發RaspCTL Pugin

    使用者文檔

    如何安裝RaspCTL

    1. 下載RaspCTL
      1. 下載,解壓到指定目錄
      2. 或者直接使用svn地址: svn co https://stonelab.googlecode.com/svn/tags/raspctl-0.1.0 RaspCTL
    2. 安裝RaspCTL
      1. chmox +x bin/install.sh; bin/install.sh
      2. 會自動安裝RaspCTL依賴的第三方庫,主要是python-webpy python-jinja2 python-pexpect依賴

    如何使用RaspCTL

    1. 啟動RaspCTL服務
    2. 關閉RaspCTL服務
      • bin/shutdown.sh

    常見問題

    • Q:如何自啟動RaspCTL服務
      • 將 bin/start.sh 配置到樹莓派的/etc/rc.local exit之前。 同理,你在rc.local中可以啟動其他任何服務;
    • Q:如何使用80端口
      • debian系統禁用了小于1024的端口,所以RaspCTL只有使用8000端口。可以通過iptable將80端口請求轉發到8000端口: iptables -t nat -A PREROUTING -p tcp --dport 81 -j REDIRECT --to-ports 8080

    開發者文檔

    類庫API

    Omxplayer

    play 播放,可以指定播放列表中任一一個資源
    pause 暫停播放
    resume 恢復播放
    stop 停止播放
    lseek 快退, 快退30秒, 參數為True的話,快退10分鐘
    rseek 快進, 快進30秒,參數為True的話,快進10分鐘
    prev 播放上一首
    next 播放下一首
    set_playlist 設置播放列表
    add_playitem 添加多媒體資源到播放列表中, 參數為 ('url', 'name') 資源地址, 資源顯示名
    del_playitem 清空播放列表
    sort_playitem 播放列表排序
    set_dev 設置輸出設備, hdmi接口 或者 本地音頻接口
    set_loop 設置播放模式:順序,循環
    get_info 獲取播放器信息,如播放狀態等

    LocalFile?

    get_mediapath 獲得多媒體文件根目錄路徑
    list 獲取一個目錄下的所有資源
    list_all 遞歸獲取一個目錄下的所有資源

    Config

    load 獲取raspctl.cnf中的配置信息
    save 更新raspctl.cnf中的配置信息

    MediaUrl?

    get_urls 獲取網站url對應的真實視屏url地址信息, fmt=high 獲取高清視屏地址

    Ajax規范

    使用Ajax的目的:為了RaspCTL提供的服務可以同時被WAP, Android APP, IOS APP使用,RaspCTL服務均以Ajax形式提供。希望Plugins開發者也遵照這個規約,但不強制。
    類庫中,只要被標志@classmethod的方法,會直接暴露成Ajax服務,如:

    class Foo:
       
    @classmethod
       
    def hello(cls, arg1, arg2):
           
    return {msg: 'Hello Ajax[%s %s]' % (arg1, arg2)}


    Ajax服務地址為:http://xxx.xxx.xxx.xxx:8000/api?data={"name":"Foo.hello", "args":["stone2083", "connie2083"]} 服務信息為:

    {
      status
    : "Success",
      message
    : "Success",
      api
    : {
        args
    : [ ],
        name
    : "Foo.hello"
     
    },
      result
    : {
        msg
    : "Hello Ajax[stone2083 connie2083]"
     
    }
    }

    Plugins規范

    youku --> 插件名字
        __init__
    .py --> 插件程序
        index
    .html --> 插件模板 【可選擇】

    init.py 內容為:

    from rasplib import Plugin
    urls
    = (
       
    '/', 'Index',
    )

    # 必須創建plugin實例,參數分別為插件名,作者名,版本號, 支持功能的urls
    #其中,plugin中包含RaspCTL類庫的所有方法,可直接調用
    plugin
    = Plugin('youku','stone2083', '0.1', urls)

    #web.py寫法,插件規范并不引入新的學習成本。
    class Index:
       
    def GET(self):
           
    return 'youku-NotSupported.'  #可以直接輸出
           
    #return plugin.render.index()  #可以渲染某個模板信息

    寫在最后

    • RaspCTL作者聯系信息:stone2083#yahoo.cn 程序的任何問題可直接聯系這個郵箱
    • 招募UED設計前端界面 0.1.0前端非常糟糕,急待重構
    • 招募Plugin開發者,豐富RaspCTL
    • 期待小白鼠適用RaspCTL

    posted on 2013-01-16 16:23 stone2083 閱讀(1847) 評論(0)  編輯  收藏 所屬分類: linuxpython

    主站蜘蛛池模板: 亚洲一区二区三区精品视频| 一本久久A久久免费精品不卡| 久久久久国产精品免费看| 亚洲无线码在线一区观看| 一区二区免费电影| 亚洲精品色婷婷在线影院| 农村寡妇一级毛片免费看视频| 色www永久免费网站| 亚洲深深色噜噜狠狠爱网站| 9久久免费国产精品特黄| 丁香五月亚洲综合深深爱| 中文字幕无码免费久久| 亚洲网址在线观看| 国产99视频精品免费观看7| 国产成人亚洲精品| 国产在线观看免费完整版中文版 | 亚洲视频在线免费| 在线精品免费视频| 久久久久亚洲精品天堂| 中国性猛交xxxxx免费看| 亚洲国产成人精品女人久久久 | 亚洲中文字幕人成乱码 | 国产亚洲精品精品国产亚洲综合| 亚洲人成电影网站色www| 永久免费视频网站在线观看| 亚洲人成图片小说网站| 在线观看免费中文视频| 亚洲欧洲免费无码| 亚洲综合色在线观看亚洲| 亚洲AV成人片无码网站| 久久夜色精品国产亚洲av| 一级毛片免费观看| 亚洲AV香蕉一区区二区三区| 日韩亚洲变态另类中文| 成人免费在线看片| 亚洲天堂福利视频| 国产成人aaa在线视频免费观看| 在线观看人成视频免费无遮挡| 亚洲人成电影网站| 成年女人免费碰碰视频| 亚洲乱码在线观看|