新聞中心
在日常生活中,我們常常會遇到需要將mp4視頻格式轉換為其他格式的情況,比如轉換成AVI或者WMV。在Linux系統(tǒng)中,有許多優(yōu)秀的轉碼工具,其中最出色的是FFmpeg工具。本文將詳細介紹如何使用FFmpeg工具來對mp4視頻進行轉碼,并提供一些實用的命令行參數(shù)。

成都創(chuàng)新互聯(lián)公司專注于梨林企業(yè)網(wǎng)站建設,成都響應式網(wǎng)站建設公司,商城網(wǎng)站制作。梨林網(wǎng)站建設公司,為梨林等地區(qū)提供建站服務。全流程按需定制,專業(yè)設計,全程項目跟蹤,成都創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務
安裝FFmpeg
您需要安裝FFmpeg工具。在大多數(shù)Linux系統(tǒng)中,F(xiàn)Fmpeg都可以通過包管理器輕松安裝。比如在Debian/Ubuntu系統(tǒng)中,您可以使用以下命令進行安裝:
“`
sudo apt-get install ffmpeg
“`
一旦您安裝了FFmpeg,您就可以根據(jù)您的需要開始使用它了。
基本的mp4轉碼
下面是一個簡單的mp4轉碼的示例。假設您有一個名為input.mp4的文件,您可以使用以下命令將其轉換為output.avi:
“`
ffmpeg -i input.mp4 -c:v mpeg4 -c:a copy output.avi
“`
在這個命令中,我們指定了輸入文件input.mp4和輸出文件output.avi。由于我們將mp4轉換為AVI,因此我們需要指定-c:v選項,它表示我們使用了哪個視頻編解碼器(mpeg4)。’-c:a copy’表示對音頻不進行編碼,直接拷貝。
還有一些其他的圖像編解碼器也可以使用。比如,如果您需要將mp4轉換為WMV格式,可以使用以下命令:
“`
ffmpeg -i input.mp4 -c:v wmv2 -c:a wmav2 output.wmv
“`
在這個命令中,我們使用了-WMV2編解碼器,也同時使用了音頻編碼-Wmav2。
改變分辨率和比特率
FFmpeg還支持改變視頻的分辨率和比特率。這對于那些需要將視頻轉換為更低分辨率或更小比特率以適應特定設備或網(wǎng)絡速度的人非常有用。
例如,以下命令將分辨率從1920×1080更改為1280×720:
“`
ffmpeg -i input.mp4 -s 1280×720 output.mp4
“`
這里,“-s”選項表示輸出視頻的分辨率。同樣,您可以使用以下命令更改比特率:
“`
ffmpeg -i input.mp4 -b:v 1M output.mp4
“`
‘b:v’選項指定輸出視頻的比特率。在這個例子中,我們將比特率設置為1Mb/s。
使用預設
FFmpeg還提供了一些預設,可以方便地為特定用途而定制編碼。您可以使用命令“xfreerdp -listencodings”查看可用的預設列表。例如,以下命令可以使用libswift編解碼器將mp4轉換為Apple設備的優(yōu)化格式:
“`
ffmpeg -i input.mp4 -c:v libswift -c:a copy -profile:v mn -level:v 3.1 -pix_fmt yuv420p -movflags +faststart output.mp4
“`
‘-profile:v mn’和’-level:v 3.1’設置了輸出視頻的profile和級別。’-pix_fmt yuv420p’表示使用YUV顏色空間?!?movflags +faststart’指定在編碼時將MP4文件的元數(shù)據(jù)放在前面,從而提升視頻在線流的播放效果。
本文介紹了使用FFmpeg工具來對mp4視頻進行轉碼的基本知識,在正式開始轉碼之前,務必要確保您已經安裝好了FFmpeg。同時,我們還介紹了一些實用的命令行參數(shù),比如改變分辨率和比特率,以及使用預設自定義編碼器等。希望這些技巧能幫助您在Linux系統(tǒng)中更好地進行視頻轉碼。
相關問題拓展閱讀:
- 如何為一個直播流配置轉碼功能
- 求視頻轉碼為MP4格式的具體參數(shù)
如何為一個直播流配置轉碼功能
對硬件和驅動的要求
Wowza Transcoder 只能在64位的Windows和Linux系磨空統(tǒng)上運行。此外也不支持Mac OS X
系統(tǒng)。
Wowza Transcoder在64位的Windows Server 上運行時, 系統(tǒng)必須先具備以下功能:
.NET Framework 3.5.1
Desktop Experience
硬件加速
Wowza Transcoder
支持Windows 和 LinuxIntel系統(tǒng)上的Quick Sync 和 NVIDIA NVENC 加速編碼以及Windows系統(tǒng)上的NVIDIA CUDA
加速編碼。 下面的文章介紹了關于這些技術的更多硬件要求:
Server
specifications for Intel Quick Sync acceleration
Intel
Quick Sync acceleration on Linux
Server
specifications for NVIDIA NVENC and NVIDIA CUDA acceleration
NVIDIA
NVENC accelerated encoding on Linux
注意:
你應該在嘗試硬件加速轉碼技術之前,先使用默認的MainConcept軟件轉碼技術。MainConcept軟件使用任何硬件加速功能。關于如何調試硬件編碼的更多信息,請閱讀如何驗證Wowza
Transcoder正在使用哪一種編碼技術。
在較新版本的Windows系統(tǒng)上,當Wowza Media Server作為系統(tǒng)服務瞎跡瞎運行時,由于Session 0
Isolation的安全原因,Intel Quick Sync 和 NVIDIA CUDA
硬件加速功能可能無法使用。要了解更多關于如何解決這個問題,請閱讀作為Windows系統(tǒng)服務運行時,Transcoder插件如何使用硬件加速功能。
當使用Windows遠程桌面時, Quick Sync 加速可能無法使用。
支持的音視頻編碼格式
為了將輸入流(被稱作”channels”)進行轉碼或轉換為多個不同輸出碼率的輸出流,Wowza
Transcoder 插件提供了很多功能,它支持以下音視品編碼格式:
輸入流:
視頻解碼: H.264, MPEG-2, MPEG-4 Part 2
音頻解碼: AAC, MP3, MPEG-1 Layer 1/2, Speex, G.711 (μ-law and
A-law)
輸出流:
視頻編碼: H.264, H.263v2
音頻編碼: AAC
注意:
對于mp3格式的音頻,系統(tǒng)支持以下采樣率: 48000, 44100, and 32023
Instream CEA-608 隱藏字幕(closed caption)可以通過Wowza Transcoder 插件采用Apple HLS
流媒體被傳送給基于iOS的終端設備。要了解更多信息,請閱讀州唯如何為HLS流媒體配置隱藏字幕(closed captioning)。
當使用硬件加速特性時,不支持H.263 視頻輸出。
關于Transcoder模版
Wowza Transcoder
使用一個模版系統(tǒng)來為輸出流創(chuàng)建轉碼后的輸出流,這個模版可以控制各種編碼參數(shù)。在/transcoder/templates目錄下有三個默認的模版文件,基本滿足了常規(guī)的轉碼要求:
transrate.xml, transcode.xml, 以及 audioonly.xml。
要了解更多關于個性化的的轉碼模版,請閱讀模版的配置.
Wowza
Transcoder 模版系統(tǒng)提供一個將多個輸出流組合在一個邏輯組的方法(被稱作 Stream Name
Groups)??梢杂胣grp:前綴來引用這個邏輯組以實現(xiàn)碼率自適應。
Server.license 的配置(Wowza Media Server Perpetual Edition)
Wowza Media
Server和增值插件的授權碼(license key) (包括Wowza Transcoder
插件)被存儲在/conf/Server.license。
%WMSCONFIG_HOME%\conf\Server.license
- Windows
/Library/WowzaMediaServer/conf/Server.license
- Mac OS X
/usr/local/WowzaMediaServer/conf/Server.license
-
Linux/Unix
試用、日租、月租模式的授權只需要一個license key,但是永久授權模式需要多個license
key。
使用增值插件時,用文本編輯器打開Server.license文件,在每一個新行輸入一個新的license
key。當服務被重啟后,新的license將會生效。
由于多個授權碼是疊加的,因此在添加一個新的授權碼時,去保留文件中原有的授權碼,然后在新的一行填寫新的授權碼。多個授權碼在文件中的前后順序是無關緊要的。
授權碼的前5位和后5位字符將顯示在控制臺的輸出中信息。
下面是一個Server.license
文件的示例,包括一個永久授權的Wowza Media Server 授權碼、兩個Wowza Transcoder 插件授權碼以及一個Wowza nDVR
插件授權碼:
SVRP3-LaGpC-ZrTD9-F4Y3S-a9bR2-h5t3C
TRN23-Ry6qe-4mT8J-yKj2W-4N5sH-2Td3a
TRN13-y9Gj2-kneqT-2zjHp-GadzB-N6fwa
DVRA3-k3r3R-nzxCB-ypjs5-Sk3y9-ahFdF
Application.xml的配置
建立一個直播應用,然后對Application.xml文件進行一些配置以使用Wowza
Transcoder插件,請按下面進行:
創(chuàng)建一個應用的目錄/applications/live.
創(chuàng)建一個配置目錄/conf/live
,將/conf/Application.xml 文件拷貝到這個新目錄下
用文本編輯器打開這個新拷貝的Application.xml 文件,然后做如下改動(有些設置可能已經配好了):
將Streams/StreamType 設置為:
Code:
live
將HTTPStreamers 設置為:
Code:
cupertinostreaming,oothstreaming,sanjosestreaming
將Streams/LiveStreamPacketizers 設置為:
Code:
cupertinostreamingpacketizer,oothstreamingpacketizer,sanjosestreamingpacketizer
將RTP/Authentication/PlayMethod 設置為:
Code:
none
將Transcoder/LiveStreamTranscoder 設置為:
Code:
transcoder
如果輸入流是H.264視頻編碼AAC 或 MP3
音頻編碼,你希望創(chuàng)建多個不同碼率的輸出流,以實現(xiàn)碼率自適應,請將Transcoder/Templates 設置為:
Code:
${SourceStreamName}.xml,transrate.xml
如果輸入流是MPEG-2
或 MPEG-4 Part 2 視頻編碼,你希望轉碼為H.264 和 AAC,以面向Wowza支持的例如Adobe
Flash播放器、Apple iOS 設備和Microsoft Silverlight的播放器技術, 請將Transcoder/Templates
設置為:
Code:
${SourceStreamName}.xml,transcode.xml
注意:
當使用transcode.xml時,同樣也支持多碼率自適應。
如果你希望轉碼的輸入流時SHOUTcast 或 Icecast MP3
媒體流,請在MediaCaster/Properties 中添加下面的屬性以配置Wowza Media Server
在每個包中發(fā)送一個MP3 幀:
Code:
shoutcastMP3GroupCount
Integer
(只針對基于RTSP/RTP的編碼器),用文本編輯器打開/conf/publish.password文件,添加一個用戶名和密碼來控制對RTSP/RTP
推流的訪問。 下面是一個例子,用戶名為myuser,密碼為mypassword)。
Code:
# Publish password file (format )
# username password
myuser mypassword
啟動 Wowza Media Server.
模版的配置
如果你使用系統(tǒng)自帶的transrate.xml 或 transcode.xml 模版文件,
轉碼后的輸出流將使用下面的stream names:
_360p: Main Profile stream
_160p: Baseline Profile stream
ngrp:_all: 面向Apple HTTP Live Streaming (cupertino)、
Microsoft Smooth Streaming以及 Adobe HTTP Dynamic Streaming
(sanjose)的碼率自適應
是輸入到Wowza Media
Server的輸入流。例如,一個輸入是myStream,
那么轉碼后的輸出流就是myStream_360p、myStream_160p以及
ngrp:myStream_all。
轉碼的工作機制很簡單。推送到live應用的所有輸入流將被采用在/conf//Application.xml文件Transcoder/Templates中設置的轉碼模版文件中的參數(shù)來轉碼。
你可以根據(jù)需要配置多個轉碼后的輸出流。
讓我們仔細看以下轉碼模版中的配置。下面是隨Wowza Media
Server安裝后自帶的transrate.xml模版文件:
Code:
true
source
mp4:${SourceStreamName}_source
PassThru
${SourceVideoBitrate}
PassThru
${SourceAudioBitrate}
false
p
mp4:${SourceStreamName}_720p
H.264
default
fit-height
,0,0,0 –>
,0,320,240 –>
main
求視頻轉碼為MP4格式的具體參數(shù)
高清晰的MP4格式,視頻編碼器選擇h264 ,分辨率要設置為640*480,比特率為768,幀速率為25,音頻參數(shù)選擇默認的不會影響清晰度的~
速度快,體積又小的MP4視頻轉換巖祥軟件,建議用更流行的 MP4/RM轉換專粗戚搏家
它是專注研發(fā)應用于移動設備最久的轉換軟件。
軟件的轉換速度明顯比其他軟件還要快些,對幾乎所有視頻格式的支持非常好。
并將視頻轉成手機官方MP4格式,還有高清MP4格式,視頻又小又清晰。
視頻可以畫面質量較清晰,使用簡單方便,功能超齊全,容易上手。
百度上搜索仔游 MP4/RM轉換專家
視頻分辨率:首先要考慮原來視頻分辨率的比例,也就是棚正屏幕比例,不能違背了這一點,否則,轉換出來的視頻,高寬比例失真,圖像失真。具體參數(shù),要看你用在什么媒體上,如鏈鎮(zhèn)悔果是在手機、MP4播放器上播放,寬度320就行了,高度根據(jù)你的屏幕換算。如果用在電腦上或者高清電視上,寬度要在720。
視頻比特率:512足夠了,低檔的手機、旅旁播放器384
幀速率:標準的25
音頻采樣率:標準的44100
音頻比特率:64,如果用在高保真音箱上192
你好,以下設置僅供參考:
1、編碼器:H264;
2、分辨率:握悄640*360/854*480;
3、比特率:768kbps;
4、幀速率:24;
6、知廳音頻編碼器:AAC;搭皮隱
7、采樣率:44100;
8、比特率:96或者128kbps。
祝轉碼順利。
自己試下各種參數(shù),碼率和分辨率都非常的小了···看不清楚了。
關于linuxmp4轉碼命令的介紹到此就結束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關注本站。
創(chuàng)新互聯(lián)網(wǎng)絡推廣網(wǎng)站建設,網(wǎng)站設計,網(wǎng)站建設公司,網(wǎng)站制作,網(wǎng)頁設計,1500元定制網(wǎng)站優(yōu)化全包,先排名后付費,已為上千家服務,聯(lián)系電話:13518219792
網(wǎng)站標題:Linux命令:mp4轉碼詳解(linuxmp4轉碼命令)
轉載來源:http://m.fisionsoft.com.cn/article/ccepopo.html


咨詢
建站咨詢
