multifilesrc looping 24bit corrupted data on loop

Nick_law nicholas at umantec.net
Tue Feb 23 12:30:17 UTC 2021


Hi guys, 
I am finding that looping specifically a 24bit .wav file with multifilesrc
creates corrupted data seemingly every second loop.

I generate a 24bit wav with the following:

gst-launch-1.0 interleave name=i \
audiotestsrc num-buffers=100 wave=0 freq=100 volume=0.4 ! \
audio/x-raw,channels=1 ! tee name=t1 \
audiotestsrc num-buffers=100 wave=2 freq=100 volume=0.4 ! \
audio/x-raw,channels=1 ! tee name=t2 t1. ! queue ! i. t2. ! queue ! \
i. i.src ! audioconvert ! audio/x-raw,format=S24BE ! audioconvert ! wavenc !
filesink location=testin.wav

Which will generate the testin.wav file

I then try play out and loop this file to a new .wav with the following:

gst-launch-1.0 interleave name=i ! \
audioconvert ! audio/x-raw,format=S24BE ! audioconvert ! wavenc ! filesink
location=testout.wav \
multifilesrc num-buffers=600 location=testin.wav loop=true ! wavparse
ignore-length=1 ! \
deinterleave name=d0 d0.src_0 ! audioconvert ! volume volume=1 ! queue ! \
i.sink_0 d0.src_1 ! audioconvert ! volume volume=1 ! queue ! i.sink_1 

I then open testout.wav in audacity and can see the first loop looks ok but
then the second loop is corrupted but then the 3rd loop looks OK again.

Looping 16bit and 32bit seems to work with a small glitch on each loop.

All I really want is to loop a .wav (16bit,24bit and 32bit) without pauses
between loops.

Any help would be greatly appreaciated.
Nick




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


More information about the gstreamer-devel mailing list