Forcing synchronisation in a specific part of a pipeline

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Forcing synchronisation in a specific part of a pipeline

SP GLE
Hello,

Using the following pipeline :
[filesrc]---->[rtppcmapay]---->[rtpdtmfmux]-----...--->[fakesink sync=true]
                                 /\
[rtpdtmfsrc]----------------------

When playing a DTMF the rtpdtmfmux locks the stream and unref all
buffers from the filesrc, but without syncing on the clock, so file
reading looses sync and all buffers are played as fast as possible.

How can we sync the filesrc part before injecting in rtpdtmfmux ?

We tried by adding an identity with sync=true but tis one requires
segments with GST_FORMAT_TIME and not BYTES as provided by filesrc.

The probleme can be reflected by this cmd :
A/ Working Pipeline
gst-launch filesrc location=toto.alaw ! "audio/x-alaw,rate=8000,channels=1" ! identity datarate=8000 ! rtppcmapay ! fakesink sync=true

B/ How to make previous cli works if disabling sync=true on fakesink.


Any idea is welcome :).

Regards.


     

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Forcing synchronisation in a specific part of a pipeline

Edward Hervey
Administrator
On Wed, 2009-02-18 at 08:29 +0000, SP GLE wrote:

> Hello,
>
> Using the following pipeline :
> [filesrc]---->[rtppcmapay]---->[rtpdtmfmux]-----...--->[fakesink sync=true]
>                                  /\
> [rtpdtmfsrc]----------------------
>
> When playing a DTMF the rtpdtmfmux locks the stream and unref all
> buffers from the filesrc, but without syncing on the clock, so file
> reading looses sync and all buffers are played as fast as possible.
>
> How can we sync the filesrc part before injecting in rtpdtmfmux ?
>
> We tried by adding an identity with sync=true but tis one requires
> segments with GST_FORMAT_TIME and not BYTES as provided by filesrc.
>
> The probleme can be reflected by this cmd :
> A/ Working Pipeline
> gst-launch filesrc location=toto.alaw ! "audio/x-alaw,rate=8000,channels=1" ! identity datarate=8000 ! rtppcmapay ! fakesink sync=true
>
> B/ How to make previous cli works if disabling sync=true on fakesink.
>
>
> Any idea is welcome :).

  Use the sync property of identity :)

>
> Regards.
>
>
>      
>
> ------------------------------------------------------------------------------
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open source participation
> -Receive a $600 discount off the registration fee with the source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Forcing synchronisation in a specific part of a pipeline

SP GLE
Won't work...

> > We tried by adding an identity with sync=true but tis
> one requires
> > segments with GST_FORMAT_TIME and not BYTES as
> provided by filesrc.


--- En date de : Mer 18.2.09, Edward Hervey <[hidden email]> a écrit :

> De: Edward Hervey <[hidden email]>
> Objet: Re: [gst-devel] Forcing synchronisation in a specific part of a pipeline
> À: [hidden email], "Discussion of the development of GStreamer" <[hidden email]>
> Date: Mercredi 18 Février 2009, 9h43
> On Wed, 2009-02-18 at 08:29 +0000, SP GLE wrote:
> > Hello,
> >
> > Using the following pipeline :
> >
> [filesrc]---->[rtppcmapay]---->[rtpdtmfmux]-----...--->[fakesink
> sync=true]
> >                                  /\
> > [rtpdtmfsrc]----------------------
> >
> > When playing a DTMF the rtpdtmfmux locks the stream
> and unref all
> > buffers from the filesrc, but without syncing on the
> clock, so file
> > reading looses sync and all buffers are played as fast
> as possible.
> >
> > How can we sync the filesrc part before injecting in
> rtpdtmfmux ?
> >
> > We tried by adding an identity with sync=true but tis
> one requires
> > segments with GST_FORMAT_TIME and not BYTES as
> provided by filesrc.
> >
> > The probleme can be reflected by this cmd :
> > A/ Working Pipeline
> > gst-launch filesrc location=toto.alaw !
> "audio/x-alaw,rate=8000,channels=1" ! identity
> datarate=8000 ! rtppcmapay ! fakesink sync=true
> >
> > B/ How to make previous cli works if disabling
> sync=true on fakesink.
> >
> >
> > Any idea is welcome :).
>
>   Use the sync property of identity :)
>
> >
> > Regards.
> >
> >
> >      
> >
> >
> ------------------------------------------------------------------------------
> > Open Source Business Conference (OSBC), March 24-25,
> 2009, San Francisco, CA
> > -OSBC tackles the biggest issue in open source: Open
> Sourcing the Enterprise
> > -Strategies to boost innovation and cut costs with
> open source participation
> > -Receive a $600 discount off the registration fee with
> the source code: SFAD
> > http://p.sf.net/sfu/XcvMzF8H
> > _______________________________________________
> > gstreamer-devel mailing list
> > [hidden email]
> >
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel


     

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Forcing synchronisation in a specific part of a pipeline

Edward Hervey
Administrator
Maybe it would be better then to have a proper alaw parser. It shouldn't
be too hard to write one in the rawparse plugin (inspiring yourself from
the rawaudioparse). alaw is a *really* simple format after all.

  Edward

On Wed, 2009-02-18 at 08:47 +0000, SP GLE wrote:

> Won't work...
>
> > > We tried by adding an identity with sync=true but tis
> > one requires
> > > segments with GST_FORMAT_TIME and not BYTES as
> > provided by filesrc.
>
>
> --- En date de : Mer 18.2.09, Edward Hervey <[hidden email]> a écrit :
>
> > De: Edward Hervey <[hidden email]>
> > Objet: Re: [gst-devel] Forcing synchronisation in a specific part of a pipeline
> > À: [hidden email], "Discussion of the development of GStreamer" <[hidden email]>
> > Date: Mercredi 18 Février 2009, 9h43
> > On Wed, 2009-02-18 at 08:29 +0000, SP GLE wrote:
> > > Hello,
> > >
> > > Using the following pipeline :
> > >
> > [filesrc]---->[rtppcmapay]---->[rtpdtmfmux]-----...--->[fakesink
> > sync=true]
> > >                                  /\
> > > [rtpdtmfsrc]----------------------
> > >
> > > When playing a DTMF the rtpdtmfmux locks the stream
> > and unref all
> > > buffers from the filesrc, but without syncing on the
> > clock, so file
> > > reading looses sync and all buffers are played as fast
> > as possible.
> > >
> > > How can we sync the filesrc part before injecting in
> > rtpdtmfmux ?
> > >
> > > We tried by adding an identity with sync=true but tis
> > one requires
> > > segments with GST_FORMAT_TIME and not BYTES as
> > provided by filesrc.
> > >
> > > The probleme can be reflected by this cmd :
> > > A/ Working Pipeline
> > > gst-launch filesrc location=toto.alaw !
> > "audio/x-alaw,rate=8000,channels=1" ! identity
> > datarate=8000 ! rtppcmapay ! fakesink sync=true
> > >
> > > B/ How to make previous cli works if disabling
> > sync=true on fakesink.
> > >
> > >
> > > Any idea is welcome :).
> >
> >   Use the sync property of identity :)
> >
> > >
> > > Regards.
> > >
> > >
> > >      
> > >
> > >
> > ------------------------------------------------------------------------------
> > > Open Source Business Conference (OSBC), March 24-25,
> > 2009, San Francisco, CA
> > > -OSBC tackles the biggest issue in open source: Open
> > Sourcing the Enterprise
> > > -Strategies to boost innovation and cut costs with
> > open source participation
> > > -Receive a $600 discount off the registration fee with
> > the source code: SFAD
> > > http://p.sf.net/sfu/XcvMzF8H
> > > _______________________________________________
> > > gstreamer-devel mailing list
> > > [hidden email]
> > >
> > https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>
>
>      


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel