#
892e4f21 |
| 16-Sep-2010 |
Stephan Aßmus <superstippi@gmx.de> |
* Changed the VideoSupplier interface to allow forcing the video generation. This allows step back frame-wise even though it means the video has to seeked back far and re-generated more than
* Changed the VideoSupplier interface to allow forcing the video generation. This allows step back frame-wise even though it means the video has to seeked back far and re-generated more than five frames ahead to reach the seek frame. * Don't print dropped frames in the producer when the video is paused. * Don't lock the PlaybackManager to report dropped frames, report it later when the manager had to be locked anyway. * Removed a whole bunch of methods that were only implemened because of that old BeOS PPC compiler bug.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38670 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
f7eb8be9 |
| 15-Sep-2010 |
Stephan Aßmus <superstippi@gmx.de> |
* Instead of using some bogus latency for the VideoProducer, compute the latency from the buffer count. It should be the duration of in-flight buffers (i.e. number of buffers minus the one c
* Instead of using some bogus latency for the VideoProducer, compute the latency from the buffer count. It should be the duration of in-flight buffers (i.e. number of buffers minus the one currently showing). * Compute the wakeUp time based on the buffer latency used above. * Make the "wasCached" mechanism work again, i.e. don't send the buffer to the consumer if the contents did not change. This removes the need to cache frames in the ProxyVideoSupplier and thus one more memcpy() (5ms on my Q6600 for full-HD content). * Remove the weird forceSendingBuffer override and the setting of the header starttime to 0. Now seeking clips works also when the playback is paused.
All in all, playback is more efficient now, and the chances of dropping frames are much less. Something is still fishy, though, since VLC, even though seemingly using slightly more CPU, drops frames more seldomly than MediaPlayer. Audio/Video sync seems to be better, though, since the VideoProducer is using a more accurate latency now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38662 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
0fc56ed5 |
| 30-May-2008 |
Stephan Aßmus <superstippi@gmx.de> |
* Moved a bunch of non-primary interface classes into a new subfolder "interface"
* Complete reimplementation of the playback engine using Media Nodes: - Seeking video files does not appear to locku
* Moved a bunch of non-primary interface classes into a new subfolder "interface"
* Complete reimplementation of the playback engine using Media Nodes: - Seeking video files does not appear to lockup the playback anymore, but works on a frame accurate level even for keyframe based streams. There is currently a problem with certain container formats, the audio track reports a "Device Seek Error" in certain conditions. In that case audio goes silent, and can be restarted by going back to the beginnings of the stream. - Video overlays are now supported. - It would be possible to connect the output of the MediaPlayer to other applications or dormant media nodes.
* Known regressions: - The volume slider has currently no effect anymore. - Switching the audio track during playback has a known race condition and can crash the player. - The new engine is not as "light weight" as the old one. I tagged the previous implementation in tags/components/mediaplayer-engine-v1. It does not seem to have any noticable effect though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25725 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|