Commit Graph

99305 Commits

Author SHA1 Message Date
Steve Lhomme 5974d7abd0 text_style: turn the colors into uint32_t
They are stored as XRGB with the alpha component separately (ie not ARGB).

A lot of code is already writing uint32_t values in these fields.
2023-10-07 12:18:05 +00:00
Steve Lhomme 25da40b9a3 freetype: rename xxxFromRGB to xxxFromXRGB
This is the type of uin32_t that is expected to be passed.
2023-10-07 12:18:05 +00:00
Steve Lhomme 47af51ec58 vlc_es: remove always 0 video_format_t RGB mask 2023-10-07 10:20:59 +00:00
Steve Lhomme a4280d3493 vlc_es: remove empty video_format_FixRgb() 2023-10-07 10:20:59 +00:00
Steve Lhomme f10359c14e avcodec/chroma: get rid of empty masks
They are always 0.
2023-10-07 10:20:59 +00:00
Steve Lhomme 877dfde0a2 bitmapinfoheader: don't try to set a mask for not-compressed RGB
Only the old VLC FourCC should be accepted and they are mapped to their
actual default legacy memory layout (RV32, RV24, RV16, RV15).
2023-10-07 10:20:59 +00:00
Steve Lhomme a8893dd50d vlc_fourcc: remove read-only VLC_CODEC_RGB16
It's never used as such. Only 3 masks existed and they have been replaced with
VLC_CODEC_RGB565BE, VLC_CODEC_RGB565LE and VLC_CODEC_BGR565LE.
2023-10-07 10:20:59 +00:00
Steve Lhomme aaaf525b3a fourcc: change the VLC_CODEC_RGB565LE FourCC to RV16
So that code passing a chroma as a string ends up on the on the same chroma
layout on Little-Endian machines.
2023-10-07 10:20:59 +00:00
Steve Lhomme 3dce515cef vlc_fourcc: remove read-only VLC_CODEC_RGB15 2023-10-07 10:20:59 +00:00
Steve Lhomme 60887dbc2f fourcc: change the VLC_CODEC_RGB555LE FourCC to RV15
So that code passing a chroma as a string ends up on the on the same chroma
layout on Little-Endian machines.
2023-10-07 10:20:59 +00:00
Steve Lhomme c452ab7615 jpeg: request full range I420 instead of J420 2023-10-07 09:01:08 +00:00
Steve Lhomme 3e819cd69e x264: leave full range handling to the video format
It should not be up to a chroma.
2023-10-07 09:01:08 +00:00
Thomas Guillem fe93875105 player: listen for INPUT_EVENT_ITEM_INFO
It could be also possible to create a new event: on_media_info_changed.
2023-10-07 06:34:43 +00:00
Thomas Guillem 33bff19daa es_out: always call input_SendEventMetaInfo()
This event is not even listened by anything anyway... (bug!)
2023-10-07 06:34:43 +00:00
Thomas Guillem c7153d38b9 es_out: remove extra input_item_UpdateTracksInfo() call
It will be called just after from EsOutUpdateInfo()
2023-10-07 06:34:43 +00:00
Thomas Guillem e68b6c74b9 es_out: don't call EsOutUpdateInfo() in case of alloc error
And make the code easier to read.
2023-10-07 06:34:43 +00:00
Thomas Guillem 51b3ceb004 es_out: send the ES updated event after EsOutUpdateInfo()
EsOutUpdateInfo() update the input_item_t meta. Modifying the call order
here cause the INPUT_EVENT_ES::VLC_INPUT_ES_UPDATED to be sent just
after the item meta has been updated.
2023-10-07 06:34:43 +00:00
Alexandre Janniaux 67e2541b19 qt: MainInterface: decode partially encoded MRL on drop
When using drag&drop to play a media with characters that would need
encoding, especially spaces, the system will provide the correct URL to
the DropArea but Qt will encode it partially. Since we will encode it
afterwards, we can just decode it completely and forward it as-is to the
playlist controller.

Fixes dropping URL with spaces from a browser to VLC.
2023-10-06 18:27:50 +00:00
Alexandre Janniaux 6180022afb qt: playlist_controller: ensure MRL are properly encoded
The default encoding QUrl::None maps to QUrl::PrettyDecoded, which is
not entierely specified (documentation even mention it can change over
different releases) and typically won't encode the spaces correctly.
2023-10-06 18:27:50 +00:00
Alexandre Janniaux a91d89c3bc qt: medialib: ensure MRL are properly encoded
The default encoding QUrl::None maps to QUrl::PrettyDecoded, which is
not entierely specified (documentation even mention it can change over
different releases) and typically won't encode the spaces correctly.
2023-10-06 18:27:50 +00:00
Thomas Guillem 115fb69e2e decoder: optimize locking in DecoderPlayCc()
The mutex was unlocked and locked right after when DecoderPlayCc() was
called from PacketizerGetCc().
2023-10-06 18:01:56 +00:00
Thomas Guillem da7fc26170 decoder: check block_Duplicate() return 2023-10-06 18:01:56 +00:00
Steve Lhomme 7aa694034e CI: add full threading support for gcovr 2023-10-06 14:47:46 +00:00
Steve Lhomme b86065eef2 CI: create the code coverage directory just before using it 2023-10-06 14:47:46 +00:00
Steve Lhomme fae031a87e CI: avoid negative hit errors in the code coverage
It fails too many times with multithread. Hopefully it will not fail with
this option.
2023-10-06 14:47:46 +00:00
Prince Gupta 2d783ce5dd qml: simplify code 2023-10-06 14:23:47 +00:00
Prince Gupta 8dc55aa586 qml: remove obsolete property
fixes keyboard down navigation
2023-10-06 14:23:47 +00:00
Steve Lhomme f912530730 vout/xcb: allow non-native endian 15/16-bit masks
We can map all of them to the proper endianness.
2023-10-06 09:42:29 +00:00
Steve Lhomme 2eb4843bc4 vout/xcb: don't map unknown 15/16-bit RGB masks
Similar to d307f9d691.
2023-10-06 09:42:29 +00:00
Steve Lhomme 26a857f84f vout/xcb: remap 15-bit RGB to common masks locally 2023-10-06 09:42:29 +00:00
Steve Lhomme c91c0f1767 vout/xcb: remap 16-bit RGB to common masks locally 2023-10-06 09:42:29 +00:00
Steve Lhomme 55b48796f5 vout/xcb: don't use the mask by default
We only use true for RBG15 and RGB16.
2023-10-06 09:42:29 +00:00
Steve Lhomme eb14275ab3 screen/xcb: replace VLC_CODEC_RGB15 with RGB555
This is the format once the mask will be " fixed" depending on endianness.
2023-10-06 09:42:29 +00:00
Steve Lhomme a0670492db screen/xcb: replace VLC_CODEC_RGB16 with VLC_CODEC_RGB565
This is the format once the mask will be " fixed" depending on endianness.
2023-10-06 09:42:29 +00:00
mohit-marathe b6afedd0fb qt: remove call to showPlayer 2023-10-06 08:16:59 +00:00
Tristan Matthews cf283cb757 contrib: dav1d: update to 1.3.0
> 1.3.0 is a medium release reducing memory footprint, increasing again
> the speed on x86 and ARM and extending the API functions.

https://code.videolan.org/videolan/dav1d/-/tags/1.3.0
2023-10-06 05:05:10 +00:00
Steve Lhomme 050c31bfaf bitmapinfoheader: get masks from RGB table with VLC chromas 2023-10-05 10:32:50 +00:00
Steve Lhomme 7409b05c46 bitmapinfoheader: only map known BI_BITFIELDS mask
We want to get rid of the mask, so we won't be able to carry fringe values.
2023-10-05 10:32:50 +00:00
Steve Lhomme 4a74b6b85a bitmapinfoheader: don't fix the RGB masks
We don't need video_format_FixRgb() anymore since we already mapped the
known masks and we do set a mask when it's not mapped.
2023-10-05 10:32:50 +00:00
Steve Lhomme 6203841afa bitmapinfoheader: map RGB mask table to match read mask with VLC chromas 2023-10-05 10:32:50 +00:00
Steve Lhomme 5a4cf91c6b bitmapinfoheader: map more BI_BITFIELDS masks to existing chromas 2023-10-05 10:32:50 +00:00
Steve Lhomme 51e4d0894b bitmapinfoheader: remove unused MatchBitmapRGBMasks 2023-10-05 10:32:50 +00:00
Steve Lhomme a23c17801a bitmapinfoheader: return an error on unknown BI_RGB bitdepth on reading
We can't map them to a known usable chroma without a mask.

We're not supposed to use a mask with BI_RGB anyway.
2023-10-05 10:32:50 +00:00
Steve Lhomme 189c428d7b bitmapinfoheader: map 15-bit BI_RGB to VLC_CODEC_BGR555LE
This corresponds to the actual format expected by the Windows player.
2023-10-05 10:32:50 +00:00
Steve Lhomme e9879dc95b bitmapinfoheader: map 16-bit BI_RGB to VLC_CODEC_BGR565LE
This corresponds to the actual format expected by the Windows player.
2023-10-05 10:32:50 +00:00
Steve Lhomme 8137f1b179 i420_rgb: map VLC_CODEC_RGB555 like VLC_CODEC_RGB15 2023-10-05 08:38:13 +00:00
Steve Lhomme e9096068ba i420_rgb: map VLC_CODEC_RGB565 like VLC_CODEC_RGB16 2023-10-05 08:38:13 +00:00
Steve Lhomme ba73bb1ee3 i420_rgb: fix RGB2PIXEL for 32-bit/24-bit RGB chromas
The right shift values are initialized to 0 as these chromas use a whole
octet per color.
2023-10-05 08:38:13 +00:00
Steve Lhomme d978097117 i420_rgb: replace RGB2PIXEL(0,0,0) with 0
It's clearer to signify the value is 0 (black). We could also use a define
for black.

All the filling of read, green and blue to 0 might be equivalent to a
big memset().

RGB2PIXEL() is only used when shifting is needed.
2023-10-05 08:38:13 +00:00
xqq 0fadbab6a6 codec/libaribcaption: Skip rendering if images not changed for avoiding unnecessary memory copy 2023-10-05 06:10:47 +00:00