mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-12-08 06:09:58 +00:00
LibMedia: Use String instead of ByteString in Matroska::Document
This commit is contained in:
parent
8f15565967
commit
b59f0501b8
Notes:
github-actions[bot]
2025-11-21 10:04:34 +00:00
Author: https://github.com/Zaggy1024
Commit: b59f0501b8
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/6685
Reviewed-by: https://github.com/gmta ✅
3 changed files with 17 additions and 17 deletions
|
|
@ -19,7 +19,7 @@
|
|||
namespace Media::Matroska {
|
||||
|
||||
struct EBMLHeader {
|
||||
ByteString doc_type;
|
||||
String doc_type;
|
||||
u32 doc_type_version;
|
||||
};
|
||||
|
||||
|
|
@ -27,10 +27,10 @@ class SegmentInformation {
|
|||
public:
|
||||
u64 timestamp_scale() const { return m_timestamp_scale; }
|
||||
void set_timestamp_scale(u64 timestamp_scale) { m_timestamp_scale = timestamp_scale; }
|
||||
Utf8View muxing_app() const LIFETIME_BOUND { return Utf8View(m_muxing_app); }
|
||||
void set_muxing_app(ByteString muxing_app) { m_muxing_app = move(muxing_app); }
|
||||
Utf8View writing_app() const LIFETIME_BOUND { return Utf8View(m_writing_app); }
|
||||
void set_writing_app(ByteString writing_app) { m_writing_app = move(writing_app); }
|
||||
StringView muxing_app() const LIFETIME_BOUND { return m_muxing_app; }
|
||||
void set_muxing_app(String muxing_app) { m_muxing_app = move(muxing_app); }
|
||||
StringView writing_app() const LIFETIME_BOUND { return m_writing_app; }
|
||||
void set_writing_app(String writing_app) { m_writing_app = move(writing_app); }
|
||||
Optional<double> duration_unscaled() const { return m_duration_unscaled; }
|
||||
void set_duration_unscaled(double duration) { m_duration_unscaled.emplace(duration); }
|
||||
Optional<AK::Duration> duration() const
|
||||
|
|
@ -42,8 +42,8 @@ public:
|
|||
|
||||
private:
|
||||
u64 m_timestamp_scale { 1'000'000 };
|
||||
ByteString m_muxing_app;
|
||||
ByteString m_writing_app;
|
||||
String m_muxing_app;
|
||||
String m_writing_app;
|
||||
Optional<double> m_duration_unscaled;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -329,11 +329,11 @@ static DecoderErrorOr<SegmentInformation> parse_information(Streamer& streamer)
|
|||
break;
|
||||
case MUXING_APP_ID:
|
||||
segment_information.set_muxing_app(TRY_READ(streamer.read_string()));
|
||||
dbgln_if(MATROSKA_DEBUG, "Read MuxingApp attribute: {}", segment_information.muxing_app().as_string());
|
||||
dbgln_if(MATROSKA_DEBUG, "Read MuxingApp attribute: {}", segment_information.muxing_app());
|
||||
break;
|
||||
case WRITING_APP_ID:
|
||||
segment_information.set_writing_app(TRY_READ(streamer.read_string()));
|
||||
dbgln_if(MATROSKA_DEBUG, "Read WritingApp attribute: {}", segment_information.writing_app().as_string());
|
||||
dbgln_if(MATROSKA_DEBUG, "Read WritingApp attribute: {}", segment_information.writing_app());
|
||||
break;
|
||||
case DURATION_ID:
|
||||
segment_information.set_duration_unscaled(TRY_READ(streamer.read_float()));
|
||||
|
|
@ -481,19 +481,19 @@ static DecoderErrorOr<NonnullRefPtr<TrackEntry>> parse_track_entry(Streamer& str
|
|||
dbgln_if(MATROSKA_TRACE_DEBUG, "Read TrackType attribute: {}", to_underlying(track_entry->track_type()));
|
||||
break;
|
||||
case TRACK_NAME_ID:
|
||||
track_entry->set_name(DECODER_TRY_ALLOC(String::from_byte_string(TRY_READ(streamer.read_string()))));
|
||||
track_entry->set_name(TRY_READ(streamer.read_string()));
|
||||
dbgln_if(MATROSKA_TRACE_DEBUG, "Read Track's Name attribute: {}", track_entry->name());
|
||||
break;
|
||||
case TRACK_LANGUAGE_ID:
|
||||
track_entry->set_language(DECODER_TRY_ALLOC(String::from_byte_string(TRY_READ(streamer.read_string()))));
|
||||
track_entry->set_language(TRY_READ(streamer.read_string()));
|
||||
dbgln_if(MATROSKA_TRACE_DEBUG, "Read Track's Language attribute: {}", track_entry->language());
|
||||
break;
|
||||
case TRACK_LANGUAGE_BCP_47_ID:
|
||||
track_entry->set_language_bcp_47(DECODER_TRY_ALLOC(String::from_byte_string(TRY_READ(streamer.read_string()))));
|
||||
track_entry->set_language_bcp_47(TRY_READ(streamer.read_string()));
|
||||
dbgln_if(MATROSKA_TRACE_DEBUG, "Read Track's LanguageBCP47 attribute: {}", track_entry->language());
|
||||
break;
|
||||
case TRACK_CODEC_ID:
|
||||
track_entry->set_codec_id(DECODER_TRY_ALLOC(String::from_byte_string(TRY_READ(streamer.read_string()))));
|
||||
track_entry->set_codec_id(TRY_READ(streamer.read_string()));
|
||||
dbgln_if(MATROSKA_TRACE_DEBUG, "Read Track's CodecID attribute: {}", track_entry->codec_id());
|
||||
break;
|
||||
case TRACK_CODEC_PRIVATE_ID: {
|
||||
|
|
@ -1088,13 +1088,13 @@ DecoderErrorOr<void> SampleIterator::seek_to_cue_point(CuePoint const& cue_point
|
|||
return {};
|
||||
}
|
||||
|
||||
ErrorOr<ByteString> Streamer::read_string()
|
||||
ErrorOr<String> Streamer::read_string()
|
||||
{
|
||||
auto string_length = TRY(read_variable_size_integer());
|
||||
if (remaining() < string_length)
|
||||
return Error::from_string_literal("String length extends past the end of the stream");
|
||||
auto string_data = data_as_chars();
|
||||
auto string_value = ByteString(string_data, strnlen(string_data, string_length));
|
||||
auto const* string_data = data_as_chars();
|
||||
auto string_value = String::from_utf8(ReadonlyBytes(string_data, strnlen(string_data, string_length)));
|
||||
TRY(read_raw_octets(string_length));
|
||||
return string_value;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -147,7 +147,7 @@ public:
|
|||
ErrorOr<u64> read_u64();
|
||||
ErrorOr<double> read_float();
|
||||
|
||||
ErrorOr<ByteString> read_string();
|
||||
ErrorOr<String> read_string();
|
||||
|
||||
ErrorOr<void> read_unknown_element();
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue