Francesco Romani wrote:
> On Mon, 2008-10-06 at 10:36 -0500, Carl Karsten wrote:
>> given the recent post about AV drift, this seemed relevant:
>>
>> http://www.pipapo.org/pipawiki/Lumiera/DesignProcess/time_handling
>> Lumiera = video editor project (no usable app yet)
> 
> It's a nice summary, thanks for the link.
> I'm already considering a a fair amount of points taken into the page;
> unfortunately, implement them requires a fair amount of changes in the
> codebase, most of them planned for 1.3.0 or even beyond (a deep overhaul
> of import layer is needed, and planned).
> 
> The good news is that even smarter algos should fit nicely into the
> synchro engine currently being laid.

Any chance of that happening this year?

(I am back to examining US PyCon session recording stuff - show time is march 
25)

> 
>> I am wondering what it would take to make a test app:  something that would
>> generate an input AV stream (file, v4l device... whatever), something like
>> transcode would do something to it, and the output would be analyzed to see 
>> if
>> the AV is still in sync.
>>
>> I did something similar using a webcam/mic pointed at a laptop that had a 
>> clock
>> on the screen, and an audio clock ("at the tone, the time will be eight, oh 
>> one.
>>  beep.")  I let that record for an hour, then played it back and looked to 
>> see
>> if the tone beeped as the second hand crossed 12.  I would like to think an 
>> app
>> could do this too.
> 
> It is an interesting challenge (and it would be a nice tool to have).

How could it be broken up so that something like python could be used for doing
the test?

I am really having a hard time imagining how it would work... but this is what
comes to mind:

Create input from scratch:
Use python PIL module to construct 2 images: one all black, one all white.  use
some mystery module to generate a tone every second.  use something to construct
a stream that just alternates between the 2 images, and plays the tone during 
one.

Represent playback as data:
given a stream, I want access to the frames as if it was a list, or at least an
iterator.  video would be rendered as single image blobs.  I am not really sure
how the audio would be represented, but I need some way of detecting the 
transition.

If this is possible, then it would be convenient to construct various test
streams, process them, and come up with some pass/fail tests that would not
require human interpretation.

Any idea how much of this has already been done, or where a good starting point 
is?

Speaking of human interpretation - There are plenty of tests that require it:
does this still sound/look OK, even though it has been subject to lossy
algorithm.  Tests like that is some other project.

Carl K

Reply via email to