7 #ifndef PACKAGER_MEDIA_CODECS_NAL_UNIT_TO_BYTE_STREAM_CONVERTER_H_
8 #define PACKAGER_MEDIA_CODECS_NAL_UNIT_TO_BYTE_STREAM_CONVERTER_H_
13 #include <packager/macros/classes.h>
14 #include <packager/media/base/decrypt_config.h>
15 #include <packager/media/codecs/avc_decoder_configuration_record.h>
21 class VideoStreamInfo;
30 void EscapeNalByteSequence(
const uint8_t* input,
32 BufferWriter* output);
45 virtual bool Initialize(
const uint8_t* decoder_configuration_data,
46 size_t decoder_configuration_data_size);
59 std::vector<uint8_t>* output);
76 const uint8_t* sample,
79 bool escape_encrypted_nalu,
80 std::vector<uint8_t>* output,
81 std::vector<SubsampleEntry>* subsamples);
84 friend class NalUnitToByteStreamConverterTest;
86 int nalu_length_size_;
88 std::vector<uint8_t> decoder_configuration_in_byte_stream_;
All the methods that are virtual are virtual for mocking.