summaryrefslogtreecommitdiff
path: root/firmware/export
diff options
context:
space:
mode:
authorJörg Hohensohn <hohensoh@rockbox.org>2004-01-05 20:42:51 +0000
committerJörg Hohensohn <hohensoh@rockbox.org>2004-01-05 20:42:51 +0000
commitf993365447d8dc5bb28c76a003cecd045c3abaf7 (patch)
tree19d4a2cfebd7e0f43c85559c2e88114fd4ba3223 /firmware/export
parent974c2f0d43c1ebc786854f48f15ccaea7803d8f0 (diff)
downloadrockbox-f993365447d8dc5bb28c76a003cecd045c3abaf7.zip
rockbox-f993365447d8dc5bb28c76a003cecd045c3abaf7.tar.gz
rockbox-f993365447d8dc5bb28c76a003cecd045c3abaf7.tar.bz2
rockbox-f993365447d8dc5bb28c76a003cecd045c3abaf7.tar.xz
Moved the low-level playback functionality into a new, separate module "mp3_playback". This e.g. allows to export a memory playback API to the plugins, opens the door to games with sound, UI sounds, etc.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4192 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/export')
-rw-r--r--firmware/export/mp3_playback.h73
-rw-r--r--firmware/export/mpeg.h34
2 files changed, 74 insertions, 33 deletions
diff --git a/firmware/export/mp3_playback.h b/firmware/export/mp3_playback.h
new file mode 100644
index 0000000..2767092
--- /dev/null
+++ b/firmware/export/mp3_playback.h
@@ -0,0 +1,73 @@
+/***************************************************************************
+ * __________ __ ___.
+ * Open \______ \ ____ ____ | | _\_ |__ _______ ___
+ * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
+ * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
+ * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
+ * \/ \/ \/ \/ \/
+ * $Id$
+ *
+ * Code that has been in mpeg.c/h before, now creating an encapsulated play
+ * data module, to be used by other sources than file playback as well.
+ *
+ * Copyright (C) 2004 by Linus Nielsen Feltzing
+ *
+ * All files in this archive are subject to the GNU General Public License.
+ * See the file COPYING in the source tree root for full license agreement.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ****************************************************************************/
+#ifndef _MP3_PLAYBACK_H_
+#define _MP3_PLAYBACK_H_
+
+#include <stdbool.h>
+
+/* functions formerly in mpeg.c */
+void mp3_init(int volume, int bass, int treble, int balance,
+ int loudness, int bass_boost, int avc, int channel_config);
+void mpeg_sound_set(int setting, int value);
+int mpeg_sound_min(int setting);
+int mpeg_sound_max(int setting);
+int mpeg_sound_default(int setting);
+void mpeg_sound_channel_config(int configuration);
+int mpeg_val2phys(int setting, int value);
+int mpeg_phys2val(int setting, int value);
+char *mpeg_sound_unit(int setting);
+int mpeg_sound_numdecimals(int setting);
+#if defined(HAVE_MAS3587F) || defined(SIMULATOR)
+void mpeg_set_pitch(int percent);
+#endif
+
+/* new functions, to be exported to plugin API */
+void mp3_play_init(void);
+void mp3_play_data(unsigned char* start, int size,
+ void (*get_more)(unsigned char** start, int* size) /* callback fn */
+);
+void mp3_play_pause(bool play);
+void mp3_play_stop(void);
+
+
+#define SOUND_VOLUME 0
+#define SOUND_BASS 1
+#define SOUND_TREBLE 2
+#define SOUND_BALANCE 3
+#define SOUND_LOUDNESS 4
+#define SOUND_SUPERBASS 5
+#define SOUND_AVC 6
+#define SOUND_CHANNELS 7
+#define SOUND_LEFT_GAIN 8
+#define SOUND_RIGHT_GAIN 9
+#define SOUND_MIC_GAIN 10
+#define SOUND_NUMSETTINGS 11
+
+#define MPEG_SOUND_STEREO 0
+#define MPEG_SOUND_STEREO_NARROW 1
+#define MPEG_SOUND_MONO 2
+#define MPEG_SOUND_MONO_LEFT 3
+#define MPEG_SOUND_MONO_RIGHT 4
+#define MPEG_SOUND_KARAOKE 5
+#define MPEG_SOUND_STEREO_WIDE 6
+
+#endif /* #ifndef _MP3_PLAYBACK_H_ */
diff --git a/firmware/export/mpeg.h b/firmware/export/mpeg.h
index bbace28..2a629f4 100644
--- a/firmware/export/mpeg.h
+++ b/firmware/export/mpeg.h
@@ -61,8 +61,7 @@ struct mpeg_debug
int lowest_watermark_level;
};
-void mpeg_init(int volume, int bass, int treble, int balance,
- int loudness, int bass_boost, int avc, int channel_config);
+void mpeg_init(void);
void mpeg_play(int offset);
void mpeg_stop(void);
void mpeg_pause(void);
@@ -71,20 +70,10 @@ void mpeg_next(void);
void mpeg_prev(void);
void mpeg_ff_rewind(int newtime);
void mpeg_flush_and_reload_tracks(void);
-void mpeg_sound_set(int setting, int value);
-int mpeg_sound_min(int setting);
-int mpeg_sound_max(int setting);
-int mpeg_sound_default(int setting);
-void mpeg_sound_channel_config(int configuration);
-int mpeg_val2phys(int setting, int value);
-int mpeg_phys2val(int setting, int value);
-char *mpeg_sound_unit(int setting);
-int mpeg_sound_numdecimals(int setting);
struct mp3entry* mpeg_current_track(void);
bool mpeg_has_changed_track(void);
int mpeg_status(void);
#if defined(HAVE_MAS3587F) || defined(SIMULATOR)
-void mpeg_set_pitch(int percent);
void mpeg_init_recording(void);
void mpeg_init_playback(void);
void mpeg_record(char *filename);
@@ -101,27 +90,6 @@ void mpeg_set_buffer_margin(int seconds);
unsigned int mpeg_error(void);
void mpeg_error_clear(void);
-#define SOUND_VOLUME 0
-#define SOUND_BASS 1
-#define SOUND_TREBLE 2
-#define SOUND_BALANCE 3
-#define SOUND_LOUDNESS 4
-#define SOUND_SUPERBASS 5
-#define SOUND_AVC 6
-#define SOUND_CHANNELS 7
-#define SOUND_LEFT_GAIN 8
-#define SOUND_RIGHT_GAIN 9
-#define SOUND_MIC_GAIN 10
-#define SOUND_NUMSETTINGS 11
-
-#define MPEG_SOUND_STEREO 0
-#define MPEG_SOUND_STEREO_NARROW 1
-#define MPEG_SOUND_MONO 2
-#define MPEG_SOUND_MONO_LEFT 3
-#define MPEG_SOUND_MONO_RIGHT 4
-#define MPEG_SOUND_KARAOKE 5
-#define MPEG_SOUND_STEREO_WIDE 6
-
#define MPEG_STATUS_PLAY 1
#define MPEG_STATUS_PAUSE 2
#define MPEG_STATUS_RECORD 4