- Nov 15, 2018
-
-
When a user requests to insert, move or remove items, or to set the current item, before the core playlist lock is successfully acquired, another client may have changed the list. Expose functions to apply the requested changes with potential conflicts resolved. The actual changes applied are notified through the callbacks. Signed-off-by:
Thomas Guillem <thomas@gllm.fr>
-
Add a new playlist API. A playlist contains a simple list of items, and owns a player. Callbacks are exposed so that clients (UI) are notified when items are updated, insert, moved or removed. The playlist is responsible for the playback order and repeat mode, and manages a cursor to the "current" item. Signed-off-by:
Thomas Guillem <thomas@gllm.fr>
-
Expose a function which does not lock internally so that we can retrieve several meta values in a row without locking/unlocking. Signed-off-by:
Thomas Guillem <thomas@gllm.fr>
-
Thomas Guillem authored
Test main player functions, but also decoder.c/es_out.c/input.c as a consequence. This test improves the test coverage of src/input by 20% (decoder.c coverage goes from 0 to 60%).
-
Thomas Guillem authored
This API will replace the usage of input_thread_t from interface modules. The player implementation continue to use input_thread_t in private. The goal is to hide the input_thread_t API when every modules are switched to the player API. TODO (all need to be fixed, for VLC 4.0): - Gapless: API is complete but not implemented (the player can play several medias in a row, but without gapless). - Position callbacks: still using the input_thread_t position that is really imprecise (notified every 250ms minimum, and sometime more, depending on pf_demux implementation). - Seek/discontinuity callbacks: when seeking, the player can still send position of the requested position, the actual position or the next position to come. This leads to UI inconsistency. - OSD messages should be display from input callbacks but it's not possible now since you can't know if the event come from the user or from the core.
-
Signed-off-by:
Thomas Guillem <thomas@gllm.fr>
-
Signed-off-by:
Thomas Guillem <thomas@gllm.fr>
-
Thomas Guillem authored
Otherwise, listeners can receive error or dead events without receiving any opening events.
-
Thomas Guillem authored
To make room for the new playlist. This playlist_legacy will be removed once all modules are using the new playlist.
-
Add a helper to create RAII wrappers for C shared resources, which automatically call the Hold() and Release() functions associated to the raw pointer. Just declare a new shared resource wrapper type: using InputItemPtr = vlc_shared_data_ptr_type(input_item_t, input_item_Hold, input_item_Release); Then use this new type directly: input_item_t *ptr = /* ... */; InputItemPtr item(ptr); QString name = item->psz_name; InputItemPtr other = item; /* hold automatically */
-
Steve Lhomme authored
-
Steve Lhomme authored
This is already how the UWP vout works but by not compiling some code.
-
Steve Lhomme authored
-
Steve Lhomme authored
-
Steve Lhomme authored
-
Steve Lhomme authored
-
Steve Lhomme authored
-
Steve Lhomme authored
-
Steve Lhomme authored
It matches the API calls better and is more readable.
-
Steve Lhomme authored
-
Steve Lhomme authored
We already know it's d3d9
-
Since p_sys is created by vlc_obj_calloc. Signed-off-by:
Thomas Guillem <thomas@gllm.fr>
-
Mutexes haven't been initialized yet and Clean will call vlc_mutex_destroy. Signed-off-by:
Thomas Guillem <thomas@gllm.fr>
-
Since p_sys is created by vlc_obj_calloc. Signed-off-by:
Thomas Guillem <thomas@gllm.fr>
-
- Nov 14, 2018
-
-
François Cartegnie authored
-
- Nov 13, 2018
-
-
François Cartegnie authored
-
Rémi Denis-Courmont authored
...before destroying them. Otherwise we can no longer keep track of which picture buffer the display server still references, leading to potential corruption. To force the server to release all buffers, we must first detach the any outstanding buffer from the display surface.
-
Picture is released by the core, but we can only release it for real after receiving a wl_buffer::release event. Signed-off-by:
Rémi Denis-Courmont <remi@remlab.net>
-
François Cartegnie authored
unused
-
François Cartegnie authored
-
François Cartegnie authored
video stream resync/vout can't be reused fast enough. partial revert of 0160bec1
-
François Cartegnie authored
-
Martin Storsjö authored
-
Steve Lhomme authored
-
- Nov 12, 2018
-
-
Steve Lhomme authored
Code relying on AVX-2 (like dav1d) cannot work without an alignment of 32 bytes at least. Even avcodec has a requirement of 64 (likely to get at least 32 on all planes). So it's probably time to upgrade. picture_Setup ensures a horizontal alignment to 32 bytes and a vertical to 16 bytes. So for all buffers allocated by the core, we have a size multiple of 512 bytes.
-
Olivier Aubert authored
It is more consistent with the way of using/defining enums in the rest of the libvlc API.
-
Hugo Beauzée-Luyssen authored
-
Signed-off-by:
Hugo Beauzée-Luyssen <hugo@beauzee.fr>
-
Hugo Beauzée-Luyssen authored
-
Hugo Beauzée-Luyssen authored
-