From 9d3d925295112a0080bc1d70fad170db9e1af2a9 Mon Sep 17 00:00:00 2001 From: Solomon Peachy Date: Thu, 13 Oct 2022 11:04:12 -0400 Subject: Revert "RFC: Get rid of mpegplayer plugin" This reverts commit d25d24812e8120c0eb133a412287ac030eb185c9. Change-Id: I1563223e343fb1e2eda72a45823b38350025ff93 --- apps/plugins/mpegplayer/mpeg_settings.h | 110 ++++++++++++++++++++++++++++++++ 1 file changed, 110 insertions(+) create mode 100644 apps/plugins/mpegplayer/mpeg_settings.h (limited to 'apps/plugins/mpegplayer/mpeg_settings.h') diff --git a/apps/plugins/mpegplayer/mpeg_settings.h b/apps/plugins/mpegplayer/mpeg_settings.h new file mode 100644 index 0000000000..b1704ef707 --- /dev/null +++ b/apps/plugins/mpegplayer/mpeg_settings.h @@ -0,0 +1,110 @@ + +#include "plugin.h" + +#define SETTINGS_VERSION 5 +#define SETTINGS_MIN_VERSION 1 +#define SETTINGS_FILENAME "mpegplayer.cfg" + +#if defined(TOSHIBA_GIGABEAT_F) || defined(SANSA_E200) || defined(SANSA_C200) \ + || defined(IRIVER_H10) || defined(COWON_D2) || defined(PHILIPS_HDD1630) \ + || defined(SANSA_FUZE) || defined(SANSA_E200V2) || defined(SANSA_FUZEV2) \ + || defined(TOSHIBA_GIGABEAT_S) || defined(PHILIPS_SA9200) +#define MPEG_OPTION_DITHERING_ENABLED 1 +#endif + +#ifndef MPEG_OPTION_DITHERING_ENABLED +#define MPEG_OPTION_DITHERING_ENABLED 0 +#endif + +enum mpeg_option_id +{ +#if MPEG_OPTION_DITHERING_ENABLED + MPEG_OPTION_DITHERING, +#endif + MPEG_OPTION_DISPLAY_FPS, + MPEG_OPTION_LIMIT_FPS, + MPEG_OPTION_SKIP_FRAMES, +#ifdef HAVE_BACKLIGHT_BRIGHTNESS + MPEG_OPTION_BACKLIGHT_BRIGHTNESS, +#endif +}; + +enum mpeg_audio_option_id +{ + MPEG_AUDIO_TONE_CONTROLS, + MPEG_AUDIO_CHANNEL_MODES, + MPEG_AUDIO_CROSSFEED, + MPEG_AUDIO_EQUALIZER, + MPEG_AUDIO_DITHERING, +}; + +enum mpeg_resume_id +{ + MPEG_RESUME_MENU_ALWAYS = 0, + MPEG_RESUME_MENU_IF_INCOMPLETE, + MPEG_RESUME_RESTART, + MPEG_RESUME_ALWAYS, + MPEG_RESUME_NUM_OPTIONS, +}; + +enum mpeg_start_id +{ + MPEG_START_RESTART, + MPEG_START_RESUME, + MPEG_START_SEEK, + MPEG_START_SETTINGS, + MPEG_START_QUIT, + MPEG_START_EXIT, +}; + +enum mpeg_setting_id +{ + MPEG_SETTING_DISPLAY_SETTINGS, + MPEG_SETTING_AUDIO_SETTINGS, + MPEG_SETTING_ENABLE_START_MENU, + MPEG_SETTING_PLAY_MODE, + MPEG_SETTING_CLEAR_RESUMES, +}; + +enum mpeg_menu_id +{ + MPEG_MENU_SETTINGS, + MPEG_MENU_RESUME, + MPEG_MENU_QUIT, +}; + +struct mpeg_settings { + int showfps; /* flag to display fps */ + int limitfps; /* flag to limit fps */ + int skipframes; /* flag to skip frames */ + int resume_options; /* type of resume action at start */ + int resume_count; /* total # of resumes in config file */ + int resume_time; /* resume time for current mpeg (in half minutes) */ + char resume_filename[MAX_PATH]; /* filename of current mpeg */ +#if MPEG_OPTION_DITHERING_ENABLED + int displayoptions; +#endif + int play_mode; /* play single file or all files in directory */ + /* Audio options - simple on/off specification */ + int tone_controls; + int channel_modes; + int crossfeed; + int equalizer; + int dithering; + /* Backlight options */ +#ifdef HAVE_BACKLIGHT_BRIGHTNESS + int backlight_brightness; +#endif +}; + +extern struct mpeg_settings settings; + +int mpeg_start_menu(uint32_t duration); +int mpeg_menu(void); + +void init_settings(const char* filename); +void save_settings(void); + +#ifdef HAVE_BACKLIGHT_BRIGHTNESS +void mpeg_backlight_update_brightness(int value); +#endif -- cgit v1.2.3