After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 744885 - ape audio not support
ape audio not support
Status: RESOLVED NOTABUG
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
1.4.5
Other Windows
: Normal normal
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-02-21 08:00 UTC by ukala
Modified: 2015-03-08 03:42 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description ukala 2015-02-21 08:00:07 UTC
add gst-plugins-good,but ape audio can not play
Comment 1 Tim-Philipp Müller 2015-02-21 09:53:45 UTC
You also need gst-libav to play it. If you still have problems with that, please re-open the bug and make a sample file available so we can test, thanks.
Comment 2 ukala 2015-03-03 10:08:19 UTC
root@OpenWrt:/tmp# gst-launch-0.10 filesrc location=/tmp/586957.ape ! decodebin2 ! autoaudiosink
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Missing element: APE tag demuxer
ERROR: from element /GstPipeline:pipeline0/GstDecodeBin2:decodebin20: Your GStreamer installation is missing a plug-in.
Additional debug info:
gstdecodebin2.c(3576): gst_decode_bin_expose (): /GstPipeline:pipeline0/GstDecodeBin2:decodebin20:
no suitable plugins found
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...

not find the ape tag
Comment 3 Tim-Philipp Müller 2015-03-03 10:15:12 UTC
You need apedemux from gst-plugins-good for that.
Comment 4 ukala 2015-03-04 03:20:22 UTC
ok,thanks,the problem fix,but i discover that gst-plugins-good and gst-libav have some decoder or demux duplicate,why not gst-plugins-good do tag olny,and gst-libav do decoder olny?
Comment 5 ukala 2015-03-06 05:42:51 UTC
play localtion ape file suceess,play network uri of MP3 file success,but play network uri of ape file failed。
# gst-launch-1.0 playbin uri=file:///tmp/2.ape
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstAudioSinkClock
Got EOS from element "playbin0".
Execution ended after 0:00:00.219795196
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...

# gst-launch-1.0 playbin uri=http://192.168.1.222:8602/file?sid=8.mp3
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstAudioSinkClock
^Chandling interrupt.
Interrupt: Stopping pipeline ...
Execution ended after 0:00:07.804398754
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...
# 
# 
# gst-launch-1.0 playbin uri=http://192.168.1.222:8602/file?sid=18.ape
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Missing element: APE tag demuxer
WARNING: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: No decoder available for type 'application/x-ape'.
Additional debug info:
gsturidecodebin.c(939): unknown_type_cb (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0
ERROR: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: Your GStreamer installation is missing a plug-in.
Additional debug info:
gsturidecodebin.c(990): no_more_pads_full (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0:
no suitable plugins found
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...
#
Comment 6 Thiago Sousa Santos 2015-03-06 14:58:05 UTC
Both demuxers are required AFAIK, one is for apetag, the other for ape. Your problem is that the avdemux_ape can't operate in pull mode.
Comment 7 ukala 2015-03-07 01:38:50 UTC
how resolve?can you guide?
Comment 8 Thiago Sousa Santos 2015-03-07 13:51:42 UTC
  /* blacklist unreliable push-based demuxers */
  if (strcmp (oclass->in_plugin->name, "ape"))
    demux->can_push = TRUE;
  else
    demux->can_push = FALSE;


gst-libav marks ape demuxer from libav as unsafe for push-based mode. You'd need to check if that is still valid and if it is, fix it in libav.
Comment 9 Tim-Philipp Müller 2015-03-07 14:04:36 UTC
The problem might also be with the gst-libav demuxer wrapper of course. This is bug #738807 by the way.
Comment 10 ukala 2015-03-08 03:42:28 UTC
(In reply to Thiago Sousa Santos from comment #8)
>   /* blacklist unreliable push-based demuxers */
>   if (strcmp (oclass->in_plugin->name, "ape"))
>     demux->can_push = TRUE;
>   else
>     demux->can_push = FALSE;
> 
> 
> gst-libav marks ape demuxer from libav as unsafe for push-based mode. You'd
> need to check if that is still valid and if it is, fix it in libav.

i already try to modify it,but not play http streamers of ape