two computer sync

Riccardo Canalicchio riccardo.canalicchio at gmail.com
Tue Mar 29 06:24:31 PDT 2011


ok, i have tried to use GstNetTimeProvider and GstNetClientClock with this
code:

//on the server side
gst_element_set_state (pipeline, GST_STATE_PLAYING);
GstClock * clock =  (GstClock
*)gst_pipeline_get_clock((GstPipeline*)pipeline);
gst_net_time_provider_new(clock, "127.0.0.1", 3333);

//on the client side
GstClock * netclientclock = gst_net_client_clock_new("net_clock",
"127.0.0.1", 3333, GST_SECOND);
gst_pipeline_use_clock((GstPipeline*)pipeline, netclientclock);
gst_element_set_state (pipeline, GST_STATE_PLAYING);

results:
the two pipelines are not synchronized but if I calibrate the server clock
to a double speed the client goes at double speed:
gst_clock_set_calibration(clock, (GstClockTime)0, gst_clock_get_time(clock),
(GstClockTime)2, (  GstClockTime)2);

so i think that the two clocks are synchronized, now my question is: how can
i set the same start time on the two pipelines?



On 26 March 2011 18:17, Riccardo Canalicchio <riccardo.canalicchio at gmail.com
> wrote:

> and what about using GstNetTimeProvider and GstNetTimeClient? they are made
> for this kind of stuff?
>
>
>
> Il giorno 26/mar/2011, alle ore 15:57, Marc Murphy <marcmltd at marcm.co.uk>
> ha scritto:
>
> If you use ts encapsulation which means you will have pcr and time stamping
> it means that it will be synchronised.
>
> Sent from my iPhone
>
> On 26 Mar 2011, at 12:30, "timothe jahan" < <timothejahan at gmail.com>
> timothejahan at gmail.com> wrote:
>
> Just two mention that this was done in my company (nothing to do with
> gstreamer) but the multicast was not enough to ensure synchronisation down
> to frame level, they had to implement some custom protocole between the
> players.
> Of course it depends on the accuracy needed...
>
> Regards,
> TImothe
>
> On Sat, Mar 26, 2011 at 11:57 AM, Marc Murphy < <marcmltd at marcm.co.uk><marcmltd at marcm.co.uk>
> marcmltd at marcm.co.uk> wrote:
>
>> I would say look at using multicast to the two computers. You can setup a
>> multicast pipeline to play out the video source and have each receiving pc
>> have the rx end running continually so that when you start the playing from
>> the server it will start the decode on each receiving pc.
>>
>> Sent from my iPhone
>>
>> On 26 Mar 2011, at 10:01, "Riccardo Canalicchio" <<riccardo.canalicchio at gmail.com><riccardo.canalicchio at gmail.com>
>> riccardo.canalicchio at gmail.com> wrote:
>>
>>
>>
>> Hi all,
>> i'm a newbie gstreamer developer, i'm trying to build two pipelines for
>> play a video in two different computers that will play in frame sync. what
>> is the best way to do this?
>> (each computer have the source video file in the local filesystem)
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> <gstreamer-devel at lists.freedesktop.org><gstreamer-devel at lists.freedesktop.org>
>> gstreamer-devel at lists.freedesktop.org
>>  <http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel><http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel>
>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>>  <gstreamer-devel at lists.freedesktop.org><gstreamer-devel at lists.freedesktop.org>
>> gstreamer-devel at lists.freedesktop.org
>>  <http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel><http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel>
>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>
>>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20110329/909a97ca/attachment-0001.htm>


More information about the gstreamer-devel mailing list