![]() MediaPlayer is basing its time on both the audio and video frames. This doesn't go so well when there is a single video frame, resulting in the whole file being one single "timepoint". Avoid this problem by having the video decoder set the frame time to "infinite" when the video stream is finished, which allows for the audio timings to be used in this case. Also improve the framerate handling of ffmpeg further, to avoid MediaPlayer trying to frameskip at 90000fps (it would give up frameskipping after a few frames and eventually notice that the next frame was the end of stream, but still, not very clean). Now we report an FPS of 0 instead, which should make it clear to applications what to expect from single-frame files. It seems the cover art is now hidden by a black screen, I'm not sure why. But I'll leave debugging this for another day. Fixes #13622. Change-Id: Ie1dd1358cbb41c11649103dfce52a0e1317b26f8 Reviewed-on: https://review.haiku-os.org/c/haiku/+/2562 Reviewed-by: Adrien Destugues <pulkomandy@gmail.com> |
||
---|---|---|
.. | ||
audio | ||
video | ||
NodeManager.cpp | ||
NodeManager.h | ||
PlaybackLOAdapter.cpp | ||
PlaybackLOAdapter.h | ||
PlaybackListener.cpp | ||
PlaybackListener.h | ||
PlaybackManager.cpp | ||
PlaybackManager.h |