splitmuxsrc: If set range the splitmuxsrc, This output file cannot be played with VLC Player.

s_kamiya at toa.co.jp s_kamiya at toa.co.jp
Mon Sep 4 08:49:38 UTC 2023


Hello.
I'm Kamiya.

I resolved this issue.
I'm sorry, it was caused by my application.

My application had run the following step.

1. an user input range and start(play) the app.
2. the app make the pipeline and change the state to "Playing".
3.when it received "message::state-changed" and new state is "Paused", it 
send seek event of range.

But, the sending seek event had run on another thread "std::thread".
So, before seeking, it had changed to the next state "Playing".
It was the matter.

I resolved the matter by removing "std::thread" and changing step as the 
following.

1. an user input range.
2. the app make the pipeline and change the state to "Paused".
3.when it received "message::state-changed" and new state is "Paused", it 
send seek event of range.
4.the user start(play) the app.

The difference between splitmuxsrc and filesrc&qtdemux may have been 
internal threading.

Thank you for your attention.


> Hello eveyone.
> I am Kamiya.
> 
> I tried the followin pipeline with C++ coding (Properties are omitted).
> 
>      pipeline1 : splitmuxsrc ! h264parse ! queue ! qtmux ! filesink
> 
> The created media file can be played correctly with any player.
> 
> But, if I changed range "start" to bigger than 0 with 
gst_event_new_seek, 
> the VLC player could not play the created media file. 
> It's movie stopped after a few seconds playing, but only the 
> player's slider is moving to the last.
> 
> The first of buffer is not GST_BUFFER_FLAG_DELTA_UNIT.
> 
> On the other hand, in the case of the following pipeline without 
splitmuxsrc,
> The created media file can be played correctly with any player 
> contains the VLC, 
> even ifI changed range "start" to bigger than 0 with gst_event_new_seek.
> 
>     pipeline2 : filesrc ! qtdemux ! h264parse ! queue ! qtmux ! filesink
> 
> I tried the pipeline1 which changed H.265.
> The result was the same, but the following error occurred in gst-
> discover analysis.
> 
> ERROR libav :0:: Duplicate POC in a sequence: 3.
> ERROR libav :0:: Duplicate POC in a sequence: 4.
> 
> I would like to combine some media files. So I hope pipeline1.
> I don't know what the problem is and how the next action is.
> please help me.
> 
> Best regards,
> Kamiya.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20230904/f6f27890/attachment.htm>


More information about the gstreamer-devel mailing list