Details
-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
6.8.1
-
None
Description
tst_QMediaPlayerBackend::play_playbackLastsForTheExpectedTime seems to be flaky:
3556: ********* Start testing of tst_QMediaPlayerBackend ********* FAIL! : tst_QMediaPlayerBackend::play_playbackLastsForTheExpectedTime(file qrc:/testdata/busMpeg4.mp4, loops 2, rate 1, pause before 1) 'abs(duration - expectedDuration) < 600ms' returned FALSE. (expected duration: 2000ms, actual duration: 1014ms) Loc: [/home/qt/work/qt/qtmultimedia/tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp(1720)] Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/tmp/tst_qmediaplayerbackend.VTvzBS.mp4': Metadata: FAIL! : tst_QMediaPlayerBackend::play_playbackLastsForTheExpectedTime(file qrc:/testdata/busMpeg4.mp4, loops 2, rate 0.5, pause before 1) 'abs(duration - expectedDuration) < 600ms' returned FALSE. (expected duration: 4000ms, actual duration: 2032ms) Loc: [/home/qt/work/qt/qtmultimedia/tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp(1720)] Input #0, wav, from '/tmp/tst_qmediaplayerbackend.uebPqK.wav': Duration: 00:00:01.00, bitrate: 705 kb/s Totals: 198 passed, 2 failed, 9 skipped, 0 blacklisted, 331294ms 13313: ********* Start testing of tst_QMediaPlayerBackend ********* FAIL! : tst_QMediaPlayerBackend::play_playbackLastsForTheExpectedTime(file qrc:/testdata/busMpeg4.mp4, loops 2, rate 0.5, pause before 1) 'abs(duration - expectedDuration) < 600ms' returned FALSE. (expected duration: 4000ms, actual duration: 2037ms) Loc: [/home/qt/work/qt/qtmultimedia/tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp(1720)] PASS : tst_QMediaPlayerBackend::cleanupTestCase() Totals: 2 passed, 1 failed, 0 skipped, 0 blacklisted, 2547ms 14194: ********* Start testing of tst_QMediaPlayerBackend ********* FAIL! : tst_QMediaPlayerBackend::play_playbackLastsForTheExpectedTime(file qrc:/testdata/busMpeg4.mp4, loops 2, rate 0.5, pause before 1) 'abs(duration - expectedDuration) < 600ms' returned FALSE. (expected duration: 4000ms, actual duration: 2036ms) Loc: [/home/qt/work/qt/qtmultimedia/tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp(1720)] PASS : tst_QMediaPlayerBackend::cleanupTestCase() Totals: 2 passed, 1 failed, 0 skipped, 0 blacklisted, 2545ms
observations:
- test fails with the ffmpeg backend
- test failures are spurious
- test fail when the loop count is 2, because the actual playback duration is roughly half of the actual playback duration.
this smells like a race condition in the looping machinery of the ffmpeg backend, where the playback stops instead of seeking to the beginning