| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
Only youtube playlists return ID-only urls. Other extractors may
return "<extractor>:<ID>" so those still need the ytdl:// prefix.
Reproduced with
http://www.cbc.ca/burdenoftruth/videos/trailers-promos/burden-of-truth-returns
|
|
|
|
|
|
|
|
|
|
|
| |
Disable by default.
This feature was added in 7eb342757, which allowed stream selection
in runtime. Problem with this atm is that FFmpeg will try to demux
every first packet of every track leading to noticeable delay opening
the URL.
This option can be changed to enabled by default or removed when
HLS/DASH demuxers are improved upstream.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Still needs `--ytdl-raw-option=yes-playlist=` because this only
works for youtube.
This was requested in a few issues:
https://github.com/mpv-player/mpv/issues/1400
https://github.com/mpv-player/mpv/issues/2592
https://github.com/mpv-player/mpv/issues/3024
For #1400 to be completely implemented would need ytdl_hook to
re-request the same playlist with the last video's ID for the mix to
continue indefinitely which would probably too hackish to work reliably.
|
| |
|
|
|
|
|
|
|
|
| |
Remove obsolete comment about FFmpeg ignoring non-http proxies
which was repeated in ytdl_hook before the feature was added.
Remove unnecessary conditions for not nil. Lua tables will always
return nil for non-existent keys.
|
|
|
|
|
| |
This was overlooked when doing the whitelisting for video and audio to
fix #5456.
|
|
|
|
|
|
|
| |
This is important if backporting by grabbing the latest version of
the script without backporting the commit that added the property:
828bd2963cd10a851e0a977809687aed4d377dc3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
FFmpeg only suppports http proxies and ignores it if
the resulting url is https. Also, no SOCKS.
Use it like `--ytdl-raw-options=proxy=[http://127.0.0.1:3128]` so
it doesn't confuse mpv because of the colons.
You need to pass it as an option because youtube-dl doesn't give
us the proxy.
Or just set `http_proxy` environment variable as recommended before.
Added example using -append, which doesn't need escaping.
|
| |
|
|
|
|
| |
Close #5453
|
|
|
|
|
|
|
| |
This makes all the video/audio variants available for selection.
Might break with non-hls/dash, or even with dash if FFmpeg wasn't
compiled with the demuxer.
|
| |
|
|
|
|
| |
lua isn't javascript.
|
|
|
|
|
|
| |
Not very clean since there's a lot of potential unsafe urls that youtube-dl
can give us, depending on whether it's a single url, split tracks,
playlists, segmented dash, etc.
|
|
|
|
|
|
| |
Uses track tbr instead of track disposition id for dash selection
Works just as expected because youtube-dl also takes tbr from the manifests.
|
|
|
|
| |
Sorta requested in #5390
|
|
|
|
|
|
|
|
| |
package.config is available in 5.1, 5.2, 5.3 and luajit, so should be fine.
The first character is the path separator, so it's '\' on windows and '/'
on *nix.
This should also prevent cases where users download the wrong binary.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Should only make a difference if most of the URLs you open need
youtube-dl parsing.
|
| |
|
|
|
|
|
|
|
| |
If this breaks another site again, remove this whole if and just leave them as
separate playlist items.
Close #5364
|
| |
|
| |
|
| |
|
|
|
|
| |
Avoids flickering stream cache status while filling the demuxer cache.
|
|
|
|
| |
Close #5313
|
|
|
|
|
| |
Also hide cache if 'cache-used' is 0 (usually means video fits
entirely within demuxer-cache-duration or stream cache is disabled).
|
|
|
|
|
|
| |
Show total cache as well as demuxer cache separately.
This adjusts the presented values to be consistent with status line
and OSC modifications made in https://github.com/mpv-player/mpv/pull/5250
|
| |
|
|
|
|
|
| |
This commit adds a new osc setting `seekranges` to control
the seek ranges visibility.
|
|
|
|
| |
Faster and more efficient than string concat with large playlists.
|
|
|
|
| |
Close #5003
|
|
|
|
|
|
|
|
| |
Same as previous commit, but for the OSC.
(A bit of a waste to request demuxer-cache-state at least twice per
frame, but the OSC queries so many properties it probably doesn't matter
anymore.)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I've decided that MP_TRACE means “noisy spam per frame”, whereas
MP_DBG just means “more verbose debugging messages than MSGL_V”.
Basically, MSGL_DBG shouldn't create spam per frame like it currently
does, and MSGL_V should make sense to the end-user and provide mostly
additional informational output.
MP_DBG is basically what I want to make the new default for --log-file,
so the cut-off point for MP_DBG is if we probably want to know if for
debugging purposes but the user most likely doesn't care about on the
terminal.
Also, the debug callbacks for libass and ffmpeg got bumped in their
verbosity levels slightly, because being external components they're a
bit less relevant to mpv debugging, and a bit too over-eager in what
they consider to be relevant information.
I exclusively used the "try it on my machine and remove messages from
MSGL_* until it does what I want it to" approach of refactoring, so
YMMV.
|
|
|
|
|
|
| |
Apparently, this breaks youtube live and possibly other things.
This reverts commit 06519aae5837312437b07e8bfef10c025ec2f688.
|
|
|
|
|
| |
Using youtube-dl's metadata ends up with stupid things like missing
variant streams, or missing audio streams entirely.
|
|
|
|
|
| |
As builtin script, it should not register global key bindings, and add
them to input.conf instead. This is similar to what stats.lua does.
|
| |
|
|
|
|
|
|
| |
Pretty fucking ugly, but I'm not a UI designer.
Of course only does something with --demuxer-seekable-cache.
|
|
|
|
| |
also one minor cosmetic change: comment the "coming soon" dummy page
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously multiple timers were used to realize oneshot, toggling
(redrawing) and page keybindings. The oneshot case in particular also
relied on mp.osd_message to display text only for a given duration.
This was changed to only use one timer in total now. Because now each
case has a defined "start" and "end" point (including oneshot)
mp.set_osd_ass() can be used to print stats as well. This is currently
optional and has to be activated using the config option
persistent_overlay=true.
One shortcoming: oneshot and toggling are mutual exclusive right now.
Previously you could enter toggling while oneshot stats were shown,
this is not possible anymore to reduce the number of cases to be
considered. This can be added later on if desired.
|
|
|
|
|
|
| |
It used a bad heuristic that got even worse/less reliable with recent
changes in mpv. In fact, it's not reliable at all.
Watch out for dropped frames instead. That's a useful indicator.
|
|
|
|
|
| |
Fixes #44
(well, partially, I'm still not sure about the time)
|
| |
|
|
|
|
|
| |
Clarified the relationship between `Dropped` and `VO`, and also merged
the DS-exclusive stats into the DS line.
|
|
|
|
|
| |
It's apparently already stated as part of the upload pass name.
This reverts commit ec837f64c29a1b825e28b65edc34059b6c1cad40.
|
| |
|
| |
|
|
|
|
| |
Due to popular demand
|
|
|
|
| |
There was a superfluous newline and some indentation
|
| |
|
|
|
|
| |
There's no point in disabling it anyway
|
| |
|
|
|
|
| |
There is enough space now
|
| |
|
|
|
|
| |
Fixes #42
|
|
|
|
| |
There's no reason it's not.
|
|
|
|
|
|
| |
Almost cosmetic change.
This tables-in-table was done back when we actually processed strings
but that's long ago now and no longer needed nor useful.
|
|
|
|
|
|
|
| |
Previously I could trigger a bug with intense button mashing, however,
was unable to reproduce it and therefore debug it.
This change now seems to be resilient against button mashing, let's hope
it really is.
|
|
|
|
|
|
| |
A keybinding in input.conf like:
e script-binding stats/display-page-2
can be used to directly show the respective page (2, in this case)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Please note that the latest version of this script needs a very recent
version of mpv (from yesterday, to be precise, see the readme).
For older versions, please go to "releases".
HOW IT WORKS:
While the stats are visible (i.e. text is printed to the OSD) a
subsequent click on a numeric key (1, 2, ...) will display the
corresponding "page".
This works no matter if the stats are toggled or just shown as a single
invocation. In case of a single invocation, the newly displayed page
will be shown for the full duration again.
The selected page will be remembered (not persistantly though).
So far, only 3 pages are available.
1: the default page, stats as they used to be
2: extensive VO performance stats (to be redesigned/changed soon)
3: dummy
In the future, many more pages are possible.
Implementation is likely to change again (functionality will stay
the same). A new timer had to be introduced to remove the forced
keybindings in the oneshot case. The toggle case can remove them without
a timer. Ensuring that each mode won't remove timers of the other mode
didn't really turn out neat.
Therefore, I intend to change this again, maybe by merging the
oneshot case into the toggle case.
|
|
|
|
|
| |
We now require a modern mpv version.
`property_aliases` is kept for future use.
|
|
|
|
|
| |
For vsync measurements this is not currently done because they don't
track their average
|
|
|
|
|
|
|
|
|
|
|
| |
Due to the large amount of per-pass data, the function takes a parameter
indicating whether or not to print a simplified view instead.
The overall intent is to print the simplified view for now, but supposed
printing the full view on a dedicated "tab" (or extra view type), and as
such, `o.print_perfdata_passes` will go away again. I've only introduced
it for now so users can play around with this functionality if they want
to, until Argon- gets around to implementing stats "tabs".
|
|
|
|
|
| |
This no longer reports cd/m² but now reports a relative peak as a
multiple of the SDR reference brightness.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, we used a property and when it was unavailable we assumed it
doesn't exist before assuming it really is just unavailable. This lead
to unnecessarily falling back to deprecated properties which made mpv
print deprecation warnings.
Now we can really check if a property is not known to mpv.
The alternative would've been to check the error part of mp.get_property
and perform string comparisons on the returned error message.
Not sure if supporting old mpv versions is actually worth it though.
Fixes #37 #36
|
| |
|
| |
|
|
|
|
| |
Free some vertical space. Hope this doesn't hurt visibility.
|
|
|
|
| |
Apparently forgot this one
|
|
|
|
|
| |
This was already done for the actual stats a few months ago.
Now it is also used by the perfdata coloring code.
|
|
|
|
|
| |
Should make its purpose more clear. Also add a comment to further
explain its use.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|