[gst-devel] gst_segment_set_newsegment_full error in gnonlin

Brian Hope brian at hopefamily.info
Sun Feb 21 10:06:54 CET 2010


This is my first post and I have tried to follow guidelines but please
advise me if I have gone wrong.
Background
I am trying to write a wxPython program to take a vinyl LP and
1. collect track data etc via muscibrainz
2. record LP to disk using gstreamer
3. find track start and end times using python.audioprocessing
4. record separate track using gstreamer/gnonlin

I have the essence of the first three steps working but need to add
iteration, validation and presentation code.

However in the fourth step I get python "Segmentation Error". I googled
this and then tried running under strace, but I do not have the
knowledge to understand the output. I then switched to the CLI using
gst-launch. I got the segment error again and googling this showed it
used to be a problem but has been fixed. I downloaded the latest
versions of gstreamer, gnonlin, the various plugins and the python
binding just in case Ubuntu Karmic had an older version but I still get
the error. Everything compiledand installed OK except the python
bindings. I have put that to one side to fix later.

Firstly, many thanks to jonbacon's tutorials without which I would not
have got this far.

Here is the key output, with verbose on.

========================================================
/brian/Music/test.wav' start=0 duration=11000000000
media-start=2000000000 media-duration=11000000000 !  audioconvert  !
flacenc ! filesink location = '/home/brian/Music/1.flac'
Setting pipeline to PAUSED ...
/GstPipeline:pipeline0/GnlFileSource:gnlfilesource0/GstURIDecodeBin:internal-uridecodebin: source = (GstFileSrc) source
/GstPipeline:pipeline0/GnlFileSource:gnlfilesource0/GstURIDecodeBin:internal-uridecodebin/GstDecodeBin2:decodebin20/GstTypeFindElement:typefind.GstPad:src: caps = audio/x-wav
Pipeline is PREROLLING ...
/GstPipeline:pipeline0/GnlFileSource:gnlfilesource0/GstURIDecodeBin:internal-uridecodebin/GstDecodeBin2:decodebin20/GstWavParse:wavparse0.GstPad:sink: caps = audio/x-wav
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:src: caps =
audio/x-raw-int, endianness=(int)1234, signed=(boolean)true,
rate=(int)44100, channels=(int)2, width=(int)32, depth=(int)24
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:sink: caps =
audio/x-raw-int, endianness=(int)1234, channels=(int)2, width=(int)32,
depth=(int)32, signed=(boolean)true, rate=(int)44100
/GstPipeline:pipeline0/GnlFileSource:gnlfilesource0.GstGhostPad:src0:
caps = audio/x-raw-int, endianness=(int)1234, channels=(int)2,
width=(int)32, depth=(int)32, signed=(boolean)true, rate=(int)44100
/GstPipeline:pipeline0/GnlFileSource:gnlfilesource0.GstGhostPad:src0.GstProxyPad:proxypad4: caps = audio/x-raw-int, endianness=(int)1234, channels=(int)2, width=(int)32, depth=(int)32, signed=(boolean)true, rate=(int)44100
/GstPipeline:pipeline0/GnlFileSource:gnlfilesource0/GstURIDecodeBin:internal-uridecodebin.GstGhostPad:src0: caps = audio/x-raw-int, endianness=(int)1234, channels=(int)2, width=(int)32, depth=(int)32, signed=(boolean)true, rate=(int)44100
/GstPipeline:pipeline0/GnlFileSource:gnlfilesource0/GstURIDecodeBin:internal-uridecodebin.GstGhostPad:src0.GstProxyPad:proxypad3: caps = audio/x-raw-int, endianness=(int)1234, channels=(int)2, width=(int)32, depth=(int)32, signed=(boolean)true, rate=(int)44100
/GstPipeline:pipeline0/GnlFileSource:gnlfilesource0/GstURIDecodeBin:internal-uridecodebin/GstDecodeBin2:decodebin20.GstDecodePad:src0: caps = audio/x-raw-int, endianness=(int)1234, channels=(int)2, width=(int)32, depth=(int)32, signed=(boolean)true, rate=(int)44100
/GstPipeline:pipeline0/GnlFileSource:gnlfilesource0/GstURIDecodeBin:internal-uridecodebin/GstDecodeBin2:decodebin20.GstDecodePad:src0.GstProxyPad:proxypad2: caps = audio/x-raw-int, endianness=(int)1234, channels=(int)2, width=(int)32, depth=(int)32, signed=(boolean)true, rate=(int)44100
/GstPipeline:pipeline0/GstFlacEnc:flacenc0.GstPad:src: caps =
audio/x-flac, channels=(int)2, rate=(int)44100
/GstPipeline:pipeline0/GstFlacEnc:flacenc0.GstPad:sink: caps =
audio/x-raw-int, endianness=(int)1234, signed=(boolean)true,
rate=(int)44100, channels=(int)2, width=(int)32, depth=(int)24
/GstPipeline:pipeline0/GstFlacEnc:flacenc0.GstPad:src: caps =
audio/x-flac, channels=(int)2, rate=(int)44100, streamheader=(buffer)<
7f464c414301000002664c614300000022120012000000000000000ac44370000766ec00000000000000000000000000000000, 84000028200000007265666572656e6365206c6962464c414320312e322e3120323030373039313700000000 >
/GstPipeline:pipeline0/GstFileSink:filesink0.GstPad:sink: caps =
audio/x-flac, channels=(int)2, rate=(int)44100, streamheader=(buffer)<
7f464c414301000002664c614300000022120012000000000000000ac44370000766ec00000000000000000000000000000000, 84000028200000007265666572656e6365206c6962464c414320312e322e3120323030373039313700000000 >
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock

(gst-launch-0.10:3895): GStreamer-CRITICAL **:
gst_segment_set_newsegment_full: assertion `segment->format == format'
failed

(gst-launch-0.10:3895): GStreamer-CRITICAL **:
gst_segment_set_newsegment_full: assertion `segment->format == format'
failed

(gst-launch-0.10:3895): GStreamer-CRITICAL **:
gst_segment_set_newsegment_full: assertion `segment->format == format'
failed
Got EOS from element "pipeline0".
Execution ended after 240395628 ns.
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
/GstPipeline:pipeline0/GstFileSink:filesink0.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstFlacEnc:flacenc0.GstPad:src: caps = NULL
/GstPipeline:pipeline0/GstFlacEnc:flacenc0.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:src: caps =
NULL
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:sink: caps =
NULL
/GstPipeline:pipeline0/GnlFileSource:gnlfilesource0.GstGhostPad:src0:
caps = NULL
/GstPipeline:pipeline0/GnlFileSource:gnlfilesource0/GstURIDecodeBin:internal-uridecodebin.GstGhostPad:src0: caps = NULL
/GstPipeline:pipeline0/GnlFileSource:gnlfilesource0/GstURIDecodeBin:internal-uridecodebin/GstDecodeBin2:decodebin20.GstDecodePad:src0: caps = NULL
/GstPipeline:pipeline0/GnlFileSource:gnlfilesource0/GstURIDecodeBin:internal-uridecodebin/GstDecodeBin2:decodebin20/GstWavParse:wavparse0.GstPad:src: caps = NULL
/GstPipeline:pipeline0/GnlFileSource:gnlfilesource0/GstURIDecodeBin:internal-uridecodebin/GstDecodeBin2:decodebin20/GstWavParse:wavparse0.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GnlFileSource:gnlfilesource0/GstURIDecodeBin:internal-uridecodebin/GstDecodeBin2:decodebin20/GstTypeFindElement:typefind.GstPad:src: caps = NULL
Setting pipeline to NULL ...
Freeing pipeline ...
================================================================================================================================

Any guidance on how I should proceed to overcome the segment error? I am
running Ubuntu Karmic on a 32 bit Dell Inspiron 9400 laptop with 2Gb of
memory.

Thanks in advance for your time.





More information about the gstreamer-devel mailing list