Re: bypassing PTS in video filter layer

Arpi <[email protected]>
Newsgroups gmane.comp.video.mplayer.g2.devel
Message-ID <[email protected]>
Hi,

> Perhaps we should have 3 or 4 levels of framedrop, instead of 2 like

yes

> 3. (optional, big hack) Like 2, but use some sort of lookahead in
>    demuxer layer to identify when we're getting close to a new I
>    frame, and drop one or two P frames just before it. This probably
>    wouldn't help divx but might be nice for DVD/VCD where keyframe
>    interval is small.

It is really big hack, and simply doesn't worth it to implement.
There are several issues:
- needs big hacks in demuxers
- formats using short keyframe rate, also mostly uses (easily droppable)
  B frames. it's true in general, that there are 2 kind of
  containers/codecs, one for live streaming (no B frames, big keyframe distance,
  no seeking, no cpu usage scalability, no backward (or speed!=1x) playback)
  and one for offline playback and editing, like mpeg (short keyframe/gop
  distance, B frames, and so on, the opposite of the other).
- it's not completely true that I frames are keyframes in mpeg2. there are
  streams (actually most of them i've seen) using partial update in I frames,
  ie. you need to decode 2 or more I frames to get the complete picture,
  otherwise you'll see checkboard-liek thing. just try to seek in some mpeg2
  streams... (mostly true for DVD and DVB files). I frames don't use
  prediction (ie. reference frames), so you can seek to them, but also don't
  always cover the whole image area, so you can't simply skip them.

And anwyay, as you already mentioned: framedropping sucks.
We shouldn't optimize our player for frame dropping (esp. at times of 2.6ghz
p4 cpus being used even for word processing machines) but for speed and
quality.


A'rpi / Astral & ESP-team

--
Developer of MPlayer G2, the Movie Framework for all - http://www.MPlayerHQ.hu
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.