26 const std::string& codec_string,
27 const uint8_t* codec_config,
28 size_t codec_config_size,
31 uint32_t sampling_frequency,
32 uint64_t seek_preroll_ns,
33 uint64_t codec_delay_ns,
36 const std::string& language,
44 std::string
ToString()
const override;
45 std::unique_ptr<StreamInfo>
Clone()
const override;
48 uint8_t sample_bits()
const {
return sample_bits_; }
49 uint8_t sample_bytes()
const {
return sample_bits_ / 8; }
50 uint8_t num_channels()
const {
return num_channels_; }
51 uint32_t sampling_frequency()
const {
return sampling_frequency_; }
52 uint32_t bytes_per_frame()
const {
53 return static_cast<uint32_t
>(num_channels_) * sample_bits_ / 8;
55 uint64_t seek_preroll_ns()
const {
return seek_preroll_ns_; }
56 uint64_t codec_delay_ns()
const {
return codec_delay_ns_; }
57 uint32_t max_bitrate()
const {
return max_bitrate_; }
58 uint32_t avg_bitrate()
const {
return avg_bitrate_; }
60 void set_sampling_frequency(
const uint32_t sampling_frequency) {
61 sampling_frequency_ = sampling_frequency;
64 void set_max_bitrate(
const uint32_t max_bitrate) {
65 max_bitrate_ = max_bitrate;
70 static std::string
GetCodecString(Codec codec, uint8_t audio_object_type);
74 uint8_t num_channels_;
75 uint32_t sampling_frequency_;
76 uint64_t seek_preroll_ns_;
77 uint64_t codec_delay_ns_;
78 uint32_t max_bitrate_;
79 uint32_t avg_bitrate_;