From d27b6265a08511c7a37aec4443591fbb8fca99bb Mon Sep 17 00:00:00 2001 From: twinaphex Date: Wed, 20 Jun 2018 04:50:58 +0200 Subject: [PATCH] Add more HAVE_MPV ifdefs --- command.c | 4 +-- config.def.h | 2 +- config.features.h | 6 ++++ configuration.c | 4 +-- cores/internal_cores.h | 56 +++++++++++++++++++++++++++++++ defaults.h | 2 +- griffin/griffin.c | 6 ++++ intl/msg_hash_ar.h | 4 +++ intl/msg_hash_chs.h | 4 +++ intl/msg_hash_cht.h | 4 +++ intl/msg_hash_de.h | 4 +++ intl/msg_hash_eo.h | 4 +++ intl/msg_hash_es.h | 4 +++ intl/msg_hash_fr.h | 4 +++ intl/msg_hash_it.h | 4 +++ intl/msg_hash_ja.h | 4 +++ intl/msg_hash_ko.h | 4 +++ intl/msg_hash_nl.h | 4 +++ intl/msg_hash_pl.h | 4 +++ intl/msg_hash_pt_br.h | 4 +++ intl/msg_hash_pt_pt.h | 4 +++ intl/msg_hash_ru.h | 4 +++ intl/msg_hash_us.h | 2 ++ intl/msg_hash_vn.h | 4 +++ menu/cbs/menu_cbs_deferred_push.c | 2 +- menu/cbs/menu_cbs_ok.c | 20 ++++++++--- menu/drivers/xmb.c | 18 +++++----- menu/menu_displaylist.c | 17 +++++++--- menu/menu_setting.c | 2 +- menu/widgets/menu_filebrowser.c | 2 +- msg_hash.c | 2 +- msg_hash.h | 1 + paths.c | 2 +- 33 files changed, 183 insertions(+), 29 deletions(-) diff --git a/command.c b/command.c index 6a72478760..0708c7a847 100644 --- a/command.c +++ b/command.c @@ -2134,7 +2134,7 @@ TODO: Add a setting for these tweaks */ } g_defaults.music_history = NULL; -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) if (g_defaults.video_history) { playlist_write_file(g_defaults.video_history); @@ -2184,7 +2184,7 @@ TODO: Add a setting for these tweaks */ settings->paths.path_content_music_history, content_history_size); -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) RARCH_LOG("%s: [%s].\n", msg_hash_to_str(MSG_LOADING_HISTORY_FILE), settings->paths.path_content_video_history); diff --git a/config.def.h b/config.def.h index ba69cb883a..8e1454065c 100644 --- a/config.def.h +++ b/config.def.h @@ -289,7 +289,7 @@ static bool content_show_favorites = true; static bool content_show_images = true; #endif static bool content_show_music = true; -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) static bool content_show_video = true; #endif #ifdef HAVE_NETWORKING diff --git a/config.features.h b/config.features.h index 96b06539ba..bad7654a0b 100644 --- a/config.features.h +++ b/config.features.h @@ -272,6 +272,12 @@ static const bool _ffmpeg_supp = true; static const bool _ffmpeg_supp = false; #endif +#ifdef HAVE_MPV +static const bool _mpv_supp = true; +#else +static const bool _mpv_supp = false; +#endif + #ifdef HAVE_FREETYPE static const bool _freetype_supp = true; #else diff --git a/configuration.c b/configuration.c index e67b34ba29..cafbdc9b38 100644 --- a/configuration.c +++ b/configuration.c @@ -1345,7 +1345,7 @@ static struct config_bool_setting *populate_settings_bool(settings_t *settings, SETTING_BOOL("content_show_images", &settings->bools.menu_content_show_images, true, content_show_images, false); #endif SETTING_BOOL("content_show_music", &settings->bools.menu_content_show_music, true, content_show_music, false); -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) SETTING_BOOL("content_show_video", &settings->bools.menu_content_show_video, true, content_show_video, false); #endif #ifdef HAVE_NETWORKING @@ -1726,7 +1726,7 @@ static void config_set_defaults(void) #endif #endif -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) configuration_set_bool(settings, settings->bools.multimedia_builtin_mediaplayer_enable, true); #else configuration_set_bool(settings, settings->bools.multimedia_builtin_mediaplayer_enable, false); diff --git a/cores/internal_cores.h b/cores/internal_cores.h index 6ef7d74f8c..08e916d63e 100644 --- a/cores/internal_cores.h +++ b/cores/internal_cores.h @@ -136,6 +136,62 @@ size_t libretro_ffmpeg_retro_get_memory_size(unsigned id); #endif +#ifdef HAVE_MPV +/* Internal mpv core. */ + +void libretro_mpv_retro_init(void); + +void libretro_mpv_retro_deinit(void); + +unsigned libretro_mpv_retro_api_version(void); + +void libretro_mpv_retro_get_system_info(struct retro_system_info *info); + +void libretro_mpv_retro_get_system_av_info(struct retro_system_av_info *info); + +void libretro_mpv_retro_set_environment(retro_environment_t cb); + +void libretro_mpv_retro_set_video_refresh(retro_video_refresh_t cb); + +void libretro_mpv_retro_set_audio_sample(retro_audio_sample_t cb); + +void libretro_mpv_retro_set_audio_sample_batch(retro_audio_sample_batch_t cb); + +void libretro_mpv_retro_set_input_poll(retro_input_poll_t cb); + +void libretro_mpv_retro_set_input_state(retro_input_state_t cb); + +void libretro_mpv_retro_set_controller_port_device(unsigned port, unsigned device); + +void libretro_mpv_retro_reset(void); + +void libretro_mpv_retro_run(void); + +size_t libretro_mpv_retro_serialize_size(void); + +bool libretro_mpv_retro_serialize(void *data, size_t size); + +bool libretro_mpv_retro_unserialize(const void *data, size_t size); + +void libretro_mpv_retro_cheat_reset(void); + +void libretro_mpv_retro_cheat_set(unsigned index, bool enabled, const char *code); + +bool libretro_mpv_retro_load_game(const struct retro_game_info *game); + +bool libretro_mpv_retro_load_game_special(unsigned game_type, + const struct retro_game_info *info, size_t num_info); + +void libretro_mpv_retro_unload_game(void); + +unsigned libretro_mpv_retro_get_region(void); + +void *libretro_mpv_retro_get_memory_data(unsigned id); + +size_t libretro_mpv_retro_get_memory_size(unsigned id); + +#endif + #ifdef HAVE_IMAGEVIEWER /* Internal image viewer core. */ diff --git a/defaults.h b/defaults.h index 2373d0bf00..117e14a39a 100644 --- a/defaults.h +++ b/defaults.h @@ -107,7 +107,7 @@ struct defaults playlist_t *image_history; #endif playlist_t *music_history; -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) playlist_t *video_history; #endif #endif diff --git a/griffin/griffin.c b/griffin/griffin.c index 4ceb217b12..d2700ce1bf 100644 --- a/griffin/griffin.c +++ b/griffin/griffin.c @@ -866,6 +866,12 @@ CORES #include "../cores/libretro-ffmpeg/ffmpeg_core.c" #endif +#if defined(HAVE_MPV) +#if defined(HAVE_OPENGL) || defined(HAVE_OPENGLES) +#include "../cores/libretro-mpv/mpv-libretro.c" +#endif +#endif + #include "../cores/dynamic_dummy.c" /*============================================================ diff --git a/intl/msg_hash_ar.h b/intl/msg_hash_ar.h index b51aa3a15b..40b8c57e06 100644 --- a/intl/msg_hash_ar.h +++ b/intl/msg_hash_ar.h @@ -3519,3 +3519,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_POWER_MANAGEMENT_SETTINGS, "Power Management") MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Change power management settings.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, + "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/intl/msg_hash_chs.h b/intl/msg_hash_chs.h index 95bbc73615..74cfb205c0 100644 --- a/intl/msg_hash_chs.h +++ b/intl/msg_hash_chs.h @@ -3305,3 +3305,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_POWER_MANAGEMENT_SETTINGS, "Power Management") MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Change power management settings.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, + "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/intl/msg_hash_cht.h b/intl/msg_hash_cht.h index 322a9670ba..7610e018e8 100644 --- a/intl/msg_hash_cht.h +++ b/intl/msg_hash_cht.h @@ -3297,3 +3297,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_POWER_MANAGEMENT_SETTINGS, "Power Management") MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Change power management settings.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, + "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/intl/msg_hash_de.h b/intl/msg_hash_de.h index 2955eb8feb..4fee19c045 100644 --- a/intl/msg_hash_de.h +++ b/intl/msg_hash_de.h @@ -3411,3 +3411,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_POWER_MANAGEMENT_SETTINGS, "Power Management") MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Change power management settings.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, + "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/intl/msg_hash_eo.h b/intl/msg_hash_eo.h index af17851892..07a7604035 100644 --- a/intl/msg_hash_eo.h +++ b/intl/msg_hash_eo.h @@ -3170,3 +3170,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_POWER_MANAGEMENT_SETTINGS, "Power Management") MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Change power management settings.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, + "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/intl/msg_hash_es.h b/intl/msg_hash_es.h index c571b7ed41..443b879ca3 100644 --- a/intl/msg_hash_es.h +++ b/intl/msg_hash_es.h @@ -6390,3 +6390,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_POWER_MANAGEMENT_SETTINGS, "Power Management") MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Change power management settings.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, + "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/intl/msg_hash_fr.h b/intl/msg_hash_fr.h index 2a032263ec..3e42334bac 100644 --- a/intl/msg_hash_fr.h +++ b/intl/msg_hash_fr.h @@ -3335,3 +3335,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_POWER_MANAGEMENT_SETTINGS, "Power Management") MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Change power management settings.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, + "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/intl/msg_hash_it.h b/intl/msg_hash_it.h index d500044b22..805aca1d83 100644 --- a/intl/msg_hash_it.h +++ b/intl/msg_hash_it.h @@ -3393,3 +3393,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_POWER_MANAGEMENT_SETTINGS, "Power Management") MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Change power management settings.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, + "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/intl/msg_hash_ja.h b/intl/msg_hash_ja.h index 5ebf9c856c..f898091ece 100644 --- a/intl/msg_hash_ja.h +++ b/intl/msg_hash_ja.h @@ -3547,3 +3547,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_POWER_MANAGEMENT_SETTINGS, "Power Management") MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Change power management settings.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, + "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/intl/msg_hash_ko.h b/intl/msg_hash_ko.h index 45bd72b7cb..9544404167 100644 --- a/intl/msg_hash_ko.h +++ b/intl/msg_hash_ko.h @@ -3296,3 +3296,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_POWER_MANAGEMENT_SETTINGS, "Power Management") MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Change power management settings.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, + "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/intl/msg_hash_nl.h b/intl/msg_hash_nl.h index a3b47eaa5f..82539b3e7c 100644 --- a/intl/msg_hash_nl.h +++ b/intl/msg_hash_nl.h @@ -3172,3 +3172,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_POWER_MANAGEMENT_SETTINGS, "Power Management") MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Change power management settings.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, + "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/intl/msg_hash_pl.h b/intl/msg_hash_pl.h index 37d33a1443..62bbee6b69 100644 --- a/intl/msg_hash_pl.h +++ b/intl/msg_hash_pl.h @@ -3574,3 +3574,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_POWER_MANAGEMENT_SETTINGS, "Zarządzanie energią") MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Zmień ustawienia zarządzania energią.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, + "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/intl/msg_hash_pt_br.h b/intl/msg_hash_pt_br.h index facca59534..a226b9639a 100644 --- a/intl/msg_hash_pt_br.h +++ b/intl/msg_hash_pt_br.h @@ -3730,3 +3730,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_POWER_MANAGEMENT_SETTINGS, "Power Management") MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Change power management settings.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, + "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/intl/msg_hash_pt_pt.h b/intl/msg_hash_pt_pt.h index 9dba74d668..d93a31af7a 100644 --- a/intl/msg_hash_pt_pt.h +++ b/intl/msg_hash_pt_pt.h @@ -3270,3 +3270,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_POWER_MANAGEMENT_SETTINGS, "Power Management") MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Change power management settings.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, + "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/intl/msg_hash_ru.h b/intl/msg_hash_ru.h index 6f36fea3bf..cbc2d29876 100644 --- a/intl/msg_hash_ru.h +++ b/intl/msg_hash_ru.h @@ -3466,3 +3466,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_POWER_MANAGEMENT_SETTINGS, "Power Management") MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Change power management settings.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, + "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/intl/msg_hash_us.h b/intl/msg_hash_us.h index 44529f58db..d129414bbb 100644 --- a/intl/msg_hash_us.h +++ b/intl/msg_hash_us.h @@ -3754,3 +3754,5 @@ MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Change power management settings.") MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/intl/msg_hash_vn.h b/intl/msg_hash_vn.h index f689dc8e4f..2a66b87c37 100644 --- a/intl/msg_hash_vn.h +++ b/intl/msg_hash_vn.h @@ -3327,3 +3327,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_POWER_MANAGEMENT_SETTINGS, "Power Management") MSG_HASH(MENU_ENUM_SUBLABEL_POWER_MANAGEMENT_SETTINGS, "Change power management settings.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SUSTAINED_PERFORMANCE_MODE, + "Sustained Performance Mode") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, + "mpv support") diff --git a/menu/cbs/menu_cbs_deferred_push.c b/menu/cbs/menu_cbs_deferred_push.c index 4b8a51d665..cd2b38386a 100644 --- a/menu/cbs/menu_cbs_deferred_push.c +++ b/menu/cbs/menu_cbs_deferred_push.c @@ -539,7 +539,7 @@ static int general_push(menu_displaylist_info_t *info, struct retro_system_info sysinfo = {0}; (void)sysinfo; -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) if (settings->bools.multimedia_builtin_mediaplayer_enable) { libretro_ffmpeg_retro_get_system_info(&sysinfo); diff --git a/menu/cbs/menu_cbs_ok.c b/menu/cbs/menu_cbs_ok.c index b6fbbff5d6..a479b78de3 100644 --- a/menu/cbs/menu_cbs_ok.c +++ b/menu/cbs/menu_cbs_ok.c @@ -2570,7 +2570,7 @@ static int (funcname)(const char *path, const char *label, unsigned type, size_t default_action_ok_start_builtin_core(action_ok_start_net_retropad_core, CORE_TYPE_NETRETROPAD) default_action_ok_start_builtin_core(action_ok_start_video_processor_core, CORE_TYPE_VIDEO_PROCESSOR) -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) static int action_ok_file_load_ffmpeg(const char *path, const char *label, unsigned type, size_t idx, size_t entry_idx) { @@ -2586,7 +2586,12 @@ static int action_ok_file_load_ffmpeg(const char *path, fill_pathname_join(new_path, menu_path, path, sizeof(new_path)); + /* TODO/FIXME - should become runtime optional */ +#ifdef HAVE_MPV + return default_action_ok_load_content_with_core_from_menu(new_path, CORE_TYPE_MPV); +#else return default_action_ok_load_content_with_core_from_menu(new_path, CORE_TYPE_FFMPEG); +#endif } #endif @@ -2604,7 +2609,12 @@ static int action_ok_audio_run(const char *path, fill_pathname_join(combined_path, menu->scratch2_buf, menu->scratch_buf, sizeof(combined_path)); + /* TODO/FIXME - should become runtime optional */ +#ifdef HAVE_MPV + return default_action_ok_load_content_with_core_from_menu(combined_path, CORE_TYPE_MPV); +#else return default_action_ok_load_content_with_core_from_menu(combined_path, CORE_TYPE_FFMPEG); +#endif } static int action_ok_file_load_imageviewer(const char *path, @@ -3269,7 +3279,7 @@ static int action_ok_delete_entry(const char *path, char *conf_path = NULL; char *def_conf_path = NULL; char *def_conf_music_path = NULL; -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) char *def_conf_video_path = NULL; #endif #ifdef HAVE_IMAGEVIEWER @@ -3284,7 +3294,7 @@ static int action_ok_delete_entry(const char *path, conf_path = playlist_get_conf_path(playlist); def_conf_path = playlist_get_conf_path(g_defaults.content_history); def_conf_music_path = playlist_get_conf_path(g_defaults.music_history); -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) def_conf_video_path = playlist_get_conf_path(g_defaults.video_history); #endif #ifdef HAVE_IMAGEVIEWER @@ -3295,7 +3305,7 @@ static int action_ok_delete_entry(const char *path, playlist = g_defaults.content_history; else if (string_is_equal(conf_path, def_conf_music_path)) playlist = g_defaults.music_history; -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) else if (string_is_equal(conf_path, def_conf_video_path)) playlist = g_defaults.video_history; #endif @@ -5124,7 +5134,7 @@ static int menu_cbs_init_bind_ok_compare_type(menu_file_list_cbs_t *cbs, } break; case FILE_TYPE_MOVIE: -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) /* TODO/FIXME - handle scan case */ BIND_ACTION_OK(cbs, action_ok_file_load_ffmpeg); #endif diff --git a/menu/drivers/xmb.c b/menu/drivers/xmb.c index d6c93e200d..1aa5b55feb 100755 --- a/menu/drivers/xmb.c +++ b/menu/drivers/xmb.c @@ -99,7 +99,7 @@ enum XMB_TEXTURE_HISTORY, XMB_TEXTURE_FAVORITES, XMB_TEXTURE_MUSICS, -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) XMB_TEXTURE_MOVIES, #endif #ifdef HAVE_NETWORKING @@ -165,7 +165,7 @@ enum XMB_SYSTEM_TAB_HISTORY, XMB_SYSTEM_TAB_FAVORITES, XMB_SYSTEM_TAB_MUSIC, -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) XMB_SYSTEM_TAB_VIDEO, #endif #ifdef HAVE_IMAGEVIEWER @@ -267,7 +267,7 @@ typedef struct xmb_handle xmb_node_t images_tab_node; #endif xmb_node_t music_tab_node; -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) xmb_node_t video_tab_node; #endif xmb_node_t settings_tab_node; @@ -1692,7 +1692,7 @@ static xmb_node_t* xmb_get_node(xmb_handle_t *xmb, unsigned i) #endif case XMB_SYSTEM_TAB_MUSIC: return &xmb->music_tab_node; -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) case XMB_SYSTEM_TAB_VIDEO: return &xmb->video_tab_node; #endif @@ -2265,7 +2265,7 @@ static uintptr_t xmb_icon_get_id(xmb_handle_t *xmb, case XMB_SYSTEM_TAB_IMAGES: return xmb->textures.list[XMB_TEXTURE_IMAGE]; #endif -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) case XMB_SYSTEM_TAB_VIDEO: return xmb->textures.list[XMB_TEXTURE_MOVIE]; #endif @@ -4088,7 +4088,7 @@ static void *xmb_init(void **userdata, bool video_is_threaded) #endif if (settings->bools.menu_content_show_music) xmb->tabs[++xmb->system_tab_end] = XMB_SYSTEM_TAB_MUSIC; -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) if (settings->bools.menu_content_show_video) xmb->tabs[++xmb->system_tab_end] = XMB_SYSTEM_TAB_VIDEO; #endif @@ -4265,7 +4265,7 @@ static const char *xmb_texture_path(unsigned id) return "add-favorite.png"; case XMB_TEXTURE_MUSICS: return "musics.png"; -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) case XMB_TEXTURE_MOVIES: return "movies.png"; #endif @@ -4402,7 +4402,7 @@ static void xmb_context_reset_textures( xmb->music_tab_node.alpha = xmb->categories_active_alpha; xmb->music_tab_node.zoom = xmb->categories_active_zoom; -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) xmb->video_tab_node.icon = xmb->textures.list[XMB_TEXTURE_MOVIES]; xmb->video_tab_node.alpha = xmb->categories_active_alpha; xmb->video_tab_node.zoom = xmb->categories_active_zoom; @@ -4742,7 +4742,7 @@ static void xmb_list_cache(void *data, enum menu_list_type type, unsigned action menu_stack->list[stack_size - 1].type = MENU_MUSIC_TAB; break; -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) case XMB_SYSTEM_TAB_VIDEO: menu_stack->list[stack_size - 1].label = strdup(msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_TAB)); diff --git a/menu/menu_displaylist.c b/menu/menu_displaylist.c index 7140fe0128..8089fd1ac4 100644 --- a/menu/menu_displaylist.c +++ b/menu/menu_displaylist.c @@ -1182,6 +1182,15 @@ static int menu_displaylist_parse_system_info(menu_displaylist_info_t *info) menu_entries_append_enum(info->list, feat_str, "", MENU_ENUM_LABEL_SYSTEM_INFO_ENTRY, MENU_SETTINGS_CORE_INFO_NONE, 0, 0); + snprintf(feat_str, sizeof(feat_str), + "%s: %s", + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT), + _mpv_supp ? + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_YES) : + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NO)); + menu_entries_append_enum(info->list, feat_str, "", + MENU_ENUM_LABEL_SYSTEM_INFO_ENTRY, MENU_SETTINGS_CORE_INFO_NONE, 0, 0); + snprintf(feat_str, sizeof(feat_str), "%s: %s", msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_CORETEXT_SUPPORT), @@ -3382,7 +3391,7 @@ static int menu_displaylist_parse_playlists( MENU_ENUM_LABEL_GOTO_MUSIC, MENU_SETTING_ACTION, 0, 0); -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) if (settings->bools.menu_content_show_video) menu_entries_append_enum(info->list, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_GOTO_VIDEO), @@ -4186,7 +4195,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data) count++; } -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) { settings_t *settings = config_get_ptr(); if (settings->bools.multimedia_builtin_mediaplayer_enable) @@ -4541,7 +4550,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data) } break; case DISPLAYLIST_VIDEO_HISTORY: -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) { settings_t *settings = config_get_ptr(); if (settings->bools.history_list_enable) @@ -6520,7 +6529,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data) MENU_ENUM_LABEL_GOTO_MUSIC, MENU_SETTING_ACTION, 0, 0); -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) if (settings->bools.menu_content_show_video) menu_entries_append_enum(info->list, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_GOTO_VIDEO), diff --git a/menu/menu_setting.c b/menu/menu_setting.c index daecd00238..cc3505e7eb 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -6017,7 +6017,7 @@ static bool setting_append_list( general_read_handler, SD_FLAG_NONE); -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) CONFIG_BOOL( list, list_info, &settings->bools.menu_content_show_video, diff --git a/menu/widgets/menu_filebrowser.c b/menu/widgets/menu_filebrowser.c index 86c943adcb..d635304607 100644 --- a/menu/widgets/menu_filebrowser.c +++ b/menu/widgets/menu_filebrowser.c @@ -231,7 +231,7 @@ void filebrowser_parse(void *data, unsigned type_data) switch (path_is_media_type(path)) { case RARCH_CONTENT_MOVIE: -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) if (settings->bools.multimedia_builtin_mediaplayer_enable) file_type = FILE_TYPE_MOVIE; #endif diff --git a/msg_hash.c b/msg_hash.c index afdc0c4d0f..ce82ea9f4e 100644 --- a/msg_hash.c +++ b/msg_hash.c @@ -305,7 +305,7 @@ enum msg_file_type msg_hash_to_file_type(uint32_t hash) return FILE_TYPE_SHA1; case MENU_VALUE_MD5: return FILE_TYPE_MD5; -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) case MENU_VALUE_FILE_OGM: return FILE_TYPE_OGM; case MENU_VALUE_FILE_MKV: diff --git a/msg_hash.h b/msg_hash.h index e6b8ef6ca6..3c7e43ab3e 100644 --- a/msg_hash.h +++ b/msg_hash.h @@ -1673,6 +1673,7 @@ enum msg_hash_enums MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_SDL_IMAGE_SUPPORT, MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_FBO_SUPPORT, MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_FFMPEG_SUPPORT, + MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT, MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_CORETEXT_SUPPORT, MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_FREETYPE_SUPPORT, MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_NETPLAY_SUPPORT, diff --git a/paths.c b/paths.c index 7344451f1f..fc08a119be 100644 --- a/paths.c +++ b/paths.c @@ -723,7 +723,7 @@ enum rarch_content_type path_is_media_type(const char *path) switch (msg_hash_to_file_type(msg_hash_calculate(ext_lower))) { -#ifdef HAVE_FFMPEG +#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) case FILE_TYPE_OGM: case FILE_TYPE_MKV: case FILE_TYPE_AVI: