On Wed, 23 Jan 2008 11:58:27 +0100, Christian Thaeter <[EMAIL PROTECTED]>
wrote:
Have a scheduler where we can assert frame pulls "I need frame 2 at
quality level N in 17ms, and btw i am playing forward, if possible
prepare me frame 2 and following as well". This Scheduler can the report
immediately "Yes sounds doable" or "No way, I wont even try, drop this".
As well as some extra hints like "give me the nearest frame to frame 40
within X ms" or adaptive quality/resolution while scrubbing one sees low
res/low quality preview and when stopping scrubbing the exact frame
where it stopped is rendered in (maybe incremental) better quality/res.
I'll elaborate a little on this one. One of the ideas we (Christian,
Richard and I) considered was "give me any of frame 30 to 50 within 17 ms".
That is, specify an acceptable range. I will explain to everyone why this
is useful.
If you seek through half an hour of video really quickly, by dragging
the slider through the video in twenty-thirty seconds, it will play back
blindingly fast: 50-100 times normal speed. Every two seconds of video
will be displayed as a single frame. A five second clip will be on the
screen less than 1/10 of a second. Yet this brief flash is long enough
that you notice it, if you know what you are looking for.
I've tried this in Cinelerra with large DV files. It was smooth and
responsive. It was useful. I loved it.
Now try this with high definition video, which is temporally compressed.
It doesn't work. You'll only get a few frames per second at best.
Scrubbing and seeking gets at least ten times slower, unresponsive,
laggy, jerky. It was not very useful. I hated it.
When you zip through a video at 100x speed, you won't care if it was
frame 110 or frame 112 that just flashed by. Because your "temporal
resolution" has been "zoomed out" to one frame every fourth second.
If Cinelerra displayed frame 135 instead of frame 110 you could not
possibly tell, because at 100x speed it's just 1/100 second "wrong".
So playback at 10x speed or more should be quite easy, since the
tolerance is so much wider. But in order to exploit that, the backend
must be told what the tolerence (the range) is.
--
Herman Robak
_______________________________________________
Cinelerra mailing list
[email protected]
https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra