使用mplayer播放一般影片檔時可切換多個字幕檔較簡單的方法

一般在觀看DVD時是可以即時切換多國語言的字幕,但是當播放的不是DVD,而是一般的AVI影片檔或其他格式的影片檔時,似乎gmplayer預設只認
得和影片檔同樣檔名的字幕檔。所以除了使用指令參數"-sub"同時載入多個字幕檔外,就是要透過選單中的載入字幕功能一個個的去選。可是一但使用
mplayer指令後,想達到跟gmplayer(可透過界面操作mplayer)同樣效果的話,需下達的指令多到難以記下,而且需視情況而加以改變。
gmplayer一樣透過選選點點就可將設定處理好,不過似乎還不夠簡便,一個個選還是有點麻煩。在這裡提供一個小秘方。

在偶然的情況下發現gmplayer預設會讀取和影片檔相同主檔名的srt字幕檔之外,如果在srt字幕檔的主檔名(副檔名srt不可以哦)前後加上非字母和數字的符號字(前提是系統願意接受,像* ?之類的就不被系統接受為檔名)也會被同時載入。


下做個簡單的示範。假設影片檔名稱為video.avi,那麼預設的srt字幕檔應該是video.srt。一般常見到的多國語言字幕檔的命名格式來看的
話,英文字幕的命名應該是video.eng.srt,而正體中文的字幕檔名應該是video.cht.srt。可惜gmplayer的只會載入
video.srt,而不會去載入video.eng.srt和video.cht.srt。可是如果把video.cht.srt改名為
video.srt,而video.eng.srt改名為video_.srt。結果會變成gmplayer在啟動播放video.avi的同時會載入
video.srt和video_.srt兩個字幕檔,只要在播放的過程中按鍵盤的小寫"j"就可以達到切換字幕的目的。

如果你想同時載入的字幕有很多個,可以在字幕主檔名的前後加上多個字符。範例如下...


video__.srt
_video.srt
video#.srt
video###.srt

都會被同時載入。
目前我在Linux環璄下可使用的符號如下


~`!@#$%^&()-_=+[]{};',.

不過為了保險起見,儘量使用底線符號"_",他是這些字符中最常在檔名中出現的字。所以安全性也較高。

只要透過改檔名就可以讓gmplayer同時載入多個字幕檔,應該夠簡單了吧!


Comix - Linux下看漫畫圖檔的程式

    Comix是一個專門為了看漫晝圖檔而設計的程式,跟一般的看圖軟體不一樣的是Comix多了一些對於用電腦看漫畫的使用者來說很貼心的小功能,讓看漫畫
圖檔時更方便,也有一般在看實體書的雙頁瀏覽功能。在使用時可以直接讀取以zip丶rar丶tar等多種壓縮格式的檔案,不必手動解壓,可以把每一集用一
個壓縮檔來管理。還有局部放大鏡功能,常在電腦上看漫書的人不可少的好工具。本文並沒有要做教學的部份,只是簡單的介紹給大家這個簡單易用的方便軟體。

安裝方法可以直接透過fedora的檔案套件庫安裝。非常容易安裝的。


# sudo yum install comix

 


mplayer按鍵功能說明

基本功能
<- - 方向鍵左鍵,倒轉10秒
-> - 方向鍵右鍵,快轉10秒
up - 方向鍵上鍵,快轉1分鐘
down - 方向鍵下鍵,倒轉1分鐘
pgup - 快轉10分鐘
pgdown - 倒轉10分鐘
> - 撥放清單中的下一個影片
< - 撥放清單中的上一個影片
p or sapce - 暫停,按任意鍵後可繼續播放
+/- - 將聲音的播放延遲/提早0.1秒(影音出現不同步時,可直接調整)
o - 切換顯示在螢幕上的影片撥放資訊
x/z - 延遲/加速字幕0.1秒(字幕和影片出現不同步時,可直接進行微調,當使用的是別人製作的字幕檔時特別好用。)
r/t - 將字幕的位置往上/下移
/ or * - 改變音量的大小
9 or 0 - 改變音量的大小
q or ESE - 停步播放並且關閉mplayer
f - 全螢幕撥放的切換

進階功能
[ or ] - 增加或減少10%目前的播放速度
{ or } - 減半或加倍目前的播放速度
( or ) - 調節左右聲道的輸出
. - 步進模式,就是一格一格的播放(當有特定的畫面想要捕捉時特別好用)
Backspace - 恢復為正常的播放速度
a - 切換字幕的位置(上/中/下)
j - 切換DVD字幕的語言
m - 靜音
T - 將播放視窗停留在最上層
d - 切換frame dropping的功能(如果電腦比較慢的話,啟動此功能可讓影片播放比較順,但畫面容易出現不流暢的情形)
F - 強制使用sub格式的字幕
v - 切換是否顯示字幕
I - 在畫面上顯示撥放的檔案名稱
A - 切換DVD撥放的角度(必須要影片有支援多角度)

以下指令須視播放採用的模式或硬體的支援而定,不一定都支援
1 or 2 - 調整對比度
3 or 4 - 調整亮度
5 or 6 - 調整暖色程度
7 or 8 - 調整色彩飽和度

用ffmpeg來切割mp3

常在聽mp3或其他格式音樂的朋友,有時會有特別喜歡的片段,例如副歌的部份會想拿來做手機的鈴聲。這時候就需要一些處理音效的軟體,例如之前提過的Audacity。其實還有更簡便的方法,只要系統中有安裝好的ffmpeg,一行指令就OK了,相當簡單。讓我們分成兩步驟來完成他吧!

第一步先用播放軟體將想要處理的音樂檔案聽一次,把想獨立出來部份的時間記下來,看是幾分幾秒到幾分幾秒。記好後,第一步也就完成了。

第二步就是下指令了。


# ffmpeg -i input.mp3 -ss hh:mm:ss -t hh:mm:ss -acodec copy output.mp3

參數說明:
-ss : 指定從那裡開始
-t : 指定到那裡結束
-acodec copy : 編碼格式和來源檔案相同(就是mp3)


這方法不只是MP3可以用,其他的許多格式也都適用,只是輸出檔案的副檔名就要跟著改一改了。

以下舉個例子,如果我想把aa.mp3中的1分12秒到1分42秒的地方切出來,然後存成bb.mp3,指令如下


# ffmpeg -i aa.mp3 -ss 00:01:12 -t 00:01:42 -acodec copy bb.mp3


就是這麼簡單,而且處理速度超級快。一下子完成了。


ffmpeg常用轉檔參數

把影像檔案轉換成avi格式

# ffmpeg -i filename.flv -f avi -vcodec libxvid -acodec libmp3lame -ar 22050 filename.avi
參數說明:
-i : 指輸入的檔案名稱,只要系統中有相對應的codec,就能使用多種格式。
-f : 強迫輸出的檔案格式。
-vcodec : 指定影像的編碼格式,這裡的libxvid指的是一般所說的xvid。
-acodec : 指定聲音的編碼格式,libmp3lame就是常用的mp3格式。
-ar : 指定聲音的取樣頻率,一般預設是44100。(因為我是用在手機上,所以設比較低。)


把影像檔案轉換成3gp格式


# ffmpeg -i filename.avi -s qcif -vcodec h263 -acodec libfaac -ac 1 -ar 8000 -r 25 -ab 32  filename.3gp

參數說明:
-i : 指輸入的檔案名稱。
-s : 畫面的解析度。qcif指的是176x144,直接輸入長和寬也可以,格式是 wxh。
-vcodec : 指定影像的編碼格式。
-acodec : 指定聲音的編碼格式,libfaac就是指aac格式。
-ac : 設定聲音的聲道數。1指是的單聲道。
-ar : 指定聲音的取樣頻率。
-r : 設定fps。
-ab : 指定聲音的bitrate。


把影像檔轉換成flv格式


# ffmpeg -i filename.mpg -ab 56 -ar 22050 -b 500 -r 15 filename.flv

參數說明:
-i : 指輸入的檔案名稱。
-ab : 指定聲音的bitrate。
-ar : 指定聲音的取樣頻率。
-b : 指定影像的bitrate
-r : 設定fps。



將聲音檔案轉成mp3


# ffmpeg -i filename.wav -acodec libmp3lame -ar 44100 -ab 128k filename.mp3
參數說明:
-i : 指輸入的檔案名稱。
-ar : 指定聲音的取樣頻率。
-ab : 指定聲音的bitrate。
-acodec : 指定聲音的編碼格式,libmp3lame就是常用的mp3格式。如果輸出的檔案有指定mp3的話,其實這裡省略沒關係。
如果覺得原本的聲音檔音量太小的話,可以再加一個 -vol 200 的參數,會讓輸出的mp3音量變成200%,就兩倍大聲。200是百分比,可以隨意調整的。


以上幾個是很常用的格式,整理下來做成筆記,也供各位需要轉檔的人參考。
話說回來,在windows下,每次要轉檔都得想看看要找什麼軟體,比較好用的大都是要花錢買的,不過如果會用ffmpeg的話,差不多快天下無敵了,ffmpeg提供的轉檔格式和設定多到難以捉摸。現在想到要轉檔時,反而想到的是找找看ffmpeg的參數怎麼下。

當然也是有人做了一些介面來操作ffmpeg,不過對於喜歡簡便又不用裝太多東西的我來說,寫成shell script就很好用了。

也可以輸入影片檔案,指定輸出為聲音檔案。ffmpeg會幫你把影片中的聲音分離出來。


讓Linux視窗環境下可以使用視窗鍵

讓Linux視窗環境下可以使用視窗鍵


   
視窗鍵又叫Windows key或是Meta
key,這個鍵在Linux下一般是用不到的,而在Windows系統中這個鍵主要是做快捷鍵的使用。用習慣的人會覺得很好用,可以快速的啟動預先設定的
程式。而在Kde的環境下,也支援自己設定程式選單中每個程式的快捷鍵,因此如果多了這個鍵來做搭配,可以設定的快捷鍵數量將更有彈性。
   
但似乎並不是在每種Linux環境下都會主動認得Windows key,以我使用的環境而言,FC8丶KDE桌面管理有時會認得Windows
key,有時卻沒有反應,使得原先設定好的快捷鍵都失去作用。不過可以經由以下的步驟讓X11認得Windows
key,首先找到/etc/X11/xorg.conf這個檔案。要更動這個檔案內容需要有root的權限,開啟xorg.conf檔案的內容,在其中尋
找一段內容如下

Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"
        Option      "XkbModel" "pc105"
        ...
        ...
EndSection

然後在EndSection的上面再加上一行
Option  "XkbOptions" "altwin:super_win"
完整內容如下
Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"
        Option      "XkbModel" "pc105"
        ...
        ...
        Option  "XkbOptions" "altwin:super_win"
EndSection

完成後記得存檔,在下次開機後,Windows key就能正常的被系統認得了。


xmms的選單在zh_TW.utf8環境下無法顯示

xmms的選單在zh_TW.utf8環境下無法顯示


   
xmms是個很方便且類似winamp的音樂檔案播放器,有著廣大的使用者群。雖然有些小小的瑕疵,但仍是個瑕不掩瑜的好東西。不過在
zh_TW.utf8的環境下選單會出現一些問題,無法正常顯示。在這裡提供一個最簡單的解法,在執行xmms時改用以下指令就可以讓選單正常的顯示出中
文了。


# env LC_ALL=zh_TW.big5 xmms




   
這是因為xmms對於zh_TW.utf8的中文設置有問題,導致無法正確顯示,但是zh_TW.big5的中文設置仍是正常的,所以可以改用這個指令讓
xmms使用big5的環境而不需要變動到系統的部份。


    如果想要用英文界面當然也沒有問題,英文界面則使用以下的指令。


# env LC_ALL=en_US xmms

Docker SIGILL: illegal instruction 問題除錯記錄

Docker SIGILL: illegal instruction 問題除錯記錄 最近在一台平常執行得好好的伺服器上,遇到一個讓人頭痛的 Docker 問題。 原本 Portainer 和其他容器都可以正常運行,但在系統突然當機後,所有容器在啟動時都出現以下錯誤訊息: d...