Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

Linux 系統下視頻轉換工具 mencoder 與 ffmpeg 使用指南

編輯:Linux 教學

Linux 下的視頻轉換利器:mencoder

在 Linux 環境中,MPlayer 套件自帶的 mencoder 是一款功能極其強大的視頻音頻轉碼工具。它猶如一台全手動的專業相機,提供了海量可調參數,雖然學習曲線較陡峭,但掌握核心用法後即可應對絕大多數場景。本文以將 AVI 文件轉換為適合智能手機/PDA 播放的 MPEG-4 格式、並內嵌字幕為例,詳細講解常用參數含義。

實戰場景與參數假設

  • 源視頻:video.avi
  • 字幕文件:video.srt
  • 輸出文件:new.avi
  • 目標編碼:MPEG-4 (DivX 4/5)
  • 視頻碼率:200 kbps
  • 音頻碼率:64 kbps (MP3)
  • 目標分辨率:320×240
  • 字體文件:simsun.ttf (用於渲染中文字幕)

完整轉換命令

mencoder -oac mp3lame -lameopts vbr=3:br=64 -ovc lavc \
-lavcopts vcodec=mpeg4:mbd=1:vbitrate=200 \
-sub video.srt -font simsun.ttf -subcp cp936 -subfont-text-scale 4 \
-vf scale=320:240 -o new.avi video.avi

核心參數深度解析

音頻編碼 (-oac / -lameopts)

  • -oac mp3lame:使用 LAME 編碼器將音頻壓縮為 MP3 格式。
  • -lameopts vbr=3:br=64:vbr=3 選擇 ABR (平均碼率) 模式,br=64 設定目標碼率為 64 kbps。此組合在音質與體積間取得良好平衡。

視頻編碼 (-ovc / -lavcopts)

  • -ovc lavc:調用 libavcodec 庫進行編碼,支援最豐富的編碼格式。
  • vcodec=mpeg4:指定視頻編碼為 MPEG-4 (相容 DivX 4/5)。其他常用值還有 h264、h263、wmv1/2 等。
  • mbd=1:啟用簡單的宏塊決策算法,提升壓縮效率。
  • vbitrate=200:設定視頻目標碼率為 200 kbps (默認 800 kbps)。

字幕與畫面處理

  • -sub video.srt:載入外掛字幕文件。
  • -font simsun.ttf:指定渲染字幕的 TrueType 字體路徑,解決中文顯示方塊問題。
  • -subcp cp936:聲明字幕文件編碼為 GBK/CP936 (簡體中文);若為 UTF-8 字幕可省略或改為 utf8。
  • -subfont-text-scale 4:字幕字體縮放比例,數值越大字體越大。
  • -vf scale=320:240:強制縮放視頻幀至 320×240 分辨率。

提示: 若無需內嵌字幕,只需移除 -sub、-font、-subcp、-subfont-text-scale 四項即可。同理,RMVB 轉 MPEG-4 僅需替換輸入文件名。

另一選擇:ffmpeg

作為多媒體處理的瑞士軍刀,ffmpeg 以語法靈活、濾鏡豐富著稱。基本語法結構為:

ffmpeg [全局選項] -i 輸入文件 [輸出選項] 輸出文件

例如將上述需求用 ffmpeg 實現:

ffmpeg -i video.avi -vf "scale=320:240,subtitles=video.srt:force_style='FontName=SimSun,FontSize=18'" \
-c:v mpeg4 -b:v 200k -c:a libmp3lame -b:a 64k new.avi

ffmpeg 的濾鏡鏈 (-vf) 功能更強大,支援多字幕流、複雜濾鏡圖構建,適合進階自動化腳本。

Copyright © Windows教程網 All Rights Reserved