1
mirror of https://code.videolan.org/videolan/vlc synced 2024-09-04 09:11:33 +02:00
Commit Graph

92165 Commits

Author SHA1 Message Date
Pierre Lamot
9860b13b1b qt: partially update model when possible on media deletion/update 2022-03-27 13:01:07 +00:00
Pierre Lamot
65ed60190a qt: allow items to be updated or removed manually from cache 2022-03-27 13:01:07 +00:00
Pierre Lamot
3f4f441e46 qt: allow MLModels to load a given item from the medialibrary by id 2022-03-27 13:01:07 +00:00
Pierre Lamot
f4bb9b1af0 qt: pass media type in medialib event 2022-03-27 13:01:07 +00:00
Pierre Lamot
ff3329ffbc qt: make createLoader returns a unique_ptr<BaseModel> 2022-03-27 13:01:07 +00:00
Pierre Lamot
dbcbe6b992 medialibrary: add folder getter 2022-03-27 13:01:07 +00:00
Pierre Lamot
230c1d1a16 diffutil: provide a generic diffutil implementation
this allows to compare two lists and generate a list of insertions and deletion
from the old list to the new one.

This is useful to UI frontends to preform partial updates of their view when
data change on the backend.
2022-03-27 13:01:07 +00:00
Steve Lhomme
08c9fc6022 core: avoid sharing config_dirty
Make it static in core.c, it's dirty enough not to share it.
2022-03-26 15:36:24 +00:00
Steve Lhomme
89afe265f9 core: move config_AutoSaveConfigFile in core.c
No functional changes.
2022-03-26 15:36:24 +00:00
Alexandre Janniaux
da50ca644c player: osd: fix memory leak on vlc_memstream
Fix memstream stream being open but never closed when zero tracks were
to be displayed to the OSD. The code was opening the vlc_memstream from
the start but was freeing the pointer only when the close of the
memstream succeeded AND the number of tracks was non-null.

Instead, this patch reorder the code so that the vlc_memstream is
allocated only when there is at least one track to display and early
exit with the N/A OSD message otherwise.

Then it tries to close the memstream and exit in case of error.

Finally, the text is sent to the OSD and the pointer is freed.

It was raising an ASAN leak report on test_src_player through the
test_teletext test function.

Fixes #26732
2022-03-26 11:36:39 +00:00
Alexandre Janniaux
dbec47c8b5 player: osd: early exit on track == NULL
Avoid the indentation level on the whole function, allowing to easily
document the early return case as a special edge case and clarifying the
rest of the block.
2022-03-26 11:36:39 +00:00
Prince Gupta
10e096a3a5 qml: allow scrolling text on elision in title col delegate of table view 2022-03-26 11:14:23 +00:00
Prince Gupta
e2440608e0 qml: allow scrolling text on elision in default col delegate of table view 2022-03-26 11:14:23 +00:00
Thomas Guillem
8ab9e9eb9e aout: move stream variables from owner to stream
And rename stream functions from aout_* to vlc_aout_stream_*.
2022-03-26 10:41:13 +00:00
Thomas Guillem
07aa6e9640 aout: remove unused variable 2022-03-26 10:41:13 +00:00
Thomas Guillem
5e63350343 aout: split aout and stream internally
This change is required for the gapless rework, to identify 2 different
streams, using the same aout APIS. The gapless stream, will be created,
if it has the same format as the previous one, and will wait in the
first Play to make a transition with the previous stream.

This is also a prerequisite for the aout/stream rework (in all aout
modules) planned for VLC 5.0.

Splitting the 2 API internally partition the decoder.c code: the decoder
should only handle the aout stream and not the aout devices (like sound,
mute, selection...).

For now, the aout reference and ownership is still kept in the decoder.c
because the aout and input_resource don't allow creating more than one
streams from one aout. This will be fixed in VLC 5.0.
2022-03-26 10:41:13 +00:00
Thomas Guillem
a9ab2bdcdf aout: use container_of to get the owner 2022-03-26 10:41:13 +00:00
Marvin Scholz
f485b52be2 access: dvb: remove check for gone usdigital access 2022-03-26 09:54:37 +00:00
Marvin Scholz
10aae615ab demux: ts: remove check for gone usdigital access 2022-03-26 09:54:37 +00:00
Marvin Scholz
99d74f1b33 input: remove gone usdigital scheme 2022-03-26 09:54:37 +00:00
Marvin Scholz
7c15eaa6b7 input: remove gone eyetv scheme 2022-03-26 09:54:37 +00:00
Marvin Scholz
38ef2ec17b input: add missing avcapture scheme
Used by the "new" AVFoundation-based capture module.
2022-03-26 09:54:37 +00:00
Marvin Scholz
39f108c173 input: remove gone qtcapture scheme 2022-03-26 09:54:37 +00:00
Prince Gupta
9089021db1 qml: fix initial local menu position of BannerSource
intially position localMenuView for `_alignHCenter == false`,
`on_AlignHCenterChanged` signal handler is not called on Component
completion if initially `_alignHCenter == false`
2022-03-26 09:28:52 +00:00
Fatih Uzunoglu
1f22b3f3ae qml: use Item as root type 2022-03-26 08:49:35 +00:00
Fatih Uzunoglu
8cccbacd23 qml: further limit miniplayer background effect source 2022-03-26 08:49:35 +00:00
Benjamin Arnaud
ee68529514 qt/pixmaps: Add a viewBox to the 'slower' svg
As mentioned in makeIconFont.py: 'SVG should have a viewbox equal to the size of the SVG'.

If we don't do this we generate a blank icon.
2022-03-26 08:28:44 +00:00
Thomas Guillem
6909e42f67 input_resource: don't expose aout functions
Not used anymore, modules go through the player to get the aout.
2022-03-25 16:32:43 +00:00
Francois Cartegnie
ab2c960d47 demux: adaptive: we don't need to check availabilityStartTime
mandatory for templates and breaks with epoch 0
refs
https://livesim.dashif.org/livesim/sts_1647955042/sid_f95b592d/testpic_2s/Manifest.mpd
2022-03-25 14:43:42 +00:00
Felix Paul Kühne
b2b344632e contrib/upnp: disable IPv6 support on iOS/tvOS
Browsing IPv6 servers is unsupported by libupnp on iOS and tvOS leading
to an empty content directory. This is mitigated by disabling IPv6
support just like for WinRT.

Fixes #26301
2022-03-25 12:34:07 +00:00
Steve Lhomme
8ddd2bdd96 configure: only use -static-libgcc if the C++ compiler accepts it
newer clang reports that it ignores the command on each C++ file compiled.
In the end the static C++ compiler is used on Windows anyway.
2022-03-25 12:15:06 +00:00
Mehdi Sabwat
5fde254a2c webvtt: rename css parser
ylwrap expects the generated scanner file to be lex.yy.c. The prefix feature in yacc and lex will make sure yy will be replaced by prefix (css in this case).

Functions used outside the generated code will have to be correctly named (exccept YYSTYPE).
2022-03-25 10:48:27 +00:00
Mehdi Sabwat
e958bf5e99 demux: rename json parser
ylwrap expects the generated scanner file to be lex.yy.c. The prefix feature in yacc and lex will make sure yy will be replaced by prefix (json in this case).

Functions used outside the generated code will have to be correctly named (exccept YYSTYPE).
2022-03-25 10:48:27 +00:00
Marvin Scholz
8ef84bf711 decoder: fix number of reference frames for AV1
AV1 needs 8 reference frames, as defined by NUM_REF_FRAMES in the
AV1 spec.
2022-03-24 14:39:14 +00:00
Thomas Guillem
4e90abceb4 extra/tools: ninja: force python3
It seems that python3 is already specified in all the VLC
contribs/tools.

Fixes build on systems not having a shortcut python -> python3 (macOS
for example).
2022-03-24 13:15:55 +00:00
Romain Vimont
e759db90d9 player: temporize on EOS bursts
A mechanism was implemented to temporize on consecutive input errors, to
mitigate infinite busy loops (see commit
d06622651f).

Although it avoided the most common issues, this mechanism was not
triggered for other problematic cases:
 - empty inputs;
 - inputs with unreported errors from demuxers.

Therefore, to encompass these other cases, consider the number of
consecutive stops in a small period of time instead of relying on
reported errors:
 - if a VLC_PLAYER_STATE_STOPPED occurs less than 100ms after the
   previous one, then increment the EOS burst count;
 - when more than 4 EOS burst count occur successively, start
   temporizing:
     - 100ms for the 5th
     - 200ms for the 6th
     - 400ms for the 7th
     - 800ms for the 8th
     - 1.6s for the 9th
     - 3.2s for the following

Fixes #5901
Fixes #26733
2022-03-24 12:40:16 +00:00
rego21
b65cd1f027 contrib: x265: add patch to enable detect512
Enables detect512 for all architectures
2022-03-24 10:05:17 +00:00
rego21
4031359a23 contrib: x265: update patches
Update patches to tackle the 2.9 version
2022-03-24 10:05:17 +00:00
rego21
3ab465b5c4 contrib: x265: update link and version of x265
The x265 link changed and version 2.7 isn't available in their downloads page.
2022-03-24 10:05:17 +00:00
Rémi Denis-Courmont
eca00803d0 drm: fix potential out of bound read
If the specified chroma had only 1 or 2 characters, this would overflow.
2022-03-24 09:31:37 +00:00
Rémi Denis-Courmont
dc8f95ec89 drm: initialise sys explicitly 2022-03-24 09:31:37 +00:00
Rémi Denis-Courmont
743fa40aca drm: remove unnecessary private data fields 2022-03-24 09:31:37 +00:00
Rémi Denis-Courmont
570bed45a8 drm: remove no longer format negotiation code
This removes the notoriously nonreentrant global format table.
This also incidentally removes the dependency on `-ldrm`.
2022-03-24 09:31:37 +00:00
Rémi Denis-Courmont
e3e92d8cca drm: select pixel format as other displays do
Use the helpers from the previous changesets and the follow the common
chroma fallback lists.

This should fix mismatched colour (masks) with RGB formats. This also
enables the use of a bunch of formats not included in the static table
from display.c.
2022-03-24 09:31:37 +00:00
Rémi Denis-Courmont
e8b508626b drm/fourcc: add helper to convert DRM to VLC format
This extra function is needed to deal with the RGB masks.
2022-03-24 09:31:37 +00:00
Rémi Denis-Courmont
2f34395f06 drm/fourcc: fix copy-paste errors 2022-03-24 09:31:37 +00:00
Rémi Denis-Courmont
854bbb4a80 drm: add helper to negotiate a pixel format 2022-03-24 09:31:37 +00:00
Rémi Denis-Courmont
78af9d20ec drm: return number of formats
After selecting a plane, we presumably will need to query its formats.
Since we already know how many there are.
2022-03-24 09:31:37 +00:00
Marvin Scholz
f1a9cf187b chroma: i420: fix condition for warning message 2022-03-24 07:55:49 +00:00
Marvin Scholz
550ef5634b doc: add needed script to EXTRA_DIST
The script is needed to build the documentation,
so it should be included in the dist tarballs.
2022-03-24 07:35:48 +00:00