美文网首页
mpegts mux(mp4->mpegts)遇到的坑

mpegts mux(mp4->mpegts)遇到的坑

作者: 自由侠 | 来源:发表于2022-07-07 11:57 被阅读0次

. 需要时基(timebase)转换.    mpegts 音视频的时基均未 90000(90k);  mp4的音视频时基可能不一样. 需转换为mpegts的时基

. 转换mp4到mpegts, 声音断续;   原来是因为原始mp4的h264里边有b帧, 而dts未设置. 导致出问题. (不再支持有b帧的mp4了)

. 仅转aac到mpegts, 文件不能播放; (目前仍未解决,看看ffmpeg如何处理)

. g711a音频不能封装为mpegts. 

. 开源库的坑, 由于对mpegts一无所知, 库从ffmpeg-mpegtsenc.c -> felix-001/mpegtslib -> unit-x/mpegts -> akanchi/mpegts

     放弃ffmpeg是因为里边涉及的数据结构太复杂, 有封装,音视频编码等一些列数据结构. 扣代码太复杂; 

     放弃felix-001/mpegtslib是因为不会用, 并且demo不能直接使用

     放弃unit-x/mpegts 也是因为不会用, 并且demo不能直接使用.

     使用akanchi/mpegts是因为demo无bug. 但没有现成的api可以使用, 但unit-x/mpegts貌似在改项目基础上修改, 

     于是借鉴了unit-x/mpegts的使用方法.

   

In a word:  

         1. 原始mp4文件的格式需要为 h264/aac(h264最好不要有b帧, 如果有b帧,一定要注意换算dts, 音频不能为g711等)

         2. 需要进行时基转换. 

         3. 需要选择 akanchi/mpegts,并做二次开发.

相关文章

  • mpegts mux(mp4->mpegts)遇到的坑

    . 需要时基(timebase)转换. mpegts 音视频的时基均未 90000(90k); mp4的音视频时...

  • ffmpeg对mpeg2-TS流文件的详细解析

    AVInputFormat ff_mpegts_demuxer = { .name = "mpegts"...

  • 实验6.4 MUX VLAN间的通信

    6.4 MUX VLAN间的通信 # 访问同一个目标,相互间访问规则复杂,使用Mux VLAN; # Mux VL...

  • 【HCIP】交换机的高级特性

    MUX VLAN(Multiplex VLAN) 思科中有个PVlan跟这个功能是一样的,MUX Vlan 分为主...

  • MUX的使用

    当我在寻求多地图实时切换方案的时候,找到了mux这个工具 对硬件比较熟悉的各位,应该指导多路复用器这个东西,就是这...

  • Golang 第三方库学习 · mux

    本文为转载,原文:Golang 第三方库学习 · mux 介绍 mux 是一个用来执行http请求的路由和分发的第...

  • 遇到的坑

    1.文字两端居中 2.多个异步请求的执行顺序 点击页面上一个按钮发送两个ajax请求时,这两个异步请求会同时发送,...

  • 遇到的坑

    1、 2、每次改完pom.xml后项目的 Language level都会变成7,使用了jdk8新功能的地方都会报...

  • 遇到的坑++

    1.加在一个view的时候报了一个异常 android.view.InflateException: Binary...

  • 遇到的坑

    键盘通知导致UI异常现象描述:本地详情页的inputView输入框,做了很多的功能,由多个view组成,这时点击微...

网友评论

      本文标题:mpegts mux(mp4->mpegts)遇到的坑

      本文链接:https://www.haomeiwen.com/subject/bozubrtx.html