首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MPEG-TS编码

MPEG-TS编码
EN

Stack Overflow用户
提问于 2011-11-25 13:39:26
回答 1查看 18.1K关注 0票数 10

我需要将一个文件转换为MPEG-TS,以使其符合以下规范:

基本视频流比特率kbit/s视频: 2575音频:2x192字幕:- PAT/PMT:- Stuffing:--

组件TS比特率kbit/s视频: 2652音频: 395字幕: 45 PAT/PMT: 45填充: 62总计: 3200 CBR

额外所需组件: PAT PMT空包

可能弹出的组件: NIT、SDT、EIT等。

代码语言:javascript
复制
vcodec="h264"
acodec="mpga"
bitrate="2500"
arate="192"
samplerate=48000
ext="mpg"
mux="ts"
vlc="/usr/bin/vlc"
fmt="mpg"
dst="/home/adam/test/"

for a in *$fmt; do
$vlc -I dummy -vvv "/home/adam/test/" --sout "#transcode{vcodec=$vcodec,venc=x264{profile=main,level=3.0,hrd=cbr,bframes=2},vb=$bitrate,acodec=$acodec,ab=$arate,samplerate=$samplerate,channels=2}:standard{mux=$mux,dst=\"$dst$a.$ext\",ac$
done

在使用上面的脚本进行编码之后,除了两件事之外,一切似乎都是正常的(对于视频和音频比特率编解码都是恒定的):容器的比特率也应该保持为CBR,但事实并非如此。此外,填充组件(0x1ffff)-空包丢失。您是否可以更正脚本,使空数据包以及容器常量(3,2 Mbps CBR)的比特率?

第二个选项是使用ffmpeg编码:

代码语言:javascript
复制
ffmpeg -i video_input.mpg -i audio_input.mp2 -acodec copy -tune zerolatency -x264opts bitrate=2600:vbv-maxrate=2600:vbv-bufsize=166:nal_hrd=cbr -vpre libx264-iptv -vcodec libx264 -f mpegts -muxrate 3200K -y output.ts

但是如何取消/禁用/删除SDT表?

EN

回答 1

Stack Overflow用户

发布于 2011-11-27 17:56:01

考虑到您知道空包的概念,您可能在这方面使用了商业级别的软件或硬件。

CBR (视频)和系统速率(或多路复用器速率)之间存在差异。当视频编码为CBR,比如说3.2Mbps时,它在这个边缘附近波动几百kbps是很好的。所以峰值比特率,可以说是3.3Mbps。这挺好的。再加上100 kbps的音频,总最大比特率可达3.4。通常,在这种情况下,将系统速率设置为3.6Mbps或更多;其中余额为空包。

系统速率3.5Mbps根本不能波动。如果是这样的话,基于PCR的同步就不会起作用,而且基本上,在实际的环境中也是行不通的。因此,基本上,您可以认为3.5Mbps( 100毫秒内约240个数据包)可以被认为是总线。每个座位必须填满,以确保运输是连续的。通常情况下,这样做的方式是很少有座位会保持空的。

可悲的是,无论是VLC还是开源中的任何其他工具都不会为您做这件事。

我们过去使用的黑客是,我们用来通过IP发送这样的VLC生成的流(其中发送TS流没有空包是可以的,并通过带有ASI或类似接口的muxer的输出接收它,这将增加Muxer )。

或者,您可以使用曼扎尼塔将非空TS流转换为适当的TS流。

编辑:

基于这个注释--如果你需要做的就是禁用SDT --有两件事需要做。

  1. 从对应于SDT表的PID中删除所有数据包。如果你没有完全破译和重新修改-一个快速的方法,这可能是重新盖章13位PID数字的零包PID号码。
  2. 删除PAT表中SDT PID值的引用。这在本质上意味着您将生成一个3到4个被纠正的PAT包,并将流中的所有PAT数据包序列替换为这些校正的数据包。
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8269969

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档