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循环引用问题

    今天面试问道了循环引用,所以就看了看,原来只是知道使用了Block容易造成循环引用.今天就来简单的介绍一些循环引用. 先来简单介绍一下什么是循环引用? 循环引用可以简单的理解成:A对象引用了B对象,B ...

  2. 初始block,关于定义的几个小题目

    block的定义和C语言指针函数非常相似,就可以照着指针函数的方法去依葫芦画瓢就可以了 block中的^只是用来表示这是一个block对象,和函数指针中的*作用一样,只是一个标识符 下面有三个小例子来 ...

  3. iOS 杂笔-21(self.name = “object” 和 _name =”object” 有什么不同?)

    iOS 杂笔-21(self.name = "object" 和 _name ="object" 有什么不同?) 问题如题,这是考察对属性与变量的了解而已. s ...

  4. 分析实现Android自定义View之扇形图

    继承View基类,画了这样的扇形图 直接来步骤吧 (参考了GcsSloop的教程) 1.分析 自定义View需要认真的分析下,里面还是会用到一些数学知识 首先是扇形该怎么表现 1. 扇形的外观是个圆弧 ...

  5. 21分钟 MySQL 入门教程

    目录 一.MySQL的相关概念介绍 二.Windows下MySQL的配置 配置步骤 MySQL服务的启动.停止与卸载 三.MySQL脚本的基本组成 四.MySQL中的数据类型 五.使用MySQL数据库 ...

  6. paas架构之docker——容器进程管理

    1.docker进程管理 docker的进程管理命令ps的用法基本和ubuntu系统的用法一致 1.1. 查看docker进程 sudo docker ps –a 1.2. 附着到容器上 Sudo d ...

  7. SAM4E单片机之旅——19、CAN间通信

    CAN协议具有良好的可靠性,在工业中应用广泛.这次就先熟悉CAN的基本功能. 开发板有两个CAN,每个CAN有8个信箱.这次内容是从CAN0的信箱0发送数据到CAN1的信箱0. 除本次使用的功能外,C ...

  8. 【原创】大众点评监控平台cat的性能分析

    由于工作的原因,或者说我们之前内部监控设计和实现有点不满足现有的研发需求,所以调研了一下大众点评开源出来的cat这一套监控系统. 今天我们就来实验一把,cat的客户端埋点在我们的程序流程中上报数据到c ...

  9. 面试之jsp、Servlet相关知识——生命周期, 区别等

    1.servlet生命周期 所谓生命周期,指的是servlet容器如何创建servlet实例.分配其资源.调用其方法.并销毁其实例的整个过程. 阶段一: 实例化(就是创建servlet对象,调用构造器 ...

  10. 限制input输入类型(多种方法实现)

    1.只能输入和粘贴汉字 <input onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste= ...