summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2007-06-05 11:54:58 +0000
committerBenny Prijono <bennylp@teluu.com>2007-06-05 11:54:58 +0000
commitc8eadc36d2f857bfd907faf120416fc1553d732d (patch)
tree43604a63fbb78c7c45cb9b7af5c5d645a334dec1
parent82e58e2e16de31af902bd138182fcd78facd8c1e (diff)
Fixed ticket #317: Duplicated audio when playing WAV playlist (thanks Jagdish Jangid)
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@1339 74dad513-b988-da41-8d7b-12977e46ad98
-rw-r--r--pjmedia/src/pjmedia/wav_playlist.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/pjmedia/src/pjmedia/wav_playlist.c b/pjmedia/src/pjmedia/wav_playlist.c
index dbd8dbea..d5882c8a 100644
--- a/pjmedia/src/pjmedia/wav_playlist.c
+++ b/pjmedia/src/pjmedia/wav_playlist.c
@@ -152,6 +152,15 @@ static pj_status_t file_fill_buffer(struct playlist_port *fport)
if (fport->current_file == fport->max_file)
{
+ /* Clear the remaining part of the buffer first, to prevent
+ * old samples from being played. If the playback restarts,
+ * this will be overwritten by new reading.
+ */
+ if (size_left > 0) {
+ pj_bzero(&fport->buf[fport->bufsize-size_left],
+ size_left);
+ }
+
/* All files have been played. Call callback, if any. */
if (fport->cb)
{