filesrc not posting EOS after num-buffers

chakra wire.chakri at gmail.com
Tue Aug 20 07:12:10 UTC 2019


Hi,

I want to concat mp4 files with ability to choose certain particular video
length in each file. So I tried pipeline as below,

Here 

/mnt/av/10-1__1565952248.mp4 => 20 seconds
/mnt/av/10-3__1820009855.mp4 => 30 seconds

gst-launch-1.0 concat name=c ! queue ! h264parse ! mp4mux
reserved-moov-update-period=10000 ! filesink
location=/mnt/av/concat_media1.mp4 \
  filesrc location=/mnt/av/10-1__1565952248.mp4 num-buffers=90 ! qtdemux !
queue ! c. \
  filesrc location=/mnt/av/10-3__1820009855.mp4 ! qtdemux ! queue ! c.


With frame rate of 30fps I want to concat 3 seconds of 10-1__1565952248.mp4
with rest of other file, so I applied a property of num-buffers=90 on first
file src. But result is on generated output /mnt/av/concat_media1.mp4 

The first file video is captured for 3 seconds but rest 17 seconds its blank
video or last frame, then again second file starts playing and ofcourse
total file length is 50 secs, rather than 33 seconds

Its like as below for output file /mnt/av/concat_media1.mp4

0-3 seconds=> Actual 0-3 seconds video from first file
4-20 seconds=> Blank black screen
21-50 seconds=> Actual 0-30 seconds from second file

I want the second video to start after 3 seconds of first one, may be
filesrc is missing to send EOS immediately after num-buffers?

Is there a way I can achieve this?

Please let know if any more details needed





--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/


More information about the gstreamer-devel mailing list