轉換參數
-i??sourceVideo.wmv??-vcodec?libx264?-preset?ultrafast?-profile:v?baseline?-acodec?aac?-strict?experimental?-s?640*480?-b?568k?-ab?128k?destinationVideo.mp4
-vcodec?libx264??采用 H.264 的編碼方式
-preset?ultrafast??快速的編碼方式
-profile:v?baseline??讓視頻提供最好的兼容方式,但會關閉很多高級特性
-acodec?aac??采用 AAC 音頻編碼
-strict?experimental
-s?640*480??圖片的大小
-b?568k???視頻碼率
-ab?128k??音頻碼率
問題描述
1、轉換多視頻流視頻,其視頻流信息丟失,輸出視頻只有音頻信息。
出錯視頻異常參數 |
正常視頻的正常參數 |
出錯視頻描述 |
導致的結果 |
3?video?streams : MPEG-4 ( microsoft ), 3Kbps , MPEG-4?Visual ( Microsoft ) |
1?audio?stream:WMA 568Kbps,WMV1; ? |
只有音頻 |
視頻信息丟失,不能播放視頻 |
?
2、總比特率模式為變量的視頻,轉換時間長,輸出視頻大,頻率高(有時會導致轉換程序中斷,視頻無法繼續轉換)。
出錯視頻異常參數 |
正常視頻的正常參數 |
出錯視頻描述 |
導致的結果 |
Overrall?bit?rate?mode:Variable ? |
Overrall?bit?rate?mode:Constant |
頻率高,文件大(是原來的 2-3 倍) |
轉換時間長,有的甚至出現“無法轉換”。 |
?
?
問題對策
1、使用參數“? -map??0? ”,使得所有的流都參與到轉換中去。
解釋:視頻中一般包含視頻流和音頻流,并且可以有多個視頻流,多個音頻流。 FFmpeg 轉換視頻,默認情況下,其第一個視頻流、第一個音頻率參與轉換,其他的忽略。上述的出錯視頻其第一個視頻流的視頻比特率只有 3kb ,其太小,轉換時將其忽略。(個人解釋,不具有權威性)
2、使用參數“ -r?25 ”,強制寫入幀率,使得輸出視頻的幀率不過高(蹦到 1000 )。
解釋:可能視頻的總比特率為變量,所以原視頻的信息(比例幀率)未能寫入到輸出視頻中去。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
