[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] gnash ChangeLog gnash.vcproj backend/gnash.cpp ...
From: |
Tomas Groth |
Subject: |
[Gnash-commit] gnash ChangeLog gnash.vcproj backend/gnash.cpp ... |
Date: |
Wed, 26 Jul 2006 21:49:06 +0000 |
CVSROOT: /sources/gnash
Module name: gnash
Changes by: Tomas Groth <tgc> 06/07/26 21:49:06
Modified files:
. : ChangeLog gnash.vcproj
backend : gnash.cpp sound_handler_gst.cpp
sound_handler_sdl.cpp
plugin : player.cpp
plugin/klash : klash.cpp
server : gnash.h sound.cpp
server/swf : ASHandlers.cpp
Log message:
Use SOUND_GST and SOUND_SDL to select which soundbackend to use. Small
sound fixes.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.531&r2=1.532
http://cvs.savannah.gnu.org/viewcvs/gnash/gnash.vcproj?cvsroot=gnash&r1=1.6&r2=1.7
http://cvs.savannah.gnu.org/viewcvs/gnash/backend/gnash.cpp?cvsroot=gnash&r1=1.47&r2=1.48
http://cvs.savannah.gnu.org/viewcvs/gnash/backend/sound_handler_gst.cpp?cvsroot=gnash&r1=1.6&r2=1.7
http://cvs.savannah.gnu.org/viewcvs/gnash/backend/sound_handler_sdl.cpp?cvsroot=gnash&r1=1.14&r2=1.15
http://cvs.savannah.gnu.org/viewcvs/gnash/plugin/player.cpp?cvsroot=gnash&r1=1.15&r2=1.16
http://cvs.savannah.gnu.org/viewcvs/gnash/plugin/klash/klash.cpp?cvsroot=gnash&r1=1.8&r2=1.9
http://cvs.savannah.gnu.org/viewcvs/gnash/server/gnash.h?cvsroot=gnash&r1=1.34&r2=1.35
http://cvs.savannah.gnu.org/viewcvs/gnash/server/sound.cpp?cvsroot=gnash&r1=1.13&r2=1.14
http://cvs.savannah.gnu.org/viewcvs/gnash/server/swf/ASHandlers.cpp?cvsroot=gnash&r1=1.37&r2=1.38
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.531
retrieving revision 1.532
diff -u -b -r1.531 -r1.532
--- ChangeLog 26 Jul 2006 19:01:45 -0000 1.531
+++ ChangeLog 26 Jul 2006 21:49:05 -0000 1.532
@@ -1,4 +1,15 @@
+2006-07-26 Tomas Groth Christensen <address@hidden>
+
+ * gnash.vcproj: Added backend/sound_handler_gst.cpp.
+ * backend/sound_handler_gst.cpp: Use of more gstreamer plugins.
+ * backend/gnash.cpp, backend/sound_handler_sdl.cpp,
+ plugin/player.cpp, plugin/klash/klash.cpp, server/gnash.h,
+ server/sound.cpp: Use SOUND_GST and SOUND_SDL to select which
+ soundbackend to use.
+ * server/swf/ASHandlers.cpp: Stop soundplayback when gotoframe
+ and stop is called.
+
2006-07-26 Sandro Santilli <address@hidden>
* gui/gnash.cpp: use SOUND_GST and SOUND_SDL to switch
Index: gnash.vcproj
===================================================================
RCS file: /sources/gnash/gnash/gnash.vcproj,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- gnash.vcproj 26 Jul 2006 09:22:22 -0000 1.6
+++ gnash.vcproj 26 Jul 2006 21:49:05 -0000 1.7
@@ -446,6 +446,10 @@
>
</File>
<File
+ RelativePath=".\backend\sound_handler_gst.cpp"
+ >
+ </File>
+ <File
RelativePath=".\server\sprite_definition.cpp"
>
</File>
Index: backend/gnash.cpp
===================================================================
RCS file: /sources/gnash/gnash/backend/gnash.cpp,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -b -r1.47 -r1.48
--- backend/gnash.cpp 24 Jul 2006 13:30:50 -0000 1.47
+++ backend/gnash.cpp 26 Jul 2006 21:49:05 -0000 1.48
@@ -425,11 +425,11 @@
gnash::sound_handler *sound = NULL;
if (do_render) {
if (do_sound) {
-#ifdef HAVE_SDL_MIXER_H
+#ifdef SOUND_SDL
sound = gnash::create_sound_handler_sdl();
gnash::set_sound_handler(sound);
#endif
-#ifdef HAVE_GST_GST_H
+#ifdef SOUND_GST
sound = gnash::create_sound_handler_gst();
gnash::set_sound_handler(sound);
#endif
Index: backend/sound_handler_gst.cpp
===================================================================
RCS file: /sources/gnash/gnash/backend/sound_handler_gst.cpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- backend/sound_handler_gst.cpp 26 Jul 2006 00:21:40 -0000 1.6
+++ backend/sound_handler_gst.cpp 26 Jul 2006 21:49:05 -0000 1.7
@@ -138,8 +138,9 @@
adder = gst_element_factory_make ("adder", NULL);
// create an audio sink - use oss, alsa or...? make a
commandline option?
- // we first try alsa, then oss, then esd, then...?
- audiosink = gst_element_factory_make ("alsasink", NULL);
+ // we first try atudetect, then alsa, then oss, then esd,
then...?
+ audiosink = gst_element_factory_make ("autoaudiosink", NULL);
+ if (!audiosink) audiosink = gst_element_factory_make
("alsasink", NULL);
if (!audiosink) audiosink = gst_element_factory_make
("osssink", NULL);
if (!audiosink) audiosink = gst_element_factory_make
("esdsink", NULL);
@@ -181,9 +182,6 @@
// can be use for playing it.
{
- int16_t* adjusted_data = 0;
- int adjusted_size = 0;
-
sound_data *sounddata = new sound_data;
if (!sounddata) {
gnash::log_error("could not allocate memory for
sounddata !\n");
@@ -417,9 +415,10 @@
// Create a gstreamer decoder for the chosen sound.
if (m_sound_data[sound_handle]->format == FORMAT_MP3) { // ||
sound_data[m_sound_handle]->format == FORMAT_VORBIS) {
+
gst_element->decoder = gst_element_factory_make ("mad",
NULL);
- if (!gst_element->decoder) gst_element_factory_make
("ffdec_mp3", NULL);
- //if (!gst_element->decoder) gst_element_factory_make
("ffdec_mp3", NULL); what is the fluendo decoder called?
+ if (gst_element->decoder == NULL) gst_element->decoder
= gst_element_factory_make ("ffdec_mp3", NULL);
+ if (gst_element->decoder == NULL) gst_element->decoder
= gst_element_factory_make ("flump3dec", NULL);
// Check if the element was correctly created
if (!gst_element->decoder) {
Index: backend/sound_handler_sdl.cpp
===================================================================
RCS file: /sources/gnash/gnash/backend/sound_handler_sdl.cpp,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- backend/sound_handler_sdl.cpp 25 Jul 2006 19:27:54 -0000 1.14
+++ backend/sound_handler_sdl.cpp 26 Jul 2006 21:49:05 -0000 1.15
@@ -9,7 +9,8 @@
#include "config.h"
#endif
-#ifdef HAVE_SDL_MIXER_H
+//#ifdef HAVE_SDL_MIXER_H
+#ifdef SOUND_SDL
#include "gnash.h"
#include "container.h"
#include "SDL_mixer.h"
Index: plugin/player.cpp
===================================================================
RCS file: /sources/gnash/gnash/plugin/player.cpp,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -b -r1.15 -r1.16
--- plugin/player.cpp 24 Jul 2006 13:30:50 -0000 1.15
+++ plugin/player.cpp 26 Jul 2006 21:49:05 -0000 1.16
@@ -334,13 +334,13 @@
gnash::sound_handler *sound = NULL;
gnash::render_handler *render = NULL;
-#ifdef HAVE_SDL_MIXER_H
+#ifdef SOUND_SDL
if (do_sound) {
sound = gnash::create_sound_handler_sdl();
gnash::set_sound_handler(sound);
}
#endif
-#ifdef HAVE_GST_GST_H
+#ifdef SOUND_GST
if (do_sound) {
sound = gnash::create_sound_handler_sdl();
gnash::set_sound_handler(sound);
Index: plugin/klash/klash.cpp
===================================================================
RCS file: /sources/gnash/gnash/plugin/klash/klash.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- plugin/klash/klash.cpp 8 Jun 2006 05:24:02 -0000 1.8
+++ plugin/klash/klash.cpp 26 Jul 2006 21:49:05 -0000 1.9
@@ -445,10 +445,14 @@
gnash::render_handler *render = NULL;
if (do_render) {
if (do_sound) {
-#ifdef HAVE_SDL_MIXER_H
+#ifdef SOUND_SDL
sound = gnash::create_sound_handler_sdl();
gnash::set_sound_handler(sound);
#endif
+#ifdef SOUND_GST
+ sound = gnash::create_sound_handler_gst();
+ gnash::set_sound_handler(sound);
+#endif
}
render = gnash::create_render_handler_ogl();
gnash::set_render_handler(render);
Index: server/gnash.h
===================================================================
RCS file: /sources/gnash/gnash/server/gnash.h,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -b -r1.34 -r1.35
--- server/gnash.h 24 Jul 2006 18:59:40 -0000 1.34
+++ server/gnash.h 26 Jul 2006 21:49:06 -0000 1.35
@@ -407,7 +407,7 @@
int sample_rate, /* one of 5512, 11025, 22050,
44100 */
bool stereo
) = 0;
-#ifdef HAVE_GST_GST_H
+#ifdef SOUND_GST
// gnash calls this to fill up soundstreams data
virtual long fill_stream_data(void* data, int data_bytes, int
handle_id) = 0;
#endif
Index: server/sound.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/sound.cpp,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -b -r1.13 -r1.14
--- server/sound.cpp 25 Jul 2006 19:27:55 -0000 1.13
+++ server/sound.cpp 26 Jul 2006 21:49:06 -0000 1.14
@@ -112,7 +112,7 @@
}
};
-#ifdef HAVE_GST_GST_H
+#ifdef SOUND_GST
/// SWF Tag SoundStreamBlock (19)
struct start_stream_sound_tag : public execute_tag
{
@@ -484,7 +484,7 @@
void
sound_stream_head_loader(stream* in, tag_type tag, movie_definition* m)
{
-#ifdef HAVE_GST_GST_H
+#ifdef SOUND_GST
assert(tag == 18 || tag == 45);
// FIXME:
@@ -541,7 +541,7 @@
void
sound_stream_block_loader(stream* in, tag_type tag, movie_definition* m)
{
-#ifdef HAVE_GST_GST_H
+#ifdef SOUND_GST
assert(tag == 19);
Index: server/swf/ASHandlers.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/swf/ASHandlers.cpp,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -b -r1.37 -r1.38
--- server/swf/ASHandlers.cpp 24 Jul 2006 14:53:25 -0000 1.37
+++ server/swf/ASHandlers.cpp 26 Jul 2006 21:49:06 -0000 1.38
@@ -537,6 +537,12 @@
as_environment& env = thread.env;
const action_buffer& code = thread.code;
+ sound_handler* s = get_sound_handler();
+ if (s)
+ {
+ s->stop_all_sounds();
+ }
+
assert( code[thread.pc] == SWF::ACTION_STOP );
env.get_target()->set_play_state(movie::STOP);
}
@@ -582,6 +588,16 @@
int frame = code.read_int16(thread.pc+3);
+ // If the frame we goto isn't the next in line, all sounds are stopped.
+ if (env.get_target()->get_current_frame()+1 != frame) {
+
+ sound_handler* s = get_sound_handler();
+ if (s)
+ {
+ s->stop_all_sounds();
+ }
+ }
+
// 0-based already?
//// Convert from 1-based to 0-based
//frame--;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gnash-commit] gnash ChangeLog gnash.vcproj backend/gnash.cpp ...,
Tomas Groth <=