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 163841 - [adder] capsnego on sink pads needs to be more robust
[adder] capsnego on sink pads needs to be more robust
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other other
: Normal normal
: git master
Assigned To: Wim Taymans
GStreamer Maintainers
: 344205 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2005-01-12 18:25 UTC by Benjamin Otte (Company)
Modified: 2008-10-17 09:07 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Prevent stream going silent on new chain (1.80 KB, application/octet-stream)
2007-01-22 02:13 UTC, Philip Allison
Details

Description Benjamin Otte (Company) 2005-01-12 18:25:03 UTC
gst-launch-0.8 filesrc location=file.mp3 ! mad ! adder ! alsasink filesrc
location=file.mp3 ! mad ! adder0.
(note that both filesrcs reference the same file)

Currently it fails because the first mad gets a DELAYED from the other mad
element and can't go on.
The scheduling should make it possible to get the other part of the pipeline
where negotiation can work.
Comment 1 Ronald Bultje 2005-06-09 16:33:30 UTC

*** This bug has been marked as a duplicate of 305658 ***
Comment 2 Benjamin Otte (Company) 2005-06-14 12:05:34 UTC
Ok, let's reformulate this pipeline/bug a bit:
gst-launch-0.8 filesrc location=file.mp3 ! mad ! audioconvert ! adder ! alsasink
filesrc
location=file.ogg ! oggdemux ! vorbisdec ! adder0.

This pipeline should work without adder ever allowing int input.
Comment 3 Ronald Bultje 2005-06-14 13:00:04 UTC
That works already, because the template of vorbisdec lacks integer output. Can
you give a more specific explanation of something that happens and should not
happen? E.g. samplerate choice or whatever.
Comment 4 Benjamin Otte (Company) 2005-06-16 14:21:03 UTC
Oh right.

Then let's use something like this:
gst-launch-0.8 filesrc location=48k.mp3 ! mad ! audioscale ! adder ! alsasink
filesrc
location=32k.mp3 ! mad ! adder0.
Comment 5 Ronald Bultje 2005-06-16 14:49:11 UTC
k = Hz? :)

I get the point; will look...
Comment 6 Andy Wingo 2005-07-16 09:22:22 UTC
Changing topic, changing component to gst-plugins-base, confirming. It seems to
me this is just a problem with adder's capsnego algorithm. Feel free to
revert/change any changes of course...
Comment 7 Julien MOUTTE 2005-10-24 15:16:09 UTC
Adder enforce caps on other sink pads when setcaps is called. int audio and
float audio with no converter just won't work.
Comment 8 Wim Taymans 2006-06-13 16:10:09 UTC
*** Bug 344205 has been marked as a duplicate of this bug. ***
Comment 9 Philip Allison 2007-01-22 02:13:01 UTC
Created attachment 80853 [details]
Prevent stream going silent on new chain

Fixes the miscalculation of segment_start, but seems to result in dropped data when new chain encountered.
Comment 10 Philip Allison 2007-01-22 02:13:58 UTC
Sorry - please ignore that attachment. Wrong bug number.

My humble apologies.
Comment 11 Stefan Sauer (gstreamer, gtkdoc dev) 2008-10-17 09:04:18 UTC
Is this bug still valid. Imho what one needs to do (and this is what works fine for me in buzztard) is:
gst-launch \
filesrc location=file.mp3 ! mad ! audioconvert ! adder ! capsfilter ! alsasink \
filesrc location=file.ogg ! oggdemux ! vorbisdec ! audioconvert ! adder0.

Use audioconvert for each input-branch and use capsfilter to tell which format is desides after adder. Adder needs all inputs to be using the same format.
Comment 12 Wim Taymans 2008-10-17 09:07:50 UTC
yeah, closing, there is nothing interesting we can do improve adder.