我通过UDP为每个流设置PID来传输.ts文件。
此ts文件包含视频和文本流。
我想将自己的pid设置为mpegtsmux,如下所示,
g_object_set (mMux, "prog-map", gst_structure_from_string ("program_map,sink_300=10,sink_303=10,sink_302=10,sink_301=10", NULL), NULL);
有时工作正常,但有时我会收到以下错误。
BUS_MESSAGE :: Error : Stream on pad <ts-mux:sink_300> is not associated with any program
BUS_MESSAGE :: Debug : mpegtsmux.c(1250): mpegtsmux_collected_buffer (): /GstPipeline:digital-pipeline/MpegTsMux:ts-mux
但是当我使用管道时,它的工作正常。
gst-launch-1.0 -v filesrc location=/home/uurmi/Desktop/final_release_2.0_cd_burn/source/system/soa/output/Most_VM_1.ts ! tsdemux name=demux program-number=10 demux.video_012c ! queue ! muxer.sink_300 mpegtsmux name=muxer prog-map=program_map,sink_300=10,sink_302=10,sink_303=10,sink_301=10 ! rtpmp2tpay ! udpsink host=192.168.2.217 port=8765 demux.metadata_012f ! queue ! muxer.sink_303
为什么会出现此错误?以上g_object_set是否正确,用于将prog-map属性设置为Muxer?
如何解决这个错误?