Ho un file che ho bisogno di convertire in formato MPEG-TS in modo che si adatti alle specifiche di seguito:MPEG-TS Encoding
elementare flusso bitrate [kbit/s] il video: 2575 audio: 2 x 192 sottotitolo: - PAT/PMT: - ripieno: -
Componente TS bitrate [kbit/s] il video: 2652 audio: 395 sottotitolo: 45 PAT/PMT: 45 ripieno: 62 totale : 3200 CBR
Ulteriori componenti necessari: PAT PMT pacchetti nulli
componenti che potrebbero pop-up: NIT, SDT, EIT, ecc
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
dopo la codifica con lo script di cui sopra tutto sembra be ok (per codec bitrate sia video che audio è costante) a parte due cose: anche il bitrate del container dovrebbe rimanere CBR, ma non è così. Inoltre, manca il componente di riempimento (0x1 ffff). È possibile correggere lo script per rendere nullo il pacchetto e il bitrate della costante del contenitore (3,2 Mbps CBR)?
La seconda opzione è la codifica con 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
ma come disinserire/disattivare/rimuovere tabella SDT?
Il secondo comando funziona correttamente ma come posso rimuovere la tabella SDT dal file? – adismsc