Andrew Kaster
c1681931ba
LibMedia: Prefix AK::Duration with AK Namespace
2024-07-18 09:43:38 +01:00
Tim Ledbetter
0879489084
LibMedia: Hide Matroska debug message behind a flag
2024-06-25 19:25:34 +02:00
Zaggy1024
3cc1187036
LibMedia: Move VideoSampleData out of the Video namespace
2024-06-24 12:41:32 -06:00
Zaggy1024
ef99e701b7
LibMedia/Matroska: Handle negative timestamp offsets correctly
...
The timestamp offset of a block was being converted from i16 to u64, so
negative values would overflow and cause timestamps that fall before
the cluster's timestamp from being close to the minimum representable
i64.
The math is also now done using saturating operations to prevent any
other similar issues from occurring.
2024-06-24 12:41:32 -06:00
Zaggy1024
084cf68dd5
Tests/LibMedia: Add a test for H.264 decoding through FFmpeg
2024-06-24 12:41:32 -06:00
Zaggy1024
32714878ad
LibMedia/Matroska: Make SampleIterator getters const
2024-06-24 12:41:32 -06:00
Zaggy1024
457a69786b
LibMedia: Pass Matroska codec private data to the FFmpeg decoder
...
This is necessary to give the H.264 decoder the data it needs to
initialize, including frame size and profile.
2024-06-24 12:41:32 -06:00
Zaggy1024
bf1e0fac94
LibMedia/Matroska: Move the definition get_codec_id_for_track up
...
The function is separated from the string-to-enum function it uses, and
the order is also inconsistent with header.
2024-06-24 12:41:32 -06:00
Zaggy1024
55fda2068b
LibMedia/Matroska: Make track entries ref-counted
...
These aren't particularly small objects, but we were still copying them
around all over the place. When TrackEntry contains data buffers, they
won't need to be copied as well.
2024-06-24 12:41:32 -06:00
Zaggy1024
d3f88b4987
LibMedia/Matroska: Actually read out the video color range
...
Apparently I forgot to put read the value for this field, though this
generally doesn't matter since video bitstreams usually specify CICP as
well.
2024-06-24 12:41:32 -06:00
Zaggy1024
5a6950be8e
LibMedia: Make Media::Sample final using Variant for auxiliary data
...
We don't need to allocate these little things onto the heap, that's
silly.
2024-06-19 07:51:55 +02:00
Zaggy1024
7c10e1a08d
LibMedia: Rename LibVideo to LibMedia
...
This change is in preparation for implementing audio codecs into the
library and using audio as timing for video playback.
2024-06-19 07:51:55 +02:00