Prepare new maemo release
[maemo-rb.git] / apps / plugins / mpegplayer / mpeg_settings.h
blobb1704ef7070224ed2eeef538f2725006b5fc6a61
2 #include "plugin.h"
4 #define SETTINGS_VERSION 5
5 #define SETTINGS_MIN_VERSION 1
6 #define SETTINGS_FILENAME "mpegplayer.cfg"
8 #if defined(TOSHIBA_GIGABEAT_F) || defined(SANSA_E200) || defined(SANSA_C200) \
9 || defined(IRIVER_H10) || defined(COWON_D2) || defined(PHILIPS_HDD1630) \
10 || defined(SANSA_FUZE) || defined(SANSA_E200V2) || defined(SANSA_FUZEV2) \
11 || defined(TOSHIBA_GIGABEAT_S) || defined(PHILIPS_SA9200)
12 #define MPEG_OPTION_DITHERING_ENABLED 1
13 #endif
15 #ifndef MPEG_OPTION_DITHERING_ENABLED
16 #define MPEG_OPTION_DITHERING_ENABLED 0
17 #endif
19 enum mpeg_option_id
21 #if MPEG_OPTION_DITHERING_ENABLED
22 MPEG_OPTION_DITHERING,
23 #endif
24 MPEG_OPTION_DISPLAY_FPS,
25 MPEG_OPTION_LIMIT_FPS,
26 MPEG_OPTION_SKIP_FRAMES,
27 #ifdef HAVE_BACKLIGHT_BRIGHTNESS
28 MPEG_OPTION_BACKLIGHT_BRIGHTNESS,
29 #endif
32 enum mpeg_audio_option_id
34 MPEG_AUDIO_TONE_CONTROLS,
35 MPEG_AUDIO_CHANNEL_MODES,
36 MPEG_AUDIO_CROSSFEED,
37 MPEG_AUDIO_EQUALIZER,
38 MPEG_AUDIO_DITHERING,
41 enum mpeg_resume_id
43 MPEG_RESUME_MENU_ALWAYS = 0,
44 MPEG_RESUME_MENU_IF_INCOMPLETE,
45 MPEG_RESUME_RESTART,
46 MPEG_RESUME_ALWAYS,
47 MPEG_RESUME_NUM_OPTIONS,
50 enum mpeg_start_id
52 MPEG_START_RESTART,
53 MPEG_START_RESUME,
54 MPEG_START_SEEK,
55 MPEG_START_SETTINGS,
56 MPEG_START_QUIT,
57 MPEG_START_EXIT,
60 enum mpeg_setting_id
62 MPEG_SETTING_DISPLAY_SETTINGS,
63 MPEG_SETTING_AUDIO_SETTINGS,
64 MPEG_SETTING_ENABLE_START_MENU,
65 MPEG_SETTING_PLAY_MODE,
66 MPEG_SETTING_CLEAR_RESUMES,
69 enum mpeg_menu_id
71 MPEG_MENU_SETTINGS,
72 MPEG_MENU_RESUME,
73 MPEG_MENU_QUIT,
76 struct mpeg_settings {
77 int showfps; /* flag to display fps */
78 int limitfps; /* flag to limit fps */
79 int skipframes; /* flag to skip frames */
80 int resume_options; /* type of resume action at start */
81 int resume_count; /* total # of resumes in config file */
82 int resume_time; /* resume time for current mpeg (in half minutes) */
83 char resume_filename[MAX_PATH]; /* filename of current mpeg */
84 #if MPEG_OPTION_DITHERING_ENABLED
85 int displayoptions;
86 #endif
87 int play_mode; /* play single file or all files in directory */
88 /* Audio options - simple on/off specification */
89 int tone_controls;
90 int channel_modes;
91 int crossfeed;
92 int equalizer;
93 int dithering;
94 /* Backlight options */
95 #ifdef HAVE_BACKLIGHT_BRIGHTNESS
96 int backlight_brightness;
97 #endif
100 extern struct mpeg_settings settings;
102 int mpeg_start_menu(uint32_t duration);
103 int mpeg_menu(void);
105 void init_settings(const char* filename);
106 void save_settings(void);
108 #ifdef HAVE_BACKLIGHT_BRIGHTNESS
109 void mpeg_backlight_update_brightness(int value);
110 #endif