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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

FFmpeg再学习 -- 视音频基础知识

發布時間:2025/3/15 编程问答 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 FFmpeg再学习 -- 视音频基础知识 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近一直在看雷霄驊 FFmpeg 系列視頻,然后將自己的理解總結一下。

參看:《基于 FFmpeg + SDL 的視頻播放器的制作》課程的視頻

一、視頻播放器原理?


自己理解:

比如一個 MP4 文件,它是有音頻、有視頻兩部分封裝的。PCM 音頻采樣數據和 YUV 視頻像素數據,通過音視頻編碼 Encode,生成AAC和H.264文件,最后封裝成 MP4 文件。

然后,我想起我使用 PR 剪輯視頻時,其實就是這個過程,將音視頻合成MP4文件的。




二、常用播放器

? ???

VLC、CyberLink PowerDVD 14、完美風暴

下載:VLC media player 下載

下載:powerDVD 14 破解 安裝 方法 下載 地址 免費

下載:完美解碼V20170702官方版

三、信息查看工具

(1)綜合信息查看:MediaInfo


可選擇以什么形式查看,比如我們以文本形式查看:

任意4個文件的總體信息

(2)二進制信息查看

下載:UltraEdit



(3)單項詳細分析

封裝格式: Elecard Format Analyzer


MKV、 MP4、 AVI封裝格式信息



視頻編碼數據: Elecard Stream Eye


H.264碼流分析信息

? ? ? ? ? ? ? ?紅色的幀: I幀;藍色的幀: P幀;綠色的幀: B幀。

視頻像素數據: YUV Player


YUV視頻像素數據 ?

音頻采樣數據: Adobe Audition


PCM音頻采樣數據?


四、封裝格式

(1)封裝格式的作用

視頻碼流和音頻碼流按照一定的格式存儲在一個文件中。

(2)格式類型


五、視頻編碼數據

(1)視頻編碼的作用

將視頻像素數據(RGB,YUV等)壓縮成為視頻碼流,從而降低視頻的數據量。

(2)視頻編碼類型


六、音頻編碼數據

(1)音頻編碼的作用

將音頻采樣數據(PCM 等)壓縮成為音頻碼流,從而降低音頻的數據量。

(2)音頻編碼類型


七、視頻像素數據

(1)視頻像素數據作用

保存了屏幕上每個像素點的像素值。

(2)格式

常見的像素數據格式有 RGB24,RGB32,YUV420P,YUV422P,YUV444P 等。壓縮編碼中一般使用的是 YUV 格式的像素數據,最為常見的格式為 YUV420P。

(3)特點

視頻像素數據體積很大,一般情況下 1 小時高清視頻的 RGB24 格式的數據體積為:

? ? ? ??3600*25*1920*1080*3=559.9GByte
PS:這里假定幀率為25Hz,取樣精度8bit。

(4)RGB 格式簡介

Red、 Green、 Blue三種顏色,可以混合成世界上所有的顏色。
彩色圖像中每個點,由R、 G、 B三個分量組成。
以 RGB24 為例,圖像像素數據的存儲方式如下:

? ? ? ?

從圖中可以看出, RGB24依次存儲了每個像素點的R、 G、 B信息。
PS: BMP文件中存儲的就是RGB格式的像素數據。

(5)YUV格式簡介

相關實驗表明,人眼對亮度敏感而對色度不敏感。因而可以將亮度信息和色度信息分離,并對色度信息采用更“狠”一點的壓縮方案,從而提高壓縮效率。
YUV 格式中, Y 只包含亮度信息,而 UV 只包含色度信息。以 YUV420P 為例,圖像像素數據的存儲方式如圖所示。從圖中可以看出, YUV420P 首先存儲了整張圖像的Y信息,然后存儲整張圖像的 U 信息,最后存儲了整張圖像的 V 信息。


8、音頻采樣數據

(1)音頻采樣數據作用

保存了音頻中每個采樣點的值。

(2)特點

音頻采樣數據體積很大,一般情況下一首4分鐘的PCM格式的
歌曲體積為:
? ? ? ? 4*60*44100*2*2=42.3MByte
PS:這里假定采樣率為44100Hz,采樣精度為16bit。

(3)PCM格式簡介

單聲道的情況下按照順序存儲每個采樣點的數據。

雙聲道的情況下按照“左右、左右”的順序存儲每個采樣點兩個聲道的數據。




總結

以上是生活随笔為你收集整理的FFmpeg再学习 -- 视音频基础知识的全部內容,希望文章能夠幫你解決所遇到的問題。

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