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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

ffmpeg音视频基础知识

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

ffmpeg音視頻基礎知識

  • 前言
  • 一、圖像的基礎知識
  • 二、視頻編碼基礎知識
    • 1.視頻和圖片之間的關系
    • 2.為什么要編碼?
    • 3.什么是編碼?
  • 視頻相關專業術語

提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔

文章目錄

  • 前言
  • 一、圖像的基礎知識
  • 二、視頻編碼基礎知識
    • 1.視頻和圖片之間的關系
    • 2.為什么要編碼?
    • 3.什么是編碼?
  • 視頻相關專業術語


前言

最近樓主在用ffmpeg進行音視頻的開發,但對于里面的音視頻的基礎知識不是很了解,自己上網查找資料進行了總結,方便大家學習


提示:以下是本篇文章正文內容,下面案例可供參考

一、圖像的基礎知識

我們平常看到的一張張的圖片都是有一塊一塊帶有顏色的塊組成的。那么這些塊我們稱之為像素。像我們平時用的電腦,都會有1920*1080的分辨率,也就是說它是由長度1920個像素點,寬度1080的像素點組成的。它的乘機是2073600,相當于電腦屏幕上有兩百多萬的像素。同時呢,手機(或者顯示器)上的屏幕上每英寸面積,像素越多,那么自然的,圖片給人的感覺就更清晰,這個就是我們常說的PPI.

二、視頻編碼基礎知識

1.視頻和圖片之間的關系

視頻就是一張一張的圖片連起來的畫面。衡量它的指標就是我們常說的幀率(Frame Rate)。在視頻中,一個幀是一副靜止的畫面。幀率,是秒的幀的數量,幀率越高,畫面越流暢。打游戲時,大家要想玩的爽,肯定幀率要高。

2.為什么要編碼?

首先,我們需要了解到的在沒有編碼之前,我們原始的視頻是有多大呢?

以一個分辨率1920*1280,幀率30的視頻為例:
共:1920×1280=2,073,600(像素),每個像素點是24bit 也就是:每幅圖片2073600×24=49766400 bit,8 bit(位)=1 byte(字節)
所以:49766400bit=6220800byte≈6.22MB。

這是一幅1920×1280圖片的原始大小,再乘以幀率30。
每秒視頻的大小是186.6MB,每分鐘大約是11GB,一部90分鐘的電影,約是1000G

這因為如此,我們就要對視頻編碼,不然的話,一個電腦以2t的硬盤儲存空間來算,也存不了幾部電影。那你讓磁盤里的小姐姐該怎么辦呢。。。

3.什么是編碼?

編碼:就是按指定的方法,將信息從一種形式(格式),轉換成另-種形式(格式)。視頻編
碼:就是將一種視頻格式,轉換成另一種視頻格式。

我們先來看看,視頻從錄制到播放的整個過程,如下:
首先是視頻采集。通常我們會使用攝像機、攝像頭進行視頻采集。采集了視頻數據之后,就要進行模數轉換,將模擬信號變成數字信號。其實現在很多都是攝像機(攝像頭)直接輸出數字信號。信號輸出之后,還要進行預處理,將RGB信號變成YUV信號。

那什么是YUV信號呢?
簡單來說,YUV就是另外一種顏色數字化表示方式。視頻通信系統之所以要采用YUV,而不是RGB,主要是因為。在YUV這種方式里面,加入了亮度這一概念。在最近十年中,視頻工程師發現,眼睛對于亮和暗的分辨要比對顏色的分辨更精細一些,也就是說,人眼對色度的敏感程度要低于對亮度的敏感程度。
所以,工程師認為,在我們的視頻存儲中,沒有必要存儲全部顏色信號。我們可以把更多帶寬留給黑—白信號(被稱作“亮度”),將稍少的帶寬留給彩色信號(被稱作“色度”)。于是,就有了YUV。


視頻相關專業術語

(1)視頻:
連續的圖象變化每秒超過24幀(Frame)畫面以上時,根據視覺暫留原理,人眼無法辨別單幅的靜態畫面,看上去是平滑連續的視覺效果,這樣連續的畫面叫做視頻。

(2)幀(Frame):
是影像中常用的最小單位,相當于電影中膠片的每一格鏡頭,一幀就是一副靜止的畫面,連續的幀就形成了視頻。
(3)幀速率(FPS):
每秒鐘所傳輸圖片的個數,也可以理解為處理器每秒刷新的次數,通常用FPS標識,當然幀數越高,畫面也就越流暢。

(4)轉碼 :
指將一段多媒體包括音頻、視頻或者其他的內容從一種編碼格式轉換成為另外一種編碼格式。
(原視頻 – 解碼 – 像素數據 – 編碼 – 目標視頻)
(原音頻 – 解碼 – 音頻數據 – 編碼 – 目標音頻)

(5)視頻編碼:
講到視頻編碼,大家可能都會問為什么視頻要編碼?
— 要知道,采集的原始音視頻信號體積都非常大,里面有很多相同的、眼看不到的、耳聽不到的內容,比如,如果視頻不經過壓縮編碼的話,體積通常是非常大的,一部電影可能就要上百G的空間。

(6)視頻解碼:
有了編碼,當然也需要有解碼。
因為壓縮(編碼)過的內容無法直接使用,使用(觀看)時必須解壓縮,還原為原始的信號(比如視頻中某個點的顏色等),這就是“解碼“或者”解壓縮“。

(7)采樣頻率:
指錄音設備在一秒鐘內對聲音信號的采樣次數,它用赫茲(Hz)來表示,比如44.1KHz采樣率的聲音就是要花費44000個數據點來描述1秒鐘的聲音波形。原則上采樣率越高,聲音質量越好。

(8)比特率(碼率):
表示單位時間(1秒)內傳送的比特數,一般我們用的單位是kbps,其英文是 Kilobits per second,意即“千位每秒”(根據發音亦譯作“千比特每秒”),意思是說每過一秒鐘,有多少千比特的數據流過,因此碼率也經常被稱為“比特率”。

總結

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

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