<div dir="ltr"><div><div><div><div>Hi.<br><br></div>Using GStreamer 1.3.3 it seems impossible to transmux a TS stream with H264/AAC to a matroska stream. Can that really be true?<br><br>I think the problem is that the tsdemuxer reports the audio stream to be MPEG-2 ADTS although it is muxed as 'mpeg/audio,mpegversion=4,streamformat=raw', but I believe the tsmuxer might convert it to ADTS as I believe a TS muxed stream can only be ADTS inside and not raw. That the demuxer finds ADTS stream-format might make sense, but finding mpeg/audio mpegversion=2 does not make sense I think. Is this an error?<br>
<br></div>The pipeline tried used for transmuxing is this<br><br>gst-launch-1.0 -v \<br> udpsrc port=8000 caps='application/x-rtp,media=video,clock-rate=90000,encoding-name=MP2T,payload=96' do-timestamp=false do-timestamp=true !\<br>
queue !\<br> rtpmp2tdepay !\<br> queue !\<br> tsparse !\<br> queue !\<br> tsdemux name=demux !\<br>
queue !\<br> identity silent=false !\<br> aacparse !\<br> queue !\<br> mux. demux. !\<br> queue !\<br>
h264parse !\<br> queue !\<br> matroskamux name=mux streamable=true !\<br> queue !\<br> tcpserversink host=0.0.0.0 port=5020 sync-method=2 recover-policy=keyframe<br>
<br></div><div>But this pipeline hangs as the aacparse can not generate what matrooskamux needs from what aacparse receives as input.<br></div><div><br></div>The pipeline used for generating the TS stream is this<br><br></div>
gst-launch-1.0 \<br> ...........!\<br><div> aacparse !\<br> 'audio/mpeg, mpegversion=4, stream-format=raw' !\<br> queue !\<br> mpegtsmux name=tsmux !\<br>
queue !\<br> tsparse ! chopmydata max-size=1316 ! rtpmp2tpay ! queue ! udpsink port=8000 host=192.168.10.56 tv. !\<br> queue ! h264parse ! tsmux.<br><br><br></div></div>