<div dir="auto"><div>Hi,<br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le mar. 1 août 2023, 03 h 15, geysee via gstreamer-devel <<a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span style="font-size:11pt;font-family:游ゴシック">Hello</span>
<br><span style="font-size:11pt;font-family:游ゴシック">I am Kamiya.</span>
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">I have a
question.</span>
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">Is it a good
way to separate pipelines in order to dynamically change properties </span>
<br><span style="font-size:11pt;font-family:游ゴシック">that cannot
be changed in the PLAYING state, such as the location property in filesrc?</span></blockquote></div></div><div dir="auto"><br></div><div dir="auto">It can be a good method. But from what you described below, you may get easier results with concat element instead. splitmuxsrc should work, there is a signal to query the filename from your app instead of using the glob.</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">I'm sorry
for the long post, but the background of the question is as follows.</span>
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">---------------------------------------------------------------------------------------------------------------------------------</span>
<br><span style="font-size:11pt;font-family:游ゴシック">I'm making
a system that records video from a network camera while dividing it into
files.</span>
<br><span style="font-size:11pt;font-family:游ゴシック">If the file
is split at 10 minute intervals, the file path will be as follows.</span>
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">C:/Rec/2023/07/31/1330_00000.mp4</span>
<br><span style="font-size:11pt;font-family:游ゴシック">C:/Rec/2023/07/31/1340_00000.mp4</span>
<br><span style="font-size:11pt;font-family:游ゴシック">C:/Rec/2023/07/31/1350_00000.mp4</span>
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">With gstreamer
C++ coding, I am trying to export as a single file by specifying the date
and time range from the divided recording files.</span>
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">If the date
and time range is in one file, like 13:32 - 13:34, then the pipeline below
has been successful. (Properties are omitted)</span>
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">pileline
: filesrc ! qtdemux ! h265parse ! queue ! qtmux ! filesink</span>
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">On the other
hand, if the date and time range is split into multiple files, like 7/31
20:00 - 8/1 10:00, this pipeline fails.</span>
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">First, I
tried multifilesrc and splitmuxsrc, but the location property is a glob
pattern, it didn't fit the file path of date and time.</span>
<br><span style="font-size:11pt;font-family:游ゴシック">Next, I tried
updating the location property of filesrc sequentially, but I couldn't
change the location when this state is PLAYING.</span>
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">So now I'm
trying to divide the pipeline into two as follows.</span>
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">pipeline1
: filesrc ! qtdemux ! h265parse ! appsink</span>
<br><span style="font-size:11pt;font-family:游ゴシック">pipeline2
: appsrc ! queue ! qtmux ! filesink</span>
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">When pipeline1
reaches the end of stream, I change the state of pipeline1 to Ready. </span>
<br><span style="font-size:11pt;font-family:游ゴシック">Next I change
the location of filesrc. Finaly I change state to PLAYING again.</span>
<br><span style="font-size:11pt;font-family:游ゴシック">The State
of pipeline2 is not changed.</span>
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">However this
way has not been successful yet. There are more problems than single pipeline.</span>
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">Currently
looking into the following issues:</span>
<br><span style="font-size:11pt;font-family:游ゴシック">If there
was single pipeline it was processed at high speed, but if the pipeline
is divided, the processing time will be as per the timestamp.</span>
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">Is it a good
way to split the pipeline like this?</span>
<br><span style="font-size:11pt;font-family:游ゴシック">I would appreciate
if you give me some advice.</span>
<br><span style="font-size:11pt;font-family:游ゴシック">---------------------------------------------------------------------------------------------------------------------------------</span>
<br>
<br><span style="font-size:11pt;font-family:游ゴシック">Best regards,</span>
<br><span style="font-size:11pt;font-family:游ゴシック">Kamiya.</span></blockquote></div></div></div>