gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-commit] gnash ChangeLog backend/sound_handler_gst.cpp b...


From: Tomas Groth
Subject: [Gnash-commit] gnash ChangeLog backend/sound_handler_gst.cpp b...
Date: Tue, 07 Aug 2007 16:27:37 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Tomas Groth <tgc>       07/08/07 16:27:37

Modified files:
        .              : ChangeLog 
        backend        : sound_handler_gst.cpp sound_handler_sdl.cpp 

Log message:
                * backend/sound_handler_gst.cpp: Fix returns from getPosition
                  (patch #6140), and fix a segfault when asking for position
                  before sound has been started (patch #6138).
                * backend/sound_handler_sdl.cpp: Fix returns from getPosition
                  (patch #6140).

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.3959&r2=1.3960
http://cvs.savannah.gnu.org/viewcvs/gnash/backend/sound_handler_gst.cpp?cvsroot=gnash&r1=1.57&r2=1.58
http://cvs.savannah.gnu.org/viewcvs/gnash/backend/sound_handler_sdl.cpp?cvsroot=gnash&r1=1.76&r2=1.77

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.3959
retrieving revision 1.3960
diff -u -b -r1.3959 -r1.3960
--- ChangeLog   7 Aug 2007 02:48:57 -0000       1.3959
+++ ChangeLog   7 Aug 2007 16:27:36 -0000       1.3960
@@ -1,3 +1,11 @@
+2007-08-07 Sergio Costas <raster (at) rastersoft.com>
+
+       * backend/sound_handler_gst.cpp: Fix returns from getPosition
+         (patch #6140), and fix a segfault when asking for position
+         before sound has been started (patch #6138).
+       * backend/sound_handler_sdl.cpp: Fix returns from getPosition
+         (patch #6140).
+
 2007-08-06 Sandro Santilli <address@hidden>
 
        * doc/xmldocs.make: fix uninstall rule to properly remove images

Index: backend/sound_handler_gst.cpp
===================================================================
RCS file: /sources/gnash/gnash/backend/sound_handler_gst.cpp,v
retrieving revision 1.57
retrieving revision 1.58
diff -u -b -r1.57 -r1.58
--- backend/sound_handler_gst.cpp       1 Aug 2007 10:09:23 -0000       1.57
+++ backend/sound_handler_gst.cpp       7 Aug 2007 16:27:37 -0000       1.58
@@ -20,7 +20,7 @@
 // Based on sound_handler_sdl.cpp by Thatcher Ulrich http://tulrich.com 2003
 // which has been donated to the Public Domain.
 
-/* $Id: sound_handler_gst.cpp,v 1.57 2007/08/01 10:09:23 tgc Exp $ */
+/* $Id: sound_handler_gst.cpp,v 1.58 2007/08/07 16:27:37 tgc Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -630,7 +630,8 @@
 
        // Return the sound duration in milliseconds
        if (sounddata->sample_count > 0 && sounddata->sample_rate > 0) {
-               unsigned int ret = sounddata->sample_count / 
sounddata->sample_rate * 100;
+               unsigned int ret = sounddata->sample_count / 
sounddata->sample_rate * 1000;
+               ret += ((sounddata->sample_count % sounddata->sample_rate) * 
1000) / sounddata->sample_rate;
                if (sounddata->stereo) ret = ret / 2;
                return ret;
        } else {
@@ -651,6 +652,11 @@
 
        sound_data* sounddata = m_sound_data[sound_handle];
 
+       // If there is no active sounds, return 0
+       if (sounddata->m_gst_elements.size() == 0) {
+               return 0;
+       }
+
        // return the position of the last element added
        GstElement *pipeline,*audioconvert;
        GstStateChangeReturn ret;

Index: backend/sound_handler_sdl.cpp
===================================================================
RCS file: /sources/gnash/gnash/backend/sound_handler_sdl.cpp,v
retrieving revision 1.76
retrieving revision 1.77
diff -u -b -r1.76 -r1.77
--- backend/sound_handler_sdl.cpp       27 Jul 2007 15:09:41 -0000      1.76
+++ backend/sound_handler_sdl.cpp       7 Aug 2007 16:27:37 -0000       1.77
@@ -18,7 +18,7 @@
 // Based on sound_handler_sdl.cpp by Thatcher Ulrich http://tulrich.com 2003
 // which has been donated to the Public Domain.
 
-// $Id: sound_handler_sdl.cpp,v 1.76 2007/07/27 15:09:41 tgc Exp $
+// $Id: sound_handler_sdl.cpp,v 1.77 2007/08/07 16:27:37 tgc Exp $
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -550,7 +550,8 @@
 
        // Return the sound duration in milliseconds
        if (sounddata->sample_count > 0 && sounddata->sample_rate > 0) {
-               unsigned int ret = sounddata->sample_count / 
sounddata->sample_rate * 100;
+               unsigned int ret = sounddata->sample_count / 
sounddata->sample_rate * 1000;
+               ret += ((sounddata->sample_count % sounddata->sample_rate) * 
1000) / sounddata->sample_rate;
                if (sounddata->stereo) ret = ret / 2;
                return ret;
        } else {
@@ -579,6 +580,7 @@
 
        // Return the playhead position in milliseconds
        unsigned int ret = asound->samples_played / sounddata->sample_rate * 
100;
+       ret += ((asound->samples_played % sounddata->sample_rate) * 100) / 
sounddata->sample_rate;
        if (sounddata->stereo) ret = ret / 2;
        return ret;
 }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]