Encodage MPEG-TS

J'ai un fichier que j'ai besoin de convertir au format MPEG-TS, de sorte qu'il s'adapte à la spécification ci-dessous:

Elementary stream bitrate [kbit/s]
vidéo: 2575
audio: 2 x 192
sous-titres: -
PAT/PMT: -
La farce: -

Composant TS bitrate [kbit/s]
vidéo: 2652
audio: 395
sous-titres: 45
PAT/PMT: 45
Farce: 62
Total: 3200 CBR

Composants supplémentaires requis:
PAT
PMT
Null paquets

Les composants susceptibles de pop-up:
NIT, SDT, EIT, etc.

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

Après l'encodage avec le script ci-dessus, tout semble ok (pour la vidéo et l'audio le bitrate le codec est constante), à l'exception de deux choses: le Débit du conteneur doit aussi rester CBR mais ce n'est pas le cas. Aussi, la farce composant (0x1 ffff) - null paquet est manquant. Est-il possible pour vous de corriger le script de rendre nul paquet ainsi que le bitrate du conteneur constante (3,2 Mbits /s CBR) ?

La deuxième option est l'encodage avec ffmpeg:

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

mais comment faire pour désactiver/désactiver/supprimer le TSD de la table?

source d'informationauteur adismsc