2007-09-25 14:18:32

by thiagoss

[permalink] [raw]
Subject: [Bluez-devel] patches fixing gstreamer plugins

Patches for Bluez utils, modifying the sbcenc and sbcparse gstreamer plugins
on utils/audio


The problem:
The pipeline "filesrc ! audioconvert ! sbcenc ! sbcparse ! fakesink" is not
working

The reason:
The caps negotiation from both sbcenc and sbcparse was not working properly,
it was not resulting in a "fixed caps" (that defines one and only one media
type)

The solution:
Implement on both elements the setcaps for the sink pads.


The patch gstsbc_util.patch has to be applied first, it creates 2 new files(
a gstsbcutil.c and a gstsbcutil.h) that the other 2 patches use. Those files
implement a set of functions that both sbcenc and sbcparse use, most of them
are still to be improved,

The gstsbcenc.patch and sbcparse.patch implement the sink setcaps function
on the plugins, this function selects the better encoding parameters from
the possible ones, resulting in a "fixed caps".

I'll be waiting any questions and modification to the patches.


[]s

Thiago


Attachments:
(No filename) (971.00 B)
(No filename) (1.05 kB)
gstsbcenc.patch (7.12 kB)
gstsbcparse.patch (6.12 kB)
gstsbcutil.patch (7.67 kB)
(No filename) (228.00 B)
(No filename) (164.00 B)
Download all attachments

2007-09-26 22:19:57

by thiagoss

[permalink] [raw]
Subject: Re: [Bluez-devel] patches fixing gstreamer plugins

Hi Marcel

I know, the thing is the capabilities negotiation wasn't properly
implemented, some functions should have been overrided, sbcdec and sbcenc
should be enough to decode/encode, but since sbcparse was missing the same
thing sbcenc was, I did the work too.

If a use:
filesrc ! audioconvert ! sbcenc ! fakesink

it works, but that doesn't mean the problem isn't there, it just hasn't
ocurred, (the reason is that fakesink accept any kind of buffers, thus
negotiation is "everything is ok"), when I put sbcparse (even if its not
useful, it's just for testing) the negotiation should succeed, both of them
work with sbc, and it isn't succeeding.

Both sbcenc and sbcparse had a problem, the example I gave was only a
demonstration of the problem.

Regards

Thiago

On 9/26/07, Marcel Holtmann <[email protected]> wrote:
>
> Hi Thiago,
>
> > Patches for Bluez utils, modifying the sbcenc and sbcparse gstreamer
> > plugins on utils/audio
> >
> >
> > The problem:
> > The pipeline "filesrc ! audioconvert ! sbcenc ! sbcparse ! fakesink"
> > is not working
>
> actually the sbcparse is only there for annotating an SBC stream. For
> decoding the sbcdec should be used.
>
> Regards
>
> Marcel
>
>
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2005.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> _______________________________________________
> Bluez-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/bluez-devel
>


Attachments:
(No filename) (1.58 kB)
(No filename) (2.17 kB)
(No filename) (228.00 B)
(No filename) (164.00 B)
Download all attachments

2007-09-26 22:10:11

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-devel] patches fixing gstreamer plugins

Hi Thiago,

> Patches for Bluez utils, modifying the sbcenc and sbcparse gstreamer
> plugins on utils/audio
>
>
> The problem:
> The pipeline "filesrc ! audioconvert ! sbcenc ! sbcparse ! fakesink"
> is not working

actually the sbcparse is only there for annotating an SBC stream. For
decoding the sbcdec should be used.

Regards

Marcel



-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel

2007-09-25 15:51:32

by thiagoss

[permalink] [raw]
Subject: Re: [Bluez-devel] patches fixing gstreamer plugins

Sorry, I attached the wrong versions from the patches, I'm attaching the
correct versions now.

On 9/25/07, thiagoss <[email protected]> wrote:
>
> Patches for Bluez utils, modifying the sbcenc and sbcparse gstreamer
> plugins on utils/audio
>
>
> The problem:
> The pipeline "filesrc ! audioconvert ! sbcenc ! sbcparse ! fakesink" is
> not working
>
> The reason:
> The caps negotiation from both sbcenc and sbcparse was not working
> properly, it was not resulting in a "fixed caps" (that defines one and only
> one media type)
>
> The solution:
> Implement on both elements the setcaps for the sink pads.
>
>
> The patch gstsbc_util.patch has to be applied first, it creates 2 new
> files( a gstsbcutil.c and a gstsbcutil.h) that the other 2 patches use.
> Those files implement a set of functions that both sbcenc and sbcparse use,
> most of them are still to be improved,
>
> The gstsbcenc.patch and sbcparse.patch implement the sink setcaps function
> on the plugins, this function selects the better encoding parameters from
> the possible ones, resulting in a "fixed caps".
>
> I'll be waiting any questions and modification to the patches.
>
>
> []s
>
> Thiago
>
>


Attachments:
(No filename) (1.15 kB)
(No filename) (1.50 kB)
gstsbcenc.patch (7.12 kB)
gstsbcparse.patch (6.12 kB)
gstsbcutil.patch (8.39 kB)
(No filename) (228.00 B)
(No filename) (164.00 B)
Download all attachments