• FFplay文档解读-9-解复用器


    13.解复用器

    解复用器是FFmpeg中配置的元素,可以从特定类型的文件中读取多媒体流。

    配置FFmpeg构建时,默认情况下会启用所有支持的分离器。 可以使用configure选项--list-demuxers列出所有可用的列表。

    可以使用configure选项--disable-demuxers禁用所有解复用器,并使用选项--enable-demuxer = DEMUXER选择性地启用单个解复用器,或使用选项--disable-demuxer = DEMUXER禁用它。

    ff *工具的选项-demuxers将显示已启用的多路分离器列表。 使用-formats可以查看已启用的分路器和多路复用器的组合列表。

    下面介绍一些当前可用的分路器。

    13.1 aa

    可听格式2,3和4分路器。

    此分路器用于分离Audible Format 2,3和4(.aa)文件。

    13.2 applehttp

    Apple HTTP Live Streaming分路。

    此分离器呈现来自所有变体流的所有AVStreamid字段设置为比特率变量索引号。 通过在AVStreams上设置discard标志(通过在ffplay中按a'v),调用者可以决定实际接收哪些变体流。 流所属的变体的总比特率在名为variant_bitrate的元数据密钥中可用。

     学习地址:音视频新手快速入门必备系列-FFmpeg+SDL播放器开发实现-学习视频教程-腾讯课堂【文章福利】免费领取更多音视频学习资料包、大厂面试题、技术视频和学习路线图,资料包括(C/C++,Linux,FFmpeg webRTC rtmp hls rtsp ffplay srs 等等)有需要的可以点击1079654574加群领取哦~
     

    13.3 apng

    动画便携式网络图形解复用器。

    此分路器用于解复用APNG文件。 所有标头,但PNG签名,直到(但不包括)第一个fcTL块作为extradata传输。 然后将帧拆分为两个fcTL之间的所有块,或者最后一个fcTLIEND块之间的块。

    -ignore_loop bool
    

    如果设置,则忽略文件中的循环变量。

    -max_fps int
    

    每秒帧数的最大帧速率(0表示无限制)。

    -default_fps int
    

    如果文件中未指定,则以帧/秒为单位的默认帧速率(0表示尽可能快)。

    13.4 asf

    高级系统格式解复用器。

    此分路器用于解复用ASF文件和MMS网络流。

    -no_resync_search bool
    

    不要尝试通过查找某个可选的开始代码来重新同步。

    13.5 concat

    虚级联脚本解复用器。

    这个解复用器从文本文件中读取文件列表和其他指令,并将它们一个接一个地解复用,就好像它们的所有数据包已经被多路复用一样。

    调整文件中的时间戳,以便第一个文件从0开始,每个下一个文件从前一个文件结束。 请注意,它是全局完成的,如果所有流的长度不完全相同,则可能会导致间隙。

    所有文件必须具有相同的流(相同的编解码器,相同的时基等)。

    每个文件的持续时间用于调整下一个文件的时间戳:如果持续时间不正确(因为它是使用比特率计算的,或者因为文件被截断,例如),则可能导致伪像。 duration指令可用于覆盖存储在每个文件中的持续时间。

    13.5.1 语法

    该脚本是扩展ASCII的文本文件,每行一个指令。 空行,前导空格和以开头的行将被忽略。 以下指令得到承认:

    file path
    

    要读取的文件的路径; 必须使用反斜杠或单引号转义特殊字符和空格。

    所有后续与文件相关的指令都适用于该文件。

    ffconcat version 1.0
    

    确定脚本类型和版本。 如果为-1,它还将safe选项设置为1

    要使FFmpeg自动识别格式,该指令必须在脚本的第一行完全按原样出现(没有额外的空格或字节顺序标记)。

    duration dur
    

    文件的持续时间。 可以从文件中指定此信息; 如果来自文件的信息不可用或不准确,则在此处指定它可能更有效或有帮助。

    如果为所有文件设置了持续时间,则可以在整个连接的视频中进行搜索。

    inpoint timestamp
    

    在文件的点。 当解复用器打开文件时,它立即寻找指定的时间戳。 寻求完成&#

  • 相关阅读:
    Rust之常用集合(一):向量(vector)
    ShaderGraph实现序列帧动画
    Windows网络管理及诊断命令整理
    订水商城H5实战教程-01需求分析
    SpringBoot的初步认识
    建筑模板常见的问题有哪些?
    字节小程序填坑说明
    Python+requests+Excel数据驱动的接口自动化测试中解决接口间数据依赖
    【前端知识之Vue3】一文搞懂Vue3到底做了哪些优化
    c# 字典与内存碎片化
  • 原文地址:https://blog.csdn.net/irainsa/article/details/127787379