28 const std::string& codec_string,
29 const uint8_t* codec_config,
30 size_t codec_config_size,
33 uint32_t sampling_frequency,
34 uint64_t seek_preroll_ns,
35 uint64_t codec_delay_ns,
38 const std::string& language,
46 std::string
ToString()
const override;
47 std::unique_ptr<StreamInfo>
Clone()
const override;
50 uint8_t sample_bits()
const {
return sample_bits_; }
51 uint8_t sample_bytes()
const {
return sample_bits_ / 8; }
52 uint8_t num_channels()
const {
return num_channels_; }
53 uint32_t sampling_frequency()
const {
return sampling_frequency_; }
54 uint32_t bytes_per_frame()
const {
55 return static_cast<uint32_t
>(num_channels_) * sample_bits_ / 8;
57 uint64_t seek_preroll_ns()
const {
return seek_preroll_ns_; }
58 uint64_t codec_delay_ns()
const {
return codec_delay_ns_; }
59 uint32_t max_bitrate()
const {
return max_bitrate_; }
60 uint32_t avg_bitrate()
const {
return avg_bitrate_; }
62 void set_sampling_frequency(
const uint32_t sampling_frequency) {
63 sampling_frequency_ = sampling_frequency;
66 void set_max_bitrate(
const uint32_t max_bitrate) {
67 max_bitrate_ = max_bitrate;
72 static std::string
GetCodecString(Codec codec, uint8_t audio_object_type);
76 uint8_t num_channels_;
77 uint32_t sampling_frequency_;
78 uint64_t seek_preroll_ns_;
79 uint64_t codec_delay_ns_;
80 uint32_t max_bitrate_;
81 uint32_t avg_bitrate_;