[gst-devel] Audioconvert issues

Benjamin Otte in7y118 at public.uni-hamburg.de
Fri Mar 19 07:44:26 CET 2004


The problem with this is actually fixation. It's not that audioconvert does too 
much. Splitting the functionality of audioconvert into many different elements 
just shifts the problem from selecting the right caps inside audioconvert to 
selecting the right element(s).

The problem is this: Given an input caps A and possible output caps X, Y and Z, 
how do you determine the best output caps?

If anyone knows a solution to that problem, please speak up.
The quick fix we are currently using: Use the most common caps (fixate to 
44100, 2 channels, 16bit int in the audio case, I420 YUV or 24bit RGB in the 
video case).

In the meantime I'll fix audioconvert to provide a fixation function that does 
some guessing on correct format.

Benjamin


Quoting iain <iain at prettypeople.org>:

> Okay, first off, an apology to david to whom I was a bit of a dick on
> IRC. I'm sorry, I was just really frustrated that I've not been able to
> work on Marlin for ages...
> 
> Secondly, with this pipeline
> 
> filesrc ! spider ! audioconvert ! audio/x-raw-float ! deinterleave !
> sink
> 
> audioconvert always converts to mono. david says this is because
> audioconverts src pad says "I don't care what I get" and the sink pad
> says the same so they fix on mono audio. If I add a channels=2 into the
> filter caps then it'll give me stereo data, but I cannot know before
> hand what format of data is coming from spider, it could be mono, stereo
> or 65 channel audio, so I can't hard code it. There is also apparently
> no way to get the data from spider, so I can't filter it later when I
> know.
> 
> ds says that real problem is that audioconvert is doing too much, and
> that it should only be doing int/float, depth and width conversions, and
> not number of channels. His suggestion for me to be able to get it
> working was "Complain on the mailing list that audioconvert is doing too
> much stuff", so this is my complaint.
> 
> I don't really know what it's supposed to do, but in my head
> audioconvert should not be doing anything, unless it is told to somehow
> (either by caps nego at the src pad or filtered connection). So if it
> has 2 channel audio coming in, then it should pass 2 channel out again.
> In effect it would work like an identity element. That is what makes
> sense to me, the current practise seems broken to me.
> 
> iain
> 
> 
> 
> -------------------------------------------------------
> This SF.Net email is sponsored by: IBM Linux Tutorials
> Free Linux tutorial presented by Daniel Robbins, President and CEO of
> GenToo technologies. Learn everything from fundamentals to system
> administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
> 






More information about the gstreamer-devel mailing list