7 #ifndef MEDIA_BASE_AUDIO_STREAM_INFO_H_
8 #define MEDIA_BASE_AUDIO_STREAM_INFO_H_
12 #include "packager/media/base/stream_info.h"
14 namespace edash_packager {
18 kUnknownAudioCodec = 0,
42 const std::string& codec_string,
43 const std::string& language,
46 uint32_t sampling_frequency,
47 uint64_t seek_preroll_ns,
48 uint64_t codec_delay_ns,
51 const uint8_t* extra_data,
52 size_t extra_data_size,
58 std::string
ToString()
const override;
61 AudioCodec codec()
const {
return codec_; }
62 uint8_t sample_bits()
const {
return sample_bits_; }
63 uint8_t sample_bytes()
const {
return sample_bits_ / 8; }
64 uint8_t num_channels()
const {
return num_channels_; }
65 uint32_t sampling_frequency()
const {
return sampling_frequency_; }
66 uint32_t bytes_per_frame()
const {
67 return static_cast<uint32_t
>(num_channels_) * sample_bits_ / 8;
69 uint64_t seek_preroll_ns()
const {
return seek_preroll_ns_; }
70 uint64_t codec_delay_ns()
const {
return codec_delay_ns_; }
71 uint32_t max_bitrate()
const {
return max_bitrate_; }
72 uint32_t avg_bitrate()
const {
return avg_bitrate_; }
74 void set_codec(AudioCodec codec) { codec_ = codec; }
75 void set_sampling_frequency(
const uint32_t sampling_frequency) {
76 sampling_frequency_ = sampling_frequency;
82 uint8_t audio_object_type);
89 uint8_t num_channels_;
90 uint32_t sampling_frequency_;
91 uint64_t seek_preroll_ns_;
92 uint64_t codec_delay_ns_;
93 uint32_t max_bitrate_;
94 uint32_t avg_bitrate_;
104 #endif // MEDIA_BASE_AUDIO_STREAM_INFO_H_