diff options
-rw-r--r-- | demux/demux.c | 5 | ||||
-rw-r--r-- | demux/demux.h | 2 | ||||
-rw-r--r-- | options/options.c | 7 | ||||
-rw-r--r-- | player/main.c | 8 |
4 files changed, 9 insertions, 13 deletions
diff --git a/demux/demux.c b/demux/demux.c index 348d665d49..5fa0528d3d 100644 --- a/demux/demux.c +++ b/demux/demux.c @@ -2827,7 +2827,7 @@ done: return out_pkt; } -void demuxer_help(struct mp_log *log) +int demuxer_help(struct mp_log *log, const m_option_t *opt, struct bstr name) { int i; @@ -2837,6 +2837,9 @@ void demuxer_help(struct mp_log *log) mp_info(log, "%10s %s\n", demuxer_list[i]->name, demuxer_list[i]->desc); } + mp_info(log, "\n"); + + return M_OPT_EXIT; } static const char *d_level(enum demux_check level) diff --git a/demux/demux.h b/demux/demux.h index 80c9a80fc7..ed414f1816 100644 --- a/demux/demux.h +++ b/demux/demux.h @@ -293,7 +293,7 @@ void demuxer_select_track(struct demuxer *demuxer, struct sh_stream *stream, void demuxer_refresh_track(struct demuxer *demuxer, struct sh_stream *stream, double ref_pts); -void demuxer_help(struct mp_log *log); +int demuxer_help(struct mp_log *log, const m_option_t *opt, struct bstr name); int demuxer_add_attachment(struct demuxer *demuxer, char *name, char *type, void *data, size_t data_size); diff --git a/options/options.c b/options/options.c index 8aadc87ab9..2a168da4e5 100644 --- a/options/options.c +++ b/options/options.c @@ -46,6 +46,7 @@ #include "player/core.h" #include "player/command.h" #include "stream/stream.h" +#include "demux/demux.h" #if HAVE_DRM #include "video/out/drm_common.h" @@ -514,9 +515,9 @@ static const m_option_t mp_opts[] = { #endif // demuxer.c - select audio/sub file/demuxer - {"demuxer", OPT_STRING(demuxer_name)}, - {"audio-demuxer", OPT_STRING(audio_demuxer_name)}, - {"sub-demuxer", OPT_STRING(sub_demuxer_name)}, + {"demuxer", OPT_STRING(demuxer_name), .help = demuxer_help}, + {"audio-demuxer", OPT_STRING(audio_demuxer_name), .help = demuxer_help}, + {"sub-demuxer", OPT_STRING(sub_demuxer_name), .help = demuxer_help}, {"demuxer-thread", OPT_FLAG(demuxer_thread)}, {"demuxer-termination-timeout", OPT_DOUBLE(demux_termination_timeout)}, {"demuxer-cache-wait", OPT_FLAG(demuxer_cache_wait)}, diff --git a/player/main.c b/player/main.c index 71f5d14b53..58be00b6d8 100644 --- a/player/main.c +++ b/player/main.c @@ -54,7 +54,6 @@ #include "input/input.h" #include "audio/out/ao.h" -#include "demux/demux.h" #include "misc/thread_tools.h" #include "sub/osd.h" #include "test/tests.h" @@ -202,13 +201,6 @@ static bool handle_help_options(struct MPContext *mpctx) { struct MPOpts *opts = mpctx->opts; struct mp_log *log = mpctx->log; - if ((opts->demuxer_name && strcmp(opts->demuxer_name, "help") == 0) || - (opts->audio_demuxer_name && strcmp(opts->audio_demuxer_name, "help") == 0) || - (opts->sub_demuxer_name && strcmp(opts->sub_demuxer_name, "help") == 0)) { - demuxer_help(log); - MP_INFO(mpctx, "\n"); - return true; - } if (opts->ao_opts->audio_device && strcmp(opts->ao_opts->audio_device, "help") == 0) { |