【FFmpeg】使用 FFmpeg 处理音视频格式转换流程 ( 解复用 | 解码 | 帧处理 | 编码 | 复用 )
FFmpeg 系列文章目錄
【FFmpeg】Windows 搭建 FFmpeg 命令行運行環(huán)境
【FFmpeg】FFmpeg 相關(guān)術(shù)語簡介
【FFmpeg】FFmpeg 相關(guān)術(shù)語簡介 二
【FFmpeg】FFmpeg 幫助文檔使用
【FFmpeg】使用 FFmpeg 處理音視頻格式轉(zhuǎn)換流程
文章目錄
- FFmpeg 系列文章目錄
- 一、視頻格式轉(zhuǎn)換
- 1、x264 視頻格式轉(zhuǎn)換
- 2、x265 視頻格式轉(zhuǎn)換
- 二、視頻格式轉(zhuǎn)換流程
一、視頻格式轉(zhuǎn)換
1、x264 視頻格式轉(zhuǎn)換
使用 x264 壓縮格式 , 將原始 大小 1920x1040 大小的 mp4 格式的視頻轉(zhuǎn)為 960x520 的 flv 格式的視頻 ;
進(jìn)入視頻所在目錄 , 執(zhí)行如下命令 :
ffmpeg -i 1920x1040.mp4 -acodec copy -vcodec libx264 -s 960x520 960x520.flv命令執(zhí)行過程 :
轉(zhuǎn)換前的視頻信息 :
轉(zhuǎn)換后的視頻信息 :
2、x265 視頻格式轉(zhuǎn)換
使用 x265 壓縮格式 , 將原始 大小 1920x1040 大小的 mp4 格式的視頻轉(zhuǎn)為 960x520 的 mkv 格式的視頻 ;
進(jìn)入視頻所在目錄 , 執(zhí)行如下命令 :
ffmpeg -i 1920x1040.mp4 -acodec copy -vcodec libx265 -s 960x520 960x520.mkv命令執(zhí)行結(jié)果 :
轉(zhuǎn)換前的視頻信息 :
轉(zhuǎn)換后的視頻信息 :
二、視頻格式轉(zhuǎn)換流程
分析如下命令的詳細(xì)流程 :
ffmpeg -i 1920x1040.mp4 -acodec copy -vcodec libx264 -s 960x520 960x520.flv將 1920x1040 大小的 mp4 格式的視頻文件 , 使用 x264 編解碼器 , 轉(zhuǎn)為 960x520 大小的 flv 格式的視頻文件 ;
藍(lán)色的是 文件 / 中間產(chǎn)物 , 紅色的是過程 ;
輸入文件 : 輸入 1920x1040 大小的 mp4 格式文件 , 1920x1040.mp4 ;
解復(fù)用 : 使用 demuxer 解復(fù)用器 , 將輸入文件進(jìn)行解復(fù)用操作 , 從容器中分別將 AVC 視頻流 , AAC LC 音頻流取出 , 得到編碼數(shù)據(jù)包 ;
編碼數(shù)據(jù)包 : 該數(shù)據(jù)包中的音視頻數(shù)據(jù)都是編碼后的數(shù)據(jù) , 不能直接使用 ; 編碼數(shù)據(jù)包中的視頻流數(shù)據(jù)是 AVC 編碼格式的 , 音頻流數(shù)據(jù)是 AAC LC 編碼格式的 ;
解碼 : 使用 decoder 解碼器 , 解碼 AVC 編碼的視頻流數(shù)據(jù) , AAC LC 編碼的音頻流數(shù)據(jù) , 得到解碼后的數(shù)據(jù) ;
解碼后的數(shù)據(jù)幀 : 音頻數(shù)據(jù)是 PCM 采樣 , 視頻幀 數(shù)據(jù)是一張張 YUV 格式的圖片 ;
幀處理 : 使用 filter 過濾器 處理 解碼后的數(shù)據(jù)幀 , 將其轉(zhuǎn)為 處理后的數(shù)據(jù)幀 ; 該過程中將視頻的分辨率進(jìn)行了修改 , 分辨率從 1920x1040 轉(zhuǎn)為 960x520 ;
如果要修改視頻的相關(guān)參數(shù) , 如 時間 , 幀率 , 都在該步驟進(jìn)行操作 , 操作的主體一定是解碼后的數(shù)據(jù)幀 ;
處理后的數(shù)據(jù)幀 : 該數(shù)據(jù)幀是可以直接用于播放 ; 音頻數(shù)據(jù)是 PCM 采樣 , 視頻幀 數(shù)據(jù)是一張張 YUV 格式的圖片 ;
編碼 : 使用 encoder 編碼器 , 將處理后的數(shù)據(jù)幀進(jìn)行編碼 , 音頻從 PCM 采樣轉(zhuǎn)為 AAC LC 編碼格式 , 視頻從 YUV 圖片編碼為 AVC 編碼格式 ,
編碼數(shù)據(jù)包 : 音頻數(shù)據(jù)是 AAC LC 編碼格式 , 視頻數(shù)據(jù)是 AVC 編碼格式 ;
復(fù)用 : 使用 muxer 復(fù)用器 , 將編碼后的 視頻流 和 音頻流 封裝到 容器中 , 即 flv 格式的視頻文件 , 得到輸出文件 ;
輸出文件 : 格式轉(zhuǎn)換完畢的 960x520.flv 視頻文件 ;
總結(jié)
以上是生活随笔為你收集整理的【FFmpeg】使用 FFmpeg 处理音视频格式转换流程 ( 解复用 | 解码 | 帧处理 | 编码 | 复用 )的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【FFmpeg】FFmpeg 帮助文档使
- 下一篇: 【FFmpeg】ffmpeg 命令查询二