2013年10月29日 星期二

不完美解決 ibt-1283/pvr/vod 的貼膏藥問題

.

什麼是「貼膏藥」問題

ibt 1283 系列機上盒在轉台時都會出現「電台基本資訊」的 OSD,由於時間長達五秒,因此顯得很礙眼。一整個「貼膏藥」的感覺。 ibt-1283/pvr 的「膏藥」完全不透明,1283vod 則
稍微透明。

也不是說不需要這項功能,但是應該由使用者自己決定要不要顯示才對。像 ALI 晶片的機上盒就可以由使用者設定一秒到十秒的顯示時間。


由比特公司來修改這個問題根本不必花十分鐘。 就是在轉台時不要顯示這個訊息,當使用者需要時,自己按「資訊」按鈕就好了。


























在官方修改韌體之前,有沒有什麼解決方案?

有!

「轉台後立刻再按一次其他適用的按鈕」
(第二個按鈕因為沒有作用,所以「膏藥」會提早消失)

「透過 irfake 自動轉成雙鍵」。

底下是利用 irfake 將單鍵自動轉成雙鍵的方法。



在 /usr/local/etc/rcS 中加入三行:

/sbin/insmod /usr/local/etc/irfake/venus_ir_new.ko
echo 1 > /sys/devices/platform/VenusIR/bypass
/usr/local/etc/irfake/irfake4 -b 100 -f /usr/local/etc/irfake/irfake.conf&


在 /usr/local/etc/irfake 中置入三個檔案:

irfake4
venus_ir_new.ko
irfake.conf

irfake4 有新舊版本的差異,我用的是 1.2.15 版。(linux 下輸入 irfake4 -v 可以顯示版本)

新舊版本的檔案大小也不同:











irfake.conf 的內容如下:


#
# ibt-1283pvr --> ibt-1283pvr (同 zp-600t,ibt-1283)
# 2013.10.27
#

"0","ef10ff00","ef10ff00",    MUTE
"0","f50aff00","f50aff00",    POWER
"0","bb44ff00","bb44ff00",    STOP
"0","ba45ff00","ba45ff00",    PLAY
"0","b946ff00","b946ff00",    PAUSE/STEP -> Pause
"0","bf40ff00","bf40ff00",    |<<
"0","be41ff00","be41ff00",    <<
"0","bd42ff00","bd42ff00",    >>
"0","bc43ff00","bc43ff00",    >>|
"0","b04fff00","b04fff00",    INFO -> DISPLAY
"0","b847ff00","b847ff00",    SLOW -> Slow forward
"0","b54aff00","b54aff00",    REC
"0","e916ff00","e916ff00",    RETURN
"0","f00fff00","f00fff00",    時光平移

"0","e718ff00","e718ff00",    UP
"0","e31cff00","e31cff00",    DOWN
"0","e619ff00","e619ff00",    LEFT
"0","e41bff00","e41bff00",    RIGHT
"0","e51aff00","e51aff00",    OK

"0","a857ff00","a857ff00",    RED
"0","a758ff00","a758ff00",    GREEN
"0","a659ff00","a659ff00",    YELLOW
"0","a55aff00","a55aff00",    BLUE

"0","ed12ff00","ed12ff00",    VOL+
"0","ea15ff00","ea15ff00",    VOL-

"0","ec13ff00","ec13ff00",    HOME
"0","f40bff00","f40bff00",    DTV/AV

#"0","eb14ff00","eb14ff00",    CH+
"1","eb14ff00","echo 'eb14ff00' > /sys/devices/platform/VenusIR/fakekey ; sleep 1 ; echo 'a659ff00' > /sys/devices/platform/VenusIR/fakekey",    CH+ delay YELLOW
#"0","e817ff00","e817ff00",    CH-
"1","e817ff00","echo 'e817ff00' > /sys/devices/platform/VenusIR/fakekey ; sleep 1 ; echo 'a659ff00' > /sys/devices/platform/VenusIR/fakekey",    CH- delay YELLOW

"0","fe01ff00","fe01ff00",    1
"0","fd02ff00","fd02ff00",    2
"0","fc03ff00","fc03ff00",    3
"0","fb04ff00","fb04ff00",    4
"0","fa05ff00","fa05ff00",    5
"0","f906ff00","f906ff00",    6
"0","f807ff00","f807ff00",    7
"0","f708ff00","f708ff00",    8
"0","f609ff00","f609ff00",    9
"0","ff00ff00","ff00ff00",    0

"0","f30cff00","f30cff00",    預錄設定
"0","f10eff00","f10eff00",    瀏覽

"0","a956ff00","a956ff00",    EPG
"0","b24dff00","b24dff00",    ZOOM-
"0","b14eff00","b14eff00",    ZOOM+

"0","ad52ff00","ad52ff00",    頻道表
"0","b44bff00","b44bff00",    1/ALL
"0","b34cff00","b34cff00",    A-B

"0","f20dff00","f20dff00",    錄影清單
"0","ac53ff00","ac53ff00",    解析度
"0","a45bff00","a45bff00",  左/右聲道

"0","aa55ff00","aa55ff00",    TTX
"0","ee11ff00","ee11ff00",    刪除
"0","ab54ff00","ab54ff00",  編輯



這是ibt-1283/ibt-1283pvr原本頻道切換的遙控碼:(與 ibt-1283vod 不一樣

"0","eb14ff00","eb14ff00",    CH+
"0","e817ff00","e817ff00",    CH


最早是將
CH+ 變成 CH+ 加 資訊鍵 雙組合鍵、
CH- 變成 CH- 加 資訊鍵 雙組合鍵,

這樣確實可以消除「大膏藥」,但是若機器接有 USB 硬碟或隨身碟,則在「大膏藥」消失之後還會出現「小膏藥」:






















為了消除「小膏藥」,我們可以將

CH+ 變成 CH+ 加 資訊鍵 加 資訊鍵  三組合鍵、
CH- 變成 CH- 加 資訊鍵 加 資訊鍵  三組合鍵

這樣確實可以在機器接有 USB 硬碟或隨身碟時,將「大膏藥」、「小膏藥」一起消除。


可是這樣會變成:
沒有接 USB 硬碟或隨身碟時,使用「雙組合鍵」;
有接 USB 硬碟或隨身碟時,使用「三組合鍵」。

這個明顯不實用。更何況有「來不及消除大膏藥」的現象,也就是「異台切換」時,因為時間較長,所以還是會看到「大膏藥」。但是同一家電視台內的「同台切換」則無此現象。

為了解決問題,就加入了「延遲一秒」的指令,再選用適當的鍵組成「雙組合鍵」就可以了,也就是將

CH+ 變成 CH+ 加 「延遲一秒」 加 黃色鍵 的組合鍵、
CH- 變成 CH- 加 「延遲一秒」 加 黃色鍵 的組合鍵

也就是

"1","eb14ff00","echo 'eb14ff00' > /sys/devices/platform/VenusIR/fakekey ; sleep 1 ; echo 'a659ff00' > /sys/devices/platform/VenusIR/fakekey",    CH+ delay YELLOW 

"1","e817ff00","echo 'e817ff00' > /sys/devices/platform/VenusIR/fakekey ; sleep 1 ; echo 'a659ff00' > /sys/devices/platform/VenusIR/fakekey",    CH- delay YELLOW




參考資料

IBT-1283vod 的 irfake.conf


 #
# ibt-1283vod --> ibt-1283vod
# 2013.10.27
#

"0","e31c7906","e31c7906",    MUTE
"0","e7187906","e7187906",    POWER
"0","fb047906","fb047906",    STOP
"0","be417906","be417906",    PLAY
"0","eb147906","eb147906",    PAUSE/STEP -> Pause
"0","fd027906","fd027906",    |<<
"0","b8477906","b8477906",    <<
"0","ba457906","ba457906",    >>
"0","fc037906","fc037906",    >>|
"0","a05f7906","a05f7906",    INFO -> DISPLAY
"0","e51a7906","e51a7906",    SLOW -> Slow forward
"0","f40b7906","f40b7906",    REC
"0","bc437906","bc437906",    RETURN
"0","cc337906","cc337906",    設定

"0","e9167906","e9167906",    UP
"0","af507906","af507906",    DOWN
"0","ab547906","ab547906",    LEFT
"0","ea157906","ea157906",    RIGHT
"0","ed127906","ed127906",    OK

"0","e41b7906","e41b7906",    RED
"0","c7387906","c7387906",    GREEN
"0","c6397906","c6397906",    YELLOW
"0","e21d7906","e21d7906",    BLUE

#"0","e8177906","e8177906",    VOL+
#"0","ec137906","ec137906",    VOL-

"1","fe017906","echo 'fe017906' > /sys/devices/platform/VenusIR/fakekey ; usleep 1250000 ; echo 'ee117906' > /sys/devices/platform/VenusIR/fakekey",    CH+ delay 字幕

"1","f00f7906","echo 'f00f7906' > /sys/devices/platform/VenusIR/fakekey ; usleep 1250000 ; echo 'ee117906' > /sys/devices/platform/VenusIR/fakekey",    CH- delay 字幕

"0","ff007906","ff007906",    HOME
"0","f30c7906","f30c7906",    DTV

"0","fe017906","fe017906",    CH+
"0","f00f7906","f00f7906",    CH-

"0","b34c7906","b34c7906",    1
"0","f10e7906","f10e7906",    2
"0","f20d7906","f20d7906",    3
"0","8c737906","8c737906",    4
"0","f50a7906","f50a7906",    5
"0","f6097906","f6097906",    6
"0","bb447906","bb447906",    7
"0","f9067906","f9067906",    8
"0","fa057906","fa057906",    9
"0","f8077906","f8077906",    0

"0","e01f7906","e01f7906",    GOTO
"0","e11e7906","e11e7906",    頻道往返

"0","aa557906","aa557906",    長寬比
"0","ef107906","ef107906",    ZOOM-
"0","e6197906","e6197906",    ZOOM+

"0","b14e7906","b14e7906",    喜愛頻道
"0","a55a7906","a55a7906",    EPG
"0","ee117906","ee117906",    字幕

"0","bd427906","bd427906",    聲音多重
"0","6f907906","6f907906",  L/R


感想:

為了不想看到「貼膏藥」,

請比特公司修改韌體是最好的完美解決方案。

「轉台後立刻再按黃色按鈕」以及「透過 irfake 自動轉成雙鍵」都是無奈的不完美解決方案。

這種無奈凸顯 Open Source 的重要性。

不管是機上盒、平板或手機,沒有完全 Open Source 的,我是不會再花錢買了。








.

2 則留言:

  1. 沒有完全Open Source就不會再花錢買的話,怕你日後買不到任何機上盒、平板或手機 :(

    回覆刪除
    回覆
    1. 手機不是有 firefox OS 手機?
      平板不是有 firefox OS 平板?
      機上盒不是有 raspberry pi + USB dvb-t ...或其他?

      刪除