Allow medialibrary queries to process and list public media.
Public media are a new addition of the medialibrary 0.13 version. With
this, the users will have the opportunity to allow a subset of the
medialibrary to be exposed on network interfaces (notably the upnp
server and the HTTP remote control).
Community discussions around the subject can be found here:
https://code.videolan.org/videolan/vlc/-/merge_requests/269#note_274345
Just like happened before with the descrambling function name proper,
the helper object used within it may now happen to be 3 characters long,
instead of just 2 so far.
Distcheck was never tested with lua enabled, and it doesn't clean the
compiled lua files correctly in distcleancheck. There was also some
redundancy in how the scripts were defined.
This commit refactor the declaration in three separate variables:
- LUA_EXTENSIONS, which is where new lua scripts should probably go.
- LUA_EXTENSIONS_DOC, which include files that are shipped into the doc
folder but not compiled.
- LUA_EXTENSIONS_PKGDATA, which include files that are shipped into the
pkgdata folder, and mostly consists of http/custom.lua now for some
reason.
The .luac files are not included in the dist archive, and thus
can be automatically clean them.
This provides experimental support to play again all available video
resolutions, by combining audio and video "adaptive" elementary streams
using an input slave. Not in use by default; use at your own risks.
Again, by allowing to select resolutions lower than 360p, this also
provides mitigation against the throttling issue.
Ref #10237, #27227
This extends the old &fmt=[itag] URL syntax that we still supported all
along to force format selection, and allows choosing from "adaptive"
elementary streams without knowledge of itag specifics and in accordance
with normal resolution preferences.
This also allows playing only the audio part of music videos and
skipping the download of the video part entirely, greatly reducing
bitrate and providing mitigation against the throttling issue.
Ref #10237, #27227
Formats listed under that label are audio-only or video-only elementary
streams, but offer choice encompassing the full array of supported
resolutions, qualities and codecs; whereas classic multiplexed formats
have long been dwindling down to only two formats now, 720p and 360p, or
even 360p only for some content.
For now, these "adaptive" formats are only used if explicitly requested
by itag number.
Ref #10237
Due to the severely increased complexity of "n" descrambling code, a
quick fix is unfortunately not foreseeable. For now, let users know more
clearly what's going on and what's to expect or not.
Ref #27227
The descrambling script section was updated from a simple and linear
chain of calls, to a complex execution tree with conditional branches.
Failure to recognize and parse this call structure (or lack thereof)
resulted in a silent no-op. Add a check to properly report an error.
Ref #27227
It was possible, when encountering different code from what was expected
for some known transformations, to void the code parsing pointer instead
of advancing it, resulting in a subsequent crash of the script and total
playback failure. Add a fallback and check, to prevent and gracefully
deal with this, and still allow playback, even if throttled, in case of
descrambling failure.
The `-I cli` no longer starts the lua CLI, luacli does not work
either, only `-I luaintf --lua-intf cli` does actually start the Lua
CLI interface properly.
Looking through the tar command line help is brittle, and as a matter of
facts fails miserably with non-English locales.
Just feed a sorted list of files for tar to archive instead. This should
work regardless of the tar tool version in use.
Fixes Debian #990247.
improves movie info (show name, season and episode number) matching by
trying meta data as well as the cleaned up filename and trying out
additional patterns