diff options
| author | Dan Everton <dan@iocaine.org> | 2009-06-17 07:55:50 +0000 |
|---|---|---|
| committer | Dan Everton <dan@iocaine.org> | 2009-06-17 07:55:50 +0000 |
| commit | 72c65d7575cdf9277a27a5baf18eb013c629d223 (patch) | |
| tree | a5d1a0cec4ff0f0d586a4a80927d1075486452bd | |
| parent | f2a8dd3ce554ba900273c450ea645630efe2bbcb (diff) | |
| download | rockbox-72c65d7575cdf9277a27a5baf18eb013c629d223.zip rockbox-72c65d7575cdf9277a27a5baf18eb013c629d223.tar.gz rockbox-72c65d7575cdf9277a27a5baf18eb013c629d223.tar.bz2 rockbox-72c65d7575cdf9277a27a5baf18eb013c629d223.tar.xz | |
Commit FS#10324 from Jeffrey Goode.
Close the debug audio stream in the simulator when playback is stopped
to allow the file to be opened by other programs. This would mostly have
been an issue on Windows.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21315 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | docs/CREDITS | 1 | ||||
| -rw-r--r-- | uisimulator/sdl/sound.c | 13 |
2 files changed, 13 insertions, 1 deletions
diff --git a/docs/CREDITS b/docs/CREDITS index ce2f0ed..74774f1 100644 --- a/docs/CREDITS +++ b/docs/CREDITS @@ -471,6 +471,7 @@ Vytenis Sabelka Nicolas Pitre Benedikt Goos Frederick Full +Jeffrey Goode The libmad team The wavpack team diff --git a/uisimulator/sdl/sound.c b/uisimulator/sdl/sound.c index 39abc85..428983a 100644 --- a/uisimulator/sdl/sound.c +++ b/uisimulator/sdl/sound.c @@ -96,6 +96,11 @@ void pcm_play_dma_start(const void *addr, size_t size) void pcm_play_dma_stop(void) { SDL_PauseAudio(1); + if (udata.debug != NULL) { + fclose(udata.debug); + udata.debug = NULL; + DEBUGF("Audio debug file closed\n"); + } } void pcm_play_dma_pause(bool pause) @@ -113,6 +118,11 @@ size_t pcm_get_bytes_waiting(void) extern int sim_volume; /* in firmware/sound.c */ void write_to_soundcard(struct pcm_udata *udata) { + if (debug_audio && (udata->debug == NULL)) { + udata->debug = fopen("audiodebug.raw", "ab"); + DEBUGF("Audio debug file open\n"); + } + if (cvt.needed) { Uint32 rd = udata->num_in; Uint32 wr = (double)rd * cvt.len_ratio; @@ -292,8 +302,9 @@ void pcm_play_dma_init(void) if (debug_audio) { udata.debug = fopen("audiodebug.raw", "wb"); + DEBUGF("Audio debug file open\n"); } - + /* Set 16-bit stereo audio at 44Khz */ wanted_spec.freq = 44100; wanted_spec.format = AUDIO_S16SYS; |