List Info

Thread: Video jack @ piksel




Video jack @ piksel
user name
2006-10-25 15:37:34
Chris Cannam wrote:

>salsaman:
>
>>Synch is *not* a problem: on localhost you can just
play video and audio
>>as they are received.
>
>
>Please excuse my ignorance, but you've said
>something like this a few times and I don't understand
>how it can be true.  What is the clock source for the
>video stream?

The clock source for video is the "dummy" driver.

I don't know the technical details, but my understanding was
that the
"dummy" driver still takes its timing from the
video card.


>  How do you make sure it's in sync
>with the audio service?  How is that easier than
>synchronising two separate callback threads to the
>same clock source?

For synch it is not easier, but for setting up/configuring
the system it
is easier. If the timings for both are coming from the same
soundcard,
then they will naturally be in synch. In the case where
audio and video
are coming from two different servers, those servers would
need to be
clock synched using nntp or similar, and a gettimeofday()
timestamp added
to each stream.


>
>As I said, my excuses for the fact that I know
>nothing about video (and little enough about audio,
>some might say).
>
>>Having two servers also allows for two transports.
>
>
>Do you not then have to synchronise those too?

That is achieved very easily. The user delegates one or more
applications
to synch the transports. So that when e.g. audio starts, the
delegated
application can then start the video transport (or
vice-versa). The
delegated application then waits for the first video frame
to be ready
before allowing audio to roll. This is a feature that could
easily be
implemented in LiVES for example. In fact most of the code
for this is
already there.

Gabriel.



------------------------------------------------------------
-------------
Using Tomcat but need to do more? Need to support web
services, security?
Get stuff done quickly with pre-integrated technology to
make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on
Apache Geronimo
http://sel.as-us.falkag.net/
sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Jackit-devel mailing list
Jackit-devellists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jackit-dev
el
Video jack @ piksel
user name
2006-10-25 15:46:09
On Wed, 2006-10-25 at 17:37 +0200, salsamanxs4all.nl
wrote:

> >Do you not then have to synchronise those too?
> 
> That is achieved very easily. The user delegates one or
more applications
> to synch the transports. So that when e.g. audio
starts, the delegated
> application can then start the video transport (or
vice-versa). The
> delegated application then waits for the first video
frame to be ready
> before allowing audio to roll. This is a feature that
could easily be
> implemented in LiVES for example. In fact most of the
code for this is
> already there.

JACK already has a feature where the backend driver can
notify other
clients of which audio frame (offset) into the current
process cycle
corresponds to the start of a video frame. it is being used
by Harrison
in their X-Dubber product (www.motherdubber.com) having been
designed
specifically for this purpose.

is this what you were referring to?

this design assumes that the sample clock and video clock
share a common
source (i.e. distributed house clock). it will not work
otherwise,
because its a one-shot sync, not an ongoing
"drift-adjusting" sync.

--p



------------------------------------------------------------
-------------
Using Tomcat but need to do more? Need to support web
services, security?
Get stuff done quickly with pre-integrated technology to
make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on
Apache Geronimo
http://sel.as-us.falkag.net/
sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Jackit-devel mailing list
Jackit-devellists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jackit-dev
el
Video jack @ piksel
user name
2006-10-25 15:57:36
On 10/25/06, salsamanxs4all.nl <salsamanxs4all.nl> wrote:
> Chris Cannam wrote:
>
> >salsaman:
> >
> >>Synch is *not* a problem: on localhost you can
just play video and audio
> >>as they are received.
> >
> >
> >Please excuse my ignorance, but you've said
> >something like this a few times and I don't
understand
> >how it can be true.  What is the clock source for
the
> >video stream?
>
> The clock source for video is the "dummy"
driver.
>
> I don't know the technical details, but my
understanding was that the
> "dummy" driver still takes its timing from
the video card.

The dummy backend takes its timing from the kernel using
nanosleep().
That is not a very accurate method (at least on Linux).  It
probably can
and should be improved if there is a need.

But it is *not* synched to the audio or video devices. 
Drift and jitter
are both inevitable.
-- 
 joq

------------------------------------------------------------
-------------
Using Tomcat but need to do more? Need to support web
services, security?
Get stuff done quickly with pre-integrated technology to
make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on
Apache Geronimo
http://sel.as-us.falkag.net/
sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Jackit-devel mailing list
Jackit-devellists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jackit-dev
el
Video jack @ piksel
user name
2006-10-25 16:06:00
On Wed, 2006-10-25 at 10:57 -0500, Jack O'Quin wrote:
> The dummy backend takes its timing from the kernel
using nanosleep().
> That is not a very accurate method (at least on Linux).
 It probably
> can and should be improved if there is a need. 

I don't think it will be needed as the kernel will have high
res timers
soon.

Lee


------------------------------------------------------------
-------------
Using Tomcat but need to do more? Need to support web
services, security?
Get stuff done quickly with pre-integrated technology to
make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on
Apache Geronimo
http://sel.as-us.falkag.net/
sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Jackit-devel mailing list
Jackit-devellists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jackit-dev
el
Video jack @ piksel
user name
2006-10-25 15:46:09
On Wed, 2006-10-25 at 17:37 +0200, salsamanxs4all.nl
wrote:

> >Do you not then have to synchronise those too?
> 
> That is achieved very easily. The user delegates one or
more applications
> to synch the transports. So that when e.g. audio
starts, the delegated
> application can then start the video transport (or
vice-versa). The
> delegated application then waits for the first video
frame to be ready
> before allowing audio to roll. This is a feature that
could easily be
> implemented in LiVES for example. In fact most of the
code for this is
> already there.

JACK already has a feature where the backend driver can
notify other
clients of which audio frame (offset) into the current
process cycle
corresponds to the start of a video frame. it is being used
by Harrison
in their X-Dubber product (www.motherdubber.com) having been
designed
specifically for this purpose.

is this what you were referring to?

this design assumes that the sample clock and video clock
share a common
source (i.e. distributed house clock). it will not work
otherwise,
because its a one-shot sync, not an ongoing
"drift-adjusting" sync.

--p



------------------------------------------------------------
-------------
Using Tomcat but need to do more? Need to support web
services, security?
Get stuff done quickly with pre-integrated technology to
make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on
Apache Geronimo
http://sel.as-us.falkag.net/
sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Jackit-devel mailing list
Jackit-devellists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jackit-dev
el
Video jack @ piksel
user name
2006-10-25 15:57:36
On 10/25/06, salsamanxs4all.nl <salsamanxs4all.nl> wrote:
> Chris Cannam wrote:
>
> >salsaman:
> >
> >>Synch is *not* a problem: on localhost you can
just play video and audio
> >>as they are received.
> >
> >
> >Please excuse my ignorance, but you've said
> >something like this a few times and I don't
understand
> >how it can be true.  What is the clock source for
the
> >video stream?
>
> The clock source for video is the "dummy"
driver.
>
> I don't know the technical details, but my
understanding was that the
> "dummy" driver still takes its timing from
the video card.

The dummy backend takes its timing from the kernel using
nanosleep().
That is not a very accurate method (at least on Linux).  It
probably can
and should be improved if there is a need.

But it is *not* synched to the audio or video devices. 
Drift and jitter
are both inevitable.
-- 
 joq

------------------------------------------------------------
-------------
Using Tomcat but need to do more? Need to support web
services, security?
Get stuff done quickly with pre-integrated technology to
make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on
Apache Geronimo
http://sel.as-us.falkag.net/
sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Jackit-devel mailing list
Jackit-devellists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jackit-dev
el
Video jack @ piksel
user name
2006-10-25 16:06:00
On Wed, 2006-10-25 at 10:57 -0500, Jack O'Quin wrote:
> The dummy backend takes its timing from the kernel
using nanosleep().
> That is not a very accurate method (at least on Linux).
 It probably
> can and should be improved if there is a need. 

I don't think it will be needed as the kernel will have high
res timers
soon.

Lee


------------------------------------------------------------
-------------
Using Tomcat but need to do more? Need to support web
services, security?
Get stuff done quickly with pre-integrated technology to
make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on
Apache Geronimo
http://sel.as-us.falkag.net/
sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Jackit-devel mailing list
Jackit-devellists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jackit-dev
el
[1-7]

about | contact  Other archives ( Real Estate discussion Medical topics )