2012-11-06

Fix【新版】定時調整音量

這裡是定時調整音量新版,說明請看舊版,這次新加入在晚上自動將音量調小前儲存原本音量,過了設定的週期或重新開機時設回原本音量。


Fix Note:
  1. 取得音量錯誤,無法正確儲存音量。
  2. 比對時間錯誤。
Add Note:
  • 睡眠週期設定:
    _SleepOn=音量調整的開始時間 
    _SleepOff=音量調整的結束時間 
    _SleepVolume=調整音量為此設定值 

Default Useing:

當22點(晚上10點)先儲存你目前音量,而後從22點(晚上10點)至9點(早上9點)音量調整為85%,於10點後(含)恢復先前所儲存的音量設定。

P.S 設定1點到9點前面不用加0,也就是3點就寫成3不要寫成03,這樣無法比對時間。

#!/bin/bash
_Hour=$(date "+%-H")
_Sound=/var/tmp/sound
_SleepOn=22
_SleepOff=9
_SleepVolume=85%
_SAVE(){
 _Mono=$(amixer get Master | grep "Mono:" | awk '{print $4}' | tr -d '[]')  
 _Front=$(amixer get Master | grep "Front Left:" | awk '{print $5}' | tr -d '[]') 
 if [ "x${_Front}" != "x" ]
 then
  _Volume=${_Front}
 elif [ "x${_Mono}" != "x" ]
 then
  _Volume=${_Mono}
 else
  echo "Unknown Volume"
  exit
 fi
 echo "_Default=${_Volume}" >> ${_Sound}
 echo "Save Volume: ${_Volume}"
} 

echo "The time now: ${_Hour} "
if [[ -f ${_Sound} && ${_Hour} -le ${_SleepOff} || ${_Hour} -ge ${_SleepOn} ]]
then
 echo "Now is Sleep Time Change Volume: ${_SleepVolume}"
 amixer sset Master ${_SleepVolume} 1>/dev/null
elif [[ ${_Hour} -le ${_SleepOff} || ${_Hour} -ge ${_SleepOn}  ]]
then
 _SAVE
 echo "Now is Sleep Time Change Volume: ${_SleepVolume}"
 amixer sset Master ${_SleepVolume} 1>/dev/null
elif [[  -f ${_Sound}  &&  ${_Hour} -gt ${_SleepOff} && ${_Hour} -lt ${_SleepOn}  ]]
then
 . ${_Sound}
 echo "Now the end of the sleep time to restore the volume: ${_Default}"
 amixer sset Master ${_Default} 1>/dev/null
 rm -f  ${_Sound}
fi


2012-10-13

Firefox無法在Google Translate發出聲音?

不知何時開始我的Firefox無法在Google Translate發出聲音,找了很多文章修改設定都是沒用,使用Google Chrome就沒有這個問題,這是讓我苦惱的一件事。

今天心血來潮開Google Translate網頁的原始碼來看,發現了原來它是用Flash來播放聲音,那麼只要從Flash下手我想應該能解決。


Flash Player至使至終都裝著,那麼在從Flash相關套件下手,關閉Adblock Plus沒效那麼只剩一個影響的可能Flashblock

賓果,猜對了只要將Google Translate網頁加入Flashblock白名單,許久不見的聲音就出現了。


2012-09-28

【新版】轉換mp3標籤使撥放軟體能正常顯示

比起之前寫的舊版多了兩個功能,其一:加入了trap按Ctrl+C時完全關閉程式,其二:加上了convmv一併轉換mp3檔案名稱成為utf-8。
#!/bin/bash
function conv_stop {
echo  conv stop
}
if test ! -x /usr/bin/convmv ; then
 echo will install convmv
 exit
fi
if test ! -x /usr/bin/mid3iconv ; then
 echo will install python-mutagen
 exit
fi
trap "conv_stop;exit" SIGTERM SIGINT SIGHUP
IFS=""
find $1 -type f -iname \*.mp3 |
while read f ;do echo "處理中………"$f""
 mid3iconv -e big5 --remove-v1 "$f" &>/dev/null
 mid3iconv -e gbk --remove-v1 "$f" &>/dev/null
 convmv -r -f big5 -t utf8 --notest  "$f" &>/dev/null
 convmv -r -f gbk -t utf8 --notest "$f" &>/dev/null
done
conv_stop