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);码率越高,文件所含的信息量就越大,音质就越高。

ffplay 参数说明分享的更多相关文章

  1. App分享之微信微博等各个社交平台的分享授权规则和常见问题

    一.新浪微博分享规则 新浪微博支持分享类型: 应用内分享也就是网页分享支持: 文字,文字+图片,要分享链接需要链接添加在text里分享 客户端分享支持:文字,图片,文字+图片,图片+文字+链接 参数说 ...

  2. nginx配置文件httpd.conf详解

     PS:Nginx使用有两三年了,现在经常碰到有新用户问一些很基本的问题,我也没时间一一回答,今天下午花了点时间,结合自己的使用经验,把Nginx的主要配置参数说明分享一下,也参考了一些网络的内容,这 ...

  3. Nginx配置文件nginx.conf中文详解【转】

    PS:Nginx使用有两三年了,现在经常碰到有新用户问一些很基本的问题,我也没时间一一回答,今天下午花了点时间,结合自己的使用经验,把Nginx的主要配置参数说明分享一下,也参考了一些网络的内容,这篇 ...

  4. MVC常遇见的几个场景代码分享

    本次主要分享几个场景的处理代码,有更好处理方式多多交流,相互促进进步:代码由来主要是这几天使用前端Ace框架做后台管理系统,这Ace是H5框架里面的控件效果挺多的,做兼容也很好,有点遗憾是控件效果基本 ...

  5. 福利到~分享一个基于jquery的智能提示控件intellSeach.js

    一.需求 我们经常会遇到[站内搜索]的需求,为了提高用户体验,我们希望能做到像百度那样的即时智能提示.例如:某公司人事管理系统,想搜索李XX,只要输入“李”,系统自然会提示一些姓李的员工,这样方便用户 ...

  6. 分享一例测试环境下nginx+tomcat的视频业务部署记录

    需求说明:在测试环境下(192.168.1.28)部署一套公司某业务环境,其中:该业务前台访问地址: http://testhehe.wangshibo.com该业务后台访问地址: http://te ...

  7. [知识库分享系列] 二、.NET(ASP.NET)

    最近时间又有了新的想法,当我用新的眼光在整理一些很老的知识库时,发现很多东西都已经过时,或者是很基础很零碎的知识点.如果分享出去大家不看倒好,更担心的是会误人子弟,但为了保证此系列的完整,还是选择分享 ...

  8. 分享一例脚本发版和tomcat重启脚本

    线上有个网站业务部署在tomcat上,由于频繁上线修改,需要经常启动tomcat.tomcat服务自带的bin下没有重启脚本,下面分享一例脚本发版和tomcat重启脚本: 1)现将业务代码从svn里下 ...

  9. 分享到微信微博空间等第三方平台的JS代码

    分享功能有利于传播更多优质的内容,所以在web项目中也是比较常用的.今天就抽空整理下常用的分享平台的JS代码.这些代码可以在对应平台的官方网站上生成,官网上对分享内容的参数也有详尽说明.这里只对常用的 ...

随机推荐

  1. IOS开发中(null)与<null>的处理

    不小心在开发过程中,得到了(null)以及<null>的返回值,找了好长时间只找到了一个关于<null>的. 由于要根据返回值进行判断,做出必要反应,因此必须知道返回值所代表的 ...

  2. iOS开发之UIImage等比缩放

    iOS开发之UIImage等比缩放 评论功能真不错 评论开通后,果然有很多人吐槽.谢谢大家的支持和关爱,如果有做的不到的地方,还请海涵.毕竟我一个人的力量是有限的,我会尽自己最大的努力大家准备一些干货 ...

  3. Linux套接字编程

    网络中的进程是如何通信的? 在网络中进程之间进行通信的时候,那么每个通信的进程必须知道它要和哪个计算机上的哪个进程通信.否则通信无从谈起!在本地可以通过进程PID来唯一标识一个进程,但是在网络中这是行 ...

  4. mybatis3.3 + struts2.3.24 + mysql5.1.22开发环境搭建及相关说明

    一.新建Web工程,并在lib目录下添加jar包 主要jar包:struts2相关包,mybatis3.3相关包,mysql-connector-java-5.1.22-bin.jar, gson-2 ...

  5. openstack中虚拟机和其网络的联系方法 instance and network

    instance和network的连接关系: 在neutron数据库中,ports存储了instance和端口的关系,其中device_id表示了instance的id,在nova数据库中的insta ...

  6. Force.com平台基础

    当我开始写这篇博客的时候,<Force.com Platform Fundamentals>的PDF版本我还没看到十分之一.由于PDF全部是英文的,所以我看起来比较吃力.我尝试过边看边做笔 ...

  7. 深入剖析 Spring 框架的 BeanFactory

    说到Spring框架,人们往往大谈特谈一些似乎高逼格的东西,比如依赖注入,控制反转,面向切面等等.但是却忘记了最基本的一点,Spring的本质是一个bean工厂(beanFactory)或者说bean ...

  8. loop指令

    loop系列的指令有:loop,loope/loopz,loopne/loopnz,它们都是借助于ECX寄存器作为计数来实现循环,每轮循环先ecx自动减1,再来判断ecx值,ecx的自减不会影响OF和 ...

  9. SQL SERVER 2012 使用订阅发布同步数据库

    软件做大了,客户就多了,一个数据库服务器是远远不够的,当有一台数据服务器卦掉,那整个系统就会崩溃,所以必须考虑到数据库的自动同步与备份,当一台数据库服务 器宕机,自然就有用一台数据服务器启动起来保证整 ...

  10. 03.NopCommerce功能与特点介绍

    前两节我们主要介绍了NopCommerce下载与安装和NopCommerce中文语言包,让大家体验一下NopCommerce.这次我们主要来介绍NopCommerce的功能与特点. NopCommer ...