Skip to content

Commit 8d77e8b

Browse files
committed
LibMedia: Refer to demuxer outputs as coded frames
This should be a clearer name, as "sample" is most often used to refer to the output of a decoder.
1 parent 2a288f6 commit 8d77e8b

File tree

9 files changed

+19
-19
lines changed

9 files changed

+19
-19
lines changed

Libraries/LibMedia/Sample.h renamed to Libraries/LibMedia/CodedFrame.h

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,17 @@
88

99
#include <AK/ByteBuffer.h>
1010
#include <AK/Time.h>
11-
12-
#include "VideoSampleData.h"
11+
#include <LibMedia/CodedVideoFrameData.h>
1312

1413
namespace Media {
1514

16-
class Sample final {
15+
class CodedFrame final {
1716
public:
18-
using AuxiliaryData = Variant<VideoSampleData>;
17+
using AuxiliaryData = Variant<CodedVideoFrameData>;
1918

20-
Sample(AK::Duration timestamp, ByteBuffer data, AuxiliaryData auxiliary_data)
19+
CodedFrame(AK::Duration timestamp, ByteBuffer&& data, AuxiliaryData auxiliary_data)
2120
: m_timestamp(timestamp)
22-
, m_data(data)
21+
, m_data(move(data))
2322
, m_auxiliary_data(auxiliary_data)
2423
{
2524
}

Libraries/LibMedia/VideoSampleData.h renamed to Libraries/LibMedia/CodedVideoFrameData.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@
1010

1111
namespace Media {
1212

13-
class VideoSampleData {
13+
class CodedVideoFrameData {
1414
public:
15-
VideoSampleData(CodingIndependentCodePoints container_cicp)
15+
CodedVideoFrameData(CodingIndependentCodePoints container_cicp)
1616
: m_container_cicp(container_cicp)
1717
{
1818
}

Libraries/LibMedia/Containers/Matroska/MatroskaDemuxer.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
#include <AK/Assertions.h>
88
#include <AK/Debug.h>
9+
#include <LibMedia/CodedFrame.h>
910
#include <LibMedia/DecoderError.h>
1011

1112
#include "MatroskaDemuxer.h"
@@ -179,7 +180,7 @@ DecoderErrorOr<Optional<AK::Duration>> MatroskaDemuxer::seek_to_most_recent_keyf
179180
return track_status.iterator.last_timestamp();
180181
}
181182

182-
DecoderErrorOr<Sample> MatroskaDemuxer::get_next_sample_for_track(Track track)
183+
DecoderErrorOr<CodedFrame> MatroskaDemuxer::get_next_sample_for_track(Track track)
183184
{
184185
// FIXME: This makes a copy of the sample, which shouldn't be necessary.
185186
// Matroska should make a RefPtr<ByteBuffer>, probably.
@@ -191,7 +192,7 @@ DecoderErrorOr<Sample> MatroskaDemuxer::get_next_sample_for_track(Track track)
191192
}
192193
auto cicp = TRY(m_reader.track_for_track_number(track.identifier()))->video_track()->color_format.to_cicp();
193194
auto sample_data = DECODER_TRY_ALLOC(ByteBuffer::copy(status.block->frame(status.frame_index++)));
194-
return Sample(status.block->timestamp(), move(sample_data), VideoSampleData(cicp));
195+
return CodedFrame(status.block->timestamp(), move(sample_data), CodedVideoFrameData(cicp));
195196
}
196197

197198
DecoderErrorOr<AK::Duration> MatroskaDemuxer::total_duration()

Libraries/LibMedia/Containers/Matroska/MatroskaDemuxer.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ class MatroskaDemuxer final : public Demuxer {
3939

4040
DecoderErrorOr<ReadonlyBytes> get_codec_initialization_data_for_track(Track track) override;
4141

42-
DecoderErrorOr<Sample> get_next_sample_for_track(Track track) override;
42+
DecoderErrorOr<CodedFrame> get_next_sample_for_track(Track track) override;
4343

4444
private:
4545
struct TrackStatus {

Libraries/LibMedia/Demuxer.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010
#include <LibCore/EventReceiver.h>
1111

1212
#include "CodecID.h"
13+
#include "CodedFrame.h"
1314
#include "DecoderError.h"
14-
#include "Sample.h"
1515
#include "Track.h"
1616

1717
namespace Media {
@@ -25,7 +25,7 @@ class Demuxer {
2525
// given type is present.
2626
virtual DecoderErrorOr<Optional<Track>> get_preferred_track_for_type(TrackType type) = 0;
2727

28-
virtual DecoderErrorOr<Sample> get_next_sample_for_track(Track track) = 0;
28+
virtual DecoderErrorOr<CodedFrame> get_next_sample_for_track(Track track) = 0;
2929

3030
virtual DecoderErrorOr<CodecID> get_codec_id_for_track(Track track) = 0;
3131

Libraries/LibMedia/FFmpeg/FFmpegDemuxer.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ DecoderErrorOr<ReadonlyBytes> FFmpegDemuxer::get_codec_initialization_data_for_t
163163
return ReadonlyBytes { stream->codecpar->extradata, static_cast<size_t>(stream->codecpar->extradata_size) };
164164
}
165165

166-
DecoderErrorOr<Sample> FFmpegDemuxer::get_next_sample_for_track(Track track)
166+
DecoderErrorOr<CodedFrame> FFmpegDemuxer::get_next_sample_for_track(Track track)
167167
{
168168
VERIFY(track.identifier() < m_format_context->nb_streams);
169169
auto* stream = m_format_context->streams[track.identifier()];
@@ -199,10 +199,10 @@ DecoderErrorOr<Sample> FFmpegDemuxer::get_next_sample_for_track(Track track)
199199
// to wipe the packet afterwards.
200200
auto packet_data = DECODER_TRY_ALLOC(ByteBuffer::copy(m_packet->data, m_packet->size));
201201

202-
auto sample = Sample(
202+
auto sample = CodedFrame(
203203
time_units_to_duration(m_packet->pts, stream->time_base),
204204
move(packet_data),
205-
VideoSampleData(CodingIndependentCodePoints(color_primaries, transfer_characteristics, matrix_coefficients, color_range)));
205+
CodedVideoFrameData(CodingIndependentCodePoints(color_primaries, transfer_characteristics, matrix_coefficients, color_range)));
206206

207207
// Wipe the packet now that the data is safe.
208208
av_packet_unref(m_packet);

Libraries/LibMedia/FFmpeg/FFmpegDemuxer.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ class FFmpegDemuxer : public Demuxer {
3737

3838
virtual DecoderErrorOr<ReadonlyBytes> get_codec_initialization_data_for_track(Track track) override;
3939

40-
virtual DecoderErrorOr<Sample> get_next_sample_for_track(Track track) override;
40+
virtual DecoderErrorOr<CodedFrame> get_next_sample_for_track(Track track) override;
4141

4242
private:
4343
DecoderErrorOr<Track> get_track_for_stream_index(u32 stream_index);

Libraries/LibMedia/Forward.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@
88

99
namespace Media {
1010

11+
class CodedFrame;
1112
class DecoderError;
1213
class FrameQueueItem;
1314
class PlaybackManager;
14-
class Sample;
1515
class Track;
1616
class VideoDecoder;
1717
class VideoFrame;

Libraries/LibMedia/PlaybackManager.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,7 @@ void PlaybackManager::decode_and_queue_one_sample()
215215
break;
216216
}
217217
auto sample = sample_result.release_value();
218-
container_cicp = sample.auxiliary_data().get<VideoSampleData>().container_cicp();
218+
container_cicp = sample.auxiliary_data().get<CodedVideoFrameData>().container_cicp();
219219

220220
// Submit the sample to the decoder.
221221
auto decode_result = m_decoder->receive_sample(sample.timestamp(), sample.data());

0 commit comments

Comments
 (0)