GNOME Bugzilla – Bug 754980
audiobasesink: audio skipping when playing it repeatedly.
Last modified: 2015-10-20 07:18:36 UTC
Created attachment 311256 [details] test code to reproduce the issue When I run a game app, the sound of count does not match with counter digit with pulsesink in playbin. I've tested it on gstreamer master with attached test code and wav file. Thank you. # libtool --mode=link gcc audio_repeat.c -o audio_repeat $(pkg-config --cflags --libs gstreamer-1.0) # ./audio_repeat file:///home/[path]/clock.wav
Created attachment 311257 [details] [review] audiobasesink: return right value of _eos_wait() If the flush-start is arrived during _eos_wait() in basesink, the 'eos' flag is overwritten to TRUE after exiting the _eos_wait(). To resolve the overwritten issue, the subclass doing the _eos_wait() call should return the right value(FALSE). If the eos flag is set to TRUE again, it will cause error(enter the eos flow) of the following state changing from PAUSED to PLAYING.
Created attachment 311262 [details] [review] audiobasesink: return right value of _eos_wait()
commit e98b96247f93e03db2c50dad9364e94f78eb8e0c Author: eunhae choi <eunhae1.choi@samsung.com> Date: Mon Sep 14 15:25:11 2015 +0900 audiobasesink: fix issue about eos handling during flushing If the flush-start is arrived during _eos_wait() in basesink, the 'eos' flag is overwritten to TRUE after exiting the _eos_wait(). To resolve the overwritten issue, the subclass doing the _eos_wait() call should return the right value. If the eos flag is set to TRUE again, it will cause error(enter the eos flow) of the following state changing from PAUSED to PLAYING in basesink. https://bugzilla.gnome.org/show_bug.cgi?id=754980
Comment on attachment 311262 [details] [review] audiobasesink: return right value of _eos_wait() Looks safe enough to go into 1.6, what do you think?
I hope so, I can not find any side effect of this patch yet.
Sounds like a good idea