7 #ifndef PACKAGER_MEDIA_FORMATS_PACKED_AUDIO_PACKED_AUDIO_SEGMENTER_H_
8 #define PACKAGER_MEDIA_FORMATS_PACKED_AUDIO_PACKED_AUDIO_SEGMENTER_H_
12 #include <packager/media/base/buffer_writer.h>
13 #include <packager/media/base/stream_info.h>
14 #include <packager/status.h>
19 class AACAudioSpecificConfig;
24 constexpr
double kPackedAudioTimescale = 90000;
28 constexpr
char kTimestampOwnerIdentifier[] =
29 "com.apple.streaming.transportStreamTimestamp";
33 constexpr
char kAudioDescriptionOwnerIdentifier[] =
34 "com.apple.streaming.audioDescription";
78 virtual std::unique_ptr<AACAudioSpecificConfig> CreateAdtsConverter();
79 virtual std::unique_ptr<Id3Tag> CreateId3Tag();
81 Status EncryptionAudioSetup(
const MediaSample& sample);
82 Status StartNewSegment(
const MediaSample& first_sample);
84 const int32_t transport_stream_timestamp_offset_ = 0;
86 Codec codec_ = kUnknownCodec;
87 std::vector<uint8_t> audio_codec_config_;
90 double timescale_scale_ = 0.0;
92 bool start_of_new_segment_ =
true;
95 std::string audio_setup_information_;
97 std::unique_ptr<AACAudioSpecificConfig> adts_converter_;
All the methods that are virtual are virtual for mocking.