diff options
author | wm4 <wm4@nowhere> | 2018-03-02 13:59:10 +0100 |
---|---|---|
committer | Jan Ekström <jeebjp@gmail.com> | 2018-03-03 02:38:01 +0200 |
commit | 16eca7139a98609b71a25a0e6095b18e28f62025 (patch) | |
tree | c2a2c6bb2e601f31fff0234151cdf10371673718 /demux | |
parent | 16d033814cc5838bef09f6b9ade35f38851b852b (diff) | |
download | mpv-16eca7139a98609b71a25a0e6095b18e28f62025.tar.bz2 mpv-16eca7139a98609b71a25a0e6095b18e28f62025.tar.xz |
demux_lavf: add --demuxer-lavf-probe-info=nostreams
Another attempt to try to make it behave in certain situations.
Diffstat (limited to 'demux')
-rw-r--r-- | demux/demux_lavf.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/demux/demux_lavf.c b/demux/demux_lavf.c index 20cf6429a3..4e1e3067ea 100644 --- a/demux/demux_lavf.c +++ b/demux/demux_lavf.c @@ -82,7 +82,7 @@ const struct m_sub_options demux_lavf_conf = { .opts = (const m_option_t[]) { OPT_INTRANGE("demuxer-lavf-probesize", probesize, 0, 32, INT_MAX), OPT_CHOICE("demuxer-lavf-probe-info", probeinfo, 0, - ({"no", 0}, {"yes", 1}, {"auto", -1})), + ({"no", 0}, {"yes", 1}, {"auto", -1}, {"nostreams", -2})), OPT_STRING("demuxer-lavf-format", format, 0), OPT_FLOATRANGE("demuxer-lavf-analyzeduration", analyzeduration, 0, 0, 3600), @@ -892,8 +892,11 @@ static int demux_open_lavf(demuxer_t *demuxer, enum demux_check check) priv->avfc = avfc; - bool probeinfo = lavfdopts->probeinfo < 0 ? - !priv->format_hack.skipinfo : lavfdopts->probeinfo; + bool probeinfo = lavfdopts->probeinfo != 0; + switch (lavfdopts->probeinfo) { + case -2: probeinfo = priv->avfc->nb_streams == 0; break; + case -1: probeinfo = !priv->format_hack.skipinfo; break; + } if (demuxer->params && demuxer->params->skip_lavf_probing) probeinfo = false; if (probeinfo) { |