AAC playback get wrong when using gst-launch running on the CPU is 400MHz, system memory is 32MB, CPU is lexra (MIPS like)

Diaz Soho soho123.2012 at gmail.com
Wed Dec 4 01:11:04 PST 2013


Hi All,


if my command line :
gst-launch-0.10 -v playbin2 uri=
http://192.168.1.3:9000/disk/DLNA-PNAAC_ISO-OP
01-FLAGS01700000/O0$1$8I2829.m4a

how to output the audio content to file NOT sound card?


2013/12/4 Diaz Soho <soho123.2012 at gmail.com>

> Hi All experts in gstreamer:
>
>
> Does anyone have idea about the issue I got below?
>
> my target platform is CPU is 400MHz, system memory is 32MB, CPU is lexra
> (MIPS like).
>
> when test AAC decode function, it can not hear the normal sound from USB
> sound card for the whole song.
> I can hear the sound about the first 1 second, then I can NOT hear any
> output from USB sound card.
> But I can see the LED on USB sound card is blinking. It seems USB sound
> card have some thing to playback.
> the media Info of audio file is :
> 431Kbps, 44.1Khz, 2 channel, AAC(LC)
>
>
>
> Any input is very very appreciated!!!
>
>
>
>
> below is the log when I use gst-launch command.
>
>
> # gst-launch-0.10 -v playbin2 uri=
> http://192.168.1.3:9000/disk/DLNA-PNAAC_ISO-OP
> 01-FLAGS01700000/O0$1$8I2829.m4a
>
>
> Setting pipeline to PAUSED ...
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0: ring-buffer-max-size
> = 0
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0: buffer-size = -1
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0: buffer-duration =
> 4000000000
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0: use-buffering = FALSE
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0: download = FALSE
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0: uri = "
> http://192.168.1.3:9000/disk/DLNA-PNAAC_ISO-OP01-FLAGS01700000/O0I2829.m4a
> "
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0: connection-speed = 0
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0: source =
> (GstSoupHTTPSrc) source
> Pipeline is PREROLLING ...
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstTypeFindElement:typefindelement0.GstPad:src:
> caps = video/quicktime, variant=(string)iso
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstTypeFindElement:typefind:
> force-caps = video/quicktime, variant=(string)iso
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20:
> sink-caps = video/quicktime, variant=(string)iso
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstTypeFindElement:typefind.GstPad:src:
> caps = video/quicktime, variant=(string)iso
> buffering... 0%
>  /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstQueue2:queue20.GstPad:sink:
> caps = video/quicktime, variant=(string)iso
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstQueue2:queue20.GstPad:src:
> caps = video/quicktime, variant=(string)iso
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstTypeFindElement:typefind.GstPad:sink:
> caps = video/quicktime, variant=(string)iso
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20.GstGhostPad:sink:
> caps = video/quicktime, variant=(string)iso
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20.GstGhostPad:sink.GstProxyPad:proxypad0:
> caps = video/quicktime, variant=(string)iso
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstQTDemux:qtdemux0.GstPad:sink:
> caps = video/quicktime, variant=(string)iso
> buffering... 1%  buffering... 2%  buffering... 3%  buffering... 4%
>  buffering... 5%  buffering... 6%
>  /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMultiQueue:multiqueue0:
> max-size-buffers = 5
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMultiQueue:multiqueue0:
> max-size-time = 0
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMultiQueue:multiqueue0:
> max-size-bytes = 2097152
> buffering... 7%
>  /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMultiQueue:multiqueue0.GstPad:sink0:
> caps = audio/mpeg, mpegversion=(int)4, framed=(boolean)true,
> stream-format=(string)raw, level=(string)2, base-profile=(string)lc,
> profile=(string)lc, codec_data=(buffer)121056e500, rate=(int)44100,
> channels=(int)2
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMultiQueue:multiqueue0.GstPad:src0:
> caps = audio/mpeg, mpegversion=(int)4, framed=(boolean)true,
> stream-format=(string)raw, level=(string)2, base-profile=(string)lc,
> profile=(string)lc, codec_data=(buffer)121056e500, rate=(int)44100,
> channels=(int)2
> buffering... 8%  buffering... 9%  buffering... 10%  buffering... 11%
>  buffering... 12%  buffering... 13%  buffering... 14%  buffering... 15%
>  buffering... 16%  buffering... 17%  buffering... 18%  buffering... 19%
>  buffering... 18%  buffering... 19%  buffering... 20%  buffering... 21%
>  buffering... 22%  buffering... 23%  buffering... 24%
>  /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstAacParse:aacparse0.GstPad:src:
> caps = audio/mpeg, mpegversion=(int)4, framed=(boolean)true,
> stream-format=(string)raw, level=(string)2, base-profile=(string)lc,
> profile=(string)lc, codec_data=(buffer)121056e500, rate=(int)44100,
> channels=(int)2
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstAacParse:aacparse0.GstPad:sink:
> caps = audio/mpeg, mpegversion=(int)4, framed=(boolean)true,
> stream-format=(string)raw, level=(string)2, base-profile=(string)lc,
> profile=(string)lc, codec_data=(buffer)121056e500, rate=(int)44100,
> channels=(int)2
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMultiQueue:multiqueue0:
> max-size-buffers = 5
> buffering... 25%
>  /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMultiQueue:multiqueue0:
> max-size-time = 0
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMultiQueue:multiqueue0:
> max-size-bytes = 2097152
> buffering... 26%  buffering... 27%
>  /GstPlayBin2:playbin20/GstInputSelector:inputselector0.GstSelectorPad:sink0:
> always-ok = FALSE
> buffering... 28%  /GstPlayBin2:playbin20/GstInputSelector:inputselector0:
> active-pad = (GstSelectorPad) sink0
> buffering... 29%  buffering... 30%  buffering... 31%  buffering... 32%
>  buffering... 33%
>
> buffering... 34%
> buffering... 35%  buffering... 36%  buffering... 37%  buffering... 38%
>  buffering... 39%  buffering... 40%  buffering... 41%  buffering... 42%
>  buffering... 43%  buffering... 46%  buffering... 47%  buffering... 48%
>  buffering... 49%  buffering... 50%  buffering... 51%  buffering... 52%
>  buffering... 53%  buffering... 54%  buffering... 55%  buffering... 54%
>  buffering... 55%  buffering... 56%  buffering... 57%  buffering... 58%
>  buffering... 59%  buffering... 60%  buffering... 61%  buffering... 60%
>  buffering... 61%  buffering... 62%  buffering... 63%  buffering... 64%
>  buffering... 65%  buffering... 66%  buffering... 67%
> buffering... 68%  buffering... 69%  buffering... 70%  buffering... 71%
>  buffering... 72%  buffering... 73%  buffering... 74%  buffering... 75%
>  buffering... 76%  buffering... 77%  buffering... 78%  buffering... 77%
>  buffering... 78%  buffering... 79%  buffering... 82%  buffering... 83%
>  buffering... 84%  buffering... 85%  buffering... 86%  buffering... 87%
>  buffering... 88%  buffering... 89%  buffering... 90%  buffering... 91%
>  buffering... 92%  buffering... 88%  buffering... 89%  buffering... 90%
>  buffering... 91%  buffering... 92%  buffering... 93%  buffering... 94%
>  buffering... 93%  buffering... 94%  buffering... 95%  buffering... 96%
>  /GstPlayBin2:playbin20/GstPlaySink:playsink0: volume = 1.000000
> /GstPlayBin2:playbin20/GstPlaySink:playsink0: mute = FALSE
>
> buffering... 97%  buffering... 98%
>
> buffering... 100%  Pipeline is PREROLLED ...
> Setting pipeline to PLAYING ...
>
> /GstPlayBin2:playbin20/GstInputSelector:inputselector0.GstSelectorPad:sink0:
> tags = ((GstTagList*) 0x6d6f18)
> /GstPlayBin2:playbin20/GstInputSelector:inputselector0.GstSelectorPad:sink0:
> tags = ((GstTagList*) 0x6d6f00)
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/ffdec_aac:ffdec_aac0.GstPad:sink:
> caps = audio/mpeg, mpegversion=(int)4, framed=(boolean)true,
> stream-format=(string)raw, level=(string)2, base-profile=(string)lc,
> profile=(string)lc, codec_data=(buffer)121056e500, rate=(int)44100,
> channels=(int)2
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0.GstGhostPad:src0:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20.GstDecodePad:src0:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/ffdec_aac:ffdec_aac0.GstPad:src:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstInputSelector:inputselector0.GstSelectorPad:sink0:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0.GstGhostPad:src0.GstProxyPad:proxypad6:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20.GstDecodePad:src0.GstProxyPad:proxypad5:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstInputSelector:inputselector0.GstPad:src: caps =
> audio/x-raw-int, rate=(int)44100, channels=(int)2, signed=(boolean)true,
> endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstTee:audiotee.GstPad:sink:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstTee:audiotee.GstPad:src0:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstTee:audiotee.GstPad:sink:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0.GstGhostPad:audio_sink: caps
> = audio/x-raw-int, rate=(int)44100, channels=(int)2, signed=(boolean)true,
> endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0.GstGhostPad:audio_sink.GstProxyPad:proxypad7:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstStreamSynchronizer:streamsynchronizer0.GstPad:sink_0:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstStreamSynchronizer:streamsynchronizer0.GstPad:src_0:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstQueue:aqueue.GstPad:sink:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin.GstGhostPad:sink:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin.GstGhostPad:sink.GstProxyPad:proxypad11:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstQueue:aqueue.GstPad:src:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
>
> /GstPlayBin2:playbin20/GstInputSelector:inputselector0.GstSelectorPad:sink0:
> tags = ((GstTagList*) 0x675ac8)
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstPlaySinkAudioConvert:aconv/GstAudioConvert:conv.GstPad:src:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstPlaySinkAudioConvert:aconv/GstAudioConvert:conv.GstPad:sink:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstPlaySinkAudioConvert:aconv.GstGhostPad:sink:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstPlaySinkAudioConvert:aconv.GstGhostPad:sink.GstProxyPad:proxypad9:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstPlaySinkAudioConvert:aconv/GstAudioResample:resample.GstPad:src:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstPlaySinkAudioConvert:aconv/GstAudioResample:resample.GstPad:sink:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstPlaySinkAudioConvert:aconv.GstGhostPad:src:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstPlaySinkAudioConvert:aconv/GstVolume:volume.GstPad:src:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstPlaySinkAudioConvert:aconv/GstVolume:volume.GstPad:sink:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
>
>
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstAutoAudioSink:audiosink/GstAlsaSink:audiosink-actual-sink-alsa.GstPad:sink:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstAutoAudioSink:audiosink.GstGhostPad:sink:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstPlaySinkAudioConvert:aconv.GstGhostPad:src.GstProxyPad:proxypad10:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> /GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstAutoAudioSink:audiosink.GstGhostPad:sink.GstProxyPad:proxypad8:
> caps = audio/x-raw-int, rate=(int)44100, channels=(int)2,
> signed=(boolean)true, endianness=(int)4321, width=(int)16, depth=(int)16
> New clock: GstAudioSinkClock
> ^CCaught interrupt -- handling interrupt.
> Interrupt: Stopping pipeline ...
> Execution ended after 10130000000 ns.
> Setting pipeline to PAUSED ...
>
>
> #
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20131204/1188641c/attachment-0001.html>


More information about the gstreamer-devel mailing list