ffplay 參數說明分享


ffplay 使用參數說明分享

E:\SRCFORTEST\software\ffmpeg-20131021\ffmpeg-20131021-git-712eff4-win32-static\

bin>ffplay.exe "http://192.168.0.3:9090/mpeg/FLAT06.m3u8"

ffplay version N-57287-g712eff4 Copyright (c) 2003-2013 the FFmpeg developers

  built on Oct 20 2013 19:47:46 with gcc 4.8.2 (GCC)

  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-av

isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enab

le-iconv --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetyp

e --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --ena

ble-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-l

ibopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libsp

eex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aa

cenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavp

ack --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib

  libavutil      52. 47.101 / 52. 47.101

  libavcodec     55. 37.102 / 55. 37.102

  libavformat    55. 19.103 / 55. 19.103

  libavdevice    55.  4.100 / 55.  4.100

  libavfilter     3. 88.102 /  3. 88.102

  libswscale      2.  5.101 /  2.  5.101

  libswresample   0. 17.104 /  0. 17.104

  libpostproc    52.  3.100 / 52.  3.100

Input #0, hls,applehttp, from 'http://192.168.0.3:9090/mpeg/wd/vodtest/FLAT_TE

ST06.m3u8':

  Duration: 00:01:30.00, start: 51210.426000, bitrate: 0 kb/s

  Program 0

    Metadata:

      variant_bitrate : 0

    Stream #0:0: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 720x576 [

SAR 17:12 DAR 85:48], 25 fps, 25 tbr, 90k tbn, 50 tbc

    Stream #0:1: Audio: aac ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 51

 kb/s

Seek to 46% ( 0:00:41) of total duration ( 0:01:30)       0B f=0/0

http://192.168.0.3:9090/mpeg/wd/vodtest/FLAT_TEST06.m3u8: error while seeking

51220.62 A-V:  0.178 fd=   6 aq=    0KB vq=    0KB sq=    0B f=0/0

 

藍色加粗的部分是在ffmpeg下鍵入的命令,黑色的是系統打印的命令。只要命令和視頻流正確,那么是一定可以播放的。雖然視頻播放的時候沒有顯示出進度條,但是在左右點擊屏幕的時候,會產生點擊進度條的效果。

一、系統打印命令解析

在此命令執行過程中,我們可以看到如下數據:

1、ffmpeg在運行過程中需要用到的lib庫如下

  libavutil      52. 47.101 / 52. 47.101

  libavcodec     55. 37.102 / 55. 37.102

  libavformat    55. 19.103 / 55. 19.103

  libavdevice    55.  4.100 / 55.  4.100

  libavfilter     3. 88.102 /  3. 88.102

  libswscale      2.  5.101 /  2.  5.101

  libswresample   0. 17.104 /  0. 17.104

  libpostproc    52.  3.100 / 52.  3.100

2、Input #0, hls,applehttp, from 'http://172.30.25.246:9090/mpeg/wd/vodtest/FLAT_TE

ST06.m3u8':

其中介紹的是片源的信息,hls為傳輸協議(是蘋果的),后面的網址是視頻的來源。

3、Duration: 00:01:30.00, start: 51210.426000, bitrate: 0 kb/s

Duration為時長,可以看見正在播放的片源為1分30秒。Start后面代表的是視頻片內的偏移地址,bitrate為碼率。

4、Metadata:

      variant_bitrate : 0

    Stream #0:0: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 720x576 [

SAR 17:12 DAR 85:48], 25 fps, 25 tbr, 90k tbn, 50 tbc

    Stream #0:1: Audio: aac ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 51

 kb/s

Metadata為元數據,就是描述其他數據的數據,相當於數據庫里面的字段。

Stream #0:0: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 720x576 [SAR 17:12 DAR 85:48], 25 fps, 25 tbr, 90k tbn, 50 tbc

第0:0個流是視頻流,編碼為h264,顏色編碼為yuv420p,分辨率為720x576, 25幀每秒,幀率為25,文件層的時間精度為1S=90k,視頻層的時間精度為1S=50

 

Stream #0:1: Audio: aac ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 51 kb/s

第0:1個流是音頻流,采用的是aac(高級編碼)技術,采樣頻率為48000Hz;立體聲;AV_SAMPLE_FMT_FLTP格式的數據,碼率為51kb/s。

二、關鍵詞介紹

HLS介紹HLS,Http Live Streaming 是由Apple公司定義的用於實時流傳輸的協議,HLS基於HTTP協議實現,傳輸內容包括兩部分,一是M3U8描述文件,二是TS媒體文件。

 

YUV是一種顏色編碼方法(屬於PAL)主要用於優化彩色視頻信號的傳輸,使其向后相容老式黑白電視。與RGB視頻信號傳輸相比,它最大的優點在於只需占用極少的頻寬(RGB要求三個獨立的視頻信號同時傳輸)。采用YUV色彩空間的重要性是它的亮度信號Y和色度信號U、V是分離的。如果只有Y信號分量而沒有U、V分量,那么這樣表示的圖像就是黑白灰度圖像

 

PAR - pixel aspect ratio(可以理解為單個像素的寬高比)大多數情況為1:1,就是一個正方形像素,否則為長方形像素。常用的PAR比率(1:1,10:11, 40:33, 16:11, 12:11 ).

DAR - display aspect ratio就是視頻播放時,我們看到的圖像寬高的比例,縮放視頻也要按這個比例來,否則會使圖像看起來被壓扁或者拉長了似的。

SAR - storage aspect ratio就是對圖像采集時,橫向采集與縱向采集構成的點陣,橫向點數與縱向點數的比值。比如VGA圖像640/480 = 4:3,D-1 PAL圖像720/576 = 5:4

這三者的關系PAR x SAR = DAR或者PAR = DAR/SAR.

 

tbr代表幀率,tbn代表文件層的時間精度,和duration相關;tbc代表視頻層的時間精度和時間戳相關。

 

AAC(Advanced Audio Coding),中文名:高級音頻編碼,出現於1997年,基於MPEG-2的音頻編碼技術。一種專為聲音數據設計的文件壓縮格式,與Mp3不同,它采用了全新的算法進行編碼,更加高效,具有更高的“性價比”。利用AAC格式,可使人感覺聲音質量沒有明顯降低的前提下,更加小巧。fltp:AV_SAMPLE_FMT_FLTP格式的數據( float, 4bit , planar);碼率越高,文件所含的信息量就越大,音質就越高。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM