日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ffmpeg libx264_编程小短文:FFmpeg视频画面尺寸调整,必知必会

發布時間:2023/12/19 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ffmpeg libx264_编程小短文:FFmpeg视频画面尺寸调整,必知必会 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

引言

FFmpeg是音視頻處理領域,應用范圍最廣的一個項目。

我們日常使用的大小桌面版視頻播放器,或者命令行使用的播放器,大多數是基于 ffmpeg 開發的。

如果說它是音視頻編解碼處理中的老大哥,這一點都不為過。

本文主要從一個小知識點作為切入面,深入介紹一下,如何有效地壓縮和降低視頻文件的體積。

問題的提出

有一位題主遇到下面的情況,他有一個視頻文件,寬高比是 1024x576,現在想要將尺寸調整為 720x480,應該怎么辦?

當然了,這對于 ffmpeg 應用程序來說是小菜一碟。只用執行下面一行指令。

ffmpeg -i input.avi -s 720x480 -c:a copy output.mkv

其中:

-s:是 --scale 的短選項,用于指定輸出文件的畫面寬高比;

-c:a:是輸出音視頻的盒子,copy 說明了是不做任何處理,原樣輸出。

如果想要限制畫面寬度,而對于畫面高度想要自動的進行裁切,那么就要用到過濾器。執行下面一行指令。

ffmpeg -i input.avi -filter:v scale=720:-1 -c:a copy output.mkv

-1將告訴ffmpeg自動選擇與提供的寬度相關的正確高度,以保持寬高比。如果用戶給定了高度,那么-1則可以用于指定保持寬高比中的寬度。

使用libx264時,Scale的一個缺點是此編碼器需要偶數值,Scale可能會自動選擇奇數值,從而導致錯誤:寬度或高度不能被2整除。

你可以告訴Scale為給定高度選擇偶數值(在本例中為720):

scale="trunc(oh*a/2)*2:720"

或者指定高度,

scale="1280:trunc(ow/a/2)*2"

引申討論

一般情況下我們會把固定格式寬高比的視頻文件轉換為統一格式,用于適配不同型號的手機。那么有沒有辦法,在不知道目標型號手機的寬高比的時候,按照百分比為視頻畫面進行調整呢?答案是肯定有的。

比如下面這樣對畫面進行寬高50%的收縮。

ffmpeg -i input.avi -vf scale="iw/1:ih/2" output.avi

你應該會注意到我們使用了兩個變量。

  • iw:輸入文件的畫面寬度
  • ih:輸入文件的畫面高度

這兩個是系統的常量,可以拿來直接使用。

寫在最后

其實 ffmpeg 所提供的過濾器功能十分復雜,而且功能十分強大。可應用于眾多領域的音視頻轉換,只要是輸入的視頻流,均可進行深度的處理。

Happy coding :_)

我是 @程序員小助手 ,持續分享編程知識,歡迎關注。

總結

以上是生活随笔為你收集整理的ffmpeg libx264_编程小短文:FFmpeg视频画面尺寸调整,必知必会的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。