diff --git a/docs/annotated.html b/docs/annotated.html index 772e819272..c1bd54e03c 100644 --- a/docs/annotated.html +++ b/docs/annotated.html @@ -232,7 +232,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); ||oCClosureThread ||oCSubsampleEntry ||oCDecryptConfig -||oCDecryptorSourceDecryptorSource is responsible for decryption key acquisition +||oCDecryptorSourceDecryptorSource wraps KeySource and is responsible for decryptor management ||oCDemuxer ||oCHttpKeyFetcher ||oCKeyFetcherBase class for fetching keys from the license service @@ -338,7 +338,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/classes.html b/docs/classes.html index 7d790103ae..384d41f28c 100644 --- a/docs/classes.html +++ b/docs/classes.html @@ -136,8 +136,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); ChunkLargeOffset (edash_packager::media::mp4)   MpdBuilder (edash_packager)   SegmentTestBase (edash_packager::media)    ChunkOffset (edash_packager::media::mp4)   H264BitReader (edash_packager::media)   MpdNotifier (edash_packager)   SegmentType (edash_packager::media::mp4)   WebMAudioClient (edash_packager::media)    ClosureThread (edash_packager::media)   H264ByteToUnitStreamConverter (edash_packager::media)   MpdNotifierFactory (edash_packager)   SimpleMpdNotifier (edash_packager)   WebMClusterParser (edash_packager::media)    -Cluster (edash_packager::media)   H264DecRefPicMarking (edash_packager::media)   MpdNotifyMuxerListener (edash_packager::media)   SingleSegmentSegmenter (edash_packager::media::webm)   WebMContentEncodingsClient (edash_packager::media)    -ClusterBuilder (edash_packager::media)   H264ModificationOfPicNum (edash_packager::media)   MpdOptions (edash_packager)   SingleSegmentSegmenter (edash_packager::media::mp4)   WebMInfoParser (edash_packager::media)    +Cluster (edash_packager::media)   H264DecRefPicMarking (edash_packager::media)   MpdNotifyMuxerListener (edash_packager::media)   SingleSegmentSegmenter (edash_packager::media::mp4)   WebMContentEncodingsClient (edash_packager::media)    +ClusterBuilder (edash_packager::media)   H264ModificationOfPicNum (edash_packager::media)   MpdOptions (edash_packager)   SingleSegmentSegmenter (edash_packager::media::webm)   WebMInfoParser (edash_packager::media)    SegmentTestBase::ClusterParser (edash_packager::media)   H264NALU (edash_packager::media)   MpdWriter (edash_packager)   SoundMediaHeader (edash_packager::media::mp4)   WebMListParser (edash_packager::media)    CodecConfigurationRecord (edash_packager::media::mp4)   H264Parser (edash_packager::media)   MultiSegmentSegmenter (edash_packager::media::webm)   Status (edash_packager::media)   WebMMediaParser (edash_packager::media)    CompactSampleSize (edash_packager::media::mp4)   H264PPS (edash_packager::media)   MultiSegmentSegmenter (edash_packager::media::mp4)   StreamDescriptor (edash_packager::media)   WebMMuxer (edash_packager::media::webm)    @@ -170,7 +170,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/d0/d03/classedash__packager_1_1media_1_1webm_1_1SingleSegmentSegmenter.html b/docs/d0/d03/classedash__packager_1_1media_1_1webm_1_1SingleSegmentSegmenter.html index 9dc2666499..cb85c00361 100644 --- a/docs/d0/d03/classedash__packager_1_1media_1_1webm_1_1SingleSegmentSegmenter.html +++ b/docs/d0/d03/classedash__packager_1_1media_1_1webm_1_1SingleSegmentSegmenter.html @@ -290,7 +290,7 @@ double cluster_length_sec< diff --git a/docs/d0/d06/mpd__flags_8cc_source.html b/docs/d0/d06/mpd__flags_8cc_source.html index 95ce1bec08..ac6347a1b5 100644 --- a/docs/d0/d06/mpd__flags_8cc_source.html +++ b/docs/d0/d06/mpd__flags_8cc_source.html @@ -148,7 +148,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d08/structedash__packager_1_1media_1_1mp4_1_1CodecConfigurationRecord-members.html b/docs/d0/d08/structedash__packager_1_1media_1_1mp4_1_1CodecConfigurationRecord-members.html index f42faa9152..9cbb161eb8 100644 --- a/docs/d0/d08/structedash__packager_1_1media_1_1mp4_1_1CodecConfigurationRecord-members.html +++ b/docs/d0/d08/structedash__packager_1_1media_1_1mp4_1_1CodecConfigurationRecord-members.html @@ -110,7 +110,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d0e/muxer__options_8h_source.html b/docs/d0/d0e/muxer__options_8h_source.html index 409bbe80a8..6fdc77bc80 100644 --- a/docs/d0/d0e/muxer__options_8h_source.html +++ b/docs/d0/d0e/muxer__options_8h_source.html @@ -149,7 +149,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d0e/structedash__packager_1_1media_1_1StreamDescriptor-members.html b/docs/d0/d0e/structedash__packager_1_1media_1_1StreamDescriptor-members.html index 0af55bf215..ecc4586277 100644 --- a/docs/d0/d0e/structedash__packager_1_1media_1_1StreamDescriptor-members.html +++ b/docs/d0/d0e/structedash__packager_1_1media_1_1StreamDescriptor-members.html @@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d1a/structedash__packager_1_1media_1_1mp4_1_1ChunkOffset-members.html b/docs/d0/d1a/structedash__packager_1_1media_1_1mp4_1_1ChunkOffset-members.html index f4bb457a9d..81c6a91b4d 100644 --- a/docs/d0/d1a/structedash__packager_1_1media_1_1mp4_1_1ChunkOffset-members.html +++ b/docs/d0/d1a/structedash__packager_1_1media_1_1mp4_1_1ChunkOffset-members.html @@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d24/structedash__packager_1_1media_1_1H264DecRefPicMarking-members.html b/docs/d0/d24/structedash__packager_1_1media_1_1H264DecRefPicMarking-members.html index dc3041512f..56e147cc0f 100644 --- a/docs/d0/d24/structedash__packager_1_1media_1_1H264DecRefPicMarking-members.html +++ b/docs/d0/d24/structedash__packager_1_1media_1_1H264DecRefPicMarking-members.html @@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d28/classedash__packager_1_1media_1_1mp4_1_1MultiSegmentSegmenter-members.html b/docs/d0/d28/classedash__packager_1_1media_1_1mp4_1_1MultiSegmentSegmenter-members.html index ee8d61764c..e403d0ad86 100644 --- a/docs/d0/d28/classedash__packager_1_1media_1_1mp4_1_1MultiSegmentSegmenter-members.html +++ b/docs/d0/d28/classedash__packager_1_1media_1_1mp4_1_1MultiSegmentSegmenter-members.html @@ -118,7 +118,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d30/mock__mpd__notifier_8h_source.html b/docs/d0/d30/mock__mpd__notifier_8h_source.html index 75fb3cf4e3..54e8780834 100644 --- a/docs/d0/d30/mock__mpd__notifier_8h_source.html +++ b/docs/d0/d30/mock__mpd__notifier_8h_source.html @@ -148,7 +148,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d32/mp2t__common_8h_source.html b/docs/d0/d32/mp2t__common_8h_source.html index 0bd8fafa98..f0d77a7253 100644 --- a/docs/d0/d32/mp2t__common_8h_source.html +++ b/docs/d0/d32/mp2t__common_8h_source.html @@ -118,7 +118,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d35/es__descriptor_8cc_source.html b/docs/d0/d35/es__descriptor_8cc_source.html index 28a8943e78..6fdbd57865 100644 --- a/docs/d0/d35/es__descriptor_8cc_source.html +++ b/docs/d0/d35/es__descriptor_8cc_source.html @@ -286,7 +286,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d3a/classedash__packager_1_1media_1_1SeekHead-members.html b/docs/d0/d3a/classedash__packager_1_1media_1_1SeekHead-members.html index feee2970d5..29b664b54b 100644 --- a/docs/d0/d3a/classedash__packager_1_1media_1_1SeekHead-members.html +++ b/docs/d0/d3a/classedash__packager_1_1media_1_1SeekHead-members.html @@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d3a/classedash__packager_1_1xml_1_1RepresentationBaseXmlNode-members.html b/docs/d0/d3a/classedash__packager_1_1xml_1_1RepresentationBaseXmlNode-members.html index 6fcef8d90b..ad6af2b883 100644 --- a/docs/d0/d3a/classedash__packager_1_1xml_1_1RepresentationBaseXmlNode-members.html +++ b/docs/d0/d3a/classedash__packager_1_1xml_1_1RepresentationBaseXmlNode-members.html @@ -111,7 +111,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d3a/webm__constants_8h_source.html b/docs/d0/d3a/webm__constants_8h_source.html index f946da4f1a..6de6772b1b 100644 --- a/docs/d0/d3a/webm__constants_8h_source.html +++ b/docs/d0/d3a/webm__constants_8h_source.html @@ -313,7 +313,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d42/widevine__encryption__flags_8cc_source.html b/docs/d0/d42/widevine__encryption__flags_8cc_source.html index eb4fd1ecd3..7ab3c43930 100644 --- a/docs/d0/d42/widevine__encryption__flags_8cc_source.html +++ b/docs/d0/d42/widevine__encryption__flags_8cc_source.html @@ -244,7 +244,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d43/structedash__packager_1_1media_1_1H264SPS-members.html b/docs/d0/d43/structedash__packager_1_1media_1_1H264SPS-members.html index f9ba202eab..45d66ccbb2 100644 --- a/docs/d0/d43/structedash__packager_1_1media_1_1H264SPS-members.html +++ b/docs/d0/d43/structedash__packager_1_1media_1_1H264SPS-members.html @@ -142,7 +142,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d46/fourccs_8h_source.html b/docs/d0/d46/fourccs_8h_source.html index c552ca5d88..bacc507597 100644 --- a/docs/d0/d46/fourccs_8h_source.html +++ b/docs/d0/d46/fourccs_8h_source.html @@ -237,7 +237,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d49/vod__media__info__dump__muxer__listener_8cc_source.html b/docs/d0/d49/vod__media__info__dump__muxer__listener_8cc_source.html index a745906522..0d3b2f9e20 100644 --- a/docs/d0/d49/vod__media__info__dump__muxer__listener_8cc_source.html +++ b/docs/d0/d49/vod__media__info__dump__muxer__listener_8cc_source.html @@ -234,7 +234,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d4a/structedash__packager_1_1media_1_1mp4_1_1SampleSize-members.html b/docs/d0/d4a/structedash__packager_1_1media_1_1mp4_1_1SampleSize-members.html index 1972bb164b..5d4cb395c6 100644 --- a/docs/d0/d4a/structedash__packager_1_1media_1_1mp4_1_1SampleSize-members.html +++ b/docs/d0/d4a/structedash__packager_1_1media_1_1mp4_1_1SampleSize-members.html @@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d4c/structedash__packager_1_1media_1_1mp4_1_1CueTimeBox-members.html b/docs/d0/d4c/structedash__packager_1_1media_1_1mp4_1_1CueTimeBox-members.html index 69ff9d0859..b9bb827349 100644 --- a/docs/d0/d4c/structedash__packager_1_1media_1_1mp4_1_1CueTimeBox-members.html +++ b/docs/d0/d4c/structedash__packager_1_1media_1_1mp4_1_1CueTimeBox-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d4e/libcrypto__threading_8cc_source.html b/docs/d0/d4e/libcrypto__threading_8cc_source.html index 9bd14c2901..9caa0cc090 100644 --- a/docs/d0/d4e/libcrypto__threading_8cc_source.html +++ b/docs/d0/d4e/libcrypto__threading_8cc_source.html @@ -143,7 +143,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d5b/structedash__packager_1_1media_1_1mp4_1_1VTTAdditionalTextBox-members.html b/docs/d0/d5b/structedash__packager_1_1media_1_1mp4_1_1VTTAdditionalTextBox-members.html index 50bac0bf01..baa00cc9a7 100644 --- a/docs/d0/d5b/structedash__packager_1_1media_1_1mp4_1_1VTTAdditionalTextBox-members.html +++ b/docs/d0/d5b/structedash__packager_1_1media_1_1mp4_1_1VTTAdditionalTextBox-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d65/structedash__packager_1_1media_1_1mp4_1_1AC3Specific.html b/docs/d0/d65/structedash__packager_1_1media_1_1mp4_1_1AC3Specific.html index 87a51fb659..971f4fc2fe 100644 --- a/docs/d0/d65/structedash__packager_1_1media_1_1mp4_1_1AC3Specific.html +++ b/docs/d0/d65/structedash__packager_1_1media_1_1mp4_1_1AC3Specific.html @@ -173,7 +173,7 @@ Additional Inherited Members diff --git a/docs/d0/d7d/classedash__packager_1_1media_1_1H264Parser-members.html b/docs/d0/d7d/classedash__packager_1_1media_1_1H264Parser-members.html index f653c67559..4c1c14466d 100644 --- a/docs/d0/d7d/classedash__packager_1_1media_1_1H264Parser-members.html +++ b/docs/d0/d7d/classedash__packager_1_1media_1_1H264Parser-members.html @@ -114,7 +114,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d7d/decryptor__source_8h_source.html b/docs/d0/d7d/decryptor__source_8h_source.html index 32a4ecefe2..ec0515ab04 100644 --- a/docs/d0/d7d/decryptor__source_8h_source.html +++ b/docs/d0/d7d/decryptor__source_8h_source.html @@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
decryptor_source.h
-
1 // Copyright 2014 Google Inc. All rights reserved.
+
1 // Copyright 2016 Google Inc. All rights reserved.
2 //
3 // Use of this source code is governed by a BSD-style
4 // license that can be found in the LICENSE file or at
@@ -96,36 +96,44 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
7 #ifndef MEDIA_BASE_DECRYPTOR_SOURCE_H_
8 #define MEDIA_BASE_DECRYPTOR_SOURCE_H_
9 
-
10 #include "packager/base/memory/scoped_ptr.h"
-
11 #include "packager/media/base/container_names.h"
-
12 #include "packager/media/base/status.h"
-
13 
-
14 namespace edash_packager {
-
15 namespace media {
+
10 #include <map>
+
11 #include <vector>
+
12 
+
13 #include "packager/media/base/aes_encryptor.h"
+
14 #include "packager/media/base/decrypt_config.h"
+
15 #include "packager/media/base/key_source.h"
16 
- -
19  public:
-
20  DecryptorSource() {}
-
21  virtual ~DecryptorSource() {}
-
22 
-
28  virtual Status OnNeedKey(MediaContainerName container,
-
29  const std::string& init_data) = 0;
-
30 
-
31  private:
-
32  DISALLOW_COPY_AND_ASSIGN(DecryptorSource);
-
33 };
-
34 
-
35 } // namespace media
-
36 } // namespace edash_packager
-
37 
-
38 #endif // MEDIA_BASE_DECRYPTOR_SOURCE_H_
-
DecryptorSource is responsible for decryption key acquisition.
- -
virtual Status OnNeedKey(MediaContainerName container, const std::string &init_data)=0
+
17 namespace edash_packager {
+
18 namespace media {
+
19 
+ +
22  public:
+
23  explicit DecryptorSource(KeySource* key_source);
+
24  ~DecryptorSource();
+
25 
+
26  bool DecryptSampleBuffer(const DecryptConfig* decrypt_config,
+
27  uint8_t* buffer,
+
28  size_t buffer_size);
+
29 
+
30  private:
+
31  KeySource* key_source_;
+
32  std::map<std::vector<uint8_t>, AesCtrEncryptor*> decryptor_map_;
+
33 
+
34  DISALLOW_COPY_AND_ASSIGN(DecryptorSource);
+
35 };
+
36 
+
37 } // namespace media
+
38 } // namespace edash_packager
+
39 
+
40 #endif // MEDIA_BASE_DECRYPTOR_SOURCE_H_
+ +
DecryptorSource wraps KeySource and is responsible for decryptor management.
+
KeySource is responsible for encryption key acquisition.
Definition: key_source.h:29
+
diff --git a/docs/d0/d86/structedash__packager_1_1media_1_1EncryptionKey.html b/docs/d0/d86/structedash__packager_1_1media_1_1EncryptionKey.html index b0235d12ff..7b022c6008 100644 --- a/docs/d0/d86/structedash__packager_1_1media_1_1EncryptionKey.html +++ b/docs/d0/d86/structedash__packager_1_1media_1_1EncryptionKey.html @@ -119,7 +119,7 @@ std::vector< uint8_t > 
diff --git a/docs/d0/d92/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentDecodeTime.html b/docs/d0/d92/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentDecodeTime.html index fff1f11810..32f850649e 100644 --- a/docs/d0/d92/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentDecodeTime.html +++ b/docs/d0/d92/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentDecodeTime.html @@ -182,7 +182,7 @@ Additional Inherited Members diff --git a/docs/d0/d93/structedash__packager_1_1media_1_1mp4_1_1SampleTable-members.html b/docs/d0/d93/structedash__packager_1_1media_1_1mp4_1_1SampleTable-members.html index 41a199a9cc..9461ddadfd 100644 --- a/docs/d0/d93/structedash__packager_1_1media_1_1mp4_1_1SampleTable-members.html +++ b/docs/d0/d93/structedash__packager_1_1media_1_1mp4_1_1SampleTable-members.html @@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/d96/structedash__packager_1_1ContentProtectionElement.html b/docs/d0/d96/structedash__packager_1_1ContentProtectionElement.html index 2b40c72da3..5fba044d3e 100644 --- a/docs/d0/d96/structedash__packager_1_1ContentProtectionElement.html +++ b/docs/d0/d96/structedash__packager_1_1ContentProtectionElement.html @@ -123,7 +123,7 @@ std::vector< diff --git a/docs/d0/d96/structedash__packager_1_1media_1_1mp4_1_1WebVTTSourceLabelBox-members.html b/docs/d0/d96/structedash__packager_1_1media_1_1mp4_1_1WebVTTSourceLabelBox-members.html index 535e488184..6c6af1d4fb 100644 --- a/docs/d0/d96/structedash__packager_1_1media_1_1mp4_1_1WebVTTSourceLabelBox-members.html +++ b/docs/d0/d96/structedash__packager_1_1media_1_1mp4_1_1WebVTTSourceLabelBox-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/da4/classedash__packager_1_1media_1_1WebMVideoClient-members.html b/docs/d0/da4/classedash__packager_1_1media_1_1WebMVideoClient-members.html index 45bea31920..18ad61186b 100644 --- a/docs/d0/da4/classedash__packager_1_1media_1_1WebMVideoClient-members.html +++ b/docs/d0/da4/classedash__packager_1_1media_1_1WebMVideoClient-members.html @@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/da6/stream__descriptor_8cc_source.html b/docs/d0/da6/stream__descriptor_8cc_source.html index 621b125e61..b71e6dce09 100644 --- a/docs/d0/da6/stream__descriptor_8cc_source.html +++ b/docs/d0/da6/stream__descriptor_8cc_source.html @@ -243,7 +243,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/da9/classedash__packager_1_1MockRepresentation.html b/docs/d0/da9/classedash__packager_1_1MockRepresentation.html index f1ded7ea66..69ae9eceeb 100644 --- a/docs/d0/da9/classedash__packager_1_1MockRepresentation.html +++ b/docs/d0/da9/classedash__packager_1_1MockRepresentation.html @@ -160,7 +160,7 @@ Additional Inherited Members diff --git a/docs/d0/da9/classedash__packager_1_1media_1_1webm_1_1WebMMuxer-members.html b/docs/d0/da9/classedash__packager_1_1media_1_1webm_1_1WebMMuxer-members.html index 735f5a5513..4cde2fd6ec 100644 --- a/docs/d0/da9/classedash__packager_1_1media_1_1webm_1_1WebMMuxer-members.html +++ b/docs/d0/da9/classedash__packager_1_1media_1_1webm_1_1WebMMuxer-members.html @@ -116,7 +116,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/dae/classedash__packager_1_1media_1_1BufferWriter-members.html b/docs/d0/dae/classedash__packager_1_1media_1_1BufferWriter-members.html index cddfcab31f..eb61c7ca8d 100644 --- a/docs/d0/dae/classedash__packager_1_1media_1_1BufferWriter-members.html +++ b/docs/d0/dae/classedash__packager_1_1media_1_1BufferWriter-members.html @@ -116,7 +116,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/db7/structedash__packager_1_1media_1_1mp4_1_1DTSSpecific.html b/docs/d0/db7/structedash__packager_1_1media_1_1mp4_1_1DTSSpecific.html index 83ad869786..f5d4df4fdb 100644 --- a/docs/d0/db7/structedash__packager_1_1media_1_1mp4_1_1DTSSpecific.html +++ b/docs/d0/db7/structedash__packager_1_1media_1_1mp4_1_1DTSSpecific.html @@ -185,7 +185,7 @@ Additional Inherited Members diff --git a/docs/d0/dd1/classedash__packager_1_1SimpleMpdNotifier-members.html b/docs/d0/dd1/classedash__packager_1_1SimpleMpdNotifier-members.html index 10fcf64f1a..a83454b94d 100644 --- a/docs/d0/dd1/classedash__packager_1_1SimpleMpdNotifier-members.html +++ b/docs/d0/dd1/classedash__packager_1_1SimpleMpdNotifier-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/dd4/structedash__packager_1_1media_1_1SubsampleEntry-members.html b/docs/d0/dd4/structedash__packager_1_1media_1_1SubsampleEntry-members.html index a389db337c..043c86e7b6 100644 --- a/docs/d0/dd4/structedash__packager_1_1media_1_1SubsampleEntry-members.html +++ b/docs/d0/dd4/structedash__packager_1_1media_1_1SubsampleEntry-members.html @@ -98,7 +98,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/dd6/webm__crypto__helpers_8cc_source.html b/docs/d0/dd6/webm__crypto__helpers_8cc_source.html index ba04cdd4da..ec22b1abaf 100644 --- a/docs/d0/dd6/webm__crypto__helpers_8cc_source.html +++ b/docs/d0/dd6/webm__crypto__helpers_8cc_source.html @@ -145,7 +145,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
56  decrypt_config->reset(new DecryptConfig(
57  std::vector<uint8_t>(key_id, key_id + key_id_size),
58  std::vector<uint8_t>(counter_block.begin(), counter_block.end()),
-
59  frame_offset, std::vector<SubsampleEntry>()));
+
59  std::vector<SubsampleEntry>()));
60  *data_offset = frame_offset;
61 
62  return true;
@@ -157,7 +157,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/ddc/structedash__packager_1_1media_1_1FileCloser.html b/docs/d0/ddc/structedash__packager_1_1media_1_1FileCloser.html index eaffb5fe3a..bcfb5492d3 100644 --- a/docs/d0/ddc/structedash__packager_1_1media_1_1FileCloser.html +++ b/docs/d0/ddc/structedash__packager_1_1media_1_1FileCloser.html @@ -112,7 +112,7 @@ void operator() ( diff --git a/docs/d0/de0/structedash__packager_1_1media_1_1mp4_1_1VideoSampleEntry-members.html b/docs/d0/de0/structedash__packager_1_1media_1_1mp4_1_1VideoSampleEntry-members.html index 7d2248a196..1b4427ad00 100644 --- a/docs/d0/de0/structedash__packager_1_1media_1_1mp4_1_1VideoSampleEntry-members.html +++ b/docs/d0/de0/structedash__packager_1_1media_1_1mp4_1_1VideoSampleEntry-members.html @@ -116,7 +116,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/de4/structedash__packager_1_1media_1_1mp4_1_1MovieFragmentHeader-members.html b/docs/d0/de4/structedash__packager_1_1media_1_1mp4_1_1MovieFragmentHeader-members.html index 0929d6c2fb..b4bb922b0d 100644 --- a/docs/d0/de4/structedash__packager_1_1media_1_1mp4_1_1MovieFragmentHeader-members.html +++ b/docs/d0/de4/structedash__packager_1_1media_1_1mp4_1_1MovieFragmentHeader-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/de6/classedash__packager_1_1media_1_1TracksBuilder.html b/docs/d0/de6/classedash__packager_1_1media_1_1TracksBuilder.html index 72e1a2372b..bc726c7f9b 100644 --- a/docs/d0/de6/classedash__packager_1_1media_1_1TracksBuilder.html +++ b/docs/d0/de6/classedash__packager_1_1media_1_1TracksBuilder.html @@ -123,7 +123,7 @@ std::vector< uint8_t >  diff --git a/docs/d0/de8/structedash__packager_1_1media_1_1mp4_1_1VTTCueBox-members.html b/docs/d0/de8/structedash__packager_1_1media_1_1mp4_1_1VTTCueBox-members.html index f1924bedae..f41af3c290 100644 --- a/docs/d0/de8/structedash__packager_1_1media_1_1mp4_1_1VTTCueBox-members.html +++ b/docs/d0/de8/structedash__packager_1_1media_1_1mp4_1_1VTTCueBox-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/dea/structedash__packager_1_1media_1_1mp4_1_1ProtectionSystemSpecificHeader-members.html b/docs/d0/dea/structedash__packager_1_1media_1_1mp4_1_1ProtectionSystemSpecificHeader-members.html index e15dab0a49..97a2fc4334 100644 --- a/docs/d0/dea/structedash__packager_1_1media_1_1mp4_1_1ProtectionSystemSpecificHeader-members.html +++ b/docs/d0/dea/structedash__packager_1_1media_1_1mp4_1_1ProtectionSystemSpecificHeader-members.html @@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/dee/segmenter__test__base_8h_source.html b/docs/d0/dee/segmenter__test__base_8h_source.html index c892d9a559..1843f6be6c 100644 --- a/docs/d0/dee/segmenter__test__base_8h_source.html +++ b/docs/d0/dee/segmenter__test__base_8h_source.html @@ -215,7 +215,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/df3/packager__util_8cc_source.html b/docs/d0/df3/packager__util_8cc_source.html index b230cbf110..f8cf38db06 100644 --- a/docs/d0/df3/packager__util_8cc_source.html +++ b/docs/d0/df3/packager__util_8cc_source.html @@ -329,7 +329,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/df6/structedash__packager_1_1media_1_1mp4_1_1MovieExtends-members.html b/docs/d0/df6/structedash__packager_1_1media_1_1mp4_1_1MovieExtends-members.html index 22b2e53026..386488b3c6 100644 --- a/docs/d0/df6/structedash__packager_1_1media_1_1mp4_1_1MovieExtends-members.html +++ b/docs/d0/df6/structedash__packager_1_1media_1_1mp4_1_1MovieExtends-members.html @@ -110,7 +110,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d0/dfa/structedash__packager_1_1media_1_1wvm_1_1DemuxStreamIdMediaSample.html b/docs/d0/dfa/structedash__packager_1_1media_1_1wvm_1_1DemuxStreamIdMediaSample.html index 1aac9e93c7..5b9ada7a83 100644 --- a/docs/d0/dfa/structedash__packager_1_1media_1_1wvm_1_1DemuxStreamIdMediaSample.html +++ b/docs/d0/dfa/structedash__packager_1_1media_1_1wvm_1_1DemuxStreamIdMediaSample.html @@ -116,7 +116,7 @@ scoped_refptr< diff --git a/docs/d1/d02/classedash__packager_1_1media_1_1mp4_1_1BoxBuffer-members.html b/docs/d1/d02/classedash__packager_1_1media_1_1mp4_1_1BoxBuffer-members.html index 2471c8ba08..d04473c0c0 100644 --- a/docs/d1/d02/classedash__packager_1_1media_1_1mp4_1_1BoxBuffer-members.html +++ b/docs/d1/d02/classedash__packager_1_1media_1_1mp4_1_1BoxBuffer-members.html @@ -121,7 +121,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d13/status_8h_source.html b/docs/d1/d13/status_8h_source.html index 001516b19f..96b1bc2cb7 100644 --- a/docs/d1/d13/status_8h_source.html +++ b/docs/d1/d13/status_8h_source.html @@ -239,7 +239,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d16/structedash__packager_1_1xml_1_1XmlDeleter-members.html b/docs/d1/d16/structedash__packager_1_1xml_1_1XmlDeleter-members.html index de95aa1485..2b27e140fc 100644 --- a/docs/d1/d16/structedash__packager_1_1xml_1_1XmlDeleter-members.html +++ b/docs/d1/d16/structedash__packager_1_1xml_1_1XmlDeleter-members.html @@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d1c/two__pass__single__segment__segmenter_8cc_source.html b/docs/d1/d1c/two__pass__single__segment__segmenter_8cc_source.html index d68d0fc1d8..bbad5a5483 100644 --- a/docs/d1/d1c/two__pass__single__segment__segmenter_8cc_source.html +++ b/docs/d1/d1c/two__pass__single__segment__segmenter_8cc_source.html @@ -275,7 +275,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d1d/muxer__flags_8cc_source.html b/docs/d1/d1d/muxer__flags_8cc_source.html index 964f8baa36..af03aad845 100644 --- a/docs/d1/d1d/muxer__flags_8cc_source.html +++ b/docs/d1/d1d/muxer__flags_8cc_source.html @@ -143,7 +143,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d27/key__fetcher_8h_source.html b/docs/d1/d27/key__fetcher_8h_source.html index 58ce694e7c..234c5f1076 100644 --- a/docs/d1/d27/key__fetcher_8h_source.html +++ b/docs/d1/d27/key__fetcher_8h_source.html @@ -126,7 +126,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d28/classedash__packager_1_1media_1_1WebMTracksParser-members.html b/docs/d1/d28/classedash__packager_1_1media_1_1WebMTracksParser-members.html index 098f62676a..3e00ddc464 100644 --- a/docs/d1/d28/classedash__packager_1_1media_1_1WebMTracksParser-members.html +++ b/docs/d1/d28/classedash__packager_1_1media_1_1WebMTracksParser-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d28/classedash__packager_1_1media_1_1mp4_1_1SyncSampleIterator-members.html b/docs/d1/d28/classedash__packager_1_1media_1_1mp4_1_1SyncSampleIterator-members.html index 408988910b..b895566f3b 100644 --- a/docs/d1/d28/classedash__packager_1_1media_1_1mp4_1_1SyncSampleIterator-members.html +++ b/docs/d1/d28/classedash__packager_1_1media_1_1mp4_1_1SyncSampleIterator-members.html @@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d2a/decryptor__source_8cc_source.html b/docs/d1/d2a/decryptor__source_8cc_source.html new file mode 100644 index 0000000000..f3e1f0e50c --- /dev/null +++ b/docs/d1/d2a/decryptor__source_8cc_source.html @@ -0,0 +1,184 @@ + + + + + + +DASH Media Packaging SDK: media/base/decryptor_source.cc Source File + + + + + + + + + +
+
+ + + + + + +
+
DASH Media Packaging SDK +
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
decryptor_source.cc
+
+
+
1 // Copyright 2016 Google Inc. All rights reserved.
+
2 //
+
3 // Use of this source code is governed by a BSD-style
+
4 // license that can be found in the LICENSE file or at
+
5 // https://developers.google.com/open-source/licenses/bsd
+
6 
+
7 #include "packager/media/base/decryptor_source.h"
+
8 
+
9 #include "packager/base/logging.h"
+
10 #include "packager/base/stl_util.h"
+
11 
+
12 namespace edash_packager {
+
13 namespace media {
+
14 
+
15 DecryptorSource::DecryptorSource(KeySource* key_source)
+
16  : key_source_(key_source) {
+
17  CHECK(key_source);
+
18 }
+
19 DecryptorSource::~DecryptorSource() {
+
20  STLDeleteValues(&decryptor_map_);
+
21 }
+
22 
+
23 bool DecryptorSource::DecryptSampleBuffer(const DecryptConfig* decrypt_config,
+
24  uint8_t* buffer,
+
25  size_t buffer_size) {
+
26  DCHECK(decrypt_config);
+
27  DCHECK(buffer);
+
28 
+
29  // Get the decryptor object.
+
30  AesCtrEncryptor* decryptor;
+
31  auto found = decryptor_map_.find(decrypt_config->key_id());
+
32  if (found == decryptor_map_.end()) {
+
33  // Create new AesCtrEncryptor
+
34  EncryptionKey key;
+
35  Status status(key_source_->GetKey(decrypt_config->key_id(), &key));
+
36  if (!status.ok()) {
+
37  LOG(ERROR) << "Error retrieving decryption key: " << status;
+
38  return false;
+
39  }
+
40  scoped_ptr<AesCtrEncryptor> aes_ctr_encryptor(new AesCtrEncryptor);
+
41  if (!aes_ctr_encryptor->InitializeWithIv(key.key, decrypt_config->iv())) {
+
42  LOG(ERROR) << "Failed to initialize AesCtrEncryptor for decryption.";
+
43  return false;
+
44  }
+
45  decryptor = aes_ctr_encryptor.release();
+
46  decryptor_map_[decrypt_config->key_id()] = decryptor;
+
47  } else {
+
48  decryptor = found->second;
+
49  }
+
50  if (!decryptor->SetIv(decrypt_config->iv())) {
+
51  LOG(ERROR) << "Invalid initialization vector.";
+
52  return false;
+
53  }
+
54 
+
55  if (decrypt_config->subsamples().empty()) {
+
56  // Sample not encrypted using subsample encryption. Decrypt whole.
+
57  if (!decryptor->Decrypt(buffer, buffer_size, buffer)) {
+
58  LOG(ERROR) << "Error during bulk sample decryption.";
+
59  return false;
+
60  }
+
61  return true;
+
62  }
+
63 
+
64  // Subsample decryption.
+
65  const std::vector<SubsampleEntry>& subsamples = decrypt_config->subsamples();
+
66  uint8_t* current_ptr = buffer;
+
67  const uint8_t* const buffer_end = buffer + buffer_size;
+
68  for (const auto& subsample : subsamples) {
+
69  if ((current_ptr + subsample.clear_bytes + subsample.cipher_bytes) >
+
70  buffer_end) {
+
71  LOG(ERROR) << "Subsamples overflow sample buffer.";
+
72  return false;
+
73  }
+
74  current_ptr += subsample.clear_bytes;
+
75  if (!decryptor->Decrypt(current_ptr, subsample.cipher_bytes, current_ptr)) {
+
76  LOG(ERROR) << "Error decrypting subsample buffer.";
+
77  return false;
+
78  }
+
79  current_ptr += subsample.cipher_bytes;
+
80  }
+
81  return true;
+
82 }
+
83 
+
84 } // namespace media
+
85 } // namespace edash_packager
+
virtual Status GetKey(TrackType track_type, EncryptionKey *key)
Definition: key_source.cc:46
+
+ + + + diff --git a/docs/d1/d2a/structedash__packager_1_1media_1_1mp4_1_1TrackExtends-members.html b/docs/d1/d2a/structedash__packager_1_1media_1_1mp4_1_1TrackExtends-members.html index 7674465e98..63c8c992b3 100644 --- a/docs/d1/d2a/structedash__packager_1_1media_1_1mp4_1_1TrackExtends-members.html +++ b/docs/d1/d2a/structedash__packager_1_1media_1_1mp4_1_1TrackExtends-members.html @@ -117,7 +117,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d2f/webvtt__media__parser_8cc_source.html b/docs/d1/d2f/webvtt__media__parser_8cc_source.html index 3d4d9b8ec7..5a7670e02c 100644 --- a/docs/d1/d2f/webvtt__media__parser_8cc_source.html +++ b/docs/d1/d2f/webvtt__media__parser_8cc_source.html @@ -484,7 +484,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d31/structedash__packager_1_1media_1_1mp4_1_1CodecConfigurationRecord.html b/docs/d1/d31/structedash__packager_1_1media_1_1mp4_1_1CodecConfigurationRecord.html index 7cb6b4b76c..1f0b95ee03 100644 --- a/docs/d1/d31/structedash__packager_1_1media_1_1mp4_1_1CodecConfigurationRecord.html +++ b/docs/d1/d31/structedash__packager_1_1media_1_1mp4_1_1CodecConfigurationRecord.html @@ -176,7 +176,7 @@ Additional Inherited Members diff --git a/docs/d1/d37/es__parser__h264_8h_source.html b/docs/d1/d37/es__parser__h264_8h_source.html index ed89926db2..e90292c3e6 100644 --- a/docs/d1/d37/es__parser__h264_8h_source.html +++ b/docs/d1/d37/es__parser__h264_8h_source.html @@ -200,7 +200,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d38/classedash__packager_1_1MockRepresentation-members.html b/docs/d1/d38/classedash__packager_1_1MockRepresentation-members.html index b7f4db5226..1c145e5169 100644 --- a/docs/d1/d38/classedash__packager_1_1MockRepresentation-members.html +++ b/docs/d1/d38/classedash__packager_1_1MockRepresentation-members.html @@ -116,7 +116,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d3b/mpd__generator__flags_8h_source.html b/docs/d1/d3b/mpd__generator__flags_8h_source.html index 45f7e18ead..006d53afb0 100644 --- a/docs/d1/d3b/mpd__generator__flags_8h_source.html +++ b/docs/d1/d3b/mpd__generator__flags_8h_source.html @@ -108,7 +108,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d45/decoding__time__iterator_8cc_source.html b/docs/d1/d45/decoding__time__iterator_8cc_source.html index 8147dc1d96..f29e1c2eec 100644 --- a/docs/d1/d45/decoding__time__iterator_8cc_source.html +++ b/docs/d1/d45/decoding__time__iterator_8cc_source.html @@ -168,7 +168,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d48/text__track__config_8h_source.html b/docs/d1/d48/text__track__config_8h_source.html index fde524d2d4..def57871fc 100644 --- a/docs/d1/d48/text__track__config_8h_source.html +++ b/docs/d1/d48/text__track__config_8h_source.html @@ -139,7 +139,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d4b/classedash__packager_1_1media_1_1mp2t_1_1TsPacket.html b/docs/d1/d4b/classedash__packager_1_1media_1_1mp2t_1_1TsPacket.html index 54c74dcac3..0e64fb11a5 100644 --- a/docs/d1/d4b/classedash__packager_1_1media_1_1mp2t_1_1TsPacket.html +++ b/docs/d1/d4b/classedash__packager_1_1media_1_1mp2t_1_1TsPacket.html @@ -145,7 +145,7 @@ static const int kPacketSi diff --git a/docs/d1/d4d/h264__bit__reader_8cc_source.html b/docs/d1/d4d/h264__bit__reader_8cc_source.html index 3dfd6ef7e8..2896743136 100644 --- a/docs/d1/d4d/h264__bit__reader_8cc_source.html +++ b/docs/d1/d4d/h264__bit__reader_8cc_source.html @@ -205,7 +205,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d5d/structedash__packager_1_1MpdOptions.html b/docs/d1/d5d/structedash__packager_1_1MpdOptions.html index ecb118b6bd..f0588cebd0 100644 --- a/docs/d1/d5d/structedash__packager_1_1MpdOptions.html +++ b/docs/d1/d5d/structedash__packager_1_1MpdOptions.html @@ -130,7 +130,7 @@ std::string packager_versi diff --git a/docs/d1/d65/structedash__packager_1_1media_1_1mp4_1_1SampleToGroup.html b/docs/d1/d65/structedash__packager_1_1media_1_1mp4_1_1SampleToGroup.html index 325a534fa2..87c26f14ba 100644 --- a/docs/d1/d65/structedash__packager_1_1media_1_1mp4_1_1SampleToGroup.html +++ b/docs/d1/d65/structedash__packager_1_1media_1_1mp4_1_1SampleToGroup.html @@ -188,7 +188,7 @@ Additional Inherited Members diff --git a/docs/d1/d70/vp8__parser_8cc_source.html b/docs/d1/d70/vp8__parser_8cc_source.html index 0ca5e301e2..ab7e4fb42e 100644 --- a/docs/d1/d70/vp8__parser_8cc_source.html +++ b/docs/d1/d70/vp8__parser_8cc_source.html @@ -293,7 +293,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d72/language__utils_8cc_source.html b/docs/d1/d72/language__utils_8cc_source.html index 958a07fc12..9cb006a910 100644 --- a/docs/d1/d72/language__utils_8cc_source.html +++ b/docs/d1/d72/language__utils_8cc_source.html @@ -206,7 +206,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d72/structedash__packager_1_1media_1_1mp4_1_1AudioSampleEntry-members.html b/docs/d1/d72/structedash__packager_1_1media_1_1mp4_1_1AudioSampleEntry-members.html index 37828e1462..1df2dbbe65 100644 --- a/docs/d1/d72/structedash__packager_1_1media_1_1mp4_1_1AudioSampleEntry-members.html +++ b/docs/d1/d72/structedash__packager_1_1media_1_1mp4_1_1AudioSampleEntry-members.html @@ -119,7 +119,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d72/structedash__packager_1_1media_1_1mp4_1_1PixelAspectRatio-members.html b/docs/d1/d72/structedash__packager_1_1media_1_1mp4_1_1PixelAspectRatio-members.html index e1605ab5cb..df1c6e57d1 100644 --- a/docs/d1/d72/structedash__packager_1_1media_1_1mp4_1_1PixelAspectRatio-members.html +++ b/docs/d1/d72/structedash__packager_1_1media_1_1mp4_1_1PixelAspectRatio-members.html @@ -110,7 +110,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d74/mp2t__media__parser_8cc_source.html b/docs/d1/d74/mp2t__media__parser_8cc_source.html index e553c12c2b..2e949d9bc0 100644 --- a/docs/d1/d74/mp2t__media__parser_8cc_source.html +++ b/docs/d1/d74/mp2t__media__parser_8cc_source.html @@ -528,7 +528,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d76/structedash__packager_1_1media_1_1mp4_1_1SampleToChunk-members.html b/docs/d1/d76/structedash__packager_1_1media_1_1mp4_1_1SampleToChunk-members.html index 5ae567e76c..5e0cf9d950 100644 --- a/docs/d1/d76/structedash__packager_1_1media_1_1mp4_1_1SampleToChunk-members.html +++ b/docs/d1/d76/structedash__packager_1_1media_1_1mp4_1_1SampleToChunk-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d78/classedash__packager_1_1media_1_1mp4_1_1MP4Muxer.html b/docs/d1/d78/classedash__packager_1_1media_1_1mp4_1_1MP4Muxer.html index ed884f88e2..56a6ea69e2 100644 --- a/docs/d1/d78/classedash__packager_1_1media_1_1mp4_1_1MP4Muxer.html +++ b/docs/d1/d78/classedash__packager_1_1media_1_1mp4_1_1MP4Muxer.html @@ -176,7 +176,7 @@ base::Clock * clock () diff --git a/docs/d1/d7d/webm__video__client_8cc_source.html b/docs/d1/d7d/webm__video__client_8cc_source.html index d822b0ab58..25dfe479d3 100644 --- a/docs/d1/d7d/webm__video__client_8cc_source.html +++ b/docs/d1/d7d/webm__video__client_8cc_source.html @@ -266,7 +266,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d7f/classedash__packager_1_1media_1_1BitReader-members.html b/docs/d1/d7f/classedash__packager_1_1media_1_1BitReader-members.html index 8c29fb14db..d574a484dc 100644 --- a/docs/d1/d7f/classedash__packager_1_1media_1_1BitReader-members.html +++ b/docs/d1/d7f/classedash__packager_1_1media_1_1BitReader-members.html @@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d81/structedash__packager_1_1media_1_1mp4_1_1SegmentIndex.html b/docs/d1/d81/structedash__packager_1_1media_1_1mp4_1_1SegmentIndex.html index 79cd8bdfb0..e7ccbc0908 100644 --- a/docs/d1/d81/structedash__packager_1_1media_1_1mp4_1_1SegmentIndex.html +++ b/docs/d1/d81/structedash__packager_1_1media_1_1mp4_1_1SegmentIndex.html @@ -194,7 +194,7 @@ Additional Inherited Members diff --git a/docs/d1/d82/adts__constants_8h_source.html b/docs/d1/d82/adts__constants_8h_source.html index 55e6982ec0..fc268950a4 100644 --- a/docs/d1/d82/adts__constants_8h_source.html +++ b/docs/d1/d82/adts__constants_8h_source.html @@ -117,7 +117,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d86/classedash__packager_1_1media_1_1RsaPublicKey.html b/docs/d1/d86/classedash__packager_1_1media_1_1RsaPublicKey.html index 7251994dfa..31c93f8da5 100644 --- a/docs/d1/d86/classedash__packager_1_1media_1_1RsaPublicKey.html +++ b/docs/d1/d86/classedash__packager_1_1media_1_1RsaPublicKey.html @@ -218,7 +218,7 @@ Static Public Member Functions diff --git a/docs/d1/d86/structedash__packager_1_1media_1_1mp4_1_1SubtitleMediaHeader.html b/docs/d1/d86/structedash__packager_1_1media_1_1mp4_1_1SubtitleMediaHeader.html index 564be7ed9b..1c5bf7feae 100644 --- a/docs/d1/d86/structedash__packager_1_1media_1_1mp4_1_1SubtitleMediaHeader.html +++ b/docs/d1/d86/structedash__packager_1_1media_1_1mp4_1_1SubtitleMediaHeader.html @@ -175,7 +175,7 @@ uint32_t flags diff --git a/docs/d1/d8e/structedash__packager_1_1media_1_1mp4_1_1CompositionTimeToSample-members.html b/docs/d1/d8e/structedash__packager_1_1media_1_1mp4_1_1CompositionTimeToSample-members.html index 827b5f3d85..0595bebbee 100644 --- a/docs/d1/d8e/structedash__packager_1_1media_1_1mp4_1_1CompositionTimeToSample-members.html +++ b/docs/d1/d8e/structedash__packager_1_1media_1_1mp4_1_1CompositionTimeToSample-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d8e/webm__audio__client_8cc_source.html b/docs/d1/d8e/webm__audio__client_8cc_source.html index 7b941ff846..30f62d2582 100644 --- a/docs/d1/d8e/webm__audio__client_8cc_source.html +++ b/docs/d1/d8e/webm__audio__client_8cc_source.html @@ -211,7 +211,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/d92/classedash__packager_1_1media_1_1OffsetByteQueue.html b/docs/d1/d92/classedash__packager_1_1media_1_1OffsetByteQueue.html index 162a045fae..d35e415253 100644 --- a/docs/d1/d92/classedash__packager_1_1media_1_1OffsetByteQueue.html +++ b/docs/d1/d92/classedash__packager_1_1media_1_1OffsetByteQueue.html @@ -242,7 +242,7 @@ false if max_offset > diff --git a/docs/d1/d9d/tracks__builder_8h_source.html b/docs/d1/d9d/tracks__builder_8h_source.html index bde24b048e..5e0528208c 100644 --- a/docs/d1/d9d/tracks__builder_8h_source.html +++ b/docs/d1/d9d/tracks__builder_8h_source.html @@ -210,7 +210,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/dc3/classedash__packager_1_1media_1_1LocalFile-members.html b/docs/d1/dc3/classedash__packager_1_1media_1_1LocalFile-members.html index a101636628..c6721bdf74 100644 --- a/docs/d1/dc3/classedash__packager_1_1media_1_1LocalFile-members.html +++ b/docs/d1/dc3/classedash__packager_1_1media_1_1LocalFile-members.html @@ -117,7 +117,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/dcb/encrypting__fragmenter_8h_source.html b/docs/d1/dcb/encrypting__fragmenter_8h_source.html index 90b810d2f7..8383512c41 100644 --- a/docs/d1/dcb/encrypting__fragmenter_8h_source.html +++ b/docs/d1/dcb/encrypting__fragmenter_8h_source.html @@ -181,7 +181,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/dcd/structedash__packager_1_1media_1_1mp4_1_1FileType.html b/docs/d1/dcd/structedash__packager_1_1media_1_1mp4_1_1FileType.html index 29b237c355..012f7b409a 100644 --- a/docs/d1/dcd/structedash__packager_1_1media_1_1mp4_1_1FileType.html +++ b/docs/d1/dcd/structedash__packager_1_1media_1_1mp4_1_1FileType.html @@ -182,7 +182,7 @@ Additional Inherited Members diff --git a/docs/d1/dd0/structedash__packager_1_1media_1_1mp4_1_1SampleToGroup-members.html b/docs/d1/dd0/structedash__packager_1_1media_1_1mp4_1_1SampleToGroup-members.html index a30ee55a1a..c629d732f8 100644 --- a/docs/d1/dd0/structedash__packager_1_1media_1_1mp4_1_1SampleToGroup-members.html +++ b/docs/d1/dd0/structedash__packager_1_1media_1_1mp4_1_1SampleToGroup-members.html @@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/dd5/classedash__packager_1_1xml_1_1RepresentationBaseXmlNode.html b/docs/d1/dd5/classedash__packager_1_1xml_1_1RepresentationBaseXmlNode.html index 93fe1ba8cc..bd773cb0bd 100644 --- a/docs/d1/dd5/classedash__packager_1_1xml_1_1RepresentationBaseXmlNode.html +++ b/docs/d1/dd5/classedash__packager_1_1xml_1_1RepresentationBaseXmlNode.html @@ -156,7 +156,7 @@ Protected Member Functions diff --git a/docs/d1/ddc/classedash__packager_1_1media_1_1VP9Parser-members.html b/docs/d1/ddc/classedash__packager_1_1media_1_1VP9Parser-members.html index ec1640c140..0094b7c4fe 100644 --- a/docs/d1/ddc/classedash__packager_1_1media_1_1VP9Parser-members.html +++ b/docs/d1/ddc/classedash__packager_1_1media_1_1VP9Parser-members.html @@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/de2/composition__offset__iterator_8cc_source.html b/docs/d1/de2/composition__offset__iterator_8cc_source.html index f163e36111..e73ac6428e 100644 --- a/docs/d1/de2/composition__offset__iterator_8cc_source.html +++ b/docs/d1/de2/composition__offset__iterator_8cc_source.html @@ -159,7 +159,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/df0/aes__encryptor_8h_source.html b/docs/d1/df0/aes__encryptor_8h_source.html index 52cfbb0373..be3960bd06 100644 --- a/docs/d1/df0/aes__encryptor_8h_source.html +++ b/docs/d1/df0/aes__encryptor_8h_source.html @@ -305,7 +305,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d1/df2/structedash__packager_1_1media_1_1mp4_1_1CueSettingsBox.html b/docs/d1/df2/structedash__packager_1_1media_1_1mp4_1_1CueSettingsBox.html index 497a5289bb..7fb8d84174 100644 --- a/docs/d1/df2/structedash__packager_1_1media_1_1mp4_1_1CueSettingsBox.html +++ b/docs/d1/df2/structedash__packager_1_1media_1_1mp4_1_1CueSettingsBox.html @@ -173,7 +173,7 @@ Additional Inherited Members diff --git a/docs/d1/dfc/structedash__packager_1_1media_1_1wvm_1_1DemuxStreamIdMediaSample-members.html b/docs/d1/dfc/structedash__packager_1_1media_1_1wvm_1_1DemuxStreamIdMediaSample-members.html index 9645ce595b..604733ccc1 100644 --- a/docs/d1/dfc/structedash__packager_1_1media_1_1wvm_1_1DemuxStreamIdMediaSample-members.html +++ b/docs/d1/dfc/structedash__packager_1_1media_1_1wvm_1_1DemuxStreamIdMediaSample-members.html @@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/d02/timestamp_8h_source.html b/docs/d2/d02/timestamp_8h_source.html index c1f279fde3..dee4ac61de 100644 --- a/docs/d2/d02/timestamp_8h_source.html +++ b/docs/d2/d02/timestamp_8h_source.html @@ -114,7 +114,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/d06/structedash__packager_1_1media_1_1mp4_1_1Metadata.html b/docs/d2/d06/structedash__packager_1_1media_1_1mp4_1_1Metadata.html index 193c5ec317..58c92b2c76 100644 --- a/docs/d2/d06/structedash__packager_1_1media_1_1mp4_1_1Metadata.html +++ b/docs/d2/d06/structedash__packager_1_1media_1_1mp4_1_1Metadata.html @@ -185,7 +185,7 @@ Additional Inherited Members diff --git a/docs/d2/d0f/structedash__packager_1_1media_1_1mp4_1_1MediaInformation-members.html b/docs/d2/d0f/structedash__packager_1_1media_1_1mp4_1_1MediaInformation-members.html index 10811e0eaa..2fd722ca01 100644 --- a/docs/d2/d0f/structedash__packager_1_1media_1_1mp4_1_1MediaInformation-members.html +++ b/docs/d2/d0f/structedash__packager_1_1media_1_1mp4_1_1MediaInformation-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/d17/ts__section__pat_8cc_source.html b/docs/d2/d17/ts__section__pat_8cc_source.html index 9340167da4..3aeede077a 100644 --- a/docs/d2/d17/ts__section__pat_8cc_source.html +++ b/docs/d2/d17/ts__section__pat_8cc_source.html @@ -214,7 +214,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/d23/threaded__io__file_8cc_source.html b/docs/d2/d23/threaded__io__file_8cc_source.html index 766ee9b948..92ffdb4f9c 100644 --- a/docs/d2/d23/threaded__io__file_8cc_source.html +++ b/docs/d2/d23/threaded__io__file_8cc_source.html @@ -315,7 +315,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/d24/packager__util_8h_source.html b/docs/d2/d24/packager__util_8h_source.html index c1fc240975..03577be2c9 100644 --- a/docs/d2/d24/packager__util_8h_source.html +++ b/docs/d2/d24/packager__util_8h_source.html @@ -142,7 +142,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/d26/structedash__packager_1_1media_1_1mp4_1_1SampleGroupDescription.html b/docs/d2/d26/structedash__packager_1_1media_1_1mp4_1_1SampleGroupDescription.html index 572ffbb04a..ea0dd7f810 100644 --- a/docs/d2/d26/structedash__packager_1_1media_1_1mp4_1_1SampleGroupDescription.html +++ b/docs/d2/d26/structedash__packager_1_1media_1_1mp4_1_1SampleGroupDescription.html @@ -186,7 +186,7 @@ Additional Inherited Members diff --git a/docs/d2/d28/classedash__packager_1_1media_1_1SegmentTestBase.html b/docs/d2/d28/classedash__packager_1_1media_1_1SegmentTestBase.html index 453f596f0b..355817ace9 100644 --- a/docs/d2/d28/classedash__packager_1_1media_1_1SegmentTestBase.html +++ b/docs/d2/d28/classedash__packager_1_1media_1_1SegmentTestBase.html @@ -180,7 +180,7 @@ bool single_segment_ diff --git a/docs/d2/d2d/structedash__packager_1_1media_1_1mp4_1_1MediaHeader-members.html b/docs/d2/d2d/structedash__packager_1_1media_1_1mp4_1_1MediaHeader-members.html index 4f698a0b4e..a1bd172879 100644 --- a/docs/d2/d2d/structedash__packager_1_1media_1_1mp4_1_1MediaHeader-members.html +++ b/docs/d2/d2d/structedash__packager_1_1media_1_1mp4_1_1MediaHeader-members.html @@ -117,7 +117,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/d30/tracks__builder_8cc_source.html b/docs/d2/d30/tracks__builder_8cc_source.html index 5ff6b9c487..e38c1b6893 100644 --- a/docs/d2/d30/tracks__builder_8cc_source.html +++ b/docs/d2/d30/tracks__builder_8cc_source.html @@ -487,7 +487,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/d48/classedash__packager_1_1media_1_1mp2t_1_1AdtsHeader-members.html b/docs/d2/d48/classedash__packager_1_1media_1_1mp2t_1_1AdtsHeader-members.html index 0d13f8a118..b0185a68d8 100644 --- a/docs/d2/d48/classedash__packager_1_1media_1_1mp2t_1_1AdtsHeader-members.html +++ b/docs/d2/d48/classedash__packager_1_1media_1_1mp2t_1_1AdtsHeader-members.html @@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/d4b/structedash__packager_1_1media_1_1FileCloser-members.html b/docs/d2/d4b/structedash__packager_1_1media_1_1FileCloser-members.html index fd1c3b806f..5a8d01692e 100644 --- a/docs/d2/d4b/structedash__packager_1_1media_1_1FileCloser-members.html +++ b/docs/d2/d4b/structedash__packager_1_1media_1_1FileCloser-members.html @@ -97,7 +97,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/d4d/file_8h_source.html b/docs/d2/d4d/file_8h_source.html index d831e0b044..06189acfed 100644 --- a/docs/d2/d4d/file_8h_source.html +++ b/docs/d2/d4d/file_8h_source.html @@ -190,7 +190,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/d50/structedash__packager_1_1media_1_1H264DecRefPicMarking.html b/docs/d2/d50/structedash__packager_1_1media_1_1H264DecRefPicMarking.html index 16f14665db..05ce3e07ef 100644 --- a/docs/d2/d50/structedash__packager_1_1media_1_1H264DecRefPicMarking.html +++ b/docs/d2/d50/structedash__packager_1_1media_1_1H264DecRefPicMarking.html @@ -121,7 +121,7 @@ int max_long_term_frame_id diff --git a/docs/d2/d51/classedash__packager_1_1media_1_1WebVttMediaParser.html b/docs/d2/d51/classedash__packager_1_1media_1_1WebVttMediaParser.html index 436310a78d..f2ae81e91e 100644 --- a/docs/d2/d51/classedash__packager_1_1media_1_1WebVttMediaParser.html +++ b/docs/d2/d51/classedash__packager_1_1media_1_1WebVttMediaParser.html @@ -255,7 +255,7 @@ track_id, const scoped_refptr
diff --git a/docs/d2/d51/structedash__packager_1_1media_1_1mp4_1_1SampleAuxiliaryInformationSize.html b/docs/d2/d51/structedash__packager_1_1media_1_1mp4_1_1SampleAuxiliaryInformationSize.html index e9f8385914..8edd69dfdd 100644 --- a/docs/d2/d51/structedash__packager_1_1media_1_1mp4_1_1SampleAuxiliaryInformationSize.html +++ b/docs/d2/d51/structedash__packager_1_1media_1_1mp4_1_1SampleAuxiliaryInformationSize.html @@ -188,7 +188,7 @@ Additional Inherited Members diff --git a/docs/d2/d5b/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPmt.html b/docs/d2/d5b/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPmt.html index 2be5160d5e..fb6fbf4efa 100644 --- a/docs/d2/d5b/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPmt.html +++ b/docs/d2/d5b/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPmt.html @@ -155,7 +155,7 @@ void Reset () override diff --git a/docs/d2/d5d/structedash__packager_1_1media_1_1mp4_1_1VideoMediaHeader-members.html b/docs/d2/d5d/structedash__packager_1_1media_1_1mp4_1_1VideoMediaHeader-members.html index 90766c87f3..6c9b36e2e3 100644 --- a/docs/d2/d5d/structedash__packager_1_1media_1_1mp4_1_1VideoMediaHeader-members.html +++ b/docs/d2/d5d/structedash__packager_1_1media_1_1mp4_1_1VideoMediaHeader-members.html @@ -116,7 +116,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/d62/simple__mpd__notifier_8h_source.html b/docs/d2/d62/simple__mpd__notifier_8h_source.html index fa679873d5..513148c063 100644 --- a/docs/d2/d62/simple__mpd__notifier_8h_source.html +++ b/docs/d2/d62/simple__mpd__notifier_8h_source.html @@ -188,7 +188,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/d6f/classBandwidthEstimator.html b/docs/d2/d6f/classBandwidthEstimator.html index 1aca9fe16c..51a043b33a 100644 --- a/docs/d2/d6f/classBandwidthEstimator.html +++ b/docs/d2/d6f/classBandwidthEstimator.html @@ -151,7 +151,7 @@ static const int kUseAllBl diff --git a/docs/d2/d6f/structedash__packager_1_1media_1_1mp4_1_1SchemeInfo.html b/docs/d2/d6f/structedash__packager_1_1media_1_1mp4_1_1SchemeInfo.html index ff810bc15f..29f34b4ba4 100644 --- a/docs/d2/d6f/structedash__packager_1_1media_1_1mp4_1_1SchemeInfo.html +++ b/docs/d2/d6f/structedash__packager_1_1media_1_1mp4_1_1SchemeInfo.html @@ -173,7 +173,7 @@ Additional Inherited Members diff --git a/docs/d2/d76/classedash__packager_1_1media_1_1webm_1_1Encryptor.html b/docs/d2/d76/classedash__packager_1_1media_1_1webm_1_1Encryptor.html index 300be49b02..4107091807 100644 --- a/docs/d2/d76/classedash__packager_1_1media_1_1webm_1_1Encryptor.html +++ b/docs/d2/d76/classedash__packager_1_1media_1_1webm_1_1Encryptor.html @@ -203,7 +203,7 @@ Public Member Functions diff --git a/docs/d2/d7b/simple__mpd__notifier_8cc_source.html b/docs/d2/d7b/simple__mpd__notifier_8cc_source.html index da6d18f7a6..586b3b4d19 100644 --- a/docs/d2/d7b/simple__mpd__notifier_8cc_source.html +++ b/docs/d2/d7b/simple__mpd__notifier_8cc_source.html @@ -242,7 +242,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/d7e/aac__audio__specific__config_8h_source.html b/docs/d2/d7e/aac__audio__specific__config_8h_source.html index fb2b2a1aa3..b3a76abe7b 100644 --- a/docs/d2/d7e/aac__audio__specific__config_8h_source.html +++ b/docs/d2/d7e/aac__audio__specific__config_8h_source.html @@ -166,7 +166,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/d90/classedash__packager_1_1media_1_1Status.html b/docs/d2/d90/classedash__packager_1_1media_1_1Status.html index d31460c842..cccf25fef3 100644 --- a/docs/d2/d90/classedash__packager_1_1media_1_1Status.html +++ b/docs/d2/d90/classedash__packager_1_1media_1_1Status.html @@ -302,7 +302,7 @@ static const diff --git a/docs/d2/d92/box__reader_8h_source.html b/docs/d2/d92/box__reader_8h_source.html index 7f4cb020ed..36463d46d4 100644 --- a/docs/d2/d92/box__reader_8h_source.html +++ b/docs/d2/d92/box__reader_8h_source.html @@ -249,7 +249,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/d98/avc__decoder__configuration_8h_source.html b/docs/d2/d98/avc__decoder__configuration_8h_source.html index 27f13a669b..b85da07901 100644 --- a/docs/d2/d98/avc__decoder__configuration_8h_source.html +++ b/docs/d2/d98/avc__decoder__configuration_8h_source.html @@ -154,7 +154,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/da6/threaded__io__file_8h_source.html b/docs/d2/da6/threaded__io__file_8h_source.html index d82d7b088a..00b3905c8f 100644 --- a/docs/d2/da6/threaded__io__file_8h_source.html +++ b/docs/d2/da6/threaded__io__file_8h_source.html @@ -172,7 +172,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/da8/mp4_2segmenter_8cc_source.html b/docs/d2/da8/mp4_2segmenter_8cc_source.html index 88c3739a68..1503b71912 100644 --- a/docs/d2/da8/mp4_2segmenter_8cc_source.html +++ b/docs/d2/da8/mp4_2segmenter_8cc_source.html @@ -557,7 +557,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/dae/webm__muxer_8cc_source.html b/docs/d2/dae/webm__muxer_8cc_source.html index 6deefda759..2b7e502d09 100644 --- a/docs/d2/dae/webm__muxer_8cc_source.html +++ b/docs/d2/dae/webm__muxer_8cc_source.html @@ -215,7 +215,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/dc5/structedash__packager_1_1media_1_1mp4_1_1CueSettingsBox-members.html b/docs/d2/dc5/structedash__packager_1_1media_1_1mp4_1_1CueSettingsBox-members.html index 94d0e9c47e..feac380bc4 100644 --- a/docs/d2/dc5/structedash__packager_1_1media_1_1mp4_1_1CueSettingsBox-members.html +++ b/docs/d2/dc5/structedash__packager_1_1media_1_1mp4_1_1CueSettingsBox-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/dc6/structedash__packager_1_1media_1_1mp4_1_1IndependentSubstream-members.html b/docs/d2/dc6/structedash__packager_1_1media_1_1mp4_1_1IndependentSubstream-members.html index 1668bf1597..63f9609ff8 100644 --- a/docs/d2/dc6/structedash__packager_1_1media_1_1mp4_1_1IndependentSubstream-members.html +++ b/docs/d2/dc6/structedash__packager_1_1media_1_1mp4_1_1IndependentSubstream-members.html @@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/dd6/mkv__writer_8h_source.html b/docs/d2/dd6/mkv__writer_8h_source.html index 2bea5332ca..e1cabf2ab9 100644 --- a/docs/d2/dd6/mkv__writer_8h_source.html +++ b/docs/d2/dd6/mkv__writer_8h_source.html @@ -150,7 +150,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/dd9/structedash__packager_1_1media_1_1VideoStreamInfoParameters.html b/docs/d2/dd9/structedash__packager_1_1media_1_1VideoStreamInfoParameters.html index eb86259e69..420a007c4f 100644 --- a/docs/d2/dd9/structedash__packager_1_1media_1_1VideoStreamInfoParameters.html +++ b/docs/d2/dd9/structedash__packager_1_1media_1_1VideoStreamInfoParameters.html @@ -146,7 +146,7 @@ bool is_encrypted diff --git a/docs/d2/dda/vp__codec__configuration_8cc_source.html b/docs/d2/dda/vp__codec__configuration_8cc_source.html index c5509ec756..9d9ab33782 100644 --- a/docs/d2/dda/vp__codec__configuration_8cc_source.html +++ b/docs/d2/dda/vp__codec__configuration_8cc_source.html @@ -217,7 +217,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/de6/packager__main_8cc_source.html b/docs/d2/de6/packager__main_8cc_source.html index 2bbffb9dbc..350aa557c7 100644 --- a/docs/d2/de6/packager__main_8cc_source.html +++ b/docs/d2/de6/packager__main_8cc_source.html @@ -567,7 +567,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/deb/es__parser_8h_source.html b/docs/d2/deb/es__parser_8h_source.html index a9e1542ccd..1981e7adf9 100644 --- a/docs/d2/deb/es__parser_8h_source.html +++ b/docs/d2/deb/es__parser_8h_source.html @@ -145,7 +145,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/df3/structedash__packager_1_1media_1_1mp4_1_1Edit-members.html b/docs/d2/df3/structedash__packager_1_1media_1_1mp4_1_1Edit-members.html index 8ef8700df3..2b4e199e7a 100644 --- a/docs/d2/df3/structedash__packager_1_1media_1_1mp4_1_1Edit-members.html +++ b/docs/d2/df3/structedash__packager_1_1media_1_1mp4_1_1Edit-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/df8/structedash__packager_1_1media_1_1mp4_1_1CueSourceIDBox.html b/docs/d2/df8/structedash__packager_1_1media_1_1mp4_1_1CueSourceIDBox.html index 54cd817f70..1de14d2e25 100644 --- a/docs/d2/df8/structedash__packager_1_1media_1_1mp4_1_1CueSourceIDBox.html +++ b/docs/d2/df8/structedash__packager_1_1media_1_1mp4_1_1CueSourceIDBox.html @@ -173,7 +173,7 @@ Additional Inherited Members diff --git a/docs/d2/dfa/classedash__packager_1_1RepresentationStateChangeListener.html b/docs/d2/dfa/classedash__packager_1_1RepresentationStateChangeListener.html index 039873d85b..e4cc91d707 100644 --- a/docs/d2/dfa/classedash__packager_1_1RepresentationStateChangeListener.html +++ b/docs/d2/dfa/classedash__packager_1_1RepresentationStateChangeListener.html @@ -195,7 +195,7 @@ Public Member Functions diff --git a/docs/d2/dfd/adts__header_8h_source.html b/docs/d2/dfd/adts__header_8h_source.html index 8b4b6de7e0..a635fad8bf 100644 --- a/docs/d2/dfd/adts__header_8h_source.html +++ b/docs/d2/dfd/adts__header_8h_source.html @@ -150,7 +150,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d2/dfd/classedash__packager_1_1media_1_1MediaStream.html b/docs/d2/dfd/classedash__packager_1_1media_1_1MediaStream.html index b76c886dbe..6dc0cc03e2 100644 --- a/docs/d2/dfd/classedash__packager_1_1media_1_1MediaStream.html +++ b/docs/d2/dfd/classedash__packager_1_1media_1_1MediaStream.html @@ -225,7 +225,7 @@ const scoped_refptr< diff --git a/docs/d3/d00/structedash__packager_1_1media_1_1VPxFrameInfo-members.html b/docs/d3/d00/structedash__packager_1_1media_1_1VPxFrameInfo-members.html index 2a45c1a4e1..56f7fb4d7d 100644 --- a/docs/d3/d00/structedash__packager_1_1media_1_1VPxFrameInfo-members.html +++ b/docs/d3/d00/structedash__packager_1_1media_1_1VPxFrameInfo-members.html @@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/d04/classedash__packager_1_1media_1_1WebMAudioClient-members.html b/docs/d3/d04/classedash__packager_1_1media_1_1WebMAudioClient-members.html index 194ddd9653..acbf501fb0 100644 --- a/docs/d3/d04/classedash__packager_1_1media_1_1WebMAudioClient-members.html +++ b/docs/d3/d04/classedash__packager_1_1media_1_1WebMAudioClient-members.html @@ -107,7 +107,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/d0e/classedash__packager_1_1media_1_1MpdNotifyMuxerListener.html b/docs/d3/d0e/classedash__packager_1_1media_1_1MpdNotifyMuxerListener.html index 092c4f38e3..7f9ef1d56a 100644 --- a/docs/d3/d0e/classedash__packager_1_1media_1_1MpdNotifyMuxerListener.html +++ b/docs/d3/d0e/classedash__packager_1_1media_1_1MpdNotifyMuxerListener.html @@ -234,7 +234,7 @@ Additional Inherited Members diff --git a/docs/d3/d15/udp__file__win_8cc_source.html b/docs/d3/d15/udp__file__win_8cc_source.html index 528e382391..2a0223851f 100644 --- a/docs/d3/d15/udp__file__win_8cc_source.html +++ b/docs/d3/d15/udp__file__win_8cc_source.html @@ -160,7 +160,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/d19/io__cache_8h_source.html b/docs/d3/d19/io__cache_8h_source.html index 42de60b9ed..e09a426631 100644 --- a/docs/d3/d19/io__cache_8h_source.html +++ b/docs/d3/d19/io__cache_8h_source.html @@ -162,7 +162,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/d1c/structedash__packager_1_1media_1_1mp4_1_1VTTEmptyCueBox.html b/docs/d3/d1c/structedash__packager_1_1media_1_1mp4_1_1VTTEmptyCueBox.html index 5bd23f14fd..dfa940528a 100644 --- a/docs/d3/d1c/structedash__packager_1_1media_1_1mp4_1_1VTTEmptyCueBox.html +++ b/docs/d3/d1c/structedash__packager_1_1media_1_1mp4_1_1VTTEmptyCueBox.html @@ -166,7 +166,7 @@ Additional Inherited Members diff --git a/docs/d3/d2c/structedash__packager_1_1media_1_1mp4_1_1TrackExtends.html b/docs/d3/d2c/structedash__packager_1_1media_1_1mp4_1_1TrackExtends.html index 0f0c7f64b6..6439066d77 100644 --- a/docs/d3/d2c/structedash__packager_1_1media_1_1mp4_1_1TrackExtends.html +++ b/docs/d3/d2c/structedash__packager_1_1media_1_1mp4_1_1TrackExtends.html @@ -194,7 +194,7 @@ Additional Inherited Members diff --git a/docs/d3/d2f/structedash__packager_1_1media_1_1mp4_1_1TrackEncryption-members.html b/docs/d3/d2f/structedash__packager_1_1media_1_1mp4_1_1TrackEncryption-members.html index ce4176202d..3be0f15343 100644 --- a/docs/d3/d2f/structedash__packager_1_1media_1_1mp4_1_1TrackEncryption-members.html +++ b/docs/d3/d2f/structedash__packager_1_1media_1_1mp4_1_1TrackEncryption-members.html @@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/d3e/classedash__packager_1_1media_1_1HttpKeyFetcher.html b/docs/d3/d3e/classedash__packager_1_1media_1_1HttpKeyFetcher.html index 1e8d41728f..3233cbf520 100644 --- a/docs/d3/d3e/classedash__packager_1_1media_1_1HttpKeyFetcher.html +++ b/docs/d3/d3e/classedash__packager_1_1media_1_1HttpKeyFetcher.html @@ -311,7 +311,7 @@ KeyFetcher implementation overrides. diff --git a/docs/d3/d43/structedash__packager_1_1media_1_1mp4_1_1EC3Specific.html b/docs/d3/d43/structedash__packager_1_1media_1_1mp4_1_1EC3Specific.html index 3369a621d0..bfc30410f8 100644 --- a/docs/d3/d43/structedash__packager_1_1media_1_1mp4_1_1EC3Specific.html +++ b/docs/d3/d43/structedash__packager_1_1media_1_1mp4_1_1EC3Specific.html @@ -179,7 +179,7 @@ Additional Inherited Members diff --git a/docs/d3/d48/structedash__packager_1_1media_1_1mp4_1_1EditList-members.html b/docs/d3/d48/structedash__packager_1_1media_1_1mp4_1_1EditList-members.html index 0b3a680345..f0d92387b6 100644 --- a/docs/d3/d48/structedash__packager_1_1media_1_1mp4_1_1EditList-members.html +++ b/docs/d3/d48/structedash__packager_1_1media_1_1mp4_1_1EditList-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/d52/classedash__packager_1_1media_1_1mp4_1_1ChunkInfoIterator-members.html b/docs/d3/d52/classedash__packager_1_1media_1_1mp4_1_1ChunkInfoIterator-members.html index b5cfc05c0f..03ee2d0934 100644 --- a/docs/d3/d52/classedash__packager_1_1media_1_1mp4_1_1ChunkInfoIterator-members.html +++ b/docs/d3/d52/classedash__packager_1_1media_1_1mp4_1_1ChunkInfoIterator-members.html @@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/d56/decrypt__config_8cc_source.html b/docs/d3/d56/decrypt__config_8cc_source.html index 33b7b9818a..3f8d9e7f02 100644 --- a/docs/d3/d56/decrypt__config_8cc_source.html +++ b/docs/d3/d56/decrypt__config_8cc_source.html @@ -98,27 +98,22 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
9 namespace edash_packager {
10 namespace media {
11 
-
12 DecryptConfig::DecryptConfig(const std::vector<uint8_t>& key_id,
+
12 DecryptConfig::DecryptConfig(const std::vector<uint8_t>& key_id,
13  const std::vector<uint8_t>& iv,
-
14  const int data_offset,
-
15  const std::vector<SubsampleEntry>& subsamples)
-
16  : key_id_(key_id),
-
17  iv_(iv),
-
18  data_offset_(data_offset),
-
19  subsamples_(subsamples) {
-
20  CHECK_GT(key_id.size(), 0u);
-
21  CHECK_GE(data_offset, 0);
-
22 }
-
23 
-
24 DecryptConfig::~DecryptConfig() {}
-
25 
-
26 } // namespace media
-
27 } // namespace edash_packager
-
DecryptConfig(const std::vector< uint8_t > &key_id, const std::vector< uint8_t > &iv, const int data_offset, const std::vector< SubsampleEntry > &subsamples)
+
14  const std::vector<SubsampleEntry>& subsamples)
+
15  : key_id_(key_id), iv_(iv), subsamples_(subsamples) {
+
16  CHECK_GT(key_id.size(), 0u);
+
17 }
+
18 
+
19 DecryptConfig::~DecryptConfig() {}
+
20 
+
21 } // namespace media
+
22 } // namespace edash_packager
+
DecryptConfig(const std::vector< uint8_t > &key_id, const std::vector< uint8_t > &iv, const std::vector< SubsampleEntry > &subsamples)
diff --git a/docs/d3/d59/structedash__packager_1_1media_1_1mp4_1_1PrivFrame.html b/docs/d3/d59/structedash__packager_1_1media_1_1mp4_1_1PrivFrame.html index a8a9e0f849..32a21a5782 100644 --- a/docs/d3/d59/structedash__packager_1_1media_1_1mp4_1_1PrivFrame.html +++ b/docs/d3/d59/structedash__packager_1_1media_1_1mp4_1_1PrivFrame.html @@ -129,7 +129,7 @@ std::string value diff --git a/docs/d3/d62/rcheck_8h_source.html b/docs/d3/d62/rcheck_8h_source.html index 552b12d64c..116f3e69e2 100644 --- a/docs/d3/d62/rcheck_8h_source.html +++ b/docs/d3/d62/rcheck_8h_source.html @@ -108,7 +108,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/d67/structedash__packager_1_1media_1_1mp4_1_1PrivFrame-members.html b/docs/d3/d67/structedash__packager_1_1media_1_1mp4_1_1PrivFrame-members.html index c34210a038..80b9d58bda 100644 --- a/docs/d3/d67/structedash__packager_1_1media_1_1mp4_1_1PrivFrame-members.html +++ b/docs/d3/d67/structedash__packager_1_1media_1_1mp4_1_1PrivFrame-members.html @@ -100,7 +100,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/d69/classedash__packager_1_1media_1_1ClusterBuilder.html b/docs/d3/d69/classedash__packager_1_1media_1_1ClusterBuilder.html index f3abfe34ea..32104acb5b 100644 --- a/docs/d3/d69/classedash__packager_1_1media_1_1ClusterBuilder.html +++ b/docs/d3/d69/classedash__packager_1_1media_1_1ClusterBuilder.html @@ -125,7 +125,7 @@ scoped_ptr< diff --git a/docs/d3/d6b/classedash__packager_1_1media_1_1IoCache.html b/docs/d3/d6b/classedash__packager_1_1media_1_1IoCache.html index 9f50b9167c..83ba789573 100644 --- a/docs/d3/d6b/classedash__packager_1_1media_1_1IoCache.html +++ b/docs/d3/d6b/classedash__packager_1_1media_1_1IoCache.html @@ -297,7 +297,7 @@ void  diff --git a/docs/d3/d74/structedash__packager_1_1media_1_1mp4_1_1SampleDescription.html b/docs/d3/d74/structedash__packager_1_1media_1_1mp4_1_1SampleDescription.html index 80ea89b44b..7ec1825bcc 100644 --- a/docs/d3/d74/structedash__packager_1_1media_1_1mp4_1_1SampleDescription.html +++ b/docs/d3/d74/structedash__packager_1_1media_1_1mp4_1_1SampleDescription.html @@ -191,7 +191,7 @@ Additional Inherited Members diff --git a/docs/d3/d76/muxer__flags_8h_source.html b/docs/d3/d76/muxer__flags_8h_source.html index 52cbf1f5eb..ada99679a6 100644 --- a/docs/d3/d76/muxer__flags_8h_source.html +++ b/docs/d3/d76/muxer__flags_8h_source.html @@ -114,7 +114,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/d77/structedash__packager_1_1media_1_1mp4_1_1SampleTable.html b/docs/d3/d77/structedash__packager_1_1media_1_1mp4_1_1SampleTable.html index 6fab1bcf82..fa8bfcff3c 100644 --- a/docs/d3/d77/structedash__packager_1_1media_1_1mp4_1_1SampleTable.html +++ b/docs/d3/d77/structedash__packager_1_1media_1_1mp4_1_1SampleTable.html @@ -191,7 +191,7 @@ Additional Inherited Members diff --git a/docs/d3/d80/muxer__util_8h_source.html b/docs/d3/d80/muxer__util_8h_source.html index b047a70312..e761d03285 100644 --- a/docs/d3/d80/muxer__util_8h_source.html +++ b/docs/d3/d80/muxer__util_8h_source.html @@ -120,7 +120,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/d81/classedash__packager_1_1media_1_1MemoryFile.html b/docs/d3/d81/classedash__packager_1_1media_1_1MemoryFile.html index ce71804b5b..fb9be54739 100644 --- a/docs/d3/d81/classedash__packager_1_1media_1_1MemoryFile.html +++ b/docs/d3/d81/classedash__packager_1_1media_1_1MemoryFile.html @@ -485,7 +485,7 @@ bool  diff --git a/docs/d3/d8a/classedash__packager_1_1RepresentationStateChangeListener-members.html b/docs/d3/d8a/classedash__packager_1_1RepresentationStateChangeListener-members.html index 606ba277ed..640ee435f0 100644 --- a/docs/d3/d8a/classedash__packager_1_1RepresentationStateChangeListener-members.html +++ b/docs/d3/d8a/classedash__packager_1_1RepresentationStateChangeListener-members.html @@ -100,7 +100,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/d8d/webm__audio__client_8h_source.html b/docs/d3/d8d/webm__audio__client_8h_source.html index 5983f1dc1c..e5b5bc1d6b 100644 --- a/docs/d3/d8d/webm__audio__client_8h_source.html +++ b/docs/d3/d8d/webm__audio__client_8h_source.html @@ -142,7 +142,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/d8e/classedash__packager_1_1media_1_1webm_1_1TwoPassSingleSegmentSegmenter-members.html b/docs/d3/d8e/classedash__packager_1_1media_1_1webm_1_1TwoPassSingleSegmentSegmenter-members.html index 235c390d73..57fb00c207 100644 --- a/docs/d3/d8e/classedash__packager_1_1media_1_1webm_1_1TwoPassSingleSegmentSegmenter-members.html +++ b/docs/d3/d8e/classedash__packager_1_1media_1_1webm_1_1TwoPassSingleSegmentSegmenter-members.html @@ -129,7 +129,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/d9b/structedash__packager_1_1media_1_1VideoStreamInfoParameters-members.html b/docs/d3/d9b/structedash__packager_1_1media_1_1VideoStreamInfoParameters-members.html index 5428ba7639..adcb964ecf 100644 --- a/docs/d3/d9b/structedash__packager_1_1media_1_1VideoStreamInfoParameters-members.html +++ b/docs/d3/d9b/structedash__packager_1_1media_1_1VideoStreamInfoParameters-members.html @@ -111,7 +111,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/d9f/classedash__packager_1_1media_1_1mp4_1_1ESDescriptor-members.html b/docs/d3/d9f/classedash__packager_1_1media_1_1mp4_1_1ESDescriptor-members.html index bfb34c72a3..751f8c0bd4 100644 --- a/docs/d3/d9f/classedash__packager_1_1media_1_1mp4_1_1ESDescriptor-members.html +++ b/docs/d3/d9f/classedash__packager_1_1media_1_1mp4_1_1ESDescriptor-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/db6/webm__parser_8cc_source.html b/docs/d3/db6/webm__parser_8cc_source.html index 2ded8a04ae..98172cba4a 100644 --- a/docs/d3/db6/webm__parser_8cc_source.html +++ b/docs/d3/db6/webm__parser_8cc_source.html @@ -1068,7 +1068,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/dbc/seek__head_8cc_source.html b/docs/d3/dbc/seek__head_8cc_source.html index e90bed5012..be468eef56 100644 --- a/docs/d3/dbc/seek__head_8cc_source.html +++ b/docs/d3/dbc/seek__head_8cc_source.html @@ -215,7 +215,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/dbc/structedash__packager_1_1media_1_1H264WeightingFactors.html b/docs/d3/dbc/structedash__packager_1_1media_1_1H264WeightingFactors.html index bf5677f333..f190c97a9c 100644 --- a/docs/d3/dbc/structedash__packager_1_1media_1_1H264WeightingFactors.html +++ b/docs/d3/dbc/structedash__packager_1_1media_1_1H264WeightingFactors.html @@ -124,7 +124,7 @@ int chroma_offset [32] diff --git a/docs/d3/dbd/structedash__packager_1_1media_1_1mp4_1_1HandlerReference.html b/docs/d3/dbd/structedash__packager_1_1media_1_1mp4_1_1HandlerReference.html index 0f1099646b..e1235851ca 100644 --- a/docs/d3/dbd/structedash__packager_1_1media_1_1mp4_1_1HandlerReference.html +++ b/docs/d3/dbd/structedash__packager_1_1media_1_1mp4_1_1HandlerReference.html @@ -182,7 +182,7 @@ Additional Inherited Members diff --git a/docs/d3/dbe/classedash__packager_1_1media_1_1WebMMediaParser-members.html b/docs/d3/dbe/classedash__packager_1_1media_1_1WebMMediaParser-members.html index de1ee31b2f..d7932c2b3b 100644 --- a/docs/d3/dbe/classedash__packager_1_1media_1_1WebMMediaParser-members.html +++ b/docs/d3/dbe/classedash__packager_1_1media_1_1WebMMediaParser-members.html @@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/dbe/demuxer_8cc_source.html b/docs/d3/dbe/demuxer_8cc_source.html index 8314ffbcd6..7b8fe97797 100644 --- a/docs/d3/dbe/demuxer_8cc_source.html +++ b/docs/d3/dbe/demuxer_8cc_source.html @@ -290,7 +290,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
201 
202 } // namespace media
203 } // namespace edash_packager
- + @@ -311,7 +311,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/dc0/structedash__packager_1_1media_1_1mp4_1_1SampleAuxiliaryInformationOffset-members.html b/docs/d3/dc0/structedash__packager_1_1media_1_1mp4_1_1SampleAuxiliaryInformationOffset-members.html index 726ed5304b..26c5bea974 100644 --- a/docs/d3/dc0/structedash__packager_1_1media_1_1mp4_1_1SampleAuxiliaryInformationOffset-members.html +++ b/docs/d3/dc0/structedash__packager_1_1media_1_1mp4_1_1SampleAuxiliaryInformationOffset-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/dcc/classedash__packager_1_1media_1_1ProgressListener-members.html b/docs/d3/dcc/classedash__packager_1_1media_1_1ProgressListener-members.html index 08aeaec940..9bd49faf79 100644 --- a/docs/d3/dcc/classedash__packager_1_1media_1_1ProgressListener-members.html +++ b/docs/d3/dcc/classedash__packager_1_1media_1_1ProgressListener-members.html @@ -99,7 +99,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/dd0/classedash__packager_1_1media_1_1mp4_1_1BoxReader-members.html b/docs/d3/dd0/classedash__packager_1_1media_1_1mp4_1_1BoxReader-members.html index 66c11197dc..9681e21c44 100644 --- a/docs/d3/dd0/classedash__packager_1_1media_1_1mp4_1_1BoxReader-members.html +++ b/docs/d3/dd0/classedash__packager_1_1media_1_1mp4_1_1BoxReader-members.html @@ -128,7 +128,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/de1/structedash__packager_1_1media_1_1mp4_1_1Track.html b/docs/d3/de1/structedash__packager_1_1media_1_1mp4_1_1Track.html index 88ffbcfd90..7515014721 100644 --- a/docs/d3/de1/structedash__packager_1_1media_1_1mp4_1_1Track.html +++ b/docs/d3/de1/structedash__packager_1_1media_1_1mp4_1_1Track.html @@ -182,7 +182,7 @@ Additional Inherited Members diff --git a/docs/d3/de4/seek__head_8h_source.html b/docs/d3/de4/seek__head_8h_source.html index 4916b4b067..090a699b48 100644 --- a/docs/d3/de4/seek__head_8h_source.html +++ b/docs/d3/de4/seek__head_8h_source.html @@ -140,7 +140,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/de7/structedash__packager_1_1media_1_1OnMediaEndParameters.html b/docs/d3/de7/structedash__packager_1_1media_1_1OnMediaEndParameters.html index c7b420cbc6..d269a85a3a 100644 --- a/docs/d3/de7/structedash__packager_1_1media_1_1OnMediaEndParameters.html +++ b/docs/d3/de7/structedash__packager_1_1media_1_1OnMediaEndParameters.html @@ -130,7 +130,7 @@ uint64_t file_size diff --git a/docs/d3/df1/box__reader_8cc_source.html b/docs/d3/df1/box__reader_8cc_source.html index a45acfcb12..56b0d1d92f 100644 --- a/docs/d3/df1/box__reader_8cc_source.html +++ b/docs/d3/df1/box__reader_8cc_source.html @@ -296,7 +296,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d3/dfa/classedash__packager_1_1MpdBuilder.html b/docs/d3/dfa/classedash__packager_1_1MpdBuilder.html index 5344f232cb..1a6970116b 100644 --- a/docs/d3/dfa/classedash__packager_1_1MpdBuilder.html +++ b/docs/d3/dfa/classedash__packager_1_1MpdBuilder.html @@ -385,7 +385,7 @@ class DynamicMpdBuilderTes diff --git a/docs/d3/dfa/structedash__packager_1_1media_1_1H264SliceHeader-members.html b/docs/d3/dfa/structedash__packager_1_1media_1_1H264SliceHeader-members.html index 70b339a46a..97c6f27d6f 100644 --- a/docs/d3/dfa/structedash__packager_1_1media_1_1H264SliceHeader-members.html +++ b/docs/d3/dfa/structedash__packager_1_1media_1_1H264SliceHeader-members.html @@ -154,7 +154,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/d00/mp4_2multi__segment__segmenter_8cc_source.html b/docs/d4/d00/mp4_2multi__segment__segmenter_8cc_source.html index c6ea528764..d6f3c7d177 100644 --- a/docs/d4/d00/mp4_2multi__segment__segmenter_8cc_source.html +++ b/docs/d4/d00/mp4_2multi__segment__segmenter_8cc_source.html @@ -303,7 +303,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/d0b/structedash__packager_1_1media_1_1mp4_1_1Media-members.html b/docs/d4/d0b/structedash__packager_1_1media_1_1mp4_1_1Media-members.html index a0f12976df..0611d4c0b5 100644 --- a/docs/d4/d0b/structedash__packager_1_1media_1_1mp4_1_1Media-members.html +++ b/docs/d4/d0b/structedash__packager_1_1media_1_1mp4_1_1Media-members.html @@ -111,7 +111,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/d1d/classedash__packager_1_1media_1_1Muxer.html b/docs/d4/d1d/classedash__packager_1_1media_1_1Muxer.html index 11f29a6b6f..98c302bec5 100644 --- a/docs/d4/d1d/classedash__packager_1_1media_1_1Muxer.html +++ b/docs/d4/d1d/classedash__packager_1_1media_1_1Muxer.html @@ -331,7 +331,7 @@ class MediaStream diff --git a/docs/d4/d37/io__cache_8cc_source.html b/docs/d4/d37/io__cache_8cc_source.html index 088a5b7c6f..6bce3a7e8c 100644 --- a/docs/d4/d37/io__cache_8cc_source.html +++ b/docs/d4/d37/io__cache_8cc_source.html @@ -253,7 +253,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/d3d/structedash__packager_1_1media_1_1mp4_1_1PixelAspectRatio.html b/docs/d4/d3d/structedash__packager_1_1media_1_1mp4_1_1PixelAspectRatio.html index 7a1ed48e52..47457589b8 100644 --- a/docs/d4/d3d/structedash__packager_1_1media_1_1mp4_1_1PixelAspectRatio.html +++ b/docs/d4/d3d/structedash__packager_1_1media_1_1mp4_1_1PixelAspectRatio.html @@ -176,7 +176,7 @@ Additional Inherited Members diff --git a/docs/d4/d43/classedash__packager_1_1media_1_1KeyFetcher.html b/docs/d4/d43/classedash__packager_1_1media_1_1KeyFetcher.html index e860f069ec..2b880708c6 100644 --- a/docs/d4/d43/classedash__packager_1_1media_1_1KeyFetcher.html +++ b/docs/d4/d43/classedash__packager_1_1media_1_1KeyFetcher.html @@ -177,7 +177,7 @@ Public Member Functions diff --git a/docs/d4/d55/classedash__packager_1_1media_1_1H264BitReader.html b/docs/d4/d55/classedash__packager_1_1media_1_1H264BitReader.html index 40992483f9..f63909650f 100644 --- a/docs/d4/d55/classedash__packager_1_1media_1_1H264BitReader.html +++ b/docs/d4/d55/classedash__packager_1_1media_1_1H264BitReader.html @@ -122,7 +122,7 @@ size_t NumEmulationPrevent diff --git a/docs/d4/d67/structedash__packager_1_1media_1_1mp4_1_1MovieFragment-members.html b/docs/d4/d67/structedash__packager_1_1media_1_1mp4_1_1MovieFragment-members.html index 1ae9e8d44e..218c89ecaa 100644 --- a/docs/d4/d67/structedash__packager_1_1media_1_1mp4_1_1MovieFragment-members.html +++ b/docs/d4/d67/structedash__packager_1_1media_1_1mp4_1_1MovieFragment-members.html @@ -111,7 +111,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/d72/classedash__packager_1_1media_1_1webm_1_1SingleSegmentSegmenter-members.html b/docs/d4/d72/classedash__packager_1_1media_1_1webm_1_1SingleSegmentSegmenter-members.html index 265175dc6d..4d31f108cc 100644 --- a/docs/d4/d72/classedash__packager_1_1media_1_1webm_1_1SingleSegmentSegmenter-members.html +++ b/docs/d4/d72/classedash__packager_1_1media_1_1webm_1_1SingleSegmentSegmenter-members.html @@ -127,7 +127,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/d8c/classedash__packager_1_1media_1_1MkvWriter.html b/docs/d4/d8c/classedash__packager_1_1media_1_1MkvWriter.html index 993e2bdae6..4ed573c179 100644 --- a/docs/d4/d8c/classedash__packager_1_1media_1_1MkvWriter.html +++ b/docs/d4/d8c/classedash__packager_1_1media_1_1MkvWriter.html @@ -372,7 +372,7 @@ Public Member Functions diff --git a/docs/d4/d8f/structedash__packager_1_1media_1_1mp4_1_1MovieHeader-members.html b/docs/d4/d8f/structedash__packager_1_1media_1_1mp4_1_1MovieHeader-members.html index b41f14e631..305f667602 100644 --- a/docs/d4/d8f/structedash__packager_1_1media_1_1mp4_1_1MovieHeader-members.html +++ b/docs/d4/d8f/structedash__packager_1_1media_1_1mp4_1_1MovieHeader-members.html @@ -119,7 +119,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/d90/classedash__packager_1_1media_1_1mp4_1_1DecodingTimeIterator.html b/docs/d4/d90/classedash__packager_1_1media_1_1mp4_1_1DecodingTimeIterator.html index 28dbd4fa13..5b98b7e049 100644 --- a/docs/d4/d90/classedash__packager_1_1media_1_1mp4_1_1DecodingTimeIterator.html +++ b/docs/d4/d90/classedash__packager_1_1media_1_1mp4_1_1DecodingTimeIterator.html @@ -235,7 +235,7 @@ Public Member Functions diff --git a/docs/d4/d92/structedash__packager_1_1media_1_1mp4_1_1MediaData.html b/docs/d4/d92/structedash__packager_1_1media_1_1mp4_1_1MediaData.html index 1ec14c5de7..9c20e9ec3b 100644 --- a/docs/d4/d92/structedash__packager_1_1media_1_1mp4_1_1MediaData.html +++ b/docs/d4/d92/structedash__packager_1_1media_1_1mp4_1_1MediaData.html @@ -173,7 +173,7 @@ Additional Inherited Members diff --git a/docs/d4/d93/structedash__packager_1_1media_1_1H264SEIMessage.html b/docs/d4/d93/structedash__packager_1_1media_1_1H264SEIMessage.html index e0fb736dac..a0cee65f34 100644 --- a/docs/d4/d93/structedash__packager_1_1media_1_1H264SEIMessage.html +++ b/docs/d4/d93/structedash__packager_1_1media_1_1H264SEIMessage.html @@ -127,7 +127,7 @@ union { diff --git a/docs/d4/d9b/classedash__packager_1_1AdaptationSet-members.html b/docs/d4/d9b/classedash__packager_1_1AdaptationSet-members.html index 2361cd4d9d..00ba6ea7fb 100644 --- a/docs/d4/d9b/classedash__packager_1_1AdaptationSet-members.html +++ b/docs/d4/d9b/classedash__packager_1_1AdaptationSet-members.html @@ -119,7 +119,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/da1/classedash__packager_1_1media_1_1DecryptConfig.html b/docs/d4/da1/classedash__packager_1_1media_1_1DecryptConfig.html index 5e06e6e0bb..70000158d5 100644 --- a/docs/d4/da1/classedash__packager_1_1media_1_1DecryptConfig.html +++ b/docs/d4/da1/classedash__packager_1_1media_1_1DecryptConfig.html @@ -99,17 +99,14 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); - - + + - - @@ -127,7 +124,7 @@ static const size_t 

Public Member Functions

 DecryptConfig (const std::vector< uint8_t > &key_id, const std::vector< uint8_t > &iv, const int data_offset, const std::vector< SubsampleEntry > &subsamples)
 
 DecryptConfig (const std::vector< uint8_t > &key_id, const std::vector< uint8_t > &iv, const std::vector< SubsampleEntry > &subsamples)
 
const std::vector< uint8_t > & key_id () const
 
const std::vector< uint8_t > & iv () const
 
-int data_offset () const
 
const std::vector
< SubsampleEntry > & 
subsamples () const
Definition at line 34 of file decrypt_config.h.

Constructor & Destructor Documentation

- +
@@ -143,12 +140,6 @@ static const size_t  - - - - - - @@ -166,7 +157,6 @@ static const size_t  -
const std::vector< uint8_t > &  iv,
const int data_offset,
key_idis the ID that references the decryption key.
ivis the initialization vector defined by the encryptor.
data_offsetis the amount of data that should be discarded from the head of the sample buffer before applying subsample information. A decrypted buffer will be shorter than an encrypted buffer by this amount.
subsamplesdefines the clear and encrypted portions of the sample as described in SubsampleEntry. A decrypted buffer will be equal in size to the sum of the subsample sizes.
@@ -183,7 +173,7 @@ static const size_t 
diff --git a/docs/d4/da4/classedash__packager_1_1media_1_1AesCbcCtsEncryptor-members.html b/docs/d4/da4/classedash__packager_1_1media_1_1AesCbcCtsEncryptor-members.html index a66f70d283..6736f76334 100644 --- a/docs/d4/da4/classedash__packager_1_1media_1_1AesCbcCtsEncryptor-members.html +++ b/docs/d4/da4/classedash__packager_1_1media_1_1AesCbcCtsEncryptor-members.html @@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
diff --git a/docs/d4/da7/segmenter__test__base_8cc_source.html b/docs/d4/da7/segmenter__test__base_8cc_source.html index 5d26b01ab4..733b24efdf 100644 --- a/docs/d4/da7/segmenter__test__base_8cc_source.html +++ b/docs/d4/da7/segmenter__test__base_8cc_source.html @@ -309,7 +309,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/db2/cluster__builder_8h_source.html b/docs/d4/db2/cluster__builder_8h_source.html index 2377202fd4..9e74de717a 100644 --- a/docs/d4/db2/cluster__builder_8h_source.html +++ b/docs/d4/db2/cluster__builder_8h_source.html @@ -176,7 +176,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/dca/structedash__packager_1_1media_1_1H264SEIRecoveryPoint.html b/docs/d4/dca/structedash__packager_1_1media_1_1H264SEIRecoveryPoint.html index 9e50336e8d..c068bc6687 100644 --- a/docs/d4/dca/structedash__packager_1_1media_1_1H264SEIRecoveryPoint.html +++ b/docs/d4/dca/structedash__packager_1_1media_1_1H264SEIRecoveryPoint.html @@ -118,7 +118,7 @@ int changing_slice_group_i diff --git a/docs/d4/dcb/classedash__packager_1_1media_1_1Status-members.html b/docs/d4/dcb/classedash__packager_1_1media_1_1Status-members.html index b9de1fb299..45c3a500a6 100644 --- a/docs/d4/dcb/classedash__packager_1_1media_1_1Status-members.html +++ b/docs/d4/dcb/classedash__packager_1_1media_1_1Status-members.html @@ -112,7 +112,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/dcc/structedash__packager_1_1media_1_1mp4_1_1SchemeType.html b/docs/d4/dcc/structedash__packager_1_1media_1_1mp4_1_1SchemeType.html index 52a7da7010..b1d716a5e8 100644 --- a/docs/d4/dcc/structedash__packager_1_1media_1_1mp4_1_1SchemeType.html +++ b/docs/d4/dcc/structedash__packager_1_1media_1_1mp4_1_1SchemeType.html @@ -185,7 +185,7 @@ Additional Inherited Members diff --git a/docs/d4/dcd/classedash__packager_1_1media_1_1OffsetByteQueue-members.html b/docs/d4/dcd/classedash__packager_1_1media_1_1OffsetByteQueue-members.html index 536427e616..ef03f5172b 100644 --- a/docs/d4/dcd/classedash__packager_1_1media_1_1OffsetByteQueue-members.html +++ b/docs/d4/dcd/classedash__packager_1_1media_1_1OffsetByteQueue-members.html @@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/dce/structedash__packager_1_1media_1_1mp4_1_1SegmentReference.html b/docs/d4/dce/structedash__packager_1_1media_1_1mp4_1_1SegmentReference.html index 47bf02ba43..889aed22b7 100644 --- a/docs/d4/dce/structedash__packager_1_1media_1_1mp4_1_1SegmentReference.html +++ b/docs/d4/dce/structedash__packager_1_1media_1_1mp4_1_1SegmentReference.html @@ -143,7 +143,7 @@ uint64_t earliest_presenta diff --git a/docs/d4/dd3/bit__reader_8h_source.html b/docs/d4/dd3/bit__reader_8h_source.html index ba8d243f50..93ef3045be 100644 --- a/docs/d4/dd3/bit__reader_8h_source.html +++ b/docs/d4/dd3/bit__reader_8h_source.html @@ -178,7 +178,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/dd9/structedash__packager_1_1media_1_1mp4_1_1TrackFragment.html b/docs/d4/dd9/structedash__packager_1_1media_1_1mp4_1_1TrackFragment.html index 0e0740607a..dbf63e7568 100644 --- a/docs/d4/dd9/structedash__packager_1_1media_1_1mp4_1_1TrackFragment.html +++ b/docs/d4/dd9/structedash__packager_1_1media_1_1mp4_1_1TrackFragment.html @@ -197,7 +197,7 @@ Additional Inherited Members diff --git a/docs/d4/dde/webvtt__util_8h_source.html b/docs/d4/dde/webvtt__util_8h_source.html index ec8c2bb9a2..8d84d32666 100644 --- a/docs/d4/dde/webvtt__util_8h_source.html +++ b/docs/d4/dde/webvtt__util_8h_source.html @@ -122,7 +122,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/de4/structedash__packager_1_1media_1_1SubsampleEntry.html b/docs/d4/de4/structedash__packager_1_1media_1_1SubsampleEntry.html index 8a359672bf..0065f949dc 100644 --- a/docs/d4/de4/structedash__packager_1_1media_1_1SubsampleEntry.html +++ b/docs/d4/de4/structedash__packager_1_1media_1_1SubsampleEntry.html @@ -115,7 +115,7 @@ uint32_t cipher_bytes< diff --git a/docs/d4/de5/classedash__packager_1_1media_1_1mp4_1_1CompositionOffsetIterator.html b/docs/d4/de5/classedash__packager_1_1media_1_1mp4_1_1CompositionOffsetIterator.html index 2b5478935f..e1c082f213 100644 --- a/docs/d4/de5/classedash__packager_1_1media_1_1mp4_1_1CompositionOffsetIterator.html +++ b/docs/d4/de5/classedash__packager_1_1media_1_1mp4_1_1CompositionOffsetIterator.html @@ -225,7 +225,7 @@ Public Member Functions diff --git a/docs/d4/de7/structedash__packager_1_1media_1_1mp4_1_1SampleAuxiliaryInformationSize-members.html b/docs/d4/de7/structedash__packager_1_1media_1_1mp4_1_1SampleAuxiliaryInformationSize-members.html index d12b5dea3d..a9937a1245 100644 --- a/docs/d4/de7/structedash__packager_1_1media_1_1mp4_1_1SampleAuxiliaryInformationSize-members.html +++ b/docs/d4/de7/structedash__packager_1_1media_1_1mp4_1_1SampleAuxiliaryInformationSize-members.html @@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/df5/request__signer_8cc_source.html b/docs/d4/df5/request__signer_8cc_source.html index 57066260c2..64e19191bb 100644 --- a/docs/d4/df5/request__signer_8cc_source.html +++ b/docs/d4/df5/request__signer_8cc_source.html @@ -176,7 +176,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/df9/structedash__packager_1_1MpdOptions-members.html b/docs/d4/df9/structedash__packager_1_1MpdOptions-members.html index 4a3066aca3..6c3cbcbae2 100644 --- a/docs/d4/df9/structedash__packager_1_1MpdOptions-members.html +++ b/docs/d4/df9/structedash__packager_1_1MpdOptions-members.html @@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d4/dff/webm__media__parser_8cc_source.html b/docs/d4/dff/webm__media__parser_8cc_source.html index 1db2bdfe52..a37675795a 100644 --- a/docs/d4/dff/webm__media__parser_8cc_source.html +++ b/docs/d4/dff/webm__media__parser_8cc_source.html @@ -98,184 +98,184 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
9 #include "packager/base/callback.h"
10 #include "packager/base/callback_helpers.h"
11 #include "packager/base/logging.h"
-
12 #include "packager/media/base/timestamp.h"
-
13 #include "packager/media/formats/webm/webm_cluster_parser.h"
-
14 #include "packager/media/formats/webm/webm_constants.h"
-
15 #include "packager/media/formats/webm/webm_content_encodings.h"
-
16 #include "packager/media/formats/webm/webm_info_parser.h"
-
17 #include "packager/media/formats/webm/webm_tracks_parser.h"
-
18 
-
19 namespace edash_packager {
-
20 namespace media {
-
21 
-
22 WebMMediaParser::WebMMediaParser()
-
23  : state_(kWaitingForInit), unknown_segment_size_(false) {}
-
24 
-
25 WebMMediaParser::~WebMMediaParser() {}
+
12 #include "packager/media/base/buffer_writer.h"
+
13 #include "packager/media/base/timestamp.h"
+
14 #include "packager/media/base/widevine_pssh_data.pb.h"
+
15 #include "packager/media/formats/webm/webm_cluster_parser.h"
+
16 #include "packager/media/formats/webm/webm_constants.h"
+
17 #include "packager/media/formats/webm/webm_content_encodings.h"
+
18 #include "packager/media/formats/webm/webm_info_parser.h"
+
19 #include "packager/media/formats/webm/webm_tracks_parser.h"
+
20 
+
21 namespace edash_packager {
+
22 namespace media {
+
23 
+
24 WebMMediaParser::WebMMediaParser()
+
25  : state_(kWaitingForInit), unknown_segment_size_(false) {}
26 
-
27 void WebMMediaParser::Init(const InitCB& init_cb,
-
28  const NewSampleCB& new_sample_cb,
-
29  KeySource* decryption_key_source) {
-
30  DCHECK_EQ(state_, kWaitingForInit);
-
31  DCHECK(init_cb_.is_null());
-
32  DCHECK(!init_cb.is_null());
-
33  DCHECK(!new_sample_cb.is_null());
-
34 
-
35  ChangeState(kParsingHeaders);
-
36  init_cb_ = init_cb;
-
37  new_sample_cb_ = new_sample_cb;
-
38  decryption_key_source_ = decryption_key_source;
-
39  ignore_text_tracks_ = true;
-
40 }
-
41 
- -
43  DCHECK_NE(state_, kWaitingForInit);
-
44 
-
45  byte_queue_.Reset();
-
46  if (cluster_parser_)
-
47  cluster_parser_->Flush();
-
48  if (state_ == kParsingClusters) {
-
49  ChangeState(kParsingHeaders);
-
50  }
-
51 }
-
52 
-
53 bool WebMMediaParser::Parse(const uint8_t* buf, int size) {
-
54  DCHECK_NE(state_, kWaitingForInit);
-
55 
-
56  if (state_ == kError)
-
57  return false;
-
58 
-
59  byte_queue_.Push(buf, size);
+
27 WebMMediaParser::~WebMMediaParser() {}
+
28 
+
29 void WebMMediaParser::Init(const InitCB& init_cb,
+
30  const NewSampleCB& new_sample_cb,
+
31  KeySource* decryption_key_source) {
+
32  DCHECK_EQ(state_, kWaitingForInit);
+
33  DCHECK(init_cb_.is_null());
+
34  DCHECK(!init_cb.is_null());
+
35  DCHECK(!new_sample_cb.is_null());
+
36 
+
37  ChangeState(kParsingHeaders);
+
38  init_cb_ = init_cb;
+
39  new_sample_cb_ = new_sample_cb;
+
40  decryption_key_source_ = decryption_key_source;
+
41  ignore_text_tracks_ = true;
+
42 }
+
43 
+ +
45  DCHECK_NE(state_, kWaitingForInit);
+
46 
+
47  byte_queue_.Reset();
+
48  if (cluster_parser_)
+
49  cluster_parser_->Flush();
+
50  if (state_ == kParsingClusters) {
+
51  ChangeState(kParsingHeaders);
+
52  }
+
53 }
+
54 
+
55 bool WebMMediaParser::Parse(const uint8_t* buf, int size) {
+
56  DCHECK_NE(state_, kWaitingForInit);
+
57 
+
58  if (state_ == kError)
+
59  return false;
60 
-
61  int result = 0;
-
62  int bytes_parsed = 0;
-
63  const uint8_t* cur = NULL;
-
64  int cur_size = 0;
-
65 
-
66  byte_queue_.Peek(&cur, &cur_size);
-
67  while (cur_size > 0) {
-
68  State oldState = state_;
-
69  switch (state_) {
-
70  case kParsingHeaders:
-
71  result = ParseInfoAndTracks(cur, cur_size);
-
72  break;
-
73 
-
74  case kParsingClusters:
-
75  result = ParseCluster(cur, cur_size);
-
76  break;
-
77 
-
78  case kWaitingForInit:
-
79  case kError:
-
80  return false;
-
81  }
-
82 
-
83  if (result < 0) {
-
84  ChangeState(kError);
-
85  return false;
-
86  }
-
87 
-
88  if (state_ == oldState && result == 0)
-
89  break;
-
90 
-
91  DCHECK_GE(result, 0);
-
92  cur += result;
-
93  cur_size -= result;
-
94  bytes_parsed += result;
-
95  }
-
96 
-
97  byte_queue_.Pop(bytes_parsed);
-
98  return true;
-
99 }
-
100 
-
101 void WebMMediaParser::ChangeState(State new_state) {
-
102  DVLOG(1) << "ChangeState() : " << state_ << " -> " << new_state;
-
103  state_ = new_state;
-
104 }
-
105 
-
106 int WebMMediaParser::ParseInfoAndTracks(const uint8_t* data, int size) {
-
107  DVLOG(2) << "ParseInfoAndTracks()";
-
108  DCHECK(data);
-
109  DCHECK_GT(size, 0);
-
110 
-
111  const uint8_t* cur = data;
-
112  int cur_size = size;
-
113  int bytes_parsed = 0;
-
114 
-
115  int id;
-
116  int64_t element_size;
-
117  int result = WebMParseElementHeader(cur, cur_size, &id, &element_size);
-
118 
-
119  if (result <= 0)
-
120  return result;
-
121 
-
122  switch (id) {
-
123  case kWebMIdEBMLHeader:
-
124  case kWebMIdSeekHead:
-
125  case kWebMIdVoid:
-
126  case kWebMIdCRC32:
-
127  case kWebMIdCues:
-
128  case kWebMIdChapters:
-
129  case kWebMIdTags:
-
130  case kWebMIdAttachments:
-
131  // TODO: Implement support for chapters.
-
132  if (cur_size < (result + element_size)) {
-
133  // We don't have the whole element yet. Signal we need more data.
-
134  return 0;
-
135  }
-
136  // Skip the element.
-
137  return result + element_size;
-
138  break;
-
139  case kWebMIdCluster:
-
140  if (!cluster_parser_) {
-
141  LOG(ERROR) << "Found Cluster element before Info.";
-
142  return -1;
-
143  }
-
144  ChangeState(kParsingClusters);
-
145  return 0;
-
146  break;
-
147  case kWebMIdSegment:
-
148  // Segment of unknown size indicates live stream.
-
149  if (element_size == kWebMUnknownSize)
-
150  unknown_segment_size_ = true;
-
151  // Just consume the segment header.
-
152  return result;
-
153  break;
-
154  case kWebMIdInfo:
-
155  // We've found the element we are looking for.
-
156  break;
-
157  default: {
-
158  LOG(ERROR) << "Unexpected element ID 0x" << std::hex << id;
-
159  return -1;
-
160  }
-
161  }
-
162 
-
163  WebMInfoParser info_parser;
-
164  result = info_parser.Parse(cur, cur_size);
-
165 
-
166  if (result <= 0)
-
167  return result;
-
168 
-
169  cur += result;
-
170  cur_size -= result;
-
171  bytes_parsed += result;
-
172 
-
173  WebMTracksParser tracks_parser(ignore_text_tracks_);
-
174  result = tracks_parser.Parse(cur, cur_size);
-
175 
-
176  if (result <= 0)
-
177  return result;
-
178 
-
179  bytes_parsed += result;
+
61  byte_queue_.Push(buf, size);
+
62 
+
63  int result = 0;
+
64  int bytes_parsed = 0;
+
65  const uint8_t* cur = NULL;
+
66  int cur_size = 0;
+
67 
+
68  byte_queue_.Peek(&cur, &cur_size);
+
69  while (cur_size > 0) {
+
70  State oldState = state_;
+
71  switch (state_) {
+
72  case kParsingHeaders:
+
73  result = ParseInfoAndTracks(cur, cur_size);
+
74  break;
+
75 
+
76  case kParsingClusters:
+
77  result = ParseCluster(cur, cur_size);
+
78  break;
+
79 
+
80  case kWaitingForInit:
+
81  case kError:
+
82  return false;
+
83  }
+
84 
+
85  if (result < 0) {
+
86  ChangeState(kError);
+
87  return false;
+
88  }
+
89 
+
90  if (state_ == oldState && result == 0)
+
91  break;
+
92 
+
93  DCHECK_GE(result, 0);
+
94  cur += result;
+
95  cur_size -= result;
+
96  bytes_parsed += result;
+
97  }
+
98 
+
99  byte_queue_.Pop(bytes_parsed);
+
100  return true;
+
101 }
+
102 
+
103 void WebMMediaParser::ChangeState(State new_state) {
+
104  DVLOG(1) << "ChangeState() : " << state_ << " -> " << new_state;
+
105  state_ = new_state;
+
106 }
+
107 
+
108 int WebMMediaParser::ParseInfoAndTracks(const uint8_t* data, int size) {
+
109  DVLOG(2) << "ParseInfoAndTracks()";
+
110  DCHECK(data);
+
111  DCHECK_GT(size, 0);
+
112 
+
113  const uint8_t* cur = data;
+
114  int cur_size = size;
+
115  int bytes_parsed = 0;
+
116 
+
117  int id;
+
118  int64_t element_size;
+
119  int result = WebMParseElementHeader(cur, cur_size, &id, &element_size);
+
120 
+
121  if (result <= 0)
+
122  return result;
+
123 
+
124  switch (id) {
+
125  case kWebMIdEBMLHeader:
+
126  case kWebMIdSeekHead:
+
127  case kWebMIdVoid:
+
128  case kWebMIdCRC32:
+
129  case kWebMIdCues:
+
130  case kWebMIdChapters:
+
131  case kWebMIdTags:
+
132  case kWebMIdAttachments:
+
133  // TODO: Implement support for chapters.
+
134  if (cur_size < (result + element_size)) {
+
135  // We don't have the whole element yet. Signal we need more data.
+
136  return 0;
+
137  }
+
138  // Skip the element.
+
139  return result + element_size;
+
140  break;
+
141  case kWebMIdCluster:
+
142  if (!cluster_parser_) {
+
143  LOG(ERROR) << "Found Cluster element before Info.";
+
144  return -1;
+
145  }
+
146  ChangeState(kParsingClusters);
+
147  return 0;
+
148  break;
+
149  case kWebMIdSegment:
+
150  // Segment of unknown size indicates live stream.
+
151  if (element_size == kWebMUnknownSize)
+
152  unknown_segment_size_ = true;
+
153  // Just consume the segment header.
+
154  return result;
+
155  break;
+
156  case kWebMIdInfo:
+
157  // We've found the element we are looking for.
+
158  break;
+
159  default: {
+
160  LOG(ERROR) << "Unexpected element ID 0x" << std::hex << id;
+
161  return -1;
+
162  }
+
163  }
+
164 
+
165  WebMInfoParser info_parser;
+
166  result = info_parser.Parse(cur, cur_size);
+
167 
+
168  if (result <= 0)
+
169  return result;
+
170 
+
171  cur += result;
+
172  cur_size -= result;
+
173  bytes_parsed += result;
+
174 
+
175  WebMTracksParser tracks_parser(ignore_text_tracks_);
+
176  result = tracks_parser.Parse(cur, cur_size);
+
177 
+
178  if (result <= 0)
+
179  return result;
180 
-
181  double timecode_scale_in_us = info_parser.timecode_scale() / 1000.0;
-
182  int64_t duration_in_us = info_parser.duration() * timecode_scale_in_us;
-
183 
-
184  scoped_refptr<AudioStreamInfo> audio_stream_info =
-
185  tracks_parser.audio_stream_info();
-
186  if (audio_stream_info) {
-
187  audio_stream_info->set_duration(duration_in_us);
-
188  if (audio_stream_info->is_encrypted())
-
189  OnEncryptedMediaInitData(tracks_parser.audio_encryption_key_id());
+
181  bytes_parsed += result;
+
182 
+
183  double timecode_scale_in_us = info_parser.timecode_scale() / 1000.0;
+
184  int64_t duration_in_us = info_parser.duration() * timecode_scale_in_us;
+
185 
+
186  scoped_refptr<AudioStreamInfo> audio_stream_info =
+
187  tracks_parser.audio_stream_info();
+
188  if (audio_stream_info) {
+
189  audio_stream_info->set_duration(duration_in_us);
190  } else {
191  VLOG(1) << "No audio track info found.";
192  }
@@ -284,50 +284,77 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
195  tracks_parser.video_stream_info();
196  if (video_stream_info) {
197  video_stream_info->set_duration(duration_in_us);
-
198  if (video_stream_info->is_encrypted())
-
199  OnEncryptedMediaInitData(tracks_parser.video_encryption_key_id());
-
200  } else {
-
201  VLOG(1) << "No video track info found.";
-
202  }
-
203 
-
204  cluster_parser_.reset(new WebMClusterParser(
-
205  info_parser.timecode_scale(), audio_stream_info, video_stream_info,
-
206  tracks_parser.GetAudioDefaultDuration(timecode_scale_in_us),
-
207  tracks_parser.GetVideoDefaultDuration(timecode_scale_in_us),
-
208  tracks_parser.text_tracks(), tracks_parser.ignored_tracks(),
-
209  tracks_parser.audio_encryption_key_id(),
-
210  tracks_parser.video_encryption_key_id(), new_sample_cb_, init_cb_));
-
211 
-
212  return bytes_parsed;
-
213 }
-
214 
-
215 int WebMMediaParser::ParseCluster(const uint8_t* data, int size) {
-
216  if (!cluster_parser_)
-
217  return -1;
+
198  } else {
+
199  VLOG(1) << "No video track info found.";
+
200  }
+
201 
+
202  if (!FetchKeysIfNecessary(tracks_parser.audio_encryption_key_id(),
+
203  tracks_parser.video_encryption_key_id())) {
+
204  return -1;
+
205  }
+
206 
+
207  cluster_parser_.reset(new WebMClusterParser(
+
208  info_parser.timecode_scale(), audio_stream_info, video_stream_info,
+
209  tracks_parser.GetAudioDefaultDuration(timecode_scale_in_us),
+
210  tracks_parser.GetVideoDefaultDuration(timecode_scale_in_us),
+
211  tracks_parser.text_tracks(), tracks_parser.ignored_tracks(),
+
212  tracks_parser.audio_encryption_key_id(),
+
213  tracks_parser.video_encryption_key_id(), new_sample_cb_, init_cb_,
+
214  decryption_key_source_));
+
215 
+
216  return bytes_parsed;
+
217 }
218 
-
219  int bytes_parsed = cluster_parser_->Parse(data, size);
-
220  if (bytes_parsed < 0)
-
221  return bytes_parsed;
+
219 int WebMMediaParser::ParseCluster(const uint8_t* data, int size) {
+
220  if (!cluster_parser_)
+
221  return -1;
222 
-
223  bool cluster_ended = cluster_parser_->cluster_ended();
-
224  if (cluster_ended) {
-
225  ChangeState(kParsingHeaders);
-
226  }
-
227 
-
228  return bytes_parsed;
-
229 }
-
230 
-
231 void WebMMediaParser::OnEncryptedMediaInitData(const std::string& key_id) {
-
232  NOTIMPLEMENTED() << "WebM decryption is not implemented yet.";
+
223  int bytes_parsed = cluster_parser_->Parse(data, size);
+
224  if (bytes_parsed < 0)
+
225  return bytes_parsed;
+
226 
+
227  bool cluster_ended = cluster_parser_->cluster_ended();
+
228  if (cluster_ended) {
+
229  ChangeState(kParsingHeaders);
+
230  }
+
231 
+
232  return bytes_parsed;
233 }
234 
-
235 } // namespace media
-
236 } // namespace edash_packager
-
bool Parse(const uint8_t *buf, int size) override
- -
void Init(const InitCB &init_cb, const NewSampleCB &new_sample_cb, KeySource *decryption_key_source) override
StreamParser implementation.
+
235 bool WebMMediaParser::FetchKeysIfNecessary(
+
236  const std::string& audio_encryption_key_id,
+
237  const std::string& video_encryption_key_id) {
+
238  if (audio_encryption_key_id.empty() && video_encryption_key_id.empty())
+
239  return true;
+
240  // An error will be returned later if the samples need to be derypted.
+
241  if (!decryption_key_source_)
+
242  return true;
+
243 
+
244  // Generate WidevinePsshData from key_id.
+
245  WidevinePsshData widevine_pssh_data;
+
246  if (!audio_encryption_key_id.empty())
+
247  widevine_pssh_data.add_key_id(audio_encryption_key_id);
+
248  if (!video_encryption_key_id.empty())
+
249  widevine_pssh_data.add_key_id(video_encryption_key_id);
+
250 
+
251  const std::string serialized_string = widevine_pssh_data.SerializeAsString();
+
252  Status status = decryption_key_source_->FetchKeys(
+
253  std::vector<uint8_t>(serialized_string.begin(), serialized_string.end()));
+
254  if (!status.ok()) {
+
255  LOG(ERROR) << "Error fetching decryption keys: " << status;
+
256  return false;
+
257  }
+
258  return true;
+
259 }
+
260 
+
261 } // namespace media
+
262 } // namespace edash_packager
+
bool Parse(const uint8_t *buf, int size) override
+ +
void Init(const InitCB &init_cb, const NewSampleCB &new_sample_cb, KeySource *decryption_key_source) override
StreamParser implementation.
void Push(const uint8_t *data, int size)
Append new bytes to the end of the queue.
Definition: byte_queue.cc:29
+
virtual Status FetchKeys(const std::vector< uint8_t > &content_id, const std::string &policy)
Definition: key_source.cc:30
base::Callback< bool(uint32_t track_id, const scoped_refptr< MediaSample > &media_sample)> NewSampleCB
Definition: media_parser.h:43
KeySource is responsible for encryption key acquisition.
Definition: key_source.h:29
void Reset()
Reset the queue to the empty state.
Definition: byte_queue.cc:24
@@ -335,7 +362,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d02/classedash__packager_1_1media_1_1ProducerConsumerQueue.html b/docs/d5/d02/classedash__packager_1_1media_1_1ProducerConsumerQueue.html index e47f460342..d9fe4fb2a2 100644 --- a/docs/d5/d02/classedash__packager_1_1media_1_1ProducerConsumerQueue.html +++ b/docs/d5/d02/classedash__packager_1_1media_1_1ProducerConsumerQueue.html @@ -501,7 +501,7 @@ template<class T > diff --git a/docs/d5/d15/producer__consumer__queue_8h_source.html b/docs/d5/d15/producer__consumer__queue_8h_source.html index d7310bca46..93ad84a39e 100644 --- a/docs/d5/d15/producer__consumer__queue_8h_source.html +++ b/docs/d5/d15/producer__consumer__queue_8h_source.html @@ -374,7 +374,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d18/structedash__packager_1_1media_1_1H264NALU-members.html b/docs/d5/d18/structedash__packager_1_1media_1_1H264NALU-members.html index c52efc4155..e627cf9d31 100644 --- a/docs/d5/d18/structedash__packager_1_1media_1_1H264NALU-members.html +++ b/docs/d5/d18/structedash__packager_1_1media_1_1H264NALU-members.html @@ -112,7 +112,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d18/structedash__packager_1_1media_1_1mp4_1_1CueIDBox-members.html b/docs/d5/d18/structedash__packager_1_1media_1_1mp4_1_1CueIDBox-members.html index 06ffcc2192..772bdba4b0 100644 --- a/docs/d5/d18/structedash__packager_1_1media_1_1mp4_1_1CueIDBox-members.html +++ b/docs/d5/d18/structedash__packager_1_1media_1_1mp4_1_1CueIDBox-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d1a/ts__section_8h_source.html b/docs/d5/d1a/ts__section_8h_source.html index 9460c0be00..9585b18ee1 100644 --- a/docs/d5/d1a/ts__section_8h_source.html +++ b/docs/d5/d1a/ts__section_8h_source.html @@ -134,7 +134,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d1f/classedash__packager_1_1media_1_1BufferReader-members.html b/docs/d5/d1f/classedash__packager_1_1media_1_1BufferReader-members.html index 7c20cb00bb..613b252032 100644 --- a/docs/d5/d1f/classedash__packager_1_1media_1_1BufferReader-members.html +++ b/docs/d5/d1f/classedash__packager_1_1media_1_1BufferReader-members.html @@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d26/classedash__packager_1_1media_1_1MediaParser-members.html b/docs/d5/d26/classedash__packager_1_1media_1_1MediaParser-members.html index 3c39e53370..7c80e5845b 100644 --- a/docs/d5/d26/classedash__packager_1_1media_1_1MediaParser-members.html +++ b/docs/d5/d26/classedash__packager_1_1media_1_1MediaParser-members.html @@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d27/key__fetcher_8cc_source.html b/docs/d5/d27/key__fetcher_8cc_source.html index da13e3325c..6658156a0f 100644 --- a/docs/d5/d27/key__fetcher_8cc_source.html +++ b/docs/d5/d27/key__fetcher_8cc_source.html @@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d30/classedash__packager_1_1media_1_1H264ByteToUnitStreamConverter.html b/docs/d5/d30/classedash__packager_1_1media_1_1H264ByteToUnitStreamConverter.html index e0f74117f8..984ab28f93 100644 --- a/docs/d5/d30/classedash__packager_1_1media_1_1H264ByteToUnitStreamConverter.html +++ b/docs/d5/d30/classedash__packager_1_1media_1_1H264ByteToUnitStreamConverter.html @@ -192,7 +192,7 @@ static const size_t kUnitS diff --git a/docs/d5/d40/webm_2single__segment__segmenter_8h_source.html b/docs/d5/d40/webm_2single__segment__segmenter_8h_source.html index d5f961af58..6b817fbce2 100644 --- a/docs/d5/d40/webm_2single__segment__segmenter_8h_source.html +++ b/docs/d5/d40/webm_2single__segment__segmenter_8h_source.html @@ -154,7 +154,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d41/hevc__decoder__configuration_8cc_source.html b/docs/d5/d41/hevc__decoder__configuration_8cc_source.html index 749f5e37eb..8e82fa2157 100644 --- a/docs/d5/d41/hevc__decoder__configuration_8cc_source.html +++ b/docs/d5/d41/hevc__decoder__configuration_8cc_source.html @@ -232,7 +232,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d4a/classedash__packager_1_1media_1_1mp2t_1_1TsPacket-members.html b/docs/d5/d4a/classedash__packager_1_1media_1_1mp2t_1_1TsPacket-members.html index 968c33e7c2..95a0a58984 100644 --- a/docs/d5/d4a/classedash__packager_1_1media_1_1mp2t_1_1TsPacket-members.html +++ b/docs/d5/d4a/classedash__packager_1_1media_1_1mp2t_1_1TsPacket-members.html @@ -107,7 +107,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d4d/box_8cc_source.html b/docs/d5/d4d/box_8cc_source.html index be1cc49c42..090abe148d 100644 --- a/docs/d5/d4d/box_8cc_source.html +++ b/docs/d5/d4d/box_8cc_source.html @@ -199,7 +199,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d52/ts__section__pes_8h_source.html b/docs/d5/d52/ts__section__pes_8h_source.html index bf2f0dfd94..135efc23d1 100644 --- a/docs/d5/d52/ts__section__pes_8h_source.html +++ b/docs/d5/d52/ts__section__pes_8h_source.html @@ -161,7 +161,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d54/classedash__packager_1_1media_1_1mp4_1_1AACAudioSpecificConfig-members.html b/docs/d5/d54/classedash__packager_1_1media_1_1mp4_1_1AACAudioSpecificConfig-members.html index d97469eb6c..1037f6c931 100644 --- a/docs/d5/d54/classedash__packager_1_1media_1_1mp4_1_1AACAudioSpecificConfig-members.html +++ b/docs/d5/d54/classedash__packager_1_1media_1_1mp4_1_1AACAudioSpecificConfig-members.html @@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d62/classedash__packager_1_1media_1_1RsaPrivateKey.html b/docs/d5/d62/classedash__packager_1_1media_1_1RsaPrivateKey.html index aee05bc8e9..f88eb9a865 100644 --- a/docs/d5/d62/classedash__packager_1_1media_1_1RsaPrivateKey.html +++ b/docs/d5/d62/classedash__packager_1_1media_1_1RsaPrivateKey.html @@ -224,7 +224,7 @@ Static Public Member Functions diff --git a/docs/d5/d63/network__util_8cc_source.html b/docs/d5/d63/network__util_8cc_source.html index 6520dfeb7e..55b7713635 100644 --- a/docs/d5/d63/network__util_8cc_source.html +++ b/docs/d5/d63/network__util_8cc_source.html @@ -122,7 +122,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d6e/structedash__packager_1_1media_1_1mp4_1_1MovieExtendsHeader-members.html b/docs/d5/d6e/structedash__packager_1_1media_1_1mp4_1_1MovieExtendsHeader-members.html index 41dc167112..ed0bdaa9a3 100644 --- a/docs/d5/d6e/structedash__packager_1_1media_1_1mp4_1_1MovieExtendsHeader-members.html +++ b/docs/d5/d6e/structedash__packager_1_1media_1_1mp4_1_1MovieExtendsHeader-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d6f/vlog__flags_8cc_source.html b/docs/d5/d6f/vlog__flags_8cc_source.html index 618c16e093..fcca2fe777 100644 --- a/docs/d5/d6f/vlog__flags_8cc_source.html +++ b/docs/d5/d6f/vlog__flags_8cc_source.html @@ -116,7 +116,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d73/vp__codec__configuration_8h_source.html b/docs/d5/d73/vp__codec__configuration_8h_source.html index 81b3e22a81..ec34638887 100644 --- a/docs/d5/d73/vp__codec__configuration_8h_source.html +++ b/docs/d5/d73/vp__codec__configuration_8h_source.html @@ -192,7 +192,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d78/structedash__packager_1_1media_1_1mp4_1_1SampleEncryption.html b/docs/d5/d78/structedash__packager_1_1media_1_1mp4_1_1SampleEncryption.html index 108a144842..2c764bd922 100644 --- a/docs/d5/d78/structedash__packager_1_1media_1_1mp4_1_1SampleEncryption.html +++ b/docs/d5/d78/structedash__packager_1_1media_1_1mp4_1_1SampleEncryption.html @@ -250,7 +250,7 @@ Additional Inherited Members diff --git a/docs/d5/d7a/structedash__packager_1_1Element.html b/docs/d5/d7a/structedash__packager_1_1Element.html index 7d36971bbd..3afad04018 100644 --- a/docs/d5/d7a/structedash__packager_1_1Element.html +++ b/docs/d5/d7a/structedash__packager_1_1Element.html @@ -120,7 +120,7 @@ std::vector< diff --git a/docs/d5/d7b/box__definitions_8h_source.html b/docs/d5/d7b/box__definitions_8h_source.html index 0a218e945c..36eec3397a 100644 --- a/docs/d5/d7b/box__definitions_8h_source.html +++ b/docs/d5/d7b/box__definitions_8h_source.html @@ -965,7 +965,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d89/widevine__key__source_8cc_source.html b/docs/d5/d89/widevine__key__source_8cc_source.html index 23a088859a..31883de863 100644 --- a/docs/d5/d89/widevine__key__source_8cc_source.html +++ b/docs/d5/d89/widevine__key__source_8cc_source.html @@ -657,7 +657,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d8f/webm__cluster__parser_8cc_source.html b/docs/d5/d8f/webm__cluster__parser_8cc_source.html index e332c31f33..8ec4146693 100644 --- a/docs/d5/d8f/webm__cluster__parser_8cc_source.html +++ b/docs/d5/d8f/webm__cluster__parser_8cc_source.html @@ -138,7 +138,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
49 
50 } // namespace
51 
-
52 WebMClusterParser::WebMClusterParser(
+
53  int64_t timecode_scale,
54  scoped_refptr<AudioStreamInfo> audio_stream_info,
55  scoped_refptr<VideoStreamInfo> video_stream_info,
@@ -149,578 +149,596 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
60  const std::string& audio_encryption_key_id,
61  const std::string& video_encryption_key_id,
62  const MediaParser::NewSampleCB& new_sample_cb,
-
63  const MediaParser::InitCB& init_cb)
-
64  : timecode_multiplier_(timecode_scale / 1000.0),
-
65  audio_stream_info_(audio_stream_info),
-
66  video_stream_info_(video_stream_info),
-
67  ignored_tracks_(ignored_tracks),
-
68  audio_encryption_key_id_(audio_encryption_key_id),
-
69  video_encryption_key_id_(video_encryption_key_id),
-
70  parser_(kWebMIdCluster, this),
-
71  initialized_(false),
-
72  init_cb_(init_cb),
-
73  cluster_start_time_(kNoTimestamp),
-
74  audio_(audio_stream_info ? audio_stream_info->track_id() : -1,
-
75  false,
-
76  audio_default_duration,
-
77  new_sample_cb),
-
78  video_(video_stream_info ? video_stream_info->track_id() : -1,
-
79  true,
-
80  video_default_duration,
-
81  new_sample_cb) {
-
82  for (WebMTracksParser::TextTracks::const_iterator it = text_tracks.begin();
-
83  it != text_tracks.end();
-
84  ++it) {
-
85  text_track_map_.insert(std::make_pair(
-
86  it->first, Track(it->first, false, kNoTimestamp, new_sample_cb)));
-
87  }
-
88 }
-
89 
-
90 WebMClusterParser::~WebMClusterParser() {}
-
91 
- -
93  last_block_timecode_ = -1;
-
94  cluster_timecode_ = -1;
-
95  cluster_start_time_ = kNoTimestamp;
-
96  cluster_ended_ = false;
-
97  parser_.Reset();
-
98  audio_.Reset();
-
99  video_.Reset();
-
100  ResetTextTracks();
-
101 }
-
102 
- -
104  // Estimate the duration of the last frame if necessary.
-
105  audio_.ApplyDurationEstimateIfNeeded();
-
106  video_.ApplyDurationEstimateIfNeeded();
-
107  Reset();
-
108 }
-
109 
-
110 int WebMClusterParser::Parse(const uint8_t* buf, int size) {
-
111  int result = parser_.Parse(buf, size);
+
63  const MediaParser::InitCB& init_cb,
+
64  KeySource* decryption_key_source)
+
65  : timecode_multiplier_(timecode_scale / 1000.0),
+
66  audio_stream_info_(audio_stream_info),
+
67  video_stream_info_(video_stream_info),
+
68  ignored_tracks_(ignored_tracks),
+
69  audio_encryption_key_id_(audio_encryption_key_id),
+
70  video_encryption_key_id_(video_encryption_key_id),
+
71  parser_(kWebMIdCluster, this),
+
72  initialized_(false),
+
73  init_cb_(init_cb),
+
74  cluster_start_time_(kNoTimestamp),
+
75  audio_(audio_stream_info ? audio_stream_info->track_id() : -1,
+
76  false,
+
77  audio_default_duration,
+
78  new_sample_cb),
+
79  video_(video_stream_info ? video_stream_info->track_id() : -1,
+
80  true,
+
81  video_default_duration,
+
82  new_sample_cb) {
+
83  if (decryption_key_source)
+
84  decryptor_source_.reset(new DecryptorSource(decryption_key_source));
+
85  for (WebMTracksParser::TextTracks::const_iterator it = text_tracks.begin();
+
86  it != text_tracks.end();
+
87  ++it) {
+
88  text_track_map_.insert(std::make_pair(
+
89  it->first, Track(it->first, false, kNoTimestamp, new_sample_cb)));
+
90  }
+
91 }
+
92 
+
93 WebMClusterParser::~WebMClusterParser() {}
+
94 
+ +
96  last_block_timecode_ = -1;
+
97  cluster_timecode_ = -1;
+
98  cluster_start_time_ = kNoTimestamp;
+
99  cluster_ended_ = false;
+
100  parser_.Reset();
+
101  audio_.Reset();
+
102  video_.Reset();
+
103  ResetTextTracks();
+
104 }
+
105 
+ +
107  // Estimate the duration of the last frame if necessary.
+
108  audio_.ApplyDurationEstimateIfNeeded();
+
109  video_.ApplyDurationEstimateIfNeeded();
+
110  Reset();
+
111 }
112 
-
113  if (result < 0) {
-
114  cluster_ended_ = false;
-
115  return result;
-
116  }
-
117 
-
118  cluster_ended_ = parser_.IsParsingComplete();
-
119  if (cluster_ended_) {
-
120  // If there were no buffers in this cluster, set the cluster start time to
-
121  // be the |cluster_timecode_|.
-
122  if (cluster_start_time_ == kNoTimestamp) {
-
123  // If the cluster did not even have a |cluster_timecode_|, signal parse
-
124  // error.
-
125  if (cluster_timecode_ < 0)
-
126  return -1;
-
127 
-
128  cluster_start_time_ = cluster_timecode_ * timecode_multiplier_;
-
129  }
+
113 int WebMClusterParser::Parse(const uint8_t* buf, int size) {
+
114  int result = parser_.Parse(buf, size);
+
115 
+
116  if (result < 0) {
+
117  cluster_ended_ = false;
+
118  return result;
+
119  }
+
120 
+
121  cluster_ended_ = parser_.IsParsingComplete();
+
122  if (cluster_ended_) {
+
123  // If there were no buffers in this cluster, set the cluster start time to
+
124  // be the |cluster_timecode_|.
+
125  if (cluster_start_time_ == kNoTimestamp) {
+
126  // If the cluster did not even have a |cluster_timecode_|, signal parse
+
127  // error.
+
128  if (cluster_timecode_ < 0)
+
129  return -1;
130 
-
131  // Reset the parser if we're done parsing so that
-
132  // it is ready to accept another cluster on the next
-
133  // call.
-
134  parser_.Reset();
-
135 
-
136  last_block_timecode_ = -1;
-
137  cluster_timecode_ = -1;
-
138  }
-
139 
-
140  return result;
-
141 }
+
131  cluster_start_time_ = cluster_timecode_ * timecode_multiplier_;
+
132  }
+
133 
+
134  // Reset the parser if we're done parsing so that
+
135  // it is ready to accept another cluster on the next
+
136  // call.
+
137  parser_.Reset();
+
138 
+
139  last_block_timecode_ = -1;
+
140  cluster_timecode_ = -1;
+
141  }
142 
-
143 WebMParserClient* WebMClusterParser::OnListStart(int id) {
-
144  if (id == kWebMIdCluster) {
-
145  cluster_timecode_ = -1;
-
146  cluster_start_time_ = kNoTimestamp;
-
147  } else if (id == kWebMIdBlockGroup) {
-
148  block_data_.reset();
-
149  block_data_size_ = -1;
-
150  block_duration_ = -1;
-
151  discard_padding_ = -1;
-
152  discard_padding_set_ = false;
-
153  } else if (id == kWebMIdBlockAdditions) {
-
154  block_add_id_ = -1;
-
155  block_additional_data_.reset();
-
156  block_additional_data_size_ = 0;
-
157  }
-
158 
-
159  return this;
-
160 }
+
143  return result;
+
144 }
+
145 
+
146 WebMParserClient* WebMClusterParser::OnListStart(int id) {
+
147  if (id == kWebMIdCluster) {
+
148  cluster_timecode_ = -1;
+
149  cluster_start_time_ = kNoTimestamp;
+
150  } else if (id == kWebMIdBlockGroup) {
+
151  block_data_.reset();
+
152  block_data_size_ = -1;
+
153  block_duration_ = -1;
+
154  discard_padding_ = -1;
+
155  discard_padding_set_ = false;
+
156  } else if (id == kWebMIdBlockAdditions) {
+
157  block_add_id_ = -1;
+
158  block_additional_data_.reset();
+
159  block_additional_data_size_ = 0;
+
160  }
161 
-
162 bool WebMClusterParser::OnListEnd(int id) {
-
163  if (id != kWebMIdBlockGroup)
-
164  return true;
-
165 
-
166  // Make sure the BlockGroup actually had a Block.
-
167  if (block_data_size_ == -1) {
-
168  LOG(ERROR) << "Block missing from BlockGroup.";
-
169  return false;
-
170  }
-
171 
-
172  bool result = ParseBlock(false, block_data_.get(), block_data_size_,
-
173  block_additional_data_.get(),
-
174  block_additional_data_size_, block_duration_,
-
175  discard_padding_set_ ? discard_padding_ : 0);
-
176  block_data_.reset();
-
177  block_data_size_ = -1;
-
178  block_duration_ = -1;
-
179  block_add_id_ = -1;
-
180  block_additional_data_.reset();
-
181  block_additional_data_size_ = 0;
-
182  discard_padding_ = -1;
-
183  discard_padding_set_ = false;
-
184  return result;
-
185 }
-
186 
-
187 bool WebMClusterParser::OnUInt(int id, int64_t val) {
-
188  int64_t* dst;
-
189  switch (id) {
-
190  case kWebMIdTimecode:
-
191  dst = &cluster_timecode_;
-
192  break;
-
193  case kWebMIdBlockDuration:
-
194  dst = &block_duration_;
+
162  return this;
+
163 }
+
164 
+
165 bool WebMClusterParser::OnListEnd(int id) {
+
166  if (id != kWebMIdBlockGroup)
+
167  return true;
+
168 
+
169  // Make sure the BlockGroup actually had a Block.
+
170  if (block_data_size_ == -1) {
+
171  LOG(ERROR) << "Block missing from BlockGroup.";
+
172  return false;
+
173  }
+
174 
+
175  bool result = ParseBlock(false, block_data_.get(), block_data_size_,
+
176  block_additional_data_.get(),
+
177  block_additional_data_size_, block_duration_,
+
178  discard_padding_set_ ? discard_padding_ : 0);
+
179  block_data_.reset();
+
180  block_data_size_ = -1;
+
181  block_duration_ = -1;
+
182  block_add_id_ = -1;
+
183  block_additional_data_.reset();
+
184  block_additional_data_size_ = 0;
+
185  discard_padding_ = -1;
+
186  discard_padding_set_ = false;
+
187  return result;
+
188 }
+
189 
+
190 bool WebMClusterParser::OnUInt(int id, int64_t val) {
+
191  int64_t* dst;
+
192  switch (id) {
+
193  case kWebMIdTimecode:
+
194  dst = &cluster_timecode_;
195  break;
-
196  case kWebMIdBlockAddID:
-
197  dst = &block_add_id_;
+
196  case kWebMIdBlockDuration:
+
197  dst = &block_duration_;
198  break;
-
199  default:
-
200  return true;
-
201  }
-
202  if (*dst != -1)
-
203  return false;
-
204  *dst = val;
-
205  return true;
-
206 }
-
207 
-
208 bool WebMClusterParser::ParseBlock(bool is_simple_block,
-
209  const uint8_t* buf,
-
210  int size,
-
211  const uint8_t* additional,
-
212  int additional_size,
-
213  int duration,
-
214  int64_t discard_padding) {
-
215  if (size < 4)
-
216  return false;
-
217 
-
218  // Return an error if the trackNum > 127. We just aren't
-
219  // going to support large track numbers right now.
-
220  if (!(buf[0] & 0x80)) {
-
221  LOG(ERROR) << "TrackNumber over 127 not supported";
-
222  return false;
-
223  }
-
224 
-
225  int track_num = buf[0] & 0x7f;
-
226  int timecode = buf[1] << 8 | buf[2];
-
227  int flags = buf[3] & 0xff;
-
228  int lacing = (flags >> 1) & 0x3;
-
229 
-
230  if (lacing) {
-
231  LOG(ERROR) << "Lacing " << lacing << " is not supported yet.";
-
232  return false;
-
233  }
-
234 
-
235  // Sign extend negative timecode offsets.
-
236  if (timecode & 0x8000)
-
237  timecode |= ~0xffff;
-
238 
-
239  const uint8_t* frame_data = buf + 4;
-
240  int frame_size = size - (frame_data - buf);
-
241  return OnBlock(is_simple_block, track_num, timecode, duration, flags,
-
242  frame_data, frame_size, additional, additional_size,
-
243  discard_padding);
-
244 }
-
245 
-
246 bool WebMClusterParser::OnBinary(int id, const uint8_t* data, int size) {
-
247  switch (id) {
-
248  case kWebMIdSimpleBlock:
-
249  return ParseBlock(true, data, size, NULL, 0, -1, 0);
-
250 
-
251  case kWebMIdBlock:
-
252  if (block_data_) {
-
253  LOG(ERROR) << "More than 1 Block in a BlockGroup is not "
-
254  "supported.";
-
255  return false;
-
256  }
-
257  block_data_.reset(new uint8_t[size]);
-
258  memcpy(block_data_.get(), data, size);
-
259  block_data_size_ = size;
-
260  return true;
-
261 
-
262  case kWebMIdBlockAdditional: {
-
263  uint64_t block_add_id = base::HostToNet64(block_add_id_);
-
264  if (block_additional_data_) {
-
265  // TODO: Technically, more than 1 BlockAdditional is allowed as per
-
266  // matroska spec. But for now we don't have a use case to support
-
267  // parsing of such files. Take a look at this again when such a case
-
268  // arises.
-
269  LOG(ERROR) << "More than 1 BlockAdditional in a "
-
270  "BlockGroup is not supported.";
-
271  return false;
-
272  }
-
273  // First 8 bytes of side_data in DecoderBuffer is the BlockAddID
-
274  // element's value in Big Endian format. This is done to mimic ffmpeg
-
275  // demuxer's behavior.
-
276  block_additional_data_size_ = size + sizeof(block_add_id);
-
277  block_additional_data_.reset(new uint8_t[block_additional_data_size_]);
-
278  memcpy(block_additional_data_.get(), &block_add_id,
-
279  sizeof(block_add_id));
-
280  memcpy(block_additional_data_.get() + 8, data, size);
-
281  return true;
-
282  }
-
283  case kWebMIdDiscardPadding: {
-
284  if (discard_padding_set_ || size <= 0 || size > 8)
-
285  return false;
-
286  discard_padding_set_ = true;
-
287 
-
288  // Read in the big-endian integer.
-
289  discard_padding_ = static_cast<int8_t>(data[0]);
-
290  for (int i = 1; i < size; ++i)
-
291  discard_padding_ = (discard_padding_ << 8) | data[i];
-
292 
-
293  return true;
-
294  }
-
295  default:
+
199  case kWebMIdBlockAddID:
+
200  dst = &block_add_id_;
+
201  break;
+
202  default:
+
203  return true;
+
204  }
+
205  if (*dst != -1)
+
206  return false;
+
207  *dst = val;
+
208  return true;
+
209 }
+
210 
+
211 bool WebMClusterParser::ParseBlock(bool is_simple_block,
+
212  const uint8_t* buf,
+
213  int size,
+
214  const uint8_t* additional,
+
215  int additional_size,
+
216  int duration,
+
217  int64_t discard_padding) {
+
218  if (size < 4)
+
219  return false;
+
220 
+
221  // Return an error if the trackNum > 127. We just aren't
+
222  // going to support large track numbers right now.
+
223  if (!(buf[0] & 0x80)) {
+
224  LOG(ERROR) << "TrackNumber over 127 not supported";
+
225  return false;
+
226  }
+
227 
+
228  int track_num = buf[0] & 0x7f;
+
229  int timecode = buf[1] << 8 | buf[2];
+
230  int flags = buf[3] & 0xff;
+
231  int lacing = (flags >> 1) & 0x3;
+
232 
+
233  if (lacing) {
+
234  LOG(ERROR) << "Lacing " << lacing << " is not supported yet.";
+
235  return false;
+
236  }
+
237 
+
238  // Sign extend negative timecode offsets.
+
239  if (timecode & 0x8000)
+
240  timecode |= ~0xffff;
+
241 
+
242  const uint8_t* frame_data = buf + 4;
+
243  int frame_size = size - (frame_data - buf);
+
244  return OnBlock(is_simple_block, track_num, timecode, duration, flags,
+
245  frame_data, frame_size, additional, additional_size,
+
246  discard_padding);
+
247 }
+
248 
+
249 bool WebMClusterParser::OnBinary(int id, const uint8_t* data, int size) {
+
250  switch (id) {
+
251  case kWebMIdSimpleBlock:
+
252  return ParseBlock(true, data, size, NULL, 0, -1, 0);
+
253 
+
254  case kWebMIdBlock:
+
255  if (block_data_) {
+
256  LOG(ERROR) << "More than 1 Block in a BlockGroup is not "
+
257  "supported.";
+
258  return false;
+
259  }
+
260  block_data_.reset(new uint8_t[size]);
+
261  memcpy(block_data_.get(), data, size);
+
262  block_data_size_ = size;
+
263  return true;
+
264 
+
265  case kWebMIdBlockAdditional: {
+
266  uint64_t block_add_id = base::HostToNet64(block_add_id_);
+
267  if (block_additional_data_) {
+
268  // TODO: Technically, more than 1 BlockAdditional is allowed as per
+
269  // matroska spec. But for now we don't have a use case to support
+
270  // parsing of such files. Take a look at this again when such a case
+
271  // arises.
+
272  LOG(ERROR) << "More than 1 BlockAdditional in a "
+
273  "BlockGroup is not supported.";
+
274  return false;
+
275  }
+
276  // First 8 bytes of side_data in DecoderBuffer is the BlockAddID
+
277  // element's value in Big Endian format. This is done to mimic ffmpeg
+
278  // demuxer's behavior.
+
279  block_additional_data_size_ = size + sizeof(block_add_id);
+
280  block_additional_data_.reset(new uint8_t[block_additional_data_size_]);
+
281  memcpy(block_additional_data_.get(), &block_add_id,
+
282  sizeof(block_add_id));
+
283  memcpy(block_additional_data_.get() + 8, data, size);
+
284  return true;
+
285  }
+
286  case kWebMIdDiscardPadding: {
+
287  if (discard_padding_set_ || size <= 0 || size > 8)
+
288  return false;
+
289  discard_padding_set_ = true;
+
290 
+
291  // Read in the big-endian integer.
+
292  discard_padding_ = static_cast<int8_t>(data[0]);
+
293  for (int i = 1; i < size; ++i)
+
294  discard_padding_ = (discard_padding_ << 8) | data[i];
+
295 
296  return true;
-
297  }
-
298 }
-
299 
-
300 bool WebMClusterParser::OnBlock(bool is_simple_block,
-
301  int track_num,
-
302  int timecode,
-
303  int block_duration,
-
304  int flags,
-
305  const uint8_t* data,
-
306  int size,
-
307  const uint8_t* additional,
-
308  int additional_size,
-
309  int64_t discard_padding) {
-
310  DCHECK_GE(size, 0);
-
311  if (cluster_timecode_ == -1) {
-
312  LOG(ERROR) << "Got a block before cluster timecode.";
-
313  return false;
-
314  }
-
315 
-
316  // TODO: Should relative negative timecode offsets be rejected? Or only when
-
317  // the absolute timecode is negative? See http://crbug.com/271794
-
318  if (timecode < 0) {
-
319  LOG(ERROR) << "Got a block with negative timecode offset " << timecode;
-
320  return false;
-
321  }
-
322 
-
323  if (last_block_timecode_ != -1 && timecode < last_block_timecode_) {
-
324  LOG(ERROR) << "Got a block with a timecode before the previous block.";
-
325  return false;
-
326  }
-
327 
-
328  Track* track = NULL;
-
329  StreamType stream_type = kStreamAudio;
-
330  std::string encryption_key_id;
-
331  if (track_num == audio_.track_num()) {
-
332  track = &audio_;
-
333  encryption_key_id = audio_encryption_key_id_;
-
334  } else if (track_num == video_.track_num()) {
-
335  track = &video_;
-
336  encryption_key_id = video_encryption_key_id_;
-
337  stream_type = kStreamVideo;
-
338  } else if (ignored_tracks_.find(track_num) != ignored_tracks_.end()) {
-
339  return true;
-
340  } else if (Track* const text_track = FindTextTrack(track_num)) {
-
341  if (is_simple_block) // BlockGroup is required for WebVTT cues
-
342  return false;
-
343  if (block_duration < 0) // not specified
-
344  return false;
-
345  track = text_track;
-
346  stream_type = kStreamText;
-
347  } else {
-
348  LOG(ERROR) << "Unexpected track number " << track_num;
-
349  return false;
-
350  }
-
351 
-
352  last_block_timecode_ = timecode;
-
353 
-
354  int64_t timestamp = (cluster_timecode_ + timecode) * timecode_multiplier_;
-
355 
-
356  scoped_refptr<MediaSample> buffer;
-
357  if (stream_type != kStreamText) {
-
358  // The first bit of the flags is set when a SimpleBlock contains only
-
359  // keyframes. If this is a Block, then inspection of the payload is
-
360  // necessary to determine whether it contains a keyframe or not.
-
361  // http://www.matroska.org/technical/specs/index.html
-
362  bool is_keyframe =
-
363  is_simple_block
-
364  ? (flags & 0x80) != 0
-
365  : IsKeyframe(stream_type == kStreamVideo,
-
366  video_stream_info_ ? video_stream_info_->codec()
-
367  : kUnknownVideoCodec,
-
368  data, size);
-
369 
-
370  // Every encrypted Block has a signal byte and IV prepended to it. Current
-
371  // encrypted WebM request for comments specification is here
-
372  // http://wiki.webmproject.org/encryption/webm-encryption-rfc
-
373  scoped_ptr<DecryptConfig> decrypt_config;
-
374  int data_offset = 0;
-
375  if (!encryption_key_id.empty() &&
-
376  !WebMCreateDecryptConfig(
-
377  data, size,
-
378  reinterpret_cast<const uint8_t*>(encryption_key_id.data()),
-
379  encryption_key_id.size(),
-
380  &decrypt_config, &data_offset)) {
-
381  return false;
-
382  }
-
383 
-
384  buffer = MediaSample::CopyFrom(data + data_offset, size - data_offset,
-
385  additional, additional_size, is_keyframe);
-
386 
-
387  if (decrypt_config) {
-
388  // TODO(kqyang): Decrypt it if it is encrypted.
-
389  buffer->set_is_encrypted(true);
-
390  }
-
391  } else {
-
392  std::string id, settings, content;
-
393  WebMWebVTTParser::Parse(data, size, &id, &settings, &content);
-
394 
-
395  std::vector<uint8_t> side_data;
-
396  MakeSideData(id.begin(), id.end(),
-
397  settings.begin(), settings.end(),
-
398  &side_data);
-
399 
-
400  buffer = MediaSample::CopyFrom(
-
401  reinterpret_cast<const uint8_t*>(content.data()), content.length(),
-
402  &side_data[0], side_data.size(), true);
-
403  }
-
404 
-
405  buffer->set_dts(timestamp);
-
406  buffer->set_pts(timestamp);
-
407  if (cluster_start_time_ == kNoTimestamp)
-
408  cluster_start_time_ = timestamp;
-
409  buffer->set_duration(block_duration > 0
-
410  ? (block_duration * timecode_multiplier_)
-
411  : kNoTimestamp);
-
412 
-
413  if (!init_cb_.is_null() && !initialized_) {
-
414  std::vector<scoped_refptr<StreamInfo>> streams;
-
415  if (audio_stream_info_)
-
416  streams.push_back(audio_stream_info_);
-
417  if (video_stream_info_) {
-
418  if (stream_type == kStreamVideo) {
-
419  scoped_ptr<VPxParser> vpx_parser;
-
420  switch (video_stream_info_->codec()) {
-
421  case kCodecVP8:
-
422  vpx_parser.reset(new VP8Parser);
-
423  break;
-
424  case kCodecVP9:
-
425  vpx_parser.reset(new VP9Parser);
-
426  break;
-
427  default:
-
428  NOTIMPLEMENTED() << "Unsupported codec "
-
429  << video_stream_info_->codec();
-
430  return false;
-
431  }
-
432  std::vector<VPxFrameInfo> vpx_frames;
-
433  if (!vpx_parser->Parse(buffer->data(), buffer->data_size(),
-
434  &vpx_frames)) {
-
435  LOG(ERROR) << "Failed to parse vpx frame.";
-
436  return false;
-
437  }
-
438  if (vpx_frames.size() != 1u || !vpx_frames[0].is_keyframe) {
-
439  LOG(ERROR) << "The first frame should be a key frame.";
-
440  return false;
-
441  }
-
442 
-
443  const VPCodecConfiguration* codec_config = &vpx_parser->codec_config();
-
444  video_stream_info_->set_codec_string(
-
445  codec_config->GetCodecString(video_stream_info_->codec()));
-
446  std::vector<uint8_t> extra_data;
-
447  codec_config->Write(&extra_data);
-
448  video_stream_info_->set_extra_data(extra_data);
-
449  streams.push_back(video_stream_info_);
-
450  init_cb_.Run(streams);
-
451  initialized_ = true;
-
452  }
-
453  } else {
-
454  init_cb_.Run(streams);
-
455  initialized_ = true;
-
456  }
-
457  }
-
458 
-
459  return track->EmitBuffer(buffer);
-
460 }
-
461 
-
462 WebMClusterParser::Track::Track(int track_num,
-
463  bool is_video,
-
464  int64_t default_duration,
-
465  const MediaParser::NewSampleCB& new_sample_cb)
-
466  : track_num_(track_num),
-
467  is_video_(is_video),
-
468  default_duration_(default_duration),
-
469  estimated_next_frame_duration_(kNoTimestamp),
-
470  new_sample_cb_(new_sample_cb) {
-
471  DCHECK(default_duration_ == kNoTimestamp || default_duration_ > 0);
-
472 }
+
297  }
+
298  default:
+
299  return true;
+
300  }
+
301 }
+
302 
+
303 bool WebMClusterParser::OnBlock(bool is_simple_block,
+
304  int track_num,
+
305  int timecode,
+
306  int block_duration,
+
307  int flags,
+
308  const uint8_t* data,
+
309  int size,
+
310  const uint8_t* additional,
+
311  int additional_size,
+
312  int64_t discard_padding) {
+
313  DCHECK_GE(size, 0);
+
314  if (cluster_timecode_ == -1) {
+
315  LOG(ERROR) << "Got a block before cluster timecode.";
+
316  return false;
+
317  }
+
318 
+
319  // TODO: Should relative negative timecode offsets be rejected? Or only when
+
320  // the absolute timecode is negative? See http://crbug.com/271794
+
321  if (timecode < 0) {
+
322  LOG(ERROR) << "Got a block with negative timecode offset " << timecode;
+
323  return false;
+
324  }
+
325 
+
326  if (last_block_timecode_ != -1 && timecode < last_block_timecode_) {
+
327  LOG(ERROR) << "Got a block with a timecode before the previous block.";
+
328  return false;
+
329  }
+
330 
+
331  Track* track = NULL;
+
332  StreamType stream_type = kStreamUnknown;
+
333  std::string encryption_key_id;
+
334  if (track_num == audio_.track_num()) {
+
335  track = &audio_;
+
336  encryption_key_id = audio_encryption_key_id_;
+
337  stream_type = kStreamAudio;
+
338  } else if (track_num == video_.track_num()) {
+
339  track = &video_;
+
340  encryption_key_id = video_encryption_key_id_;
+
341  stream_type = kStreamVideo;
+
342  } else if (ignored_tracks_.find(track_num) != ignored_tracks_.end()) {
+
343  return true;
+
344  } else if (Track* const text_track = FindTextTrack(track_num)) {
+
345  if (is_simple_block) // BlockGroup is required for WebVTT cues
+
346  return false;
+
347  if (block_duration < 0) // not specified
+
348  return false;
+
349  track = text_track;
+
350  stream_type = kStreamText;
+
351  } else {
+
352  LOG(ERROR) << "Unexpected track number " << track_num;
+
353  return false;
+
354  }
+
355  DCHECK_NE(stream_type, kStreamUnknown);
+
356 
+
357  last_block_timecode_ = timecode;
+
358 
+
359  int64_t timestamp = (cluster_timecode_ + timecode) * timecode_multiplier_;
+
360 
+
361  scoped_refptr<MediaSample> buffer;
+
362  if (stream_type != kStreamText) {
+
363  // The first bit of the flags is set when a SimpleBlock contains only
+
364  // keyframes. If this is a Block, then inspection of the payload is
+
365  // necessary to determine whether it contains a keyframe or not.
+
366  // http://www.matroska.org/technical/specs/index.html
+
367  bool is_keyframe =
+
368  is_simple_block
+
369  ? (flags & 0x80) != 0
+
370  : IsKeyframe(stream_type == kStreamVideo,
+
371  video_stream_info_ ? video_stream_info_->codec()
+
372  : kUnknownVideoCodec,
+
373  data, size);
+
374 
+
375  // Every encrypted Block has a signal byte and IV prepended to it. Current
+
376  // encrypted WebM request for comments specification is here
+
377  // http://wiki.webmproject.org/encryption/webm-encryption-rfc
+
378  scoped_ptr<DecryptConfig> decrypt_config;
+
379  int data_offset = 0;
+
380  if (!encryption_key_id.empty() &&
+
381  !WebMCreateDecryptConfig(
+
382  data, size,
+
383  reinterpret_cast<const uint8_t*>(encryption_key_id.data()),
+
384  encryption_key_id.size(),
+
385  &decrypt_config, &data_offset)) {
+
386  return false;
+
387  }
+
388 
+
389  buffer = MediaSample::CopyFrom(data + data_offset, size - data_offset,
+
390  additional, additional_size, is_keyframe);
+
391 
+
392  // An empty iv indicates that this sample is not encrypted.
+
393  if (decrypt_config && !decrypt_config->iv().empty()) {
+
394  if (!decryptor_source_) {
+
395  LOG(ERROR) << "Encrypted media sample encountered, but decryption is "
+
396  "not enabled";
+
397  return false;
+
398  }
+
399  if (!decryptor_source_->DecryptSampleBuffer(decrypt_config.get(),
+
400  buffer->writable_data(),
+
401  buffer->data_size())) {
+
402  LOG(ERROR) << "Cannot decrypt samples";
+
403  return false;
+
404  }
+
405  }
+
406  } else {
+
407  std::string id, settings, content;
+
408  WebMWebVTTParser::Parse(data, size, &id, &settings, &content);
+
409 
+
410  std::vector<uint8_t> side_data;
+
411  MakeSideData(id.begin(), id.end(),
+
412  settings.begin(), settings.end(),
+
413  &side_data);
+
414 
+
415  buffer = MediaSample::CopyFrom(
+
416  reinterpret_cast<const uint8_t*>(content.data()), content.length(),
+
417  &side_data[0], side_data.size(), true);
+
418  }
+
419 
+
420  buffer->set_dts(timestamp);
+
421  buffer->set_pts(timestamp);
+
422  if (cluster_start_time_ == kNoTimestamp)
+
423  cluster_start_time_ = timestamp;
+
424  buffer->set_duration(block_duration > 0
+
425  ? (block_duration * timecode_multiplier_)
+
426  : kNoTimestamp);
+
427 
+
428  if (!init_cb_.is_null() && !initialized_) {
+
429  std::vector<scoped_refptr<StreamInfo>> streams;
+
430  if (audio_stream_info_)
+
431  streams.push_back(audio_stream_info_);
+
432  if (video_stream_info_) {
+
433  if (stream_type == kStreamVideo) {
+
434  scoped_ptr<VPxParser> vpx_parser;
+
435  switch (video_stream_info_->codec()) {
+
436  case kCodecVP8:
+
437  vpx_parser.reset(new VP8Parser);
+
438  break;
+
439  case kCodecVP9:
+
440  vpx_parser.reset(new VP9Parser);
+
441  break;
+
442  default:
+
443  NOTIMPLEMENTED() << "Unsupported codec "
+
444  << video_stream_info_->codec();
+
445  return false;
+
446  }
+
447  std::vector<VPxFrameInfo> vpx_frames;
+
448  if (!vpx_parser->Parse(buffer->data(), buffer->data_size(),
+
449  &vpx_frames)) {
+
450  LOG(ERROR) << "Failed to parse vpx frame.";
+
451  return false;
+
452  }
+
453  if (vpx_frames.size() != 1u || !vpx_frames[0].is_keyframe) {
+
454  LOG(ERROR) << "The first frame should be a key frame.";
+
455  return false;
+
456  }
+
457 
+
458  const VPCodecConfiguration* codec_config = &vpx_parser->codec_config();
+
459  video_stream_info_->set_codec_string(
+
460  codec_config->GetCodecString(video_stream_info_->codec()));
+
461  std::vector<uint8_t> extra_data;
+
462  codec_config->Write(&extra_data);
+
463  video_stream_info_->set_extra_data(extra_data);
+
464  streams.push_back(video_stream_info_);
+
465  init_cb_.Run(streams);
+
466  initialized_ = true;
+
467  }
+
468  } else {
+
469  init_cb_.Run(streams);
+
470  initialized_ = true;
+
471  }
+
472  }
473 
-
474 WebMClusterParser::Track::~Track() {}
-
475 
-
476 bool WebMClusterParser::Track::EmitBuffer(
-
477  const scoped_refptr<MediaSample>& buffer) {
-
478  DVLOG(2) << "EmitBuffer() : " << track_num_
-
479  << " ts " << buffer->pts()
-
480  << " dur " << buffer->duration()
-
481  << " kf " << buffer->is_key_frame()
-
482  << " size " << buffer->data_size();
-
483 
-
484  if (last_added_buffer_missing_duration_.get()) {
-
485  int64_t derived_duration =
-
486  buffer->pts() - last_added_buffer_missing_duration_->pts();
-
487  last_added_buffer_missing_duration_->set_duration(derived_duration);
+
474  return track->EmitBuffer(buffer);
+
475 }
+
476 
+
477 WebMClusterParser::Track::Track(int track_num,
+
478  bool is_video,
+
479  int64_t default_duration,
+
480  const MediaParser::NewSampleCB& new_sample_cb)
+
481  : track_num_(track_num),
+
482  is_video_(is_video),
+
483  default_duration_(default_duration),
+
484  estimated_next_frame_duration_(kNoTimestamp),
+
485  new_sample_cb_(new_sample_cb) {
+
486  DCHECK(default_duration_ == kNoTimestamp || default_duration_ > 0);
+
487 }
488 
-
489  DVLOG(2) << "EmitBuffer() : applied derived duration to held-back buffer : "
-
490  << " ts "
-
491  << last_added_buffer_missing_duration_->pts()
-
492  << " dur "
-
493  << last_added_buffer_missing_duration_->duration()
-
494  << " kf " << last_added_buffer_missing_duration_->is_key_frame()
-
495  << " size " << last_added_buffer_missing_duration_->data_size();
-
496  scoped_refptr<MediaSample> updated_buffer =
-
497  last_added_buffer_missing_duration_;
-
498  last_added_buffer_missing_duration_ = NULL;
-
499  if (!EmitBufferHelp(updated_buffer))
-
500  return false;
-
501  }
-
502 
-
503  if (buffer->duration() == kNoTimestamp) {
-
504  last_added_buffer_missing_duration_ = buffer;
-
505  DVLOG(2) << "EmitBuffer() : holding back buffer that is missing duration";
-
506  return true;
-
507  }
-
508 
-
509  return EmitBufferHelp(buffer);
-
510 }
-
511 
-
512 void WebMClusterParser::Track::ApplyDurationEstimateIfNeeded() {
-
513  if (!last_added_buffer_missing_duration_.get())
-
514  return;
-
515 
-
516  int64_t estimated_duration = GetDurationEstimate();
-
517  last_added_buffer_missing_duration_->set_duration(estimated_duration);
-
518 
-
519  VLOG(1) << "Track " << track_num_ << ": Estimating WebM block duration to be "
-
520  << estimated_duration / 1000
-
521  << "ms for the last (Simple)Block in the Cluster for this Track. Use "
-
522  "BlockGroups with BlockDurations at the end of each Track in a "
-
523  "Cluster to avoid estimation.";
-
524 
-
525  DVLOG(2) << " new dur : ts " << last_added_buffer_missing_duration_->pts()
-
526  << " dur " << last_added_buffer_missing_duration_->duration()
-
527  << " kf " << last_added_buffer_missing_duration_->is_key_frame()
-
528  << " size " << last_added_buffer_missing_duration_->data_size();
-
529 
-
530  // Don't use the applied duration as a future estimation (don't use
-
531  // EmitBufferHelp() here.)
-
532  new_sample_cb_.Run(track_num_, last_added_buffer_missing_duration_);
-
533  last_added_buffer_missing_duration_ = NULL;
-
534 }
-
535 
-
536 void WebMClusterParser::Track::Reset() {
-
537  last_added_buffer_missing_duration_ = NULL;
-
538 }
+
489 WebMClusterParser::Track::~Track() {}
+
490 
+
491 bool WebMClusterParser::Track::EmitBuffer(
+
492  const scoped_refptr<MediaSample>& buffer) {
+
493  DVLOG(2) << "EmitBuffer() : " << track_num_
+
494  << " ts " << buffer->pts()
+
495  << " dur " << buffer->duration()
+
496  << " kf " << buffer->is_key_frame()
+
497  << " size " << buffer->data_size();
+
498 
+
499  if (last_added_buffer_missing_duration_.get()) {
+
500  int64_t derived_duration =
+
501  buffer->pts() - last_added_buffer_missing_duration_->pts();
+
502  last_added_buffer_missing_duration_->set_duration(derived_duration);
+
503 
+
504  DVLOG(2) << "EmitBuffer() : applied derived duration to held-back buffer : "
+
505  << " ts "
+
506  << last_added_buffer_missing_duration_->pts()
+
507  << " dur "
+
508  << last_added_buffer_missing_duration_->duration()
+
509  << " kf " << last_added_buffer_missing_duration_->is_key_frame()
+
510  << " size " << last_added_buffer_missing_duration_->data_size();
+
511  scoped_refptr<MediaSample> updated_buffer =
+
512  last_added_buffer_missing_duration_;
+
513  last_added_buffer_missing_duration_ = NULL;
+
514  if (!EmitBufferHelp(updated_buffer))
+
515  return false;
+
516  }
+
517 
+
518  if (buffer->duration() == kNoTimestamp) {
+
519  last_added_buffer_missing_duration_ = buffer;
+
520  DVLOG(2) << "EmitBuffer() : holding back buffer that is missing duration";
+
521  return true;
+
522  }
+
523 
+
524  return EmitBufferHelp(buffer);
+
525 }
+
526 
+
527 void WebMClusterParser::Track::ApplyDurationEstimateIfNeeded() {
+
528  if (!last_added_buffer_missing_duration_.get())
+
529  return;
+
530 
+
531  int64_t estimated_duration = GetDurationEstimate();
+
532  last_added_buffer_missing_duration_->set_duration(estimated_duration);
+
533 
+
534  VLOG(1) << "Track " << track_num_ << ": Estimating WebM block duration to be "
+
535  << estimated_duration / 1000
+
536  << "ms for the last (Simple)Block in the Cluster for this Track. Use "
+
537  "BlockGroups with BlockDurations at the end of each Track in a "
+
538  "Cluster to avoid estimation.";
539 
-
540 bool WebMClusterParser::Track::EmitBufferHelp(
-
541  const scoped_refptr<MediaSample>& buffer) {
-
542  DCHECK(!last_added_buffer_missing_duration_.get());
-
543 
-
544  int64_t duration = buffer->duration();
-
545  if (duration < 0 || duration == kNoTimestamp) {
-
546  LOG(ERROR) << "Invalid buffer duration: " << duration;
-
547  return false;
-
548  }
-
549 
-
550  // The estimated frame duration is the maximum non-zero duration since the
-
551  // last initialization segment.
-
552  if (duration > 0) {
-
553  int64_t orig_duration_estimate = estimated_next_frame_duration_;
-
554  if (estimated_next_frame_duration_ == kNoTimestamp) {
-
555  estimated_next_frame_duration_ = duration;
-
556  } else {
-
557  estimated_next_frame_duration_ =
-
558  std::max(duration, estimated_next_frame_duration_);
-
559  }
-
560 
-
561  if (orig_duration_estimate != estimated_next_frame_duration_) {
-
562  DVLOG(3) << "Updated duration estimate:"
-
563  << orig_duration_estimate
-
564  << " -> "
-
565  << estimated_next_frame_duration_
-
566  << " at timestamp: "
-
567  << buffer->dts();
-
568  }
-
569  }
-
570 
-
571  new_sample_cb_.Run(track_num_, buffer);
-
572  return true;
-
573 }
-
574 
-
575 int64_t WebMClusterParser::Track::GetDurationEstimate() {
-
576  int64_t duration = kNoTimestamp;
-
577  if (default_duration_ != kNoTimestamp) {
-
578  duration = default_duration_;
-
579  DVLOG(3) << __FUNCTION__ << " : using track default duration " << duration;
-
580  } else if (estimated_next_frame_duration_ != kNoTimestamp) {
-
581  duration = estimated_next_frame_duration_;
-
582  DVLOG(3) << __FUNCTION__ << " : using estimated duration " << duration;
-
583  } else {
-
584  if (is_video_) {
-
585  duration = kDefaultVideoBufferDurationInMs * kMicrosecondsPerMillisecond;
-
586  } else {
-
587  duration = kDefaultAudioBufferDurationInMs * kMicrosecondsPerMillisecond;
-
588  }
-
589  DVLOG(3) << __FUNCTION__ << " : using hardcoded default duration "
-
590  << duration;
-
591  }
-
592 
-
593  DCHECK_GT(duration, 0);
-
594  DCHECK_NE(duration, kNoTimestamp);
-
595  return duration;
-
596 }
-
597 
-
598 void WebMClusterParser::ResetTextTracks() {
-
599  for (TextTrackMap::iterator it = text_track_map_.begin();
-
600  it != text_track_map_.end();
-
601  ++it) {
-
602  it->second.Reset();
-
603  }
-
604 }
-
605 
-
606 WebMClusterParser::Track*
-
607 WebMClusterParser::FindTextTrack(int track_num) {
-
608  const TextTrackMap::iterator it = text_track_map_.find(track_num);
-
609 
-
610  if (it == text_track_map_.end())
-
611  return NULL;
+
540  DVLOG(2) << " new dur : ts " << last_added_buffer_missing_duration_->pts()
+
541  << " dur " << last_added_buffer_missing_duration_->duration()
+
542  << " kf " << last_added_buffer_missing_duration_->is_key_frame()
+
543  << " size " << last_added_buffer_missing_duration_->data_size();
+
544 
+
545  // Don't use the applied duration as a future estimation (don't use
+
546  // EmitBufferHelp() here.)
+
547  new_sample_cb_.Run(track_num_, last_added_buffer_missing_duration_);
+
548  last_added_buffer_missing_duration_ = NULL;
+
549 }
+
550 
+
551 void WebMClusterParser::Track::Reset() {
+
552  last_added_buffer_missing_duration_ = NULL;
+
553 }
+
554 
+
555 bool WebMClusterParser::Track::EmitBufferHelp(
+
556  const scoped_refptr<MediaSample>& buffer) {
+
557  DCHECK(!last_added_buffer_missing_duration_.get());
+
558 
+
559  int64_t duration = buffer->duration();
+
560  if (duration < 0 || duration == kNoTimestamp) {
+
561  LOG(ERROR) << "Invalid buffer duration: " << duration;
+
562  return false;
+
563  }
+
564 
+
565  // The estimated frame duration is the maximum non-zero duration since the
+
566  // last initialization segment.
+
567  if (duration > 0) {
+
568  int64_t orig_duration_estimate = estimated_next_frame_duration_;
+
569  if (estimated_next_frame_duration_ == kNoTimestamp) {
+
570  estimated_next_frame_duration_ = duration;
+
571  } else {
+
572  estimated_next_frame_duration_ =
+
573  std::max(duration, estimated_next_frame_duration_);
+
574  }
+
575 
+
576  if (orig_duration_estimate != estimated_next_frame_duration_) {
+
577  DVLOG(3) << "Updated duration estimate:"
+
578  << orig_duration_estimate
+
579  << " -> "
+
580  << estimated_next_frame_duration_
+
581  << " at timestamp: "
+
582  << buffer->dts();
+
583  }
+
584  }
+
585 
+
586  new_sample_cb_.Run(track_num_, buffer);
+
587  return true;
+
588 }
+
589 
+
590 int64_t WebMClusterParser::Track::GetDurationEstimate() {
+
591  int64_t duration = kNoTimestamp;
+
592  if (default_duration_ != kNoTimestamp) {
+
593  duration = default_duration_;
+
594  DVLOG(3) << __FUNCTION__ << " : using track default duration " << duration;
+
595  } else if (estimated_next_frame_duration_ != kNoTimestamp) {
+
596  duration = estimated_next_frame_duration_;
+
597  DVLOG(3) << __FUNCTION__ << " : using estimated duration " << duration;
+
598  } else {
+
599  if (is_video_) {
+
600  duration = kDefaultVideoBufferDurationInMs * kMicrosecondsPerMillisecond;
+
601  } else {
+
602  duration = kDefaultAudioBufferDurationInMs * kMicrosecondsPerMillisecond;
+
603  }
+
604  DVLOG(3) << __FUNCTION__ << " : using hardcoded default duration "
+
605  << duration;
+
606  }
+
607 
+
608  DCHECK_GT(duration, 0);
+
609  DCHECK_NE(duration, kNoTimestamp);
+
610  return duration;
+
611 }
612 
-
613  return &it->second;
-
614 }
-
615 
-
616 } // namespace media
-
617 } // namespace edash_packager
+
613 void WebMClusterParser::ResetTextTracks() {
+
614  for (TextTrackMap::iterator it = text_track_map_.begin();
+
615  it != text_track_map_.end();
+
616  ++it) {
+
617  it->second.Reset();
+
618  }
+
619 }
+
620 
+
621 WebMClusterParser::Track*
+
622 WebMClusterParser::FindTextTrack(int track_num) {
+
623  const TextTrackMap::iterator it = text_track_map_.find(track_num);
+
624 
+
625  if (it == text_track_map_.end())
+
626  return NULL;
+
627 
+
628  return &it->second;
+
629 }
+
630 
+
631 } // namespace media
+
632 } // namespace edash_packager
-
void Reset()
Resets the parser state so it can accept a new cluster.
+
void Reset()
Resets the parser state so it can accept a new cluster.
static bool IsKeyframe(const uint8_t *data, size_t data_size)
Definition: vp8_parser.cc:183
+
DecryptorSource wraps KeySource and is responsible for decryptor management.
static scoped_refptr< MediaSample > CopyFrom(const uint8_t *data, size_t size, bool is_key_frame)
Definition: media_sample.cc:45
static void Parse(const uint8_t *payload, int payload_size, std::string *id, std::string *settings, std::string *content)
Utility function to parse the WebVTT cue from a byte stream.
-
int Parse(const uint8_t *buf, int size)
+
int Parse(const uint8_t *buf, int size)
base::Callback< bool(uint32_t track_id, const scoped_refptr< MediaSample > &media_sample)> NewSampleCB
Definition: media_parser.h:43
+
KeySource is responsible for encryption key acquisition.
Definition: key_source.h:29
base::Callback< void(const std::vector< scoped_refptr< StreamInfo > > &stream_info)> InitCB
Definition: media_parser.h:34
static bool IsKeyframe(const uint8_t *data, size_t data_size)
Definition: vp9_parser.cc:534
+
WebMClusterParser(int64_t timecode_scale, scoped_refptr< AudioStreamInfo > audio_stream_info, scoped_refptr< VideoStreamInfo > video_stream_info, int64_t audio_default_duration, int64_t video_default_duration, const WebMTracksParser::TextTracks &text_tracks, const std::set< int64_t > &ignored_tracks, const std::string &audio_encryption_key_id, const std::string &video_encryption_key_id, const MediaParser::NewSampleCB &new_sample_cb, const MediaParser::InitCB &init_cb, KeySource *decryption_key_source)
int Parse(const uint8_t *buf, int size)
Definition: webm_parser.cc:719
void Reset()
Resets the state of the parser so it can start parsing a new list.
Definition: webm_parser.cc:714
- + diff --git a/docs/d5/d91/es__parser__adts_8cc_source.html b/docs/d5/d91/es__parser__adts_8cc_source.html index c891e38660..4151ef9e04 100644 --- a/docs/d5/d91/es__parser__adts_8cc_source.html +++ b/docs/d5/d91/es__parser__adts_8cc_source.html @@ -376,7 +376,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d98/encryptor_8cc_source.html b/docs/d5/d98/encryptor_8cc_source.html index df7965597a..138244f603 100644 --- a/docs/d5/d98/encryptor_8cc_source.html +++ b/docs/d5/d98/encryptor_8cc_source.html @@ -235,7 +235,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/d9c/classedash__packager_1_1MpdNotifierFactory-members.html b/docs/d5/d9c/classedash__packager_1_1MpdNotifierFactory-members.html index 36ea9fdba3..bef46089b3 100644 --- a/docs/d5/d9c/classedash__packager_1_1MpdNotifierFactory-members.html +++ b/docs/d5/d9c/classedash__packager_1_1MpdNotifierFactory-members.html @@ -99,7 +99,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/da4/aes__encryptor_8cc_source.html b/docs/d5/da4/aes__encryptor_8cc_source.html index c42605b4ee..03654a3401 100644 --- a/docs/d5/da4/aes__encryptor_8cc_source.html +++ b/docs/d5/da4/aes__encryptor_8cc_source.html @@ -568,7 +568,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/db7/classedash__packager_1_1xml_1_1AdaptationSetXmlNode-members.html b/docs/d5/db7/classedash__packager_1_1xml_1_1AdaptationSetXmlNode-members.html index de3bf8feb2..54f9a7a5a1 100644 --- a/docs/d5/db7/classedash__packager_1_1xml_1_1AdaptationSetXmlNode-members.html +++ b/docs/d5/db7/classedash__packager_1_1xml_1_1AdaptationSetXmlNode-members.html @@ -114,7 +114,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/dba/ts__packet_8cc_source.html b/docs/d5/dba/ts__packet_8cc_source.html index 91cd9a1344..25dc30ec13 100644 --- a/docs/d5/dba/ts__packet_8cc_source.html +++ b/docs/d5/dba/ts__packet_8cc_source.html @@ -304,7 +304,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/dc1/webm__webvtt__parser_8cc_source.html b/docs/d5/dc1/webm__webvtt__parser_8cc_source.html index b029f40994..5cad4d36c4 100644 --- a/docs/d5/dc1/webm__webvtt__parser_8cc_source.html +++ b/docs/d5/dc1/webm__webvtt__parser_8cc_source.html @@ -171,7 +171,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/dce/classedash__packager_1_1media_1_1Demuxer.html b/docs/d5/dce/classedash__packager_1_1media_1_1Demuxer.html index e6180245cf..c863768648 100644 --- a/docs/d5/dce/classedash__packager_1_1media_1_1Demuxer.html +++ b/docs/d5/dce/classedash__packager_1_1media_1_1Demuxer.html @@ -294,7 +294,7 @@ Public Member Functions diff --git a/docs/d5/dce/classedash__packager_1_1media_1_1VP8Parser.html b/docs/d5/dce/classedash__packager_1_1media_1_1VP8Parser.html index cf16ccd698..969c843a72 100644 --- a/docs/d5/dce/classedash__packager_1_1media_1_1VP8Parser.html +++ b/docs/d5/dce/classedash__packager_1_1media_1_1VP8Parser.html @@ -235,7 +235,7 @@ Additional Inherited Members diff --git a/docs/d5/dcf/rsa__key_8h_source.html b/docs/d5/dcf/rsa__key_8h_source.html index 2d45942475..21cdcbca69 100644 --- a/docs/d5/dcf/rsa__key_8h_source.html +++ b/docs/d5/dcf/rsa__key_8h_source.html @@ -165,7 +165,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/dd2/classedash__packager_1_1media_1_1VPxParser.html b/docs/d5/dd2/classedash__packager_1_1media_1_1VPxParser.html index cceb4ce54d..f76d633b35 100644 --- a/docs/d5/dd2/classedash__packager_1_1media_1_1VPxParser.html +++ b/docs/d5/dd2/classedash__packager_1_1media_1_1VPxParser.html @@ -205,7 +205,7 @@ Protected Member Functions diff --git a/docs/d5/dda/ts__section__psi_8h_source.html b/docs/d5/dda/ts__section__psi_8h_source.html index 5ae17c0a51..b3222c8053 100644 --- a/docs/d5/dda/ts__section__psi_8h_source.html +++ b/docs/d5/dda/ts__section__psi_8h_source.html @@ -151,7 +151,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/de0/bit__reader_8cc_source.html b/docs/d5/de0/bit__reader_8cc_source.html index 7dcdd0dd41..52b57d7568 100644 --- a/docs/d5/de0/bit__reader_8cc_source.html +++ b/docs/d5/de0/bit__reader_8cc_source.html @@ -199,7 +199,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/dec/classedash__packager_1_1media_1_1wvm_1_1WvmMediaParser-members.html b/docs/d5/dec/classedash__packager_1_1media_1_1wvm_1_1WvmMediaParser-members.html index eafb9dc20b..5a772461eb 100644 --- a/docs/d5/dec/classedash__packager_1_1media_1_1wvm_1_1WvmMediaParser-members.html +++ b/docs/d5/dec/classedash__packager_1_1media_1_1wvm_1_1WvmMediaParser-members.html @@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/def/ts__section__pmt_8h_source.html b/docs/d5/def/ts__section__pmt_8h_source.html index 958c568336..09abb42196 100644 --- a/docs/d5/def/ts__section__pmt_8h_source.html +++ b/docs/d5/def/ts__section__pmt_8h_source.html @@ -133,7 +133,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/df8/classedash__packager_1_1media_1_1H264BitReader-members.html b/docs/d5/df8/classedash__packager_1_1media_1_1H264BitReader-members.html index 6ea568948b..e318ff4aec 100644 --- a/docs/d5/df8/classedash__packager_1_1media_1_1H264BitReader-members.html +++ b/docs/d5/df8/classedash__packager_1_1media_1_1H264BitReader-members.html @@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d5/dfc/file_8cc_source.html b/docs/d5/dfc/file_8cc_source.html index 7493861e16..b77474f554 100644 --- a/docs/d5/dfc/file_8cc_source.html +++ b/docs/d5/dfc/file_8cc_source.html @@ -376,7 +376,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d00/structedash__packager_1_1media_1_1mp4_1_1Box-members.html b/docs/d6/d00/structedash__packager_1_1media_1_1mp4_1_1Box-members.html index 43d235f36c..6389f63b4a 100644 --- a/docs/d6/d00/structedash__packager_1_1media_1_1mp4_1_1Box-members.html +++ b/docs/d6/d00/structedash__packager_1_1media_1_1mp4_1_1Box-members.html @@ -107,7 +107,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d06/classedash__packager_1_1media_1_1StreamInfo.html b/docs/d6/d06/classedash__packager_1_1media_1_1StreamInfo.html index 85341bcc1b..b4940ef765 100644 --- a/docs/d6/d06/classedash__packager_1_1media_1_1StreamInfo.html +++ b/docs/d6/d06/classedash__packager_1_1media_1_1StreamInfo.html @@ -229,7 +229,7 @@ class base::RefCountedThre diff --git a/docs/d6/d10/classedash__packager_1_1media_1_1VideoStreamInfo-members.html b/docs/d6/d10/classedash__packager_1_1media_1_1VideoStreamInfo-members.html index d810a50579..d89677a4e8 100644 --- a/docs/d6/d10/classedash__packager_1_1media_1_1VideoStreamInfo-members.html +++ b/docs/d6/d10/classedash__packager_1_1media_1_1VideoStreamInfo-members.html @@ -125,7 +125,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d12/structedash__packager_1_1media_1_1mp4_1_1OriginalFormat-members.html b/docs/d6/d12/structedash__packager_1_1media_1_1mp4_1_1OriginalFormat-members.html index 81be5339a8..98c28dde21 100644 --- a/docs/d6/d12/structedash__packager_1_1media_1_1mp4_1_1OriginalFormat-members.html +++ b/docs/d6/d12/structedash__packager_1_1media_1_1mp4_1_1OriginalFormat-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d13/classedash__packager_1_1media_1_1mp4_1_1CompositionOffsetIterator-members.html b/docs/d6/d13/classedash__packager_1_1media_1_1mp4_1_1CompositionOffsetIterator-members.html index a533756e55..be7ca40ff3 100644 --- a/docs/d6/d13/classedash__packager_1_1media_1_1mp4_1_1CompositionOffsetIterator-members.html +++ b/docs/d6/d13/classedash__packager_1_1media_1_1mp4_1_1CompositionOffsetIterator-members.html @@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d16/text__stream__info_8cc_source.html b/docs/d6/d16/text__stream__info_8cc_source.html index 7ac0a50034..060ce8ac33 100644 --- a/docs/d6/d16/text__stream__info_8cc_source.html +++ b/docs/d6/d16/text__stream__info_8cc_source.html @@ -132,7 +132,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d17/es__parser__h264_8cc_source.html b/docs/d6/d17/es__parser__h264_8cc_source.html index 84ecba347b..a448ab1882 100644 --- a/docs/d6/d17/es__parser__h264_8cc_source.html +++ b/docs/d6/d17/es__parser__h264_8cc_source.html @@ -482,7 +482,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d19/structedash__packager_1_1media_1_1mp4_1_1SampleGroupDescription-members.html b/docs/d6/d19/structedash__packager_1_1media_1_1mp4_1_1SampleGroupDescription-members.html index 4d707a97a2..304f7be8f3 100644 --- a/docs/d6/d19/structedash__packager_1_1media_1_1mp4_1_1SampleGroupDescription-members.html +++ b/docs/d6/d19/structedash__packager_1_1media_1_1mp4_1_1SampleGroupDescription-members.html @@ -114,7 +114,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d1b/classedash__packager_1_1media_1_1ClosureThread-members.html b/docs/d6/d1b/classedash__packager_1_1media_1_1ClosureThread-members.html index bc138b0ab7..bf0aaa0036 100644 --- a/docs/d6/d1b/classedash__packager_1_1media_1_1ClosureThread-members.html +++ b/docs/d6/d1b/classedash__packager_1_1media_1_1ClosureThread-members.html @@ -99,7 +99,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d2e/mpd__notifier__util_8cc_source.html b/docs/d6/d2e/mpd__notifier__util_8cc_source.html index 76e0d94a1f..5c036f1d44 100644 --- a/docs/d6/d2e/mpd__notifier__util_8cc_source.html +++ b/docs/d6/d2e/mpd__notifier__util_8cc_source.html @@ -170,7 +170,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d35/webm__content__encodings_8cc_source.html b/docs/d6/d35/webm__content__encodings_8cc_source.html index 85779a4eee..aec201454c 100644 --- a/docs/d6/d35/webm__content__encodings_8cc_source.html +++ b/docs/d6/d35/webm__content__encodings_8cc_source.html @@ -120,7 +120,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d37/classedash__packager_1_1xml_1_1AdaptationSetXmlNode.html b/docs/d6/d37/classedash__packager_1_1xml_1_1AdaptationSetXmlNode.html index 643ba08280..a2de94647c 100644 --- a/docs/d6/d37/classedash__packager_1_1xml_1_1AdaptationSetXmlNode.html +++ b/docs/d6/d37/classedash__packager_1_1xml_1_1AdaptationSetXmlNode.html @@ -197,7 +197,7 @@ Additional Inherited Members diff --git a/docs/d6/d3a/classedash__packager_1_1media_1_1AesRequestSigner-members.html b/docs/d6/d3a/classedash__packager_1_1media_1_1AesRequestSigner-members.html index 1b1ac33f64..1e9786a9a7 100644 --- a/docs/d6/d3a/classedash__packager_1_1media_1_1AesRequestSigner-members.html +++ b/docs/d6/d3a/classedash__packager_1_1media_1_1AesRequestSigner-members.html @@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d3b/chunk__info__iterator_8cc_source.html b/docs/d6/d3b/chunk__info__iterator_8cc_source.html index 3527e30682..24812e6e42 100644 --- a/docs/d6/d3b/chunk__info__iterator_8cc_source.html +++ b/docs/d6/d3b/chunk__info__iterator_8cc_source.html @@ -171,7 +171,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d3d/structedash__packager_1_1media_1_1mp4_1_1IndependentSubstream.html b/docs/d6/d3d/structedash__packager_1_1media_1_1mp4_1_1IndependentSubstream.html index 089f42fa7f..838a7004ba 100644 --- a/docs/d6/d3d/structedash__packager_1_1media_1_1mp4_1_1IndependentSubstream.html +++ b/docs/d6/d3d/structedash__packager_1_1media_1_1mp4_1_1IndependentSubstream.html @@ -130,7 +130,7 @@ uint16_t channel_location< diff --git a/docs/d6/d41/encrypting__fragmenter_8cc_source.html b/docs/d6/d41/encrypting__fragmenter_8cc_source.html index fd46f82d94..b5e44d155c 100644 --- a/docs/d6/d41/encrypting__fragmenter_8cc_source.html +++ b/docs/d6/d41/encrypting__fragmenter_8cc_source.html @@ -328,7 +328,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d48/structedash__packager_1_1media_1_1mp4_1_1DataEntryUrl-members.html b/docs/d6/d48/structedash__packager_1_1media_1_1mp4_1_1DataEntryUrl-members.html index e7a4052189..42e769fbe4 100644 --- a/docs/d6/d48/structedash__packager_1_1media_1_1mp4_1_1DataEntryUrl-members.html +++ b/docs/d6/d48/structedash__packager_1_1media_1_1mp4_1_1DataEntryUrl-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d49/classedash__packager_1_1media_1_1AVCDecoderConfiguration.html b/docs/d6/d49/classedash__packager_1_1media_1_1AVCDecoderConfiguration.html index 7a44fbca01..8c7c6fd3ac 100644 --- a/docs/d6/d49/classedash__packager_1_1media_1_1AVCDecoderConfiguration.html +++ b/docs/d6/d49/classedash__packager_1_1media_1_1AVCDecoderConfiguration.html @@ -233,7 +233,7 @@ Static Public Member Functions diff --git a/docs/d6/d4e/webm_2multi__segment__segmenter_8cc_source.html b/docs/d6/d4e/webm_2multi__segment__segmenter_8cc_source.html index 039200813e..07f878352c 100644 --- a/docs/d6/d4e/webm_2multi__segment__segmenter_8cc_source.html +++ b/docs/d6/d4e/webm_2multi__segment__segmenter_8cc_source.html @@ -183,7 +183,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d59/structedash__packager_1_1media_1_1mp4_1_1DataInformation.html b/docs/d6/d59/structedash__packager_1_1media_1_1mp4_1_1DataInformation.html index f70fb64dd9..dadf83b4ca 100644 --- a/docs/d6/d59/structedash__packager_1_1media_1_1mp4_1_1DataInformation.html +++ b/docs/d6/d59/structedash__packager_1_1media_1_1mp4_1_1DataInformation.html @@ -173,7 +173,7 @@ Additional Inherited Members diff --git a/docs/d6/d5d/classedash__packager_1_1media_1_1HEVCDecoderConfiguration.html b/docs/d6/d5d/classedash__packager_1_1media_1_1HEVCDecoderConfiguration.html index 49335eb1e7..4e3b833bc5 100644 --- a/docs/d6/d5d/classedash__packager_1_1media_1_1HEVCDecoderConfiguration.html +++ b/docs/d6/d5d/classedash__packager_1_1media_1_1HEVCDecoderConfiguration.html @@ -185,7 +185,7 @@ Public Member Functions diff --git a/docs/d6/d5e/structedash__packager_1_1media_1_1H264SEIRecoveryPoint-members.html b/docs/d6/d5e/structedash__packager_1_1media_1_1H264SEIRecoveryPoint-members.html index 5f2b03e19c..6ee9a9351f 100644 --- a/docs/d6/d5e/structedash__packager_1_1media_1_1H264SEIRecoveryPoint-members.html +++ b/docs/d6/d5e/structedash__packager_1_1media_1_1H264SEIRecoveryPoint-members.html @@ -100,7 +100,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d5e/structedash__packager_1_1media_1_1mp4_1_1DTSSpecific-members.html b/docs/d6/d5e/structedash__packager_1_1media_1_1mp4_1_1DTSSpecific-members.html index 1103655a2c..a899824b49 100644 --- a/docs/d6/d5e/structedash__packager_1_1media_1_1mp4_1_1DTSSpecific-members.html +++ b/docs/d6/d5e/structedash__packager_1_1media_1_1mp4_1_1DTSSpecific-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d6c/structedash__packager_1_1media_1_1mp4_1_1DataEntryUrl.html b/docs/d6/d6c/structedash__packager_1_1media_1_1mp4_1_1DataEntryUrl.html index f2cab99522..33c1cc0754 100644 --- a/docs/d6/d6c/structedash__packager_1_1media_1_1mp4_1_1DataEntryUrl.html +++ b/docs/d6/d6c/structedash__packager_1_1media_1_1mp4_1_1DataEntryUrl.html @@ -182,7 +182,7 @@ Additional Inherited Members diff --git a/docs/d6/d6e/ts__section__pes_8cc_source.html b/docs/d6/d6e/ts__section__pes_8cc_source.html index ae1d11bffa..5ad939edfc 100644 --- a/docs/d6/d6e/ts__section__pes_8cc_source.html +++ b/docs/d6/d6e/ts__section__pes_8cc_source.html @@ -405,7 +405,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d71/scoped__xml__ptr_8h_source.html b/docs/d6/d71/scoped__xml__ptr_8h_source.html index 1c69928702..d0d1858b33 100644 --- a/docs/d6/d71/scoped__xml__ptr_8h_source.html +++ b/docs/d6/d71/scoped__xml__ptr_8h_source.html @@ -131,7 +131,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d74/structedash__packager_1_1media_1_1mp4_1_1VTTCueBox.html b/docs/d6/d74/structedash__packager_1_1media_1_1mp4_1_1VTTCueBox.html index 4aafedc306..c37b971d33 100644 --- a/docs/d6/d74/structedash__packager_1_1media_1_1mp4_1_1VTTCueBox.html +++ b/docs/d6/d74/structedash__packager_1_1media_1_1mp4_1_1VTTCueBox.html @@ -185,7 +185,7 @@ Additional Inherited Members diff --git a/docs/d6/d77/dash__iop__mpd__notifier_8h_source.html b/docs/d6/d77/dash__iop__mpd__notifier_8h_source.html index 5b9d45963b..39f7bb584e 100644 --- a/docs/d6/d77/dash__iop__mpd__notifier_8h_source.html +++ b/docs/d6/d77/dash__iop__mpd__notifier_8h_source.html @@ -218,7 +218,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d79/structedash__packager_1_1media_1_1mp4_1_1ChunkOffset.html b/docs/d6/d79/structedash__packager_1_1media_1_1mp4_1_1ChunkOffset.html index 8d37a54789..049f77dba9 100644 --- a/docs/d6/d79/structedash__packager_1_1media_1_1mp4_1_1ChunkOffset.html +++ b/docs/d6/d79/structedash__packager_1_1media_1_1mp4_1_1ChunkOffset.html @@ -180,7 +180,7 @@ uint32_t flags diff --git a/docs/d6/d7b/webm__tracks__parser_8h_source.html b/docs/d6/d7b/webm__tracks__parser_8h_source.html index a137d95056..f377ea3e79 100644 --- a/docs/d6/d7b/webm__tracks__parser_8h_source.html +++ b/docs/d6/d7b/webm__tracks__parser_8h_source.html @@ -202,7 +202,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d80/classedash__packager_1_1media_1_1Demuxer-members.html b/docs/d6/d80/classedash__packager_1_1media_1_1Demuxer-members.html index ef96125782..683559902c 100644 --- a/docs/d6/d80/classedash__packager_1_1media_1_1Demuxer-members.html +++ b/docs/d6/d80/classedash__packager_1_1media_1_1Demuxer-members.html @@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d81/classedash__packager_1_1media_1_1LibcryptoThreading-members.html b/docs/d6/d81/classedash__packager_1_1media_1_1LibcryptoThreading-members.html index ae7d32d0e6..5d168df302 100644 --- a/docs/d6/d81/classedash__packager_1_1media_1_1LibcryptoThreading-members.html +++ b/docs/d6/d81/classedash__packager_1_1media_1_1LibcryptoThreading-members.html @@ -98,7 +98,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d86/bandwidth__estimator_8cc_source.html b/docs/d6/d86/bandwidth__estimator_8cc_source.html index ff9c68fbdc..25b55d358e 100644 --- a/docs/d6/d86/bandwidth__estimator_8cc_source.html +++ b/docs/d6/d86/bandwidth__estimator_8cc_source.html @@ -154,7 +154,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d8a/vp9__parser_8cc_source.html b/docs/d6/d8a/vp9__parser_8cc_source.html index b35e3d967a..d885bee010 100644 --- a/docs/d6/d8a/vp9__parser_8cc_source.html +++ b/docs/d6/d8a/vp9__parser_8cc_source.html @@ -659,7 +659,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d8b/structedash__packager_1_1media_1_1mp4_1_1MovieExtends.html b/docs/d6/d8b/structedash__packager_1_1media_1_1mp4_1_1MovieExtends.html index 5061b1cfc8..8b935e419d 100644 --- a/docs/d6/d8b/structedash__packager_1_1media_1_1mp4_1_1MovieExtends.html +++ b/docs/d6/d8b/structedash__packager_1_1media_1_1mp4_1_1MovieExtends.html @@ -176,7 +176,7 @@ Additional Inherited Members diff --git a/docs/d6/d8f/structedash__packager_1_1media_1_1mp4_1_1FullBox.html b/docs/d6/d8f/structedash__packager_1_1media_1_1mp4_1_1FullBox.html index b0ffdf0bd1..33d1817894 100644 --- a/docs/d6/d8f/structedash__packager_1_1media_1_1mp4_1_1FullBox.html +++ b/docs/d6/d8f/structedash__packager_1_1media_1_1mp4_1_1FullBox.html @@ -245,7 +245,7 @@ Protected Member Functions diff --git a/docs/d6/d92/classedash__packager_1_1media_1_1webm_1_1Segmenter-members.html b/docs/d6/d92/classedash__packager_1_1media_1_1webm_1_1Segmenter-members.html index 7340011a8b..ec4ce402a3 100644 --- a/docs/d6/d92/classedash__packager_1_1media_1_1webm_1_1Segmenter-members.html +++ b/docs/d6/d92/classedash__packager_1_1media_1_1webm_1_1Segmenter-members.html @@ -121,7 +121,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d96/structedash__packager_1_1media_1_1mp4_1_1SampleDescription-members.html b/docs/d6/d96/structedash__packager_1_1media_1_1mp4_1_1SampleDescription-members.html index 8a3e24fe66..3af63ceac7 100644 --- a/docs/d6/d96/structedash__packager_1_1media_1_1mp4_1_1SampleDescription-members.html +++ b/docs/d6/d96/structedash__packager_1_1media_1_1mp4_1_1SampleDescription-members.html @@ -116,7 +116,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d97/classedash__packager_1_1media_1_1UdpFile-members.html b/docs/d6/d97/classedash__packager_1_1media_1_1UdpFile-members.html index 02166ade05..fe6a0aafd2 100644 --- a/docs/d6/d97/classedash__packager_1_1media_1_1UdpFile-members.html +++ b/docs/d6/d97/classedash__packager_1_1media_1_1UdpFile-members.html @@ -117,7 +117,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d9b/h264__parser_8h_source.html b/docs/d6/d9b/h264__parser_8h_source.html index 3de2684264..ec85d6fe46 100644 --- a/docs/d6/d9b/h264__parser_8h_source.html +++ b/docs/d6/d9b/h264__parser_8h_source.html @@ -516,7 +516,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/d9c/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPes-members.html b/docs/d6/d9c/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPes-members.html index 94f9e159ca..74d6870ae3 100644 --- a/docs/d6/d9c/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPes-members.html +++ b/docs/d6/d9c/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPes-members.html @@ -108,7 +108,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/da0/ts__section__pat_8h_source.html b/docs/d6/da0/ts__section__pat_8h_source.html index 7b386af2fa..e25bdbed70 100644 --- a/docs/d6/da0/ts__section__pat_8h_source.html +++ b/docs/d6/da0/ts__section__pat_8h_source.html @@ -135,7 +135,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/da2/classedash__packager_1_1media_1_1AesCbcCtsEncryptor.html b/docs/d6/da2/classedash__packager_1_1media_1_1AesCbcCtsEncryptor.html index 6f4c2d52b3..35351c6219 100644 --- a/docs/d6/da2/classedash__packager_1_1media_1_1AesCbcCtsEncryptor.html +++ b/docs/d6/da2/classedash__packager_1_1media_1_1AesCbcCtsEncryptor.html @@ -258,7 +258,7 @@ const std::vector< uint8_t > &  diff --git a/docs/d6/da3/classedash__packager_1_1media_1_1H264Parser.html b/docs/d6/da3/classedash__packager_1_1media_1_1H264Parser.html index d4859adf1a..dd34f030d9 100644 --- a/docs/d6/da3/classedash__packager_1_1media_1_1H264Parser.html +++ b/docs/d6/da3/classedash__packager_1_1media_1_1H264Parser.html @@ -154,7 +154,7 @@ static bool FindStartCode< diff --git a/docs/d6/da3/mpd__builder_8h_source.html b/docs/d6/da3/mpd__builder_8h_source.html index e599b3f8cc..d6144bbcb3 100644 --- a/docs/d6/da3/mpd__builder_8h_source.html +++ b/docs/d6/da3/mpd__builder_8h_source.html @@ -534,7 +534,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/da8/classedash__packager_1_1media_1_1WebMWebVTTParser-members.html b/docs/d6/da8/classedash__packager_1_1media_1_1WebMWebVTTParser-members.html index 47dd889533..e47244c59b 100644 --- a/docs/d6/da8/classedash__packager_1_1media_1_1WebMWebVTTParser-members.html +++ b/docs/d6/da8/classedash__packager_1_1media_1_1WebMWebVTTParser-members.html @@ -97,7 +97,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/dba/classedash__packager_1_1media_1_1ThreadedIoFile-members.html b/docs/d6/dba/classedash__packager_1_1media_1_1ThreadedIoFile-members.html index 222c39511d..e3152b7f56 100644 --- a/docs/d6/dba/classedash__packager_1_1media_1_1ThreadedIoFile-members.html +++ b/docs/d6/dba/classedash__packager_1_1media_1_1ThreadedIoFile-members.html @@ -120,7 +120,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/dbb/structedash__packager_1_1media_1_1mp4_1_1CompositionOffset-members.html b/docs/d6/dbb/structedash__packager_1_1media_1_1mp4_1_1CompositionOffset-members.html index 09435acbaf..42c270236a 100644 --- a/docs/d6/dbb/structedash__packager_1_1media_1_1mp4_1_1CompositionOffset-members.html +++ b/docs/d6/dbb/structedash__packager_1_1media_1_1mp4_1_1CompositionOffset-members.html @@ -98,7 +98,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/dbd/structedash__packager_1_1media_1_1Cue-members.html b/docs/d6/dbd/structedash__packager_1_1media_1_1Cue-members.html index 991764b169..b46d97e0ea 100644 --- a/docs/d6/dbd/structedash__packager_1_1media_1_1Cue-members.html +++ b/docs/d6/dbd/structedash__packager_1_1media_1_1Cue-members.html @@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/dc2/classedash__packager_1_1media_1_1TextTrackConfig-members.html b/docs/d6/dc2/classedash__packager_1_1media_1_1TextTrackConfig-members.html index ca610bed16..9e26488bdd 100644 --- a/docs/d6/dc2/classedash__packager_1_1media_1_1TextTrackConfig-members.html +++ b/docs/d6/dc2/classedash__packager_1_1media_1_1TextTrackConfig-members.html @@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/dc4/classedash__packager_1_1media_1_1AesCbcPkcs5Encryptor.html b/docs/d6/dc4/classedash__packager_1_1media_1_1AesCbcPkcs5Encryptor.html index a5b4ae4fac..f2ca49fef0 100644 --- a/docs/d6/dc4/classedash__packager_1_1media_1_1AesCbcPkcs5Encryptor.html +++ b/docs/d6/dc4/classedash__packager_1_1media_1_1AesCbcPkcs5Encryptor.html @@ -208,7 +208,7 @@ const std::vector< uint8_t > &  diff --git a/docs/d6/dc8/mkv__writer_8cc_source.html b/docs/d6/dc8/mkv__writer_8cc_source.html index ee490dc32f..0b859e9c48 100644 --- a/docs/d6/dc8/mkv__writer_8cc_source.html +++ b/docs/d6/dc8/mkv__writer_8cc_source.html @@ -186,7 +186,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/dd6/classedash__packager_1_1media_1_1WebMListParser.html b/docs/d6/dd6/classedash__packager_1_1media_1_1WebMListParser.html index 11dcf6d1b5..c6b051b373 100644 --- a/docs/d6/dd6/classedash__packager_1_1media_1_1WebMListParser.html +++ b/docs/d6/dd6/classedash__packager_1_1media_1_1WebMListParser.html @@ -210,7 +210,7 @@ void  diff --git a/docs/d6/dd7/classedash__packager_1_1media_1_1TextStreamInfo.html b/docs/d6/dd7/classedash__packager_1_1media_1_1TextStreamInfo.html index 08b0be2fe0..dd8e95148c 100644 --- a/docs/d6/dd7/classedash__packager_1_1media_1_1TextStreamInfo.html +++ b/docs/d6/dd7/classedash__packager_1_1media_1_1TextStreamInfo.html @@ -276,7 +276,7 @@ void set_language (con diff --git a/docs/d6/de6/classedash__packager_1_1media_1_1KeyFetcher-members.html b/docs/d6/de6/classedash__packager_1_1media_1_1KeyFetcher-members.html index 7e00a748bb..d370148813 100644 --- a/docs/d6/de6/classedash__packager_1_1media_1_1KeyFetcher-members.html +++ b/docs/d6/de6/classedash__packager_1_1media_1_1KeyFetcher-members.html @@ -99,7 +99,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/de7/classedash__packager_1_1media_1_1AesCbcPkcs5Encryptor-members.html b/docs/d6/de7/classedash__packager_1_1media_1_1AesCbcPkcs5Encryptor-members.html index 4a5067c4ec..12b7da0e8e 100644 --- a/docs/d6/de7/classedash__packager_1_1media_1_1AesCbcPkcs5Encryptor-members.html +++ b/docs/d6/de7/classedash__packager_1_1media_1_1AesCbcPkcs5Encryptor-members.html @@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/de8/local__file_8cc_source.html b/docs/d6/de8/local__file_8cc_source.html index 41bbb9e6c4..59f1f709e8 100644 --- a/docs/d6/de8/local__file_8cc_source.html +++ b/docs/d6/de8/local__file_8cc_source.html @@ -191,7 +191,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/de8/network__util_8h_source.html b/docs/d6/de8/network__util_8h_source.html index ea1e964c52..3dfba2cdbc 100644 --- a/docs/d6/de8/network__util_8h_source.html +++ b/docs/d6/de8/network__util_8h_source.html @@ -110,7 +110,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/dec/structedash__packager_1_1media_1_1mp4_1_1Movie.html b/docs/d6/dec/structedash__packager_1_1media_1_1mp4_1_1Movie.html index 2c3959e92f..df6154bc7a 100644 --- a/docs/d6/dec/structedash__packager_1_1media_1_1mp4_1_1Movie.html +++ b/docs/d6/dec/structedash__packager_1_1media_1_1mp4_1_1Movie.html @@ -186,7 +186,7 @@ Additional Inherited Members diff --git a/docs/d6/ded/ts__packet_8h_source.html b/docs/d6/ded/ts__packet_8h_source.html index 71d7cd86b0..47d681ca42 100644 --- a/docs/d6/ded/ts__packet_8h_source.html +++ b/docs/d6/ded/ts__packet_8h_source.html @@ -169,7 +169,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/def/sync__sample__iterator_8cc_source.html b/docs/d6/def/sync__sample__iterator_8cc_source.html index 9e6f81df6a..36dca97b79 100644 --- a/docs/d6/def/sync__sample__iterator_8cc_source.html +++ b/docs/d6/def/sync__sample__iterator_8cc_source.html @@ -140,7 +140,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/df4/classedash__packager_1_1media_1_1webm_1_1MultiSegmentSegmenter-members.html b/docs/d6/df4/classedash__packager_1_1media_1_1webm_1_1MultiSegmentSegmenter-members.html index 8582402db6..eb5a948f1a 100644 --- a/docs/d6/df4/classedash__packager_1_1media_1_1webm_1_1MultiSegmentSegmenter-members.html +++ b/docs/d6/df4/classedash__packager_1_1media_1_1webm_1_1MultiSegmentSegmenter-members.html @@ -123,7 +123,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d6/df9/classedash__packager_1_1media_1_1mp4_1_1MP4MediaParser-members.html b/docs/d6/df9/classedash__packager_1_1media_1_1mp4_1_1MP4MediaParser-members.html index d33257126b..adbf566315 100644 --- a/docs/d6/df9/classedash__packager_1_1media_1_1mp4_1_1MP4MediaParser-members.html +++ b/docs/d6/df9/classedash__packager_1_1media_1_1mp4_1_1MP4MediaParser-members.html @@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/d0b/muxer__listener__test__helper_8h_source.html b/docs/d7/d0b/muxer__listener__test__helper_8h_source.html index 21bb983a2c..0fc7744ea7 100644 --- a/docs/d7/d0b/muxer__listener__test__helper_8h_source.html +++ b/docs/d7/d0b/muxer__listener__test__helper_8h_source.html @@ -196,7 +196,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/d0d/structedash__packager_1_1media_1_1mp4_1_1DataReference.html b/docs/d7/d0d/structedash__packager_1_1media_1_1mp4_1_1DataReference.html index f19c0da29d..630d37e695 100644 --- a/docs/d7/d0d/structedash__packager_1_1media_1_1mp4_1_1DataReference.html +++ b/docs/d7/d0d/structedash__packager_1_1media_1_1mp4_1_1DataReference.html @@ -182,7 +182,7 @@ Additional Inherited Members diff --git a/docs/d7/d12/media__parser_8h_source.html b/docs/d7/d12/media__parser_8h_source.html index c905a3e47b..b981a63903 100644 --- a/docs/d7/d12/media__parser_8h_source.html +++ b/docs/d7/d12/media__parser_8h_source.html @@ -149,7 +149,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/d15/classedash__packager_1_1Representation.html b/docs/d7/d15/classedash__packager_1_1Representation.html index 6cecda20dd..c3946c58ac 100644 --- a/docs/d7/d15/classedash__packager_1_1Representation.html +++ b/docs/d7/d15/classedash__packager_1_1Representation.html @@ -456,7 +456,7 @@ template<MpdBuilder::MpdType type> diff --git a/docs/d7/d15/mpd__notifier_8h_source.html b/docs/d7/d15/mpd__notifier_8h_source.html index 6993b348ed..1ee329500c 100644 --- a/docs/d7/d15/mpd__notifier_8h_source.html +++ b/docs/d7/d15/mpd__notifier_8h_source.html @@ -169,7 +169,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/d1c/structedash__packager_1_1media_1_1mp4_1_1DecodingTime.html b/docs/d7/d1c/structedash__packager_1_1media_1_1mp4_1_1DecodingTime.html index 7d3fb3bff5..29c8081341 100644 --- a/docs/d7/d1c/structedash__packager_1_1media_1_1mp4_1_1DecodingTime.html +++ b/docs/d7/d1c/structedash__packager_1_1media_1_1mp4_1_1DecodingTime.html @@ -112,7 +112,7 @@ uint32_t sample_delta< diff --git a/docs/d7/d22/libcrypto__threading_8h_source.html b/docs/d7/d22/libcrypto__threading_8h_source.html index bc8f4ebf04..39f73fbdcf 100644 --- a/docs/d7/d22/libcrypto__threading_8h_source.html +++ b/docs/d7/d22/libcrypto__threading_8h_source.html @@ -118,7 +118,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/d2a/classedash__packager_1_1media_1_1DecryptorSource-members.html b/docs/d7/d2a/classedash__packager_1_1media_1_1DecryptorSource-members.html index 0467b75cd6..4132c40305 100644 --- a/docs/d7/d2a/classedash__packager_1_1media_1_1DecryptorSource-members.html +++ b/docs/d7/d2a/classedash__packager_1_1media_1_1DecryptorSource-members.html @@ -93,13 +93,13 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');

This is the complete list of members for edash_packager::media::DecryptorSource, including all inherited members.

- - - + + +
DecryptorSource() (defined in edash_packager::media::DecryptorSource)edash_packager::media::DecryptorSourceinline
OnNeedKey(MediaContainerName container, const std::string &init_data)=0edash_packager::media::DecryptorSourcepure virtual
~DecryptorSource() (defined in edash_packager::media::DecryptorSource)edash_packager::media::DecryptorSourceinlinevirtual
DecryptorSource(KeySource *key_source) (defined in edash_packager::media::DecryptorSource)edash_packager::media::DecryptorSourceexplicit
DecryptSampleBuffer(const DecryptConfig *decrypt_config, uint8_t *buffer, size_t buffer_size) (defined in edash_packager::media::DecryptorSource)edash_packager::media::DecryptorSource
~DecryptorSource() (defined in edash_packager::media::DecryptorSource)edash_packager::media::DecryptorSource
diff --git a/docs/d7/d39/structedash__packager_1_1media_1_1mp4_1_1Movie-members.html b/docs/d7/d39/structedash__packager_1_1media_1_1mp4_1_1Movie-members.html index 79a6c925b3..b01beef042 100644 --- a/docs/d7/d39/structedash__packager_1_1media_1_1mp4_1_1Movie-members.html +++ b/docs/d7/d39/structedash__packager_1_1media_1_1mp4_1_1Movie-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/d3a/classedash__packager_1_1media_1_1VideoStreamInfo.html b/docs/d7/d3a/classedash__packager_1_1media_1_1VideoStreamInfo.html index ae3c7e9415..05d02b2683 100644 --- a/docs/d7/d3a/classedash__packager_1_1media_1_1VideoStreamInfo.html +++ b/docs/d7/d3a/classedash__packager_1_1media_1_1VideoStreamInfo.html @@ -429,7 +429,7 @@ void set_language (con diff --git a/docs/d7/d40/classedash__packager_1_1media_1_1WebMClusterParser-members.html b/docs/d7/d40/classedash__packager_1_1media_1_1WebMClusterParser-members.html index 853160589c..175f8ad900 100644 --- a/docs/d7/d40/classedash__packager_1_1media_1_1WebMClusterParser-members.html +++ b/docs/d7/d40/classedash__packager_1_1media_1_1WebMClusterParser-members.html @@ -103,14 +103,14 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); OnString(int id, const std::string &str) (defined in edash_packager::media::WebMParserClient)edash_packager::media::WebMParserClientvirtual Parse(const uint8_t *buf, int size)edash_packager::media::WebMClusterParser Reset()edash_packager::media::WebMClusterParser - WebMClusterParser(int64_t timecode_scale, scoped_refptr< AudioStreamInfo > audio_stream_info, scoped_refptr< VideoStreamInfo > video_stream_info, int64_t audio_default_duration, int64_t video_default_duration, const WebMTracksParser::TextTracks &text_tracks, const std::set< int64_t > &ignored_tracks, const std::string &audio_encryption_key_id, const std::string &video_encryption_key_id, const MediaParser::NewSampleCB &new_sample_cb, const MediaParser::InitCB &init_cb) (defined in edash_packager::media::WebMClusterParser)edash_packager::media::WebMClusterParser + WebMClusterParser(int64_t timecode_scale, scoped_refptr< AudioStreamInfo > audio_stream_info, scoped_refptr< VideoStreamInfo > video_stream_info, int64_t audio_default_duration, int64_t video_default_duration, const WebMTracksParser::TextTracks &text_tracks, const std::set< int64_t > &ignored_tracks, const std::string &audio_encryption_key_id, const std::string &video_encryption_key_id, const MediaParser::NewSampleCB &new_sample_cb, const MediaParser::InitCB &init_cb, KeySource *decryption_key_source)edash_packager::media::WebMClusterParser WebMParserClient() (defined in edash_packager::media::WebMParserClient)edash_packager::media::WebMParserClientprotected ~WebMClusterParser() override (defined in edash_packager::media::WebMClusterParser)edash_packager::media::WebMClusterParser ~WebMParserClient() (defined in edash_packager::media::WebMParserClient)edash_packager::media::WebMParserClientvirtual diff --git a/docs/d7/d44/classedash__packager_1_1MockMpdNotifier.html b/docs/d7/d44/classedash__packager_1_1MockMpdNotifier.html index c8e2ce721b..67cb8bc1ae 100644 --- a/docs/d7/d44/classedash__packager_1_1MockMpdNotifier.html +++ b/docs/d7/d44/classedash__packager_1_1MockMpdNotifier.html @@ -160,7 +160,7 @@ Public Member Functions diff --git a/docs/d7/d49/structedash__packager_1_1media_1_1mp4_1_1CuePayloadBox.html b/docs/d7/d49/structedash__packager_1_1media_1_1mp4_1_1CuePayloadBox.html index de41852f9a..3b12a67f8a 100644 --- a/docs/d7/d49/structedash__packager_1_1media_1_1mp4_1_1CuePayloadBox.html +++ b/docs/d7/d49/structedash__packager_1_1media_1_1mp4_1_1CuePayloadBox.html @@ -173,7 +173,7 @@ Additional Inherited Members diff --git a/docs/d7/d4f/structedash__packager_1_1media_1_1mp4_1_1Edit.html b/docs/d7/d4f/structedash__packager_1_1media_1_1mp4_1_1Edit.html index aa6b27baee..dd0d98663d 100644 --- a/docs/d7/d4f/structedash__packager_1_1media_1_1mp4_1_1Edit.html +++ b/docs/d7/d4f/structedash__packager_1_1media_1_1mp4_1_1Edit.html @@ -173,7 +173,7 @@ Additional Inherited Members diff --git a/docs/d7/d50/classedash__packager_1_1media_1_1mp4_1_1EncryptingFragmenter-members.html b/docs/d7/d50/classedash__packager_1_1media_1_1mp4_1_1EncryptingFragmenter-members.html index 6f02e87f5f..63bcea3fa2 100644 --- a/docs/d7/d50/classedash__packager_1_1media_1_1mp4_1_1EncryptingFragmenter-members.html +++ b/docs/d7/d50/classedash__packager_1_1media_1_1mp4_1_1EncryptingFragmenter-members.html @@ -118,7 +118,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/d52/classedash__packager_1_1media_1_1WebMListParser-members.html b/docs/d7/d52/classedash__packager_1_1media_1_1WebMListParser-members.html index 2bbaa25867..84df249620 100644 --- a/docs/d7/d52/classedash__packager_1_1media_1_1WebMListParser-members.html +++ b/docs/d7/d52/classedash__packager_1_1media_1_1WebMListParser-members.html @@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/d55/structedash__packager_1_1media_1_1mp4_1_1CencSampleEncryptionInfoEntry.html b/docs/d7/d55/structedash__packager_1_1media_1_1mp4_1_1CencSampleEncryptionInfoEntry.html index eaf858ba2d..4a6046380f 100644 --- a/docs/d7/d55/structedash__packager_1_1media_1_1mp4_1_1CencSampleEncryptionInfoEntry.html +++ b/docs/d7/d55/structedash__packager_1_1media_1_1mp4_1_1CencSampleEncryptionInfoEntry.html @@ -116,7 +116,7 @@ std::vector< uint8_t >  diff --git a/docs/d7/d56/structedash__packager_1_1media_1_1mp4_1_1EC3Specific-members.html b/docs/d7/d56/structedash__packager_1_1media_1_1mp4_1_1EC3Specific-members.html index a2389fe26b..a27e8afce8 100644 --- a/docs/d7/d56/structedash__packager_1_1media_1_1mp4_1_1EC3Specific-members.html +++ b/docs/d7/d56/structedash__packager_1_1media_1_1mp4_1_1EC3Specific-members.html @@ -111,7 +111,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/d79/structedash__packager_1_1media_1_1mp4_1_1MediaData-members.html b/docs/d7/d79/structedash__packager_1_1media_1_1mp4_1_1MediaData-members.html index d322828b56..22c5d353be 100644 --- a/docs/d7/d79/structedash__packager_1_1media_1_1mp4_1_1MediaData-members.html +++ b/docs/d7/d79/structedash__packager_1_1media_1_1mp4_1_1MediaData-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/d7b/structedash__packager_1_1media_1_1mp4_1_1DecodingTime-members.html b/docs/d7/d7b/structedash__packager_1_1media_1_1mp4_1_1DecodingTime-members.html index b1aaa54de2..48006e59d3 100644 --- a/docs/d7/d7b/structedash__packager_1_1media_1_1mp4_1_1DecodingTime-members.html +++ b/docs/d7/d7b/structedash__packager_1_1media_1_1mp4_1_1DecodingTime-members.html @@ -98,7 +98,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/d7c/vlog__flags_8h_source.html b/docs/d7/d7c/vlog__flags_8h_source.html index f628fd6bf4..073ad2ec36 100644 --- a/docs/d7/d7c/vlog__flags_8h_source.html +++ b/docs/d7/d7c/vlog__flags_8h_source.html @@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/d82/classedash__packager_1_1MpdBuilder-members.html b/docs/d7/d82/classedash__packager_1_1MpdBuilder-members.html index da1fb8a9ed..1d3e182e13 100644 --- a/docs/d7/d82/classedash__packager_1_1MpdBuilder-members.html +++ b/docs/d7/d82/classedash__packager_1_1MpdBuilder-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/d85/classedash__packager_1_1media_1_1VPCodecConfiguration.html b/docs/d7/d85/classedash__packager_1_1media_1_1VPCodecConfiguration.html index fe9cf77c4e..2d97e6ab3a 100644 --- a/docs/d7/d85/classedash__packager_1_1media_1_1VPCodecConfiguration.html +++ b/docs/d7/d85/classedash__packager_1_1media_1_1VPCodecConfiguration.html @@ -255,7 +255,7 @@ bool video_full_range_flag diff --git a/docs/d7/d87/video__stream__info_8h_source.html b/docs/d7/d87/video__stream__info_8h_source.html index 94933ebea3..a3a95393c3 100644 --- a/docs/d7/d87/video__stream__info_8h_source.html +++ b/docs/d7/d87/video__stream__info_8h_source.html @@ -188,7 +188,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/d8a/structedash__packager_1_1media_1_1mp4_1_1Box.html b/docs/d7/d8a/structedash__packager_1_1media_1_1mp4_1_1Box.html index f2ebb0c7f5..8a8579f38c 100644 --- a/docs/d7/d8a/structedash__packager_1_1media_1_1mp4_1_1Box.html +++ b/docs/d7/d8a/structedash__packager_1_1media_1_1mp4_1_1Box.html @@ -384,7 +384,7 @@ class BoxBuffer diff --git a/docs/d7/d8f/structedash__packager_1_1media_1_1mp4_1_1CueSourceIDBox-members.html b/docs/d7/d8f/structedash__packager_1_1media_1_1mp4_1_1CueSourceIDBox-members.html index 8806a611c5..4ab36a3d57 100644 --- a/docs/d7/d8f/structedash__packager_1_1media_1_1mp4_1_1CueSourceIDBox-members.html +++ b/docs/d7/d8f/structedash__packager_1_1media_1_1mp4_1_1CueSourceIDBox-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/d9d/progress__listener_8h_source.html b/docs/d7/d9d/progress__listener_8h_source.html index f18a1a6bb3..ee0f005149 100644 --- a/docs/d7/d9d/progress__listener_8h_source.html +++ b/docs/d7/d9d/progress__listener_8h_source.html @@ -127,7 +127,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/da4/track__run__iterator_8h_source.html b/docs/d7/da4/track__run__iterator_8h_source.html index e365abbd71..ad6a1983e6 100644 --- a/docs/d7/da4/track__run__iterator_8h_source.html +++ b/docs/d7/da4/track__run__iterator_8h_source.html @@ -195,7 +195,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/da5/structedash__packager_1_1media_1_1mp4_1_1SampleSize.html b/docs/d7/da5/structedash__packager_1_1media_1_1mp4_1_1SampleSize.html index ec500a7272..2ebc9802c2 100644 --- a/docs/d7/da5/structedash__packager_1_1media_1_1mp4_1_1SampleSize.html +++ b/docs/d7/da5/structedash__packager_1_1media_1_1mp4_1_1SampleSize.html @@ -188,7 +188,7 @@ Additional Inherited Members diff --git a/docs/d7/db0/mpd__writer_8h_source.html b/docs/d7/db0/mpd__writer_8h_source.html index d8f387030e..de90e38643 100644 --- a/docs/d7/db0/mpd__writer_8h_source.html +++ b/docs/d7/db0/mpd__writer_8h_source.html @@ -184,7 +184,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/db3/structedash__packager_1_1Element-members.html b/docs/d7/db3/structedash__packager_1_1Element-members.html index 79805a5dfa..f7250ef016 100644 --- a/docs/d7/db3/structedash__packager_1_1Element-members.html +++ b/docs/d7/db3/structedash__packager_1_1Element-members.html @@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/dc6/byte__queue_8h_source.html b/docs/d7/dc6/byte__queue_8h_source.html index de563ec027..8b359e393d 100644 --- a/docs/d7/dc6/byte__queue_8h_source.html +++ b/docs/d7/dc6/byte__queue_8h_source.html @@ -144,7 +144,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/dcc/structedash__packager_1_1media_1_1mp4_1_1WebVTTConfigurationBox.html b/docs/d7/dcc/structedash__packager_1_1media_1_1mp4_1_1WebVTTConfigurationBox.html index af0fcffe36..c67bc66b20 100644 --- a/docs/d7/dcc/structedash__packager_1_1media_1_1mp4_1_1WebVTTConfigurationBox.html +++ b/docs/d7/dcc/structedash__packager_1_1media_1_1mp4_1_1WebVTTConfigurationBox.html @@ -173,7 +173,7 @@ Additional Inherited Members diff --git a/docs/d7/dd0/mpd__notifier__util_8h_source.html b/docs/d7/dd0/mpd__notifier__util_8h_source.html index 41813cf3b5..a2dcbda992 100644 --- a/docs/d7/dd0/mpd__notifier__util_8h_source.html +++ b/docs/d7/dd0/mpd__notifier__util_8h_source.html @@ -128,7 +128,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/dd2/classedash__packager_1_1media_1_1VPxParser-members.html b/docs/d7/dd2/classedash__packager_1_1media_1_1VPxParser-members.html index 7a0a709aed..e5ef2cd3ca 100644 --- a/docs/d7/dd2/classedash__packager_1_1media_1_1VPxParser-members.html +++ b/docs/d7/dd2/classedash__packager_1_1media_1_1VPxParser-members.html @@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/dd4/request__signer_8h_source.html b/docs/d7/dd4/request__signer_8h_source.html index 1c65ba8ff4..5eda445fd7 100644 --- a/docs/d7/dd4/request__signer_8h_source.html +++ b/docs/d7/dd4/request__signer_8h_source.html @@ -178,7 +178,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/dd6/key__source_8cc_source.html b/docs/d7/dd6/key__source_8cc_source.html index 987bbd8ed6..43cbb4a12b 100644 --- a/docs/d7/dd6/key__source_8cc_source.html +++ b/docs/d7/dd6/key__source_8cc_source.html @@ -296,7 +296,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/de3/structedash__packager_1_1xml_1_1XmlDeleter.html b/docs/d7/de3/structedash__packager_1_1xml_1_1XmlDeleter.html index 9462eb3dc1..95cae881e9 100644 --- a/docs/d7/de3/structedash__packager_1_1xml_1_1XmlDeleter.html +++ b/docs/d7/de3/structedash__packager_1_1xml_1_1XmlDeleter.html @@ -127,7 +127,7 @@ void operator() (xmlCh diff --git a/docs/d7/dec/h264__byte__to__unit__stream__converter_8h_source.html b/docs/d7/dec/h264__byte__to__unit__stream__converter_8h_source.html index 36dc1e65ec..87a9ac9f7b 100644 --- a/docs/d7/dec/h264__byte__to__unit__stream__converter_8h_source.html +++ b/docs/d7/dec/h264__byte__to__unit__stream__converter_8h_source.html @@ -139,7 +139,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/dec/structedash__packager_1_1media_1_1mp4_1_1MediaHeader.html b/docs/d7/dec/structedash__packager_1_1media_1_1mp4_1_1MediaHeader.html index a17962c640..ad9ff3d0e5 100644 --- a/docs/d7/dec/structedash__packager_1_1media_1_1mp4_1_1MediaHeader.html +++ b/docs/d7/dec/structedash__packager_1_1media_1_1mp4_1_1MediaHeader.html @@ -194,7 +194,7 @@ Additional Inherited Members diff --git a/docs/d7/dee/mpd__generator_8cc_source.html b/docs/d7/dee/mpd__generator_8cc_source.html index 82d40c5244..35dae9b059 100644 --- a/docs/d7/dee/mpd__generator_8cc_source.html +++ b/docs/d7/dee/mpd__generator_8cc_source.html @@ -199,7 +199,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/def/mp4__media__parser_8cc_source.html b/docs/d7/def/mp4__media__parser_8cc_source.html index 0017508803..33ad9ac701 100644 --- a/docs/d7/def/mp4__media__parser_8cc_source.html +++ b/docs/d7/def/mp4__media__parser_8cc_source.html @@ -100,90 +100,90 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
11 #include "packager/base/logging.h"
12 #include "packager/base/memory/ref_counted.h"
13 #include "packager/base/strings/string_number_conversions.h"
-
14 #include "packager/media/base/aes_encryptor.h"
-
15 #include "packager/media/base/audio_stream_info.h"
-
16 #include "packager/media/base/buffer_reader.h"
-
17 #include "packager/media/base/decrypt_config.h"
-
18 #include "packager/media/base/key_source.h"
-
19 #include "packager/media/base/macros.h"
-
20 #include "packager/media/base/media_sample.h"
-
21 #include "packager/media/base/video_stream_info.h"
-
22 #include "packager/media/file/file.h"
-
23 #include "packager/media/file/file_closer.h"
-
24 #include "packager/media/filters/avc_decoder_configuration.h"
-
25 #include "packager/media/filters/hevc_decoder_configuration.h"
-
26 #include "packager/media/filters/vp_codec_configuration.h"
-
27 #include "packager/media/formats/mp4/box_definitions.h"
-
28 #include "packager/media/formats/mp4/box_reader.h"
-
29 #include "packager/media/formats/mp4/es_descriptor.h"
-
30 #include "packager/media/formats/mp4/rcheck.h"
-
31 #include "packager/media/formats/mp4/track_run_iterator.h"
-
32 
-
33 namespace edash_packager {
-
34 namespace media {
-
35 namespace mp4 {
-
36 namespace {
-
37 
-
38 uint64_t Rescale(uint64_t time_in_old_scale,
-
39  uint32_t old_scale,
-
40  uint32_t new_scale) {
-
41  return (static_cast<double>(time_in_old_scale) / old_scale) * new_scale;
-
42 }
-
43 
-
44 VideoCodec FourCCToVideoCodec(FourCC fourcc) {
-
45  switch (fourcc) {
-
46  case FOURCC_AVC1:
-
47  return kCodecH264;
-
48  case FOURCC_HEV1:
-
49  return kCodecHEV1;
-
50  case FOURCC_HVC1:
-
51  return kCodecHVC1;
-
52  case FOURCC_VP08:
-
53  return kCodecVP8;
-
54  case FOURCC_VP09:
-
55  return kCodecVP9;
-
56  case FOURCC_VP10:
-
57  return kCodecVP10;
-
58  default:
-
59  return kUnknownVideoCodec;
-
60  }
-
61 }
-
62 
-
63 AudioCodec FourCCToAudioCodec(FourCC fourcc) {
-
64  switch(fourcc) {
-
65  case FOURCC_DTSC:
-
66  return kCodecDTSC;
-
67  case FOURCC_DTSH:
-
68  return kCodecDTSH;
-
69  case FOURCC_DTSL:
-
70  return kCodecDTSL;
-
71  case FOURCC_DTSE:
-
72  return kCodecDTSE;
-
73  case FOURCC_DTSP:
-
74  return kCodecDTSP;
-
75  case FOURCC_DTSM:
-
76  return kCodecDTSM;
-
77  case FOURCC_AC3:
-
78  return kCodecAC3;
-
79  case FOURCC_EAC3:
-
80  return kCodecEAC3;
-
81  default:
-
82  return kUnknownAudioCodec;
-
83  }
-
84 }
-
85 
-
86 const char kWidevineKeySystemId[] = "edef8ba979d64acea3c827dcd51d21ed";
-
87 // Default DTS audio number of channels for 5.1 channel layout.
-
88 const uint8_t kDtsAudioNumChannels = 6;
-
89 
-
90 } // namespace
-
91 
-
92 MP4MediaParser::MP4MediaParser()
-
93  : state_(kWaitingForInit), moof_head_(0), mdat_tail_(0) {}
-
94 
-
95 MP4MediaParser::~MP4MediaParser() {
-
96  STLDeleteValues(&decryptor_map_);
-
97 }
+
14 #include "packager/media/base/audio_stream_info.h"
+
15 #include "packager/media/base/buffer_reader.h"
+
16 #include "packager/media/base/decrypt_config.h"
+
17 #include "packager/media/base/key_source.h"
+
18 #include "packager/media/base/macros.h"
+
19 #include "packager/media/base/media_sample.h"
+
20 #include "packager/media/base/video_stream_info.h"
+
21 #include "packager/media/file/file.h"
+
22 #include "packager/media/file/file_closer.h"
+
23 #include "packager/media/filters/avc_decoder_configuration.h"
+
24 #include "packager/media/filters/hevc_decoder_configuration.h"
+
25 #include "packager/media/filters/vp_codec_configuration.h"
+
26 #include "packager/media/formats/mp4/box_definitions.h"
+
27 #include "packager/media/formats/mp4/box_reader.h"
+
28 #include "packager/media/formats/mp4/es_descriptor.h"
+
29 #include "packager/media/formats/mp4/rcheck.h"
+
30 #include "packager/media/formats/mp4/track_run_iterator.h"
+
31 
+
32 namespace edash_packager {
+
33 namespace media {
+
34 namespace mp4 {
+
35 namespace {
+
36 
+
37 uint64_t Rescale(uint64_t time_in_old_scale,
+
38  uint32_t old_scale,
+
39  uint32_t new_scale) {
+
40  return (static_cast<double>(time_in_old_scale) / old_scale) * new_scale;
+
41 }
+
42 
+
43 VideoCodec FourCCToVideoCodec(FourCC fourcc) {
+
44  switch (fourcc) {
+
45  case FOURCC_AVC1:
+
46  return kCodecH264;
+
47  case FOURCC_HEV1:
+
48  return kCodecHEV1;
+
49  case FOURCC_HVC1:
+
50  return kCodecHVC1;
+
51  case FOURCC_VP08:
+
52  return kCodecVP8;
+
53  case FOURCC_VP09:
+
54  return kCodecVP9;
+
55  case FOURCC_VP10:
+
56  return kCodecVP10;
+
57  default:
+
58  return kUnknownVideoCodec;
+
59  }
+
60 }
+
61 
+
62 AudioCodec FourCCToAudioCodec(FourCC fourcc) {
+
63  switch(fourcc) {
+
64  case FOURCC_DTSC:
+
65  return kCodecDTSC;
+
66  case FOURCC_DTSH:
+
67  return kCodecDTSH;
+
68  case FOURCC_DTSL:
+
69  return kCodecDTSL;
+
70  case FOURCC_DTSE:
+
71  return kCodecDTSE;
+
72  case FOURCC_DTSP:
+
73  return kCodecDTSP;
+
74  case FOURCC_DTSM:
+
75  return kCodecDTSM;
+
76  case FOURCC_AC3:
+
77  return kCodecAC3;
+
78  case FOURCC_EAC3:
+
79  return kCodecEAC3;
+
80  default:
+
81  return kUnknownAudioCodec;
+
82  }
+
83 }
+
84 
+
85 const char kWidevineKeySystemId[] = "edef8ba979d64acea3c827dcd51d21ed";
+
86 // Default DTS audio number of channels for 5.1 channel layout.
+
87 const uint8_t kDtsAudioNumChannels = 6;
+
88 
+
89 } // namespace
+
90 
+
91 MP4MediaParser::MP4MediaParser()
+
92  : state_(kWaitingForInit),
+
93  decryption_key_source_(NULL),
+
94  moof_head_(0),
+
95  mdat_tail_(0) {}
+
96 
+
97 MP4MediaParser::~MP4MediaParser() {}
98 
99 void MP4MediaParser::Init(const InitCB& init_cb,
100  const NewSampleCB& new_sample_cb,
@@ -197,690 +197,625 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
108  init_cb_ = init_cb;
109  new_sample_cb_ = new_sample_cb;
110  decryption_key_source_ = decryption_key_source;
-
111 }
-
112 
-
113 void MP4MediaParser::Reset() {
-
114  queue_.Reset();
-
115  runs_.reset();
-
116  moof_head_ = 0;
-
117  mdat_tail_ = 0;
-
118 }
-
119 
- -
121  DCHECK_NE(state_, kWaitingForInit);
-
122  Reset();
-
123  ChangeState(kParsingBoxes);
-
124 }
-
125 
-
126 bool MP4MediaParser::Parse(const uint8_t* buf, int size) {
-
127  DCHECK_NE(state_, kWaitingForInit);
-
128 
-
129  if (state_ == kError)
-
130  return false;
-
131 
-
132  queue_.Push(buf, size);
+
111  if (decryption_key_source)
+
112  decryptor_source_.reset(new DecryptorSource(decryption_key_source));
+
113 }
+
114 
+
115 void MP4MediaParser::Reset() {
+
116  queue_.Reset();
+
117  runs_.reset();
+
118  moof_head_ = 0;
+
119  mdat_tail_ = 0;
+
120 }
+
121 
+ +
123  DCHECK_NE(state_, kWaitingForInit);
+
124  Reset();
+
125  ChangeState(kParsingBoxes);
+
126 }
+
127 
+
128 bool MP4MediaParser::Parse(const uint8_t* buf, int size) {
+
129  DCHECK_NE(state_, kWaitingForInit);
+
130 
+
131  if (state_ == kError)
+
132  return false;
133 
-
134  bool result, err = false;
+
134  queue_.Push(buf, size);
135 
-
136  do {
-
137  if (state_ == kParsingBoxes) {
-
138  result = ParseBox(&err);
-
139  } else {
-
140  DCHECK_EQ(kEmittingSamples, state_);
-
141  result = EnqueueSample(&err);
-
142  if (result) {
-
143  int64_t max_clear = runs_->GetMaxClearOffset() + moof_head_;
-
144  err = !ReadAndDiscardMDATsUntil(max_clear);
-
145  }
-
146  }
-
147  } while (result && !err);
-
148 
-
149  if (err) {
-
150  DLOG(ERROR) << "Error while parsing MP4";
-
151  moov_.reset();
-
152  Reset();
-
153  ChangeState(kError);
-
154  return false;
-
155  }
-
156 
-
157  return true;
-
158 }
-
159 
-
160 bool MP4MediaParser::LoadMoov(const std::string& file_path) {
-
161  scoped_ptr<File, FileCloser> file(
-
162  File::OpenWithNoBuffering(file_path.c_str(), "r"));
-
163  if (!file) {
-
164  LOG(ERROR) << "Unable to open media file '" << file_path << "'";
-
165  return false;
-
166  }
-
167  if (!file->Seek(0)) {
-
168  LOG(WARNING) << "Filesystem does not support seeking on file '" << file_path
-
169  << "'";
-
170  return false;
-
171  }
-
172 
-
173  uint64_t file_position(0);
-
174  bool mdat_seen(false);
-
175  while (true) {
-
176  const uint32_t kBoxHeaderReadSize(16);
-
177  std::vector<uint8_t> buffer(kBoxHeaderReadSize);
-
178  int64_t bytes_read = file->Read(&buffer[0], kBoxHeaderReadSize);
-
179  if (bytes_read == 0) {
-
180  LOG(ERROR) << "Could not find 'moov' box in file '" << file_path << "'";
-
181  return false;
-
182  }
-
183  if (bytes_read < kBoxHeaderReadSize) {
-
184  LOG(ERROR) << "Error reading media file '" << file_path << "'";
-
185  return false;
-
186  }
-
187  uint64_t box_size;
-
188  FourCC box_type;
-
189  bool err;
-
190  if (!BoxReader::StartTopLevelBox(&buffer[0], kBoxHeaderReadSize, &box_type,
-
191  &box_size, &err)) {
-
192  LOG(ERROR) << "Could not start top level box from file '" << file_path
-
193  << "'";
-
194  return false;
-
195  }
-
196  if (box_type == FOURCC_MDAT) {
-
197  mdat_seen = true;
-
198  } else if (box_type == FOURCC_MOOV) {
-
199  if (!mdat_seen) {
-
200  // 'moov' is before 'mdat'. Nothing to do.
-
201  break;
-
202  }
-
203  // 'mdat' before 'moov'. Read and parse 'moov'.
-
204  if (!Parse(&buffer[0], bytes_read)) {
-
205  LOG(ERROR) << "Error parsing mp4 file '" << file_path << "'";
-
206  return false;
-
207  }
-
208  uint64_t bytes_to_read = box_size - bytes_read;
-
209  buffer.resize(bytes_to_read);
-
210  while (bytes_to_read > 0) {
-
211  bytes_read = file->Read(&buffer[0], bytes_to_read);
-
212  if (bytes_read <= 0) {
-
213  LOG(ERROR) << "Error reading 'moov' contents from file '" << file_path
-
214  << "'";
-
215  return false;
-
216  }
-
217  if (!Parse(&buffer[0], bytes_read)) {
-
218  LOG(ERROR) << "Error parsing mp4 file '" << file_path << "'";
-
219  return false;
-
220  }
-
221  bytes_to_read -= bytes_read;
-
222  }
-
223  queue_.Reset(); // So that we don't need to adjust data offsets.
-
224  mdat_tail_ = 0; // So it will skip boxes until mdat.
-
225  break; // Done.
-
226  }
-
227  file_position += box_size;
-
228  if (!file->Seek(file_position)) {
-
229  LOG(ERROR) << "Error skipping box in mp4 file '" << file_path << "'";
-
230  return false;
-
231  }
-
232  }
-
233  return true;
-
234 }
-
235 
-
236 bool MP4MediaParser::ParseBox(bool* err) {
-
237  const uint8_t* buf;
-
238  int size;
-
239  queue_.Peek(&buf, &size);
-
240  if (!size)
-
241  return false;
-
242 
-
243  scoped_ptr<BoxReader> reader(BoxReader::ReadTopLevelBox(buf, size, err));
-
244  if (reader.get() == NULL)
-
245  return false;
-
246 
-
247  if (reader->type() == FOURCC_MDAT) {
-
248  // The code ends up here only if a MOOV box is not yet seen.
-
249  DCHECK(!moov_);
-
250 
-
251  NOTIMPLEMENTED() << " Files with MDAT before MOOV is not supported yet.";
-
252  *err = true;
-
253  return false;
-
254  }
-
255 
-
256  // Set up mdat offset for ReadMDATsUntil().
-
257  mdat_tail_ = queue_.head() + reader->size();
-
258 
-
259  if (reader->type() == FOURCC_MOOV) {
-
260  *err = !ParseMoov(reader.get());
-
261  } else if (reader->type() == FOURCC_MOOF) {
-
262  moof_head_ = queue_.head();
-
263  *err = !ParseMoof(reader.get());
-
264 
-
265  // Return early to avoid evicting 'moof' data from queue. Auxiliary info may
-
266  // be located anywhere in the file, including inside the 'moof' itself.
-
267  // (Since 'default-base-is-moof' is mandated, no data references can come
-
268  // before the head of the 'moof', so keeping this box around is sufficient.)
-
269  return !(*err);
-
270  } else {
-
271  VLOG(2) << "Skipping top-level box: " << FourCCToString(reader->type());
-
272  }
-
273 
-
274  queue_.Pop(reader->size());
-
275  return !(*err);
-
276 }
-
277 
-
278 bool MP4MediaParser::ParseMoov(BoxReader* reader) {
-
279  if (moov_)
-
280  return true; // Already parsed the 'moov' box.
-
281 
-
282  moov_.reset(new Movie);
-
283  RCHECK(moov_->Parse(reader));
-
284  runs_.reset();
-
285 
-
286  std::vector<scoped_refptr<StreamInfo> > streams;
+
136  bool result, err = false;
+
137 
+
138  do {
+
139  if (state_ == kParsingBoxes) {
+
140  result = ParseBox(&err);
+
141  } else {
+
142  DCHECK_EQ(kEmittingSamples, state_);
+
143  result = EnqueueSample(&err);
+
144  if (result) {
+
145  int64_t max_clear = runs_->GetMaxClearOffset() + moof_head_;
+
146  err = !ReadAndDiscardMDATsUntil(max_clear);
+
147  }
+
148  }
+
149  } while (result && !err);
+
150 
+
151  if (err) {
+
152  DLOG(ERROR) << "Error while parsing MP4";
+
153  moov_.reset();
+
154  Reset();
+
155  ChangeState(kError);
+
156  return false;
+
157  }
+
158 
+
159  return true;
+
160 }
+
161 
+
162 bool MP4MediaParser::LoadMoov(const std::string& file_path) {
+
163  scoped_ptr<File, FileCloser> file(
+
164  File::OpenWithNoBuffering(file_path.c_str(), "r"));
+
165  if (!file) {
+
166  LOG(ERROR) << "Unable to open media file '" << file_path << "'";
+
167  return false;
+
168  }
+
169  if (!file->Seek(0)) {
+
170  LOG(WARNING) << "Filesystem does not support seeking on file '" << file_path
+
171  << "'";
+
172  return false;
+
173  }
+
174 
+
175  uint64_t file_position(0);
+
176  bool mdat_seen(false);
+
177  while (true) {
+
178  const uint32_t kBoxHeaderReadSize(16);
+
179  std::vector<uint8_t> buffer(kBoxHeaderReadSize);
+
180  int64_t bytes_read = file->Read(&buffer[0], kBoxHeaderReadSize);
+
181  if (bytes_read == 0) {
+
182  LOG(ERROR) << "Could not find 'moov' box in file '" << file_path << "'";
+
183  return false;
+
184  }
+
185  if (bytes_read < kBoxHeaderReadSize) {
+
186  LOG(ERROR) << "Error reading media file '" << file_path << "'";
+
187  return false;
+
188  }
+
189  uint64_t box_size;
+
190  FourCC box_type;
+
191  bool err;
+
192  if (!BoxReader::StartTopLevelBox(&buffer[0], kBoxHeaderReadSize, &box_type,
+
193  &box_size, &err)) {
+
194  LOG(ERROR) << "Could not start top level box from file '" << file_path
+
195  << "'";
+
196  return false;
+
197  }
+
198  if (box_type == FOURCC_MDAT) {
+
199  mdat_seen = true;
+
200  } else if (box_type == FOURCC_MOOV) {
+
201  if (!mdat_seen) {
+
202  // 'moov' is before 'mdat'. Nothing to do.
+
203  break;
+
204  }
+
205  // 'mdat' before 'moov'. Read and parse 'moov'.
+
206  if (!Parse(&buffer[0], bytes_read)) {
+
207  LOG(ERROR) << "Error parsing mp4 file '" << file_path << "'";
+
208  return false;
+
209  }
+
210  uint64_t bytes_to_read = box_size - bytes_read;
+
211  buffer.resize(bytes_to_read);
+
212  while (bytes_to_read > 0) {
+
213  bytes_read = file->Read(&buffer[0], bytes_to_read);
+
214  if (bytes_read <= 0) {
+
215  LOG(ERROR) << "Error reading 'moov' contents from file '" << file_path
+
216  << "'";
+
217  return false;
+
218  }
+
219  if (!Parse(&buffer[0], bytes_read)) {
+
220  LOG(ERROR) << "Error parsing mp4 file '" << file_path << "'";
+
221  return false;
+
222  }
+
223  bytes_to_read -= bytes_read;
+
224  }
+
225  queue_.Reset(); // So that we don't need to adjust data offsets.
+
226  mdat_tail_ = 0; // So it will skip boxes until mdat.
+
227  break; // Done.
+
228  }
+
229  file_position += box_size;
+
230  if (!file->Seek(file_position)) {
+
231  LOG(ERROR) << "Error skipping box in mp4 file '" << file_path << "'";
+
232  return false;
+
233  }
+
234  }
+
235  return true;
+
236 }
+
237 
+
238 bool MP4MediaParser::ParseBox(bool* err) {
+
239  const uint8_t* buf;
+
240  int size;
+
241  queue_.Peek(&buf, &size);
+
242  if (!size)
+
243  return false;
+
244 
+
245  scoped_ptr<BoxReader> reader(BoxReader::ReadTopLevelBox(buf, size, err));
+
246  if (reader.get() == NULL)
+
247  return false;
+
248 
+
249  if (reader->type() == FOURCC_MDAT) {
+
250  // The code ends up here only if a MOOV box is not yet seen.
+
251  DCHECK(!moov_);
+
252 
+
253  NOTIMPLEMENTED() << " Files with MDAT before MOOV is not supported yet.";
+
254  *err = true;
+
255  return false;
+
256  }
+
257 
+
258  // Set up mdat offset for ReadMDATsUntil().
+
259  mdat_tail_ = queue_.head() + reader->size();
+
260 
+
261  if (reader->type() == FOURCC_MOOV) {
+
262  *err = !ParseMoov(reader.get());
+
263  } else if (reader->type() == FOURCC_MOOF) {
+
264  moof_head_ = queue_.head();
+
265  *err = !ParseMoof(reader.get());
+
266 
+
267  // Return early to avoid evicting 'moof' data from queue. Auxiliary info may
+
268  // be located anywhere in the file, including inside the 'moof' itself.
+
269  // (Since 'default-base-is-moof' is mandated, no data references can come
+
270  // before the head of the 'moof', so keeping this box around is sufficient.)
+
271  return !(*err);
+
272  } else {
+
273  VLOG(2) << "Skipping top-level box: " << FourCCToString(reader->type());
+
274  }
+
275 
+
276  queue_.Pop(reader->size());
+
277  return !(*err);
+
278 }
+
279 
+
280 bool MP4MediaParser::ParseMoov(BoxReader* reader) {
+
281  if (moov_)
+
282  return true; // Already parsed the 'moov' box.
+
283 
+
284  moov_.reset(new Movie);
+
285  RCHECK(moov_->Parse(reader));
+
286  runs_.reset();
287 
-
288  for (std::vector<Track>::const_iterator track = moov_->tracks.begin();
-
289  track != moov_->tracks.end(); ++track) {
-
290  const uint32_t timescale = track->media.header.timescale;
-
291 
-
292  // Calculate duration (based on timescale).
-
293  uint64_t duration = 0;
-
294  if (track->media.header.duration > 0) {
-
295  duration = track->media.header.duration;
-
296  } else if (moov_->extends.header.fragment_duration > 0) {
-
297  DCHECK(moov_->header.timescale != 0);
-
298  duration = Rescale(moov_->extends.header.fragment_duration,
-
299  moov_->header.timescale,
-
300  timescale);
-
301  } else if (moov_->header.duration > 0 &&
-
302  moov_->header.duration != std::numeric_limits<uint64_t>::max()) {
-
303  DCHECK(moov_->header.timescale != 0);
-
304  duration =
-
305  Rescale(moov_->header.duration, moov_->header.timescale, timescale);
-
306  }
-
307 
-
308  const SampleDescription& samp_descr =
-
309  track->media.information.sample_table.description;
-
310 
-
311  size_t desc_idx = 0;
+
288  std::vector<scoped_refptr<StreamInfo> > streams;
+
289 
+
290  for (std::vector<Track>::const_iterator track = moov_->tracks.begin();
+
291  track != moov_->tracks.end(); ++track) {
+
292  const uint32_t timescale = track->media.header.timescale;
+
293 
+
294  // Calculate duration (based on timescale).
+
295  uint64_t duration = 0;
+
296  if (track->media.header.duration > 0) {
+
297  duration = track->media.header.duration;
+
298  } else if (moov_->extends.header.fragment_duration > 0) {
+
299  DCHECK(moov_->header.timescale != 0);
+
300  duration = Rescale(moov_->extends.header.fragment_duration,
+
301  moov_->header.timescale,
+
302  timescale);
+
303  } else if (moov_->header.duration > 0 &&
+
304  moov_->header.duration != std::numeric_limits<uint64_t>::max()) {
+
305  DCHECK(moov_->header.timescale != 0);
+
306  duration =
+
307  Rescale(moov_->header.duration, moov_->header.timescale, timescale);
+
308  }
+
309 
+
310  const SampleDescription& samp_descr =
+
311  track->media.information.sample_table.description;
312 
-
313  // Read sample description index from mvex if it exists otherwise read
-
314  // from the first entry in Sample To Chunk box.
-
315  if (moov_->extends.tracks.size() > 0) {
-
316  for (size_t t = 0; t < moov_->extends.tracks.size(); t++) {
-
317  const TrackExtends& trex = moov_->extends.tracks[t];
-
318  if (trex.track_id == track->header.track_id) {
-
319  desc_idx = trex.default_sample_description_index;
-
320  break;
-
321  }
-
322  }
-
323  } else {
-
324  const std::vector<ChunkInfo>& chunk_info =
-
325  track->media.information.sample_table.sample_to_chunk.chunk_info;
-
326  RCHECK(chunk_info.size() > 0);
-
327  desc_idx = chunk_info[0].sample_description_index;
-
328  }
-
329  RCHECK(desc_idx > 0);
-
330  desc_idx -= 1; // BMFF descriptor index is one-based
-
331 
-
332  if (samp_descr.type == kAudio) {
-
333  RCHECK(!samp_descr.audio_entries.empty());
-
334 
-
335  // It is not uncommon to find otherwise-valid files with incorrect sample
-
336  // description indices, so we fail gracefully in that case.
-
337  if (desc_idx >= samp_descr.audio_entries.size())
-
338  desc_idx = 0;
-
339 
-
340  const AudioSampleEntry& entry = samp_descr.audio_entries[desc_idx];
-
341  const FourCC actual_format = entry.GetActualFormat();
-
342  AudioCodec codec = FourCCToAudioCodec(actual_format);
-
343  uint8_t num_channels = 0;
-
344  uint32_t sampling_frequency = 0;
-
345  uint8_t audio_object_type = 0;
-
346  uint32_t max_bitrate = 0;
-
347  uint32_t avg_bitrate = 0;
-
348  std::vector<uint8_t> extra_data;
-
349 
-
350  switch (actual_format) {
-
351  case FOURCC_MP4A:
-
352  // Check if it is MPEG4 AAC defined in ISO 14496 Part 3 or
-
353  // supported MPEG2 AAC variants.
-
354  if (entry.esds.es_descriptor.IsAAC()) {
-
355  codec = kCodecAAC;
-
356  const AACAudioSpecificConfig& aac_audio_specific_config =
-
357  entry.esds.aac_audio_specific_config;
-
358  num_channels = aac_audio_specific_config.num_channels();
-
359  sampling_frequency = aac_audio_specific_config.frequency();
-
360  audio_object_type = aac_audio_specific_config.audio_object_type();
-
361  extra_data = entry.esds.es_descriptor.decoder_specific_info();
-
362  break;
-
363  } else if (entry.esds.es_descriptor.IsDTS()) {
-
364  ObjectType audio_type = entry.esds.es_descriptor.object_type();
-
365  switch (audio_type) {
-
366  case kDTSC:
-
367  codec = kCodecDTSC;
-
368  break;
-
369  case kDTSE:
-
370  codec = kCodecDTSE;
-
371  break;
-
372  case kDTSH:
-
373  codec = kCodecDTSH;
-
374  break;
-
375  case kDTSL:
-
376  codec = kCodecDTSL;
-
377  break;
-
378  default:
-
379  LOG(ERROR) << "Unsupported audio type " << audio_type
-
380  << " in stsd box.";
-
381  return false;
-
382  }
-
383  num_channels = entry.esds.aac_audio_specific_config.num_channels();
-
384  // For dts audio in esds, current supported number of channels is 6
-
385  // as the only supported channel layout is 5.1.
-
386  if (num_channels != kDtsAudioNumChannels) {
-
387  LOG(ERROR) << "Unsupported channel count " << num_channels
-
388  << " for audio type " << audio_type << ".";
-
389  return false;
-
390  }
-
391  sampling_frequency = entry.samplerate;
-
392  max_bitrate = entry.esds.es_descriptor.max_bitrate();
-
393  avg_bitrate = entry.esds.es_descriptor.avg_bitrate();
-
394  } else {
-
395  LOG(ERROR) << "Unsupported audio format 0x" << std::hex
-
396  << actual_format << " in stsd box.";
-
397  return false;
-
398  }
-
399  break;
-
400  case FOURCC_DTSC:
-
401  FALLTHROUGH_INTENDED;
-
402  case FOURCC_DTSH:
+
313  size_t desc_idx = 0;
+
314 
+
315  // Read sample description index from mvex if it exists otherwise read
+
316  // from the first entry in Sample To Chunk box.
+
317  if (moov_->extends.tracks.size() > 0) {
+
318  for (size_t t = 0; t < moov_->extends.tracks.size(); t++) {
+
319  const TrackExtends& trex = moov_->extends.tracks[t];
+
320  if (trex.track_id == track->header.track_id) {
+
321  desc_idx = trex.default_sample_description_index;
+
322  break;
+
323  }
+
324  }
+
325  } else {
+
326  const std::vector<ChunkInfo>& chunk_info =
+
327  track->media.information.sample_table.sample_to_chunk.chunk_info;
+
328  RCHECK(chunk_info.size() > 0);
+
329  desc_idx = chunk_info[0].sample_description_index;
+
330  }
+
331  RCHECK(desc_idx > 0);
+
332  desc_idx -= 1; // BMFF descriptor index is one-based
+
333 
+
334  if (samp_descr.type == kAudio) {
+
335  RCHECK(!samp_descr.audio_entries.empty());
+
336 
+
337  // It is not uncommon to find otherwise-valid files with incorrect sample
+
338  // description indices, so we fail gracefully in that case.
+
339  if (desc_idx >= samp_descr.audio_entries.size())
+
340  desc_idx = 0;
+
341 
+
342  const AudioSampleEntry& entry = samp_descr.audio_entries[desc_idx];
+
343  const FourCC actual_format = entry.GetActualFormat();
+
344  AudioCodec codec = FourCCToAudioCodec(actual_format);
+
345  uint8_t num_channels = 0;
+
346  uint32_t sampling_frequency = 0;
+
347  uint8_t audio_object_type = 0;
+
348  uint32_t max_bitrate = 0;
+
349  uint32_t avg_bitrate = 0;
+
350  std::vector<uint8_t> extra_data;
+
351 
+
352  switch (actual_format) {
+
353  case FOURCC_MP4A:
+
354  // Check if it is MPEG4 AAC defined in ISO 14496 Part 3 or
+
355  // supported MPEG2 AAC variants.
+
356  if (entry.esds.es_descriptor.IsAAC()) {
+
357  codec = kCodecAAC;
+
358  const AACAudioSpecificConfig& aac_audio_specific_config =
+
359  entry.esds.aac_audio_specific_config;
+
360  num_channels = aac_audio_specific_config.num_channels();
+
361  sampling_frequency = aac_audio_specific_config.frequency();
+
362  audio_object_type = aac_audio_specific_config.audio_object_type();
+
363  extra_data = entry.esds.es_descriptor.decoder_specific_info();
+
364  break;
+
365  } else if (entry.esds.es_descriptor.IsDTS()) {
+
366  ObjectType audio_type = entry.esds.es_descriptor.object_type();
+
367  switch (audio_type) {
+
368  case kDTSC:
+
369  codec = kCodecDTSC;
+
370  break;
+
371  case kDTSE:
+
372  codec = kCodecDTSE;
+
373  break;
+
374  case kDTSH:
+
375  codec = kCodecDTSH;
+
376  break;
+
377  case kDTSL:
+
378  codec = kCodecDTSL;
+
379  break;
+
380  default:
+
381  LOG(ERROR) << "Unsupported audio type " << audio_type
+
382  << " in stsd box.";
+
383  return false;
+
384  }
+
385  num_channels = entry.esds.aac_audio_specific_config.num_channels();
+
386  // For dts audio in esds, current supported number of channels is 6
+
387  // as the only supported channel layout is 5.1.
+
388  if (num_channels != kDtsAudioNumChannels) {
+
389  LOG(ERROR) << "Unsupported channel count " << num_channels
+
390  << " for audio type " << audio_type << ".";
+
391  return false;
+
392  }
+
393  sampling_frequency = entry.samplerate;
+
394  max_bitrate = entry.esds.es_descriptor.max_bitrate();
+
395  avg_bitrate = entry.esds.es_descriptor.avg_bitrate();
+
396  } else {
+
397  LOG(ERROR) << "Unsupported audio format 0x" << std::hex
+
398  << actual_format << " in stsd box.";
+
399  return false;
+
400  }
+
401  break;
+
402  case FOURCC_DTSC:
403  FALLTHROUGH_INTENDED;
-
404  case FOURCC_DTSL:
+
404  case FOURCC_DTSH:
405  FALLTHROUGH_INTENDED;
-
406  case FOURCC_DTSE:
+
406  case FOURCC_DTSL:
407  FALLTHROUGH_INTENDED;
-
408  case FOURCC_DTSM:
-
409  extra_data = entry.ddts.extra_data;
-
410  max_bitrate = entry.ddts.max_bitrate;
-
411  avg_bitrate = entry.ddts.avg_bitrate;
-
412  num_channels = entry.channelcount;
-
413  sampling_frequency = entry.samplerate;
-
414  break;
-
415  case FOURCC_AC3:
-
416  extra_data = entry.dac3.data;
-
417  num_channels = entry.channelcount;
-
418  sampling_frequency = entry.samplerate;
-
419  break;
-
420  case FOURCC_EAC3:
-
421  extra_data = entry.dec3.data;
-
422  num_channels = entry.channelcount;
-
423  sampling_frequency = entry.samplerate;
-
424  break;
-
425  default:
-
426  LOG(ERROR) << "Unsupported audio format 0x" << std::hex
-
427  << actual_format << " in stsd box.";
-
428  return false;
-
429  }
-
430 
-
431  bool is_encrypted = entry.sinf.info.track_encryption.is_encrypted;
-
432  DVLOG(1) << "is_audio_track_encrypted_: " << is_encrypted;
-
433  streams.push_back(new AudioStreamInfo(
-
434  track->header.track_id,
-
435  timescale,
-
436  duration,
-
437  codec,
-
438  AudioStreamInfo::GetCodecString(codec, audio_object_type),
-
439  track->media.header.language.code,
-
440  entry.samplesize,
-
441  num_channels,
-
442  sampling_frequency,
-
443  max_bitrate,
-
444  avg_bitrate,
-
445  vector_as_array(&extra_data),
-
446  extra_data.size(),
-
447  is_encrypted));
-
448  }
-
449 
-
450  if (samp_descr.type == kVideo) {
-
451  RCHECK(!samp_descr.video_entries.empty());
-
452  if (desc_idx >= samp_descr.video_entries.size())
-
453  desc_idx = 0;
-
454  const VideoSampleEntry& entry = samp_descr.video_entries[desc_idx];
-
455 
-
456  uint32_t coded_width = entry.width;
-
457  uint32_t coded_height = entry.height;
-
458  uint32_t pixel_width = entry.pixel_aspect.h_spacing;
-
459  uint32_t pixel_height = entry.pixel_aspect.v_spacing;
-
460  if (pixel_width == 0 && pixel_height == 0) {
-
461  pixel_width = 1;
-
462  pixel_height = 1;
-
463  }
-
464  std::string codec_string;
-
465  uint8_t nalu_length_size = 0;
-
466 
-
467  const FourCC actual_format = entry.GetActualFormat();
-
468  const VideoCodec video_codec = FourCCToVideoCodec(actual_format);
-
469  switch (actual_format) {
-
470  case FOURCC_AVC1: {
-
471  AVCDecoderConfiguration avc_config;
-
472  if (!avc_config.Parse(entry.codec_config_record.data)) {
-
473  LOG(ERROR) << "Failed to parse avcc.";
-
474  return false;
-
475  }
-
476  codec_string = avc_config.GetCodecString();
-
477  nalu_length_size = avc_config.length_size();
-
478 
-
479  if (coded_width != avc_config.coded_width() ||
-
480  coded_height != avc_config.coded_height()) {
-
481  LOG(WARNING) << "Resolution in VisualSampleEntry (" << coded_width
-
482  << "," << coded_height
-
483  << ") does not match with resolution in "
-
484  "AVCDecoderConfigurationRecord ("
-
485  << avc_config.coded_width() << ","
-
486  << avc_config.coded_height()
-
487  << "). Use AVCDecoderConfigurationRecord.";
-
488  coded_width = avc_config.coded_width();
-
489  coded_height = avc_config.coded_height();
-
490  }
-
491 
-
492  if (pixel_width != avc_config.pixel_width() ||
-
493  pixel_height != avc_config.pixel_height()) {
-
494  LOG_IF(WARNING, pixel_width != 1 || pixel_height != 1)
-
495  << "Pixel aspect ratio in PASP box (" << pixel_width << ","
-
496  << pixel_height
-
497  << ") does not match with SAR in AVCDecoderConfigurationRecord "
-
498  "("
-
499  << avc_config.pixel_width() << "," << avc_config.pixel_height()
-
500  << "). Use AVCDecoderConfigurationRecord.";
-
501  pixel_width = avc_config.pixel_width();
-
502  pixel_height = avc_config.pixel_height();
-
503  }
-
504  break;
-
505  }
-
506  case FOURCC_HEV1:
-
507  case FOURCC_HVC1: {
-
508  HEVCDecoderConfiguration hevc_config;
-
509  if (!hevc_config.Parse(entry.codec_config_record.data)) {
-
510  LOG(ERROR) << "Failed to parse hevc.";
-
511  return false;
-
512  }
-
513  codec_string = hevc_config.GetCodecString(video_codec);
-
514  nalu_length_size = hevc_config.length_size();
-
515  break;
-
516  }
-
517  case FOURCC_VP08:
-
518  case FOURCC_VP09:
-
519  case FOURCC_VP10: {
-
520  VPCodecConfiguration vp_config;
-
521  if (!vp_config.Parse(entry.codec_config_record.data)) {
-
522  LOG(ERROR) << "Failed to parse vpcc.";
-
523  return false;
-
524  }
-
525  codec_string = vp_config.GetCodecString(video_codec);
-
526  break;
-
527  }
-
528  default:
-
529  LOG(ERROR) << "Unsupported video format "
-
530  << FourCCToString(actual_format) << " in stsd box.";
-
531  return false;
-
532  }
-
533 
-
534  bool is_encrypted = entry.sinf.info.track_encryption.is_encrypted;
-
535  DVLOG(1) << "is_video_track_encrypted_: " << is_encrypted;
-
536  streams.push_back(new VideoStreamInfo(
-
537  track->header.track_id, timescale, duration, video_codec,
-
538  codec_string, track->media.header.language.code, coded_width,
-
539  coded_height, pixel_width, pixel_height,
-
540  0, // trick_play_rate
-
541  nalu_length_size, vector_as_array(&entry.codec_config_record.data),
-
542  entry.codec_config_record.data.size(), is_encrypted));
-
543  }
-
544  }
-
545 
-
546  init_cb_.Run(streams);
-
547  if (!FetchKeysIfNecessary(moov_->pssh))
-
548  return false;
-
549  runs_.reset(new TrackRunIterator(moov_.get()));
-
550  RCHECK(runs_->Init());
-
551  ChangeState(kEmittingSamples);
-
552  return true;
-
553 }
-
554 
-
555 bool MP4MediaParser::ParseMoof(BoxReader* reader) {
-
556  // Must already have initialization segment.
-
557  RCHECK(moov_.get());
-
558  MovieFragment moof;
-
559  RCHECK(moof.Parse(reader));
-
560  if (!runs_)
-
561  runs_.reset(new TrackRunIterator(moov_.get()));
-
562  RCHECK(runs_->Init(moof));
-
563  if (!FetchKeysIfNecessary(moof.pssh))
-
564  return false;
-
565  ChangeState(kEmittingSamples);
-
566  return true;
-
567 }
-
568 
-
569 bool MP4MediaParser::FetchKeysIfNecessary(
-
570  const std::vector<ProtectionSystemSpecificHeader>& headers) {
-
571  if (headers.empty())
-
572  return true;
-
573 
-
574  // An error will be returned later if the samples need to be decrypted.
-
575  if (!decryption_key_source_)
-
576  return true;
-
577 
-
578  // TODO(tinskip): Pass in raw 'pssh' boxes to FetchKeys. This will allow
-
579  // supporting multiple keysystems. Move this to KeySource.
-
580  std::vector<uint8_t> widevine_system_id;
-
581  base::HexStringToBytes(kWidevineKeySystemId, &widevine_system_id);
-
582  for (std::vector<ProtectionSystemSpecificHeader>::const_iterator iter =
-
583  headers.begin(); iter != headers.end(); ++iter) {
-
584  if (iter->system_id == widevine_system_id) {
-
585  Status status = decryption_key_source_->FetchKeys(iter->data);
-
586  if (!status.ok()) {
-
587  LOG(ERROR) << "Error fetching decryption keys: " << status;
-
588  return false;
-
589  }
-
590  return true;
-
591  }
-
592  }
-
593 
-
594  LOG(ERROR) << "No viable 'pssh' box found for content decryption.";
-
595  return false;
-
596 }
-
597 
-
598 bool MP4MediaParser::EnqueueSample(bool* err) {
-
599  if (!runs_->IsRunValid()) {
-
600  // Remain in kEnqueueingSamples state, discarding data, until the end of
-
601  // the current 'mdat' box has been appended to the queue.
-
602  if (!queue_.Trim(mdat_tail_))
-
603  return false;
-
604 
-
605  ChangeState(kParsingBoxes);
-
606  return true;
-
607  }
-
608 
-
609  if (!runs_->IsSampleValid()) {
-
610  runs_->AdvanceRun();
-
611  return true;
-
612  }
-
613 
-
614  DCHECK(!(*err));
+
408  case FOURCC_DTSE:
+
409  FALLTHROUGH_INTENDED;
+
410  case FOURCC_DTSM:
+
411  extra_data = entry.ddts.extra_data;
+
412  max_bitrate = entry.ddts.max_bitrate;
+
413  avg_bitrate = entry.ddts.avg_bitrate;
+
414  num_channels = entry.channelcount;
+
415  sampling_frequency = entry.samplerate;
+
416  break;
+
417  case FOURCC_AC3:
+
418  extra_data = entry.dac3.data;
+
419  num_channels = entry.channelcount;
+
420  sampling_frequency = entry.samplerate;
+
421  break;
+
422  case FOURCC_EAC3:
+
423  extra_data = entry.dec3.data;
+
424  num_channels = entry.channelcount;
+
425  sampling_frequency = entry.samplerate;
+
426  break;
+
427  default:
+
428  LOG(ERROR) << "Unsupported audio format 0x" << std::hex
+
429  << actual_format << " in stsd box.";
+
430  return false;
+
431  }
+
432 
+
433  bool is_encrypted = entry.sinf.info.track_encryption.is_encrypted;
+
434  DVLOG(1) << "is_audio_track_encrypted_: " << is_encrypted;
+
435  streams.push_back(new AudioStreamInfo(
+
436  track->header.track_id,
+
437  timescale,
+
438  duration,
+
439  codec,
+
440  AudioStreamInfo::GetCodecString(codec, audio_object_type),
+
441  track->media.header.language.code,
+
442  entry.samplesize,
+
443  num_channels,
+
444  sampling_frequency,
+
445  max_bitrate,
+
446  avg_bitrate,
+
447  vector_as_array(&extra_data),
+
448  extra_data.size(),
+
449  is_encrypted));
+
450  }
+
451 
+
452  if (samp_descr.type == kVideo) {
+
453  RCHECK(!samp_descr.video_entries.empty());
+
454  if (desc_idx >= samp_descr.video_entries.size())
+
455  desc_idx = 0;
+
456  const VideoSampleEntry& entry = samp_descr.video_entries[desc_idx];
+
457 
+
458  uint32_t coded_width = entry.width;
+
459  uint32_t coded_height = entry.height;
+
460  uint32_t pixel_width = entry.pixel_aspect.h_spacing;
+
461  uint32_t pixel_height = entry.pixel_aspect.v_spacing;
+
462  if (pixel_width == 0 && pixel_height == 0) {
+
463  pixel_width = 1;
+
464  pixel_height = 1;
+
465  }
+
466  std::string codec_string;
+
467  uint8_t nalu_length_size = 0;
+
468 
+
469  const FourCC actual_format = entry.GetActualFormat();
+
470  const VideoCodec video_codec = FourCCToVideoCodec(actual_format);
+
471  switch (actual_format) {
+
472  case FOURCC_AVC1: {
+
473  AVCDecoderConfiguration avc_config;
+
474  if (!avc_config.Parse(entry.codec_config_record.data)) {
+
475  LOG(ERROR) << "Failed to parse avcc.";
+
476  return false;
+
477  }
+
478  codec_string = avc_config.GetCodecString();
+
479  nalu_length_size = avc_config.length_size();
+
480 
+
481  if (coded_width != avc_config.coded_width() ||
+
482  coded_height != avc_config.coded_height()) {
+
483  LOG(WARNING) << "Resolution in VisualSampleEntry (" << coded_width
+
484  << "," << coded_height
+
485  << ") does not match with resolution in "
+
486  "AVCDecoderConfigurationRecord ("
+
487  << avc_config.coded_width() << ","
+
488  << avc_config.coded_height()
+
489  << "). Use AVCDecoderConfigurationRecord.";
+
490  coded_width = avc_config.coded_width();
+
491  coded_height = avc_config.coded_height();
+
492  }
+
493 
+
494  if (pixel_width != avc_config.pixel_width() ||
+
495  pixel_height != avc_config.pixel_height()) {
+
496  LOG_IF(WARNING, pixel_width != 1 || pixel_height != 1)
+
497  << "Pixel aspect ratio in PASP box (" << pixel_width << ","
+
498  << pixel_height
+
499  << ") does not match with SAR in AVCDecoderConfigurationRecord "
+
500  "("
+
501  << avc_config.pixel_width() << "," << avc_config.pixel_height()
+
502  << "). Use AVCDecoderConfigurationRecord.";
+
503  pixel_width = avc_config.pixel_width();
+
504  pixel_height = avc_config.pixel_height();
+
505  }
+
506  break;
+
507  }
+
508  case FOURCC_HEV1:
+
509  case FOURCC_HVC1: {
+
510  HEVCDecoderConfiguration hevc_config;
+
511  if (!hevc_config.Parse(entry.codec_config_record.data)) {
+
512  LOG(ERROR) << "Failed to parse hevc.";
+
513  return false;
+
514  }
+
515  codec_string = hevc_config.GetCodecString(video_codec);
+
516  nalu_length_size = hevc_config.length_size();
+
517  break;
+
518  }
+
519  case FOURCC_VP08:
+
520  case FOURCC_VP09:
+
521  case FOURCC_VP10: {
+
522  VPCodecConfiguration vp_config;
+
523  if (!vp_config.Parse(entry.codec_config_record.data)) {
+
524  LOG(ERROR) << "Failed to parse vpcc.";
+
525  return false;
+
526  }
+
527  codec_string = vp_config.GetCodecString(video_codec);
+
528  break;
+
529  }
+
530  default:
+
531  LOG(ERROR) << "Unsupported video format "
+
532  << FourCCToString(actual_format) << " in stsd box.";
+
533  return false;
+
534  }
+
535 
+
536  bool is_encrypted = entry.sinf.info.track_encryption.is_encrypted;
+
537  DVLOG(1) << "is_video_track_encrypted_: " << is_encrypted;
+
538  streams.push_back(new VideoStreamInfo(
+
539  track->header.track_id, timescale, duration, video_codec,
+
540  codec_string, track->media.header.language.code, coded_width,
+
541  coded_height, pixel_width, pixel_height,
+
542  0, // trick_play_rate
+
543  nalu_length_size, vector_as_array(&entry.codec_config_record.data),
+
544  entry.codec_config_record.data.size(), is_encrypted));
+
545  }
+
546  }
+
547 
+
548  init_cb_.Run(streams);
+
549  if (!FetchKeysIfNecessary(moov_->pssh))
+
550  return false;
+
551  runs_.reset(new TrackRunIterator(moov_.get()));
+
552  RCHECK(runs_->Init());
+
553  ChangeState(kEmittingSamples);
+
554  return true;
+
555 }
+
556 
+
557 bool MP4MediaParser::ParseMoof(BoxReader* reader) {
+
558  // Must already have initialization segment.
+
559  RCHECK(moov_.get());
+
560  MovieFragment moof;
+
561  RCHECK(moof.Parse(reader));
+
562  if (!runs_)
+
563  runs_.reset(new TrackRunIterator(moov_.get()));
+
564  RCHECK(runs_->Init(moof));
+
565  if (!FetchKeysIfNecessary(moof.pssh))
+
566  return false;
+
567  ChangeState(kEmittingSamples);
+
568  return true;
+
569 }
+
570 
+
571 bool MP4MediaParser::FetchKeysIfNecessary(
+
572  const std::vector<ProtectionSystemSpecificHeader>& headers) {
+
573  if (headers.empty())
+
574  return true;
+
575 
+
576  // An error will be returned later if the samples need to be decrypted.
+
577  if (!decryption_key_source_)
+
578  return true;
+
579 
+
580  // TODO(tinskip): Pass in raw 'pssh' boxes to FetchKeys. This will allow
+
581  // supporting multiple keysystems. Move this to KeySource.
+
582  std::vector<uint8_t> widevine_system_id;
+
583  base::HexStringToBytes(kWidevineKeySystemId, &widevine_system_id);
+
584  for (std::vector<ProtectionSystemSpecificHeader>::const_iterator iter =
+
585  headers.begin(); iter != headers.end(); ++iter) {
+
586  if (iter->system_id == widevine_system_id) {
+
587  Status status = decryption_key_source_->FetchKeys(iter->data);
+
588  if (!status.ok()) {
+
589  LOG(ERROR) << "Error fetching decryption keys: " << status;
+
590  return false;
+
591  }
+
592  return true;
+
593  }
+
594  }
+
595 
+
596  LOG(ERROR) << "No viable 'pssh' box found for content decryption.";
+
597  return false;
+
598 }
+
599 
+
600 bool MP4MediaParser::EnqueueSample(bool* err) {
+
601  if (!runs_->IsRunValid()) {
+
602  // Remain in kEnqueueingSamples state, discarding data, until the end of
+
603  // the current 'mdat' box has been appended to the queue.
+
604  if (!queue_.Trim(mdat_tail_))
+
605  return false;
+
606 
+
607  ChangeState(kParsingBoxes);
+
608  return true;
+
609  }
+
610 
+
611  if (!runs_->IsSampleValid()) {
+
612  runs_->AdvanceRun();
+
613  return true;
+
614  }
615 
-
616  const uint8_t* buf;
-
617  int buf_size;
-
618  queue_.Peek(&buf, &buf_size);
-
619  if (!buf_size)
-
620  return false;
-
621 
-
622  // Skip this entire track if it is not audio nor video.
-
623  if (!runs_->is_audio() && !runs_->is_video())
-
624  runs_->AdvanceRun();
-
625 
-
626  // Attempt to cache the auxiliary information first. Aux info is usually
-
627  // placed in a contiguous block before the sample data, rather than being
-
628  // interleaved. If we didn't cache it, this would require that we retain the
-
629  // start of the segment buffer while reading samples. Aux info is typically
-
630  // quite small compared to sample data, so this pattern is useful on
-
631  // memory-constrained devices where the source buffer consumes a substantial
-
632  // portion of the total system memory.
-
633  if (runs_->AuxInfoNeedsToBeCached()) {
-
634  queue_.PeekAt(runs_->aux_info_offset() + moof_head_, &buf, &buf_size);
-
635  if (buf_size < runs_->aux_info_size())
-
636  return false;
-
637  *err = !runs_->CacheAuxInfo(buf, buf_size);
-
638  return !*err;
-
639  }
-
640 
-
641  int64_t sample_offset = runs_->sample_offset() + moof_head_;
-
642  queue_.PeekAt(sample_offset, &buf, &buf_size);
-
643  if (buf_size < runs_->sample_size()) {
-
644  if (sample_offset < queue_.head()) {
-
645  LOG(ERROR) << "Incorrect sample offset " << sample_offset
-
646  << " < " << queue_.head();
-
647  *err = true;
-
648  }
-
649  return false;
-
650  }
-
651 
-
652  scoped_refptr<MediaSample> stream_sample(MediaSample::CopyFrom(
-
653  buf, runs_->sample_size(), runs_->is_keyframe()));
-
654  if (runs_->is_encrypted()) {
-
655  scoped_ptr<DecryptConfig> decrypt_config = runs_->GetDecryptConfig();
-
656  if (!decrypt_config ||
-
657  !DecryptSampleBuffer(decrypt_config.get(),
-
658  stream_sample->writable_data(),
-
659  stream_sample->data_size())) {
-
660  *err = true;
-
661  LOG(ERROR) << "Cannot decrypt samples.";
-
662  return false;
-
663  }
-
664  }
-
665 
-
666  stream_sample->set_dts(runs_->dts());
-
667  stream_sample->set_pts(runs_->cts());
-
668  stream_sample->set_duration(runs_->duration());
-
669 
-
670  DVLOG(3) << "Pushing frame: "
-
671  << ", key=" << runs_->is_keyframe()
-
672  << ", dur=" << runs_->duration()
-
673  << ", dts=" << runs_->dts()
-
674  << ", cts=" << runs_->cts()
-
675  << ", size=" << runs_->sample_size();
-
676 
-
677  if (!new_sample_cb_.Run(runs_->track_id(), stream_sample)) {
-
678  *err = true;
-
679  LOG(ERROR) << "Failed to process the sample.";
-
680  return false;
-
681  }
-
682 
-
683  runs_->AdvanceSample();
-
684  return true;
-
685 }
-
686 
-
687 bool MP4MediaParser::DecryptSampleBuffer(const DecryptConfig* decrypt_config,
-
688  uint8_t* buffer,
-
689  size_t buffer_size) {
-
690  DCHECK(decrypt_config);
-
691  DCHECK(buffer);
-
692 
-
693  if (!decryption_key_source_) {
-
694  LOG(ERROR) << "Encrypted media sample encountered, but decryption is not "
-
695  "enabled";
-
696  return false;
-
697  }
-
698 
-
699  // Get the encryptor object.
-
700  AesCtrEncryptor* encryptor;
-
701  DecryptorMap::iterator found = decryptor_map_.find(decrypt_config->key_id());
-
702  if (found == decryptor_map_.end()) {
-
703  // Create new AesCtrEncryptor
-
704  EncryptionKey key;
-
705  Status status(decryption_key_source_->GetKey(decrypt_config->key_id(),
-
706  &key));
-
707  if (!status.ok()) {
-
708  LOG(ERROR) << "Error retrieving decryption key: " << status;
-
709  return false;
-
710  }
-
711  scoped_ptr<AesCtrEncryptor> new_encryptor(new AesCtrEncryptor);
-
712  if (!new_encryptor->InitializeWithIv(key.key, decrypt_config->iv())) {
-
713  LOG(ERROR) << "Failed to initialize AesCtrEncryptor for decryption.";
-
714  return false;
-
715  }
-
716  encryptor = new_encryptor.release();
-
717  decryptor_map_[decrypt_config->key_id()] = encryptor;
-
718  } else {
-
719  encryptor = found->second;
-
720  }
-
721  if (!encryptor->SetIv(decrypt_config->iv())) {
-
722  LOG(ERROR) << "Invalid initialization vector.";
-
723  return false;
-
724  }
-
725 
-
726  if (decrypt_config->subsamples().empty()) {
-
727  // Sample not encrypted using subsample encryption. Decrypt whole.
-
728  if (!encryptor->Decrypt(buffer, buffer_size, buffer)) {
-
729  LOG(ERROR) << "Error during bulk sample decryption.";
-
730  return false;
-
731  }
-
732  return true;
-
733  }
-
734 
-
735  // Subsample decryption.
-
736  const std::vector<SubsampleEntry>& subsamples = decrypt_config->subsamples();
-
737  uint8_t* current_ptr = buffer;
-
738  const uint8_t* buffer_end = buffer + buffer_size;
-
739  current_ptr += decrypt_config->data_offset();
-
740  if (current_ptr > buffer_end) {
-
741  LOG(ERROR) << "Subsample data_offset too large.";
-
742  return false;
-
743  }
-
744  for (std::vector<SubsampleEntry>::const_iterator iter = subsamples.begin();
-
745  iter != subsamples.end();
-
746  ++iter) {
-
747  if ((current_ptr + iter->clear_bytes + iter->cipher_bytes) > buffer_end) {
-
748  LOG(ERROR) << "Subsamples overflow sample buffer.";
-
749  return false;
-
750  }
-
751  current_ptr += iter->clear_bytes;
-
752  if (!encryptor->Decrypt(current_ptr, iter->cipher_bytes, current_ptr)) {
-
753  LOG(ERROR) << "Error decrypting subsample buffer.";
-
754  return false;
-
755  }
-
756  current_ptr += iter->cipher_bytes;
-
757  }
-
758  return true;
-
759 }
-
760 
-
761 bool MP4MediaParser::ReadAndDiscardMDATsUntil(const int64_t offset) {
-
762  bool err = false;
-
763  while (mdat_tail_ < offset) {
-
764  const uint8_t* buf;
-
765  int size;
-
766  queue_.PeekAt(mdat_tail_, &buf, &size);
-
767 
-
768  FourCC type;
-
769  uint64_t box_sz;
-
770  if (!BoxReader::StartTopLevelBox(buf, size, &type, &box_sz, &err))
-
771  break;
-
772 
-
773  mdat_tail_ += box_sz;
-
774  }
-
775  queue_.Trim(std::min(mdat_tail_, offset));
-
776  return !err;
-
777 }
-
778 
-
779 void MP4MediaParser::ChangeState(State new_state) {
-
780  DVLOG(2) << "Changing state: " << new_state;
-
781  state_ = new_state;
-
782 }
-
783 
-
784 } // namespace mp4
-
785 } // namespace media
-
786 } // namespace edash_packager
+
616  DCHECK(!(*err));
+
617 
+
618  const uint8_t* buf;
+
619  int buf_size;
+
620  queue_.Peek(&buf, &buf_size);
+
621  if (!buf_size)
+
622  return false;
+
623 
+
624  // Skip this entire track if it is not audio nor video.
+
625  if (!runs_->is_audio() && !runs_->is_video())
+
626  runs_->AdvanceRun();
+
627 
+
628  // Attempt to cache the auxiliary information first. Aux info is usually
+
629  // placed in a contiguous block before the sample data, rather than being
+
630  // interleaved. If we didn't cache it, this would require that we retain the
+
631  // start of the segment buffer while reading samples. Aux info is typically
+
632  // quite small compared to sample data, so this pattern is useful on
+
633  // memory-constrained devices where the source buffer consumes a substantial
+
634  // portion of the total system memory.
+
635  if (runs_->AuxInfoNeedsToBeCached()) {
+
636  queue_.PeekAt(runs_->aux_info_offset() + moof_head_, &buf, &buf_size);
+
637  if (buf_size < runs_->aux_info_size())
+
638  return false;
+
639  *err = !runs_->CacheAuxInfo(buf, buf_size);
+
640  return !*err;
+
641  }
+
642 
+
643  int64_t sample_offset = runs_->sample_offset() + moof_head_;
+
644  queue_.PeekAt(sample_offset, &buf, &buf_size);
+
645  if (buf_size < runs_->sample_size()) {
+
646  if (sample_offset < queue_.head()) {
+
647  LOG(ERROR) << "Incorrect sample offset " << sample_offset
+
648  << " < " << queue_.head();
+
649  *err = true;
+
650  }
+
651  return false;
+
652  }
+
653 
+
654  scoped_refptr<MediaSample> stream_sample(MediaSample::CopyFrom(
+
655  buf, runs_->sample_size(), runs_->is_keyframe()));
+
656  if (runs_->is_encrypted()) {
+
657  if (!decryptor_source_) {
+
658  *err = true;
+
659  LOG(ERROR) << "Encrypted media sample encountered, but decryption is not "
+
660  "enabled";
+
661  return false;
+
662  }
+
663 
+
664  scoped_ptr<DecryptConfig> decrypt_config = runs_->GetDecryptConfig();
+
665  if (!decrypt_config ||
+
666  !decryptor_source_->DecryptSampleBuffer(decrypt_config.get(),
+
667  stream_sample->writable_data(),
+
668  stream_sample->data_size())) {
+
669  *err = true;
+
670  LOG(ERROR) << "Cannot decrypt samples.";
+
671  return false;
+
672  }
+
673  }
+
674 
+
675  stream_sample->set_dts(runs_->dts());
+
676  stream_sample->set_pts(runs_->cts());
+
677  stream_sample->set_duration(runs_->duration());
+
678 
+
679  DVLOG(3) << "Pushing frame: "
+
680  << ", key=" << runs_->is_keyframe()
+
681  << ", dur=" << runs_->duration()
+
682  << ", dts=" << runs_->dts()
+
683  << ", cts=" << runs_->cts()
+
684  << ", size=" << runs_->sample_size();
+
685 
+
686  if (!new_sample_cb_.Run(runs_->track_id(), stream_sample)) {
+
687  *err = true;
+
688  LOG(ERROR) << "Failed to process the sample.";
+
689  return false;
+
690  }
+
691 
+
692  runs_->AdvanceSample();
+
693  return true;
+
694 }
+
695 
+
696 bool MP4MediaParser::ReadAndDiscardMDATsUntil(const int64_t offset) {
+
697  bool err = false;
+
698  while (mdat_tail_ < offset) {
+
699  const uint8_t* buf;
+
700  int size;
+
701  queue_.PeekAt(mdat_tail_, &buf, &size);
+
702 
+
703  FourCC type;
+
704  uint64_t box_sz;
+
705  if (!BoxReader::StartTopLevelBox(buf, size, &type, &box_sz, &err))
+
706  break;
+
707 
+
708  mdat_tail_ += box_sz;
+
709  }
+
710  queue_.Trim(std::min(mdat_tail_, offset));
+
711  return !err;
+
712 }
+
713 
+
714 void MP4MediaParser::ChangeState(State new_state) {
+
715  DVLOG(2) << "Changing state: " << new_state;
+
716  state_ = new_state;
+
717 }
+
718 
+
719 } // namespace mp4
+
720 } // namespace media
+
721 } // namespace edash_packager
static BoxReader * ReadTopLevelBox(const uint8_t *buf, const size_t buf_size, bool *err)
Definition: box_reader.cc:37
-
virtual Status GetKey(TrackType track_type, EncryptionKey *key)
Definition: key_source.cc:46
-
bool Parse(const uint8_t *buf, int size) override
+
DecryptorSource wraps KeySource and is responsible for decryptor management.
+
bool Parse(const uint8_t *buf, int size) override
static scoped_refptr< MediaSample > CopyFrom(const uint8_t *data, size_t size, bool is_key_frame)
Definition: media_sample.cc:45
void PeekAt(int64_t offset, const uint8_t **buf, int *size)
- -
bool LoadMoov(const std::string &file_path)
+ +
bool LoadMoov(const std::string &file_path)
virtual Status FetchKeys(const std::vector< uint8_t > &content_id, const std::string &policy)
Definition: key_source.cc:30
KeySource is responsible for encryption key acquisition.
Definition: key_source.h:29
static bool StartTopLevelBox(const uint8_t *buf, const size_t buf_size, FourCC *type, uint64_t *box_size, bool *err) WARN_UNUSED_RESULT
Definition: box_reader.cc:60
@@ -891,7 +826,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/df1/structedash__packager_1_1media_1_1mp4_1_1SegmentIndex-members.html b/docs/d7/df1/structedash__packager_1_1media_1_1mp4_1_1SegmentIndex-members.html index 54081f1bd7..bc8f5a87ee 100644 --- a/docs/d7/df1/structedash__packager_1_1media_1_1mp4_1_1SegmentIndex-members.html +++ b/docs/d7/df1/structedash__packager_1_1media_1_1mp4_1_1SegmentIndex-members.html @@ -117,7 +117,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/df3/classedash__packager_1_1media_1_1File-members.html b/docs/d7/df3/classedash__packager_1_1media_1_1File-members.html index 703aa2f236..bee33819ea 100644 --- a/docs/d7/df3/classedash__packager_1_1media_1_1File-members.html +++ b/docs/d7/df3/classedash__packager_1_1media_1_1File-members.html @@ -116,7 +116,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/df9/byte__queue_8cc_source.html b/docs/d7/df9/byte__queue_8cc_source.html index f2b52dca77..b29db70e49 100644 --- a/docs/d7/df9/byte__queue_8cc_source.html +++ b/docs/d7/df9/byte__queue_8cc_source.html @@ -182,7 +182,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d7/dfa/classedash__packager_1_1media_1_1webm_1_1TwoPassSingleSegmentSegmenter.html b/docs/d7/dfa/classedash__packager_1_1media_1_1webm_1_1TwoPassSingleSegmentSegmenter.html index 57755a0716..e0577ef577 100644 --- a/docs/d7/dfa/classedash__packager_1_1media_1_1webm_1_1TwoPassSingleSegmentSegmenter.html +++ b/docs/d7/dfa/classedash__packager_1_1media_1_1webm_1_1TwoPassSingleSegmentSegmenter.html @@ -214,7 +214,7 @@ double cluster_length_sec< diff --git a/docs/d8/d0d/classedash__packager_1_1media_1_1mp4_1_1MP4MediaParser.html b/docs/d8/d0d/classedash__packager_1_1media_1_1mp4_1_1MP4MediaParser.html index 88da532c58..358e04693f 100644 --- a/docs/d8/d0d/classedash__packager_1_1media_1_1mp4_1_1MP4MediaParser.html +++ b/docs/d8/d0d/classedash__packager_1_1media_1_1mp4_1_1MP4MediaParser.html @@ -129,7 +129,7 @@ track_id, const scoped_refptr

Detailed Description

-

Definition at line 36 of file mp4_media_parser.h.

+

Definition at line 33 of file mp4_media_parser.h.

Member Function Documentation

@@ -155,7 +155,7 @@ track_id, const scoped_refptr

Implements edash_packager::media::MediaParser.

-

Definition at line 120 of file mp4_media_parser.cc.

+

Definition at line 122 of file mp4_media_parser.cc.

@@ -233,7 +233,7 @@ track_id, const scoped_refptr
Returns
true if successful, false otherwise.
-

Definition at line 160 of file mp4_media_parser.cc.

+

Definition at line 162 of file mp4_media_parser.cc.

@@ -273,7 +273,7 @@ track_id, const scoped_refptr

Implements edash_packager::media::MediaParser.

-

Definition at line 126 of file mp4_media_parser.cc.

+

Definition at line 128 of file mp4_media_parser.cc.

@@ -284,7 +284,7 @@ track_id, const scoped_refptr
diff --git a/docs/d8/d0d/media__sample_8cc_source.html b/docs/d8/d0d/media__sample_8cc_source.html index b0ca0a55e3..e66f6ad87a 100644 --- a/docs/d8/d0d/media__sample_8cc_source.html +++ b/docs/d8/d0d/media__sample_8cc_source.html @@ -195,7 +195,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d19/bandwidth__estimator_8h_source.html b/docs/d8/d19/bandwidth__estimator_8h_source.html index 391ac02f50..3b9e599d03 100644 --- a/docs/d8/d19/bandwidth__estimator_8h_source.html +++ b/docs/d8/d19/bandwidth__estimator_8h_source.html @@ -133,7 +133,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d1e/classedash__packager_1_1media_1_1mp4_1_1EncryptingFragmenter.html b/docs/d8/d1e/classedash__packager_1_1media_1_1mp4_1_1EncryptingFragmenter.html index 3362f14480..d098059644 100644 --- a/docs/d8/d1e/classedash__packager_1_1media_1_1mp4_1_1EncryptingFragmenter.html +++ b/docs/d8/d1e/classedash__packager_1_1media_1_1mp4_1_1EncryptingFragmenter.html @@ -374,7 +374,7 @@ void set_encryption_key diff --git a/docs/d8/d21/structedash__packager_1_1media_1_1mp4_1_1ChunkInfo.html b/docs/d8/d21/structedash__packager_1_1media_1_1mp4_1_1ChunkInfo.html index 2cb99c74fc..737c9723e5 100644 --- a/docs/d8/d21/structedash__packager_1_1media_1_1mp4_1_1ChunkInfo.html +++ b/docs/d8/d21/structedash__packager_1_1media_1_1mp4_1_1ChunkInfo.html @@ -115,7 +115,7 @@ uint32_t sample_descriptio diff --git a/docs/d8/d22/classedash__packager_1_1media_1_1HttpKeyFetcher-members.html b/docs/d8/d22/classedash__packager_1_1media_1_1HttpKeyFetcher-members.html index 2aeb187227..b1bdcf7361 100644 --- a/docs/d8/d22/classedash__packager_1_1media_1_1HttpKeyFetcher-members.html +++ b/docs/d8/d22/classedash__packager_1_1media_1_1HttpKeyFetcher-members.html @@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d25/classedash__packager_1_1media_1_1ProducerConsumerQueue-members.html b/docs/d8/d25/classedash__packager_1_1media_1_1ProducerConsumerQueue-members.html index 571ce30e6c..45a2eb3ae2 100644 --- a/docs/d8/d25/classedash__packager_1_1media_1_1ProducerConsumerQueue-members.html +++ b/docs/d8/d25/classedash__packager_1_1media_1_1ProducerConsumerQueue-members.html @@ -108,7 +108,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d26/structedash__packager_1_1media_1_1mp4_1_1SegmentType-members.html b/docs/d8/d26/structedash__packager_1_1media_1_1mp4_1_1SegmentType-members.html index d67f68ea4d..c510cf572b 100644 --- a/docs/d8/d26/structedash__packager_1_1media_1_1mp4_1_1SegmentType-members.html +++ b/docs/d8/d26/structedash__packager_1_1media_1_1mp4_1_1SegmentType-members.html @@ -111,7 +111,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d2e/classedash__packager_1_1media_1_1ByteQueue.html b/docs/d8/d2e/classedash__packager_1_1media_1_1ByteQueue.html index 7d4ab77e84..7aa377babf 100644 --- a/docs/d8/d2e/classedash__packager_1_1media_1_1ByteQueue.html +++ b/docs/d8/d2e/classedash__packager_1_1media_1_1ByteQueue.html @@ -177,7 +177,7 @@ void  diff --git a/docs/d8/d32/structedash__packager_1_1media_1_1mp4_1_1CompactSampleSize-members.html b/docs/d8/d32/structedash__packager_1_1media_1_1mp4_1_1CompactSampleSize-members.html index 29426285b2..b86be1ca24 100644 --- a/docs/d8/d32/structedash__packager_1_1media_1_1mp4_1_1CompactSampleSize-members.html +++ b/docs/d8/d32/structedash__packager_1_1media_1_1mp4_1_1CompactSampleSize-members.html @@ -114,7 +114,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d33/webm__content__encodings__client_8h_source.html b/docs/d8/d33/webm__content__encodings__client_8h_source.html index 13fc32cf02..69c4ec7128 100644 --- a/docs/d8/d33/webm__content__encodings__client_8h_source.html +++ b/docs/d8/d33/webm__content__encodings__client_8h_source.html @@ -140,7 +140,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d34/structedash__packager_1_1media_1_1mp4_1_1ElementaryStreamDescriptor-members.html b/docs/d8/d34/structedash__packager_1_1media_1_1mp4_1_1ElementaryStreamDescriptor-members.html index fe4249df1d..085aa9ac96 100644 --- a/docs/d8/d34/structedash__packager_1_1media_1_1mp4_1_1ElementaryStreamDescriptor-members.html +++ b/docs/d8/d34/structedash__packager_1_1media_1_1mp4_1_1ElementaryStreamDescriptor-members.html @@ -114,7 +114,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d4a/structedash__packager_1_1media_1_1mp4_1_1EditList.html b/docs/d8/d4a/structedash__packager_1_1media_1_1mp4_1_1EditList.html index baf45f9426..a4b776a5af 100644 --- a/docs/d8/d4a/structedash__packager_1_1media_1_1mp4_1_1EditList.html +++ b/docs/d8/d4a/structedash__packager_1_1media_1_1mp4_1_1EditList.html @@ -182,7 +182,7 @@ Additional Inherited Members diff --git a/docs/d8/d6a/classedash__packager_1_1media_1_1AudioStreamInfo-members.html b/docs/d8/d6a/classedash__packager_1_1media_1_1AudioStreamInfo-members.html index 27a7e33406..6d5dd8047e 100644 --- a/docs/d8/d6a/classedash__packager_1_1media_1_1AudioStreamInfo-members.html +++ b/docs/d8/d6a/classedash__packager_1_1media_1_1AudioStreamInfo-members.html @@ -124,7 +124,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d6c/classedash__packager_1_1media_1_1MediaSample.html b/docs/d8/d6c/classedash__packager_1_1media_1_1MediaSample.html index 639742abb5..505c298755 100644 --- a/docs/d8/d6c/classedash__packager_1_1media_1_1MediaSample.html +++ b/docs/d8/d6c/classedash__packager_1_1media_1_1MediaSample.html @@ -411,7 +411,7 @@ class base::RefCountedThre diff --git a/docs/d8/d6f/classedash__packager_1_1MockAdaptationSet-members.html b/docs/d8/d6f/classedash__packager_1_1MockAdaptationSet-members.html index 45acd9d692..1646b18b48 100644 --- a/docs/d8/d6f/classedash__packager_1_1MockAdaptationSet-members.html +++ b/docs/d8/d6f/classedash__packager_1_1MockAdaptationSet-members.html @@ -126,7 +126,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d6f/structedash__packager_1_1media_1_1mp4_1_1TrackFragment-members.html b/docs/d8/d6f/structedash__packager_1_1media_1_1mp4_1_1TrackFragment-members.html index b6e8c11215..99fc2bfd5c 100644 --- a/docs/d8/d6f/structedash__packager_1_1media_1_1mp4_1_1TrackFragment-members.html +++ b/docs/d8/d6f/structedash__packager_1_1media_1_1mp4_1_1TrackFragment-members.html @@ -117,7 +117,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d71/classedash__packager_1_1media_1_1mp4_1_1ChunkInfoIterator.html b/docs/d8/d71/classedash__packager_1_1media_1_1mp4_1_1ChunkInfoIterator.html index 64edccf89f..e7437db570 100644 --- a/docs/d8/d71/classedash__packager_1_1media_1_1mp4_1_1ChunkInfoIterator.html +++ b/docs/d8/d71/classedash__packager_1_1media_1_1mp4_1_1ChunkInfoIterator.html @@ -320,7 +320,7 @@ Public Member Functions diff --git a/docs/d8/d74/classedash__packager_1_1Representation-members.html b/docs/d8/d74/classedash__packager_1_1Representation-members.html index 55dbd25e42..48c6509dc1 100644 --- a/docs/d8/d74/classedash__packager_1_1Representation-members.html +++ b/docs/d8/d74/classedash__packager_1_1Representation-members.html @@ -112,7 +112,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d75/structedash__packager_1_1media_1_1mp4_1_1ProtectionSchemeInfo-members.html b/docs/d8/d75/structedash__packager_1_1media_1_1mp4_1_1ProtectionSchemeInfo-members.html index 8b121added..a91f76608d 100644 --- a/docs/d8/d75/structedash__packager_1_1media_1_1mp4_1_1ProtectionSchemeInfo-members.html +++ b/docs/d8/d75/structedash__packager_1_1media_1_1mp4_1_1ProtectionSchemeInfo-members.html @@ -111,7 +111,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d78/classedash__packager_1_1MockAdaptationSet.html b/docs/d8/d78/classedash__packager_1_1MockAdaptationSet.html index 05829e3b7f..a731256b4f 100644 --- a/docs/d8/d78/classedash__packager_1_1MockAdaptationSet.html +++ b/docs/d8/d78/classedash__packager_1_1MockAdaptationSet.html @@ -183,7 +183,7 @@ Additional Inherited Members diff --git a/docs/d8/d78/classedash__packager_1_1media_1_1WebMContentEncodingsClient.html b/docs/d8/d78/classedash__packager_1_1media_1_1WebMContentEncodingsClient.html index 1bef293f78..d1951f8bcf 100644 --- a/docs/d8/d78/classedash__packager_1_1media_1_1WebMContentEncodingsClient.html +++ b/docs/d8/d78/classedash__packager_1_1media_1_1WebMContentEncodingsClient.html @@ -152,7 +152,7 @@ Additional Inherited Members diff --git a/docs/d8/d82/classedash__packager_1_1media_1_1MpdNotifyMuxerListener-members.html b/docs/d8/d82/classedash__packager_1_1media_1_1MpdNotifyMuxerListener-members.html index 637a4d9ead..44a5fa69e9 100644 --- a/docs/d8/d82/classedash__packager_1_1media_1_1MpdNotifyMuxerListener-members.html +++ b/docs/d8/d82/classedash__packager_1_1media_1_1MpdNotifyMuxerListener-members.html @@ -111,7 +111,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d8e/classedash__packager_1_1media_1_1mp2t_1_1TsSection.html b/docs/d8/d8e/classedash__packager_1_1media_1_1mp2t_1_1TsSection.html index 5fd6f5925a..0fe02f874a 100644 --- a/docs/d8/d8e/classedash__packager_1_1media_1_1mp2t_1_1TsSection.html +++ b/docs/d8/d8e/classedash__packager_1_1media_1_1mp2t_1_1TsSection.html @@ -141,7 +141,7 @@ virtual void Reset ()= diff --git a/docs/d8/d94/adts__constants_8cc_source.html b/docs/d8/d94/adts__constants_8cc_source.html index 2d8f45b087..ee80c9288b 100644 --- a/docs/d8/d94/adts__constants_8cc_source.html +++ b/docs/d8/d94/adts__constants_8cc_source.html @@ -116,7 +116,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d97/structedash__packager_1_1ContentProtectionElement-members.html b/docs/d8/d97/structedash__packager_1_1ContentProtectionElement-members.html index 18f704431e..2d7647dd1c 100644 --- a/docs/d8/d97/structedash__packager_1_1ContentProtectionElement-members.html +++ b/docs/d8/d97/structedash__packager_1_1ContentProtectionElement-members.html @@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d9a/fragmenter_8cc_source.html b/docs/d8/d9a/fragmenter_8cc_source.html index 7c9e388f27..0c651b17c7 100644 --- a/docs/d8/d9a/fragmenter_8cc_source.html +++ b/docs/d8/d9a/fragmenter_8cc_source.html @@ -251,7 +251,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d9c/webm__tracks__parser_8cc_source.html b/docs/d8/d9c/webm__tracks__parser_8cc_source.html index d0b88a85b7..7f191a6ba1 100644 --- a/docs/d8/d9c/webm__tracks__parser_8cc_source.html +++ b/docs/d8/d9c/webm__tracks__parser_8cc_source.html @@ -440,7 +440,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/d9f/udp__file_8h_source.html b/docs/d8/d9f/udp__file_8h_source.html index 0792246755..8f35286dd9 100644 --- a/docs/d8/d9f/udp__file_8h_source.html +++ b/docs/d8/d9f/udp__file_8h_source.html @@ -147,7 +147,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/da0/classedash__packager_1_1media_1_1wvm_1_1WvmMediaParser.html b/docs/d8/da0/classedash__packager_1_1media_1_1wvm_1_1WvmMediaParser.html index 5d693af5c5..248e60b08e 100644 --- a/docs/d8/da0/classedash__packager_1_1media_1_1wvm_1_1WvmMediaParser.html +++ b/docs/d8/da0/classedash__packager_1_1media_1_1wvm_1_1WvmMediaParser.html @@ -255,7 +255,7 @@ track_id, const scoped_refptr
diff --git a/docs/d8/da1/classedash__packager_1_1media_1_1WidevineKeySource-members.html b/docs/d8/da1/classedash__packager_1_1media_1_1WidevineKeySource-members.html index d46cb3f0f9..e915fdd066 100644 --- a/docs/d8/da1/classedash__packager_1_1media_1_1WidevineKeySource-members.html +++ b/docs/d8/da1/classedash__packager_1_1media_1_1WidevineKeySource-members.html @@ -122,7 +122,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/da6/structedash__packager_1_1media_1_1mp4_1_1SoundMediaHeader-members.html b/docs/d8/da6/structedash__packager_1_1media_1_1mp4_1_1SoundMediaHeader-members.html index 38b3a39d0c..a00b0cb5a0 100644 --- a/docs/d8/da6/structedash__packager_1_1media_1_1mp4_1_1SoundMediaHeader-members.html +++ b/docs/d8/da6/structedash__packager_1_1media_1_1mp4_1_1SoundMediaHeader-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/daa/stream__info_8h_source.html b/docs/d8/daa/stream__info_8h_source.html index bb3dde8ef0..df704a2d2c 100644 --- a/docs/d8/daa/stream__info_8h_source.html +++ b/docs/d8/daa/stream__info_8h_source.html @@ -185,7 +185,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/db0/structedash__packager_1_1media_1_1H264SPS.html b/docs/d8/db0/structedash__packager_1_1media_1_1H264SPS.html index 136196002a..f320a1ffda 100644 --- a/docs/d8/db0/structedash__packager_1_1media_1_1H264SPS.html +++ b/docs/d8/db0/structedash__packager_1_1media_1_1H264SPS.html @@ -242,7 +242,7 @@ int chroma_array_type< diff --git a/docs/d8/dbb/structedash__packager_1_1media_1_1wvm_1_1PrevSampleData-members.html b/docs/d8/dbb/structedash__packager_1_1media_1_1wvm_1_1PrevSampleData-members.html index 593508ead2..ae1cdc80e4 100644 --- a/docs/d8/dbb/structedash__packager_1_1media_1_1wvm_1_1PrevSampleData-members.html +++ b/docs/d8/dbb/structedash__packager_1_1media_1_1wvm_1_1PrevSampleData-members.html @@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/dc7/classedash__packager_1_1media_1_1UdpFile.html b/docs/d8/dc7/classedash__packager_1_1media_1_1UdpFile.html index 0138fa6e99..5eb320bc3d 100644 --- a/docs/d8/dc7/classedash__packager_1_1media_1_1UdpFile.html +++ b/docs/d8/dc7/classedash__packager_1_1media_1_1UdpFile.html @@ -463,7 +463,7 @@ Additional Inherited Members diff --git a/docs/d8/dca/classedash__packager_1_1media_1_1AesCbcPkcs5Decryptor-members.html b/docs/d8/dca/classedash__packager_1_1media_1_1AesCbcPkcs5Decryptor-members.html index 44f86952e1..3bfe132329 100644 --- a/docs/d8/dca/classedash__packager_1_1media_1_1AesCbcPkcs5Decryptor-members.html +++ b/docs/d8/dca/classedash__packager_1_1media_1_1AesCbcPkcs5Decryptor-members.html @@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/dcc/classedash__packager_1_1media_1_1AesRequestSigner.html b/docs/d8/dcc/classedash__packager_1_1media_1_1AesRequestSigner.html index 467378e95b..50ce2923d7 100644 --- a/docs/d8/dcc/classedash__packager_1_1media_1_1AesRequestSigner.html +++ b/docs/d8/dcc/classedash__packager_1_1media_1_1AesRequestSigner.html @@ -188,7 +188,7 @@ Additional Inherited Members diff --git a/docs/d8/dcf/classedash__packager_1_1media_1_1RsaRequestSigner-members.html b/docs/d8/dcf/classedash__packager_1_1media_1_1RsaRequestSigner-members.html index b49375b101..7e10b76e5a 100644 --- a/docs/d8/dcf/classedash__packager_1_1media_1_1RsaRequestSigner-members.html +++ b/docs/d8/dcf/classedash__packager_1_1media_1_1RsaRequestSigner-members.html @@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/de5/structedash__packager_1_1media_1_1mp4_1_1SampleEncryptionEntry.html b/docs/d8/de5/structedash__packager_1_1media_1_1mp4_1_1SampleEncryptionEntry.html index 983cb67cef..0ec1cb4928 100644 --- a/docs/d8/de5/structedash__packager_1_1media_1_1mp4_1_1SampleEncryptionEntry.html +++ b/docs/d8/de5/structedash__packager_1_1media_1_1mp4_1_1SampleEncryptionEntry.html @@ -250,7 +250,7 @@ std::vector< diff --git a/docs/d8/de6/webm__crypto__helpers_8h_source.html b/docs/d8/de6/webm__crypto__helpers_8h_source.html index 618228c4cd..e73e1d70d5 100644 --- a/docs/d8/de6/webm__crypto__helpers_8h_source.html +++ b/docs/d8/de6/webm__crypto__helpers_8h_source.html @@ -116,7 +116,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/df0/webm_2single__segment__segmenter_8cc_source.html b/docs/d8/df0/webm_2single__segment__segmenter_8cc_source.html index 3094e01463..781787cdce 100644 --- a/docs/d8/df0/webm_2single__segment__segmenter_8cc_source.html +++ b/docs/d8/df0/webm_2single__segment__segmenter_8cc_source.html @@ -180,7 +180,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/df1/classedash__packager_1_1MpdWriter-members.html b/docs/d8/df1/classedash__packager_1_1MpdWriter-members.html index 67a2810ab4..fbe7ce78a9 100644 --- a/docs/d8/df1/classedash__packager_1_1MpdWriter-members.html +++ b/docs/d8/df1/classedash__packager_1_1MpdWriter-members.html @@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d8/dfd/structedash__packager_1_1media_1_1VPxFrameInfo.html b/docs/d8/dfd/structedash__packager_1_1media_1_1VPxFrameInfo.html index 7794592937..da94dec059 100644 --- a/docs/d8/dfd/structedash__packager_1_1media_1_1VPxFrameInfo.html +++ b/docs/d8/dfd/structedash__packager_1_1media_1_1VPxFrameInfo.html @@ -121,7 +121,7 @@ uint32_t height diff --git a/docs/d9/d01/mp4_2single__segment__segmenter_8h_source.html b/docs/d9/d01/mp4_2single__segment__segmenter_8h_source.html index 914c7cdfb8..d980b921ec 100644 --- a/docs/d9/d01/mp4_2single__segment__segmenter_8h_source.html +++ b/docs/d9/d01/mp4_2single__segment__segmenter_8h_source.html @@ -140,7 +140,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/d08/mock__mpd__builder_8h_source.html b/docs/d9/d08/mock__mpd__builder_8h_source.html index 7f26096ec0..d9f21d83d3 100644 --- a/docs/d9/d08/mock__mpd__builder_8h_source.html +++ b/docs/d9/d08/mock__mpd__builder_8h_source.html @@ -180,7 +180,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/d15/key__rotation__fragmenter_8cc_source.html b/docs/d9/d15/key__rotation__fragmenter_8cc_source.html index 6ecbc3973e..5062f2e98f 100644 --- a/docs/d9/d15/key__rotation__fragmenter_8cc_source.html +++ b/docs/d9/d15/key__rotation__fragmenter_8cc_source.html @@ -230,7 +230,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/d17/classedash__packager_1_1DashIopMpdNotifier-members.html b/docs/d9/d17/classedash__packager_1_1DashIopMpdNotifier-members.html index bbf7865da9..ff3f566cc8 100644 --- a/docs/d9/d17/classedash__packager_1_1DashIopMpdNotifier-members.html +++ b/docs/d9/d17/classedash__packager_1_1DashIopMpdNotifier-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/d18/structedash__packager_1_1media_1_1mp4_1_1SyncSample.html b/docs/d9/d18/structedash__packager_1_1media_1_1mp4_1_1SyncSample.html index fa4432b05a..2111415e73 100644 --- a/docs/d9/d18/structedash__packager_1_1media_1_1mp4_1_1SyncSample.html +++ b/docs/d9/d18/structedash__packager_1_1media_1_1mp4_1_1SyncSample.html @@ -182,7 +182,7 @@ Additional Inherited Members diff --git a/docs/d9/d21/structedash__packager_1_1media_1_1mp4_1_1ID3v2.html b/docs/d9/d21/structedash__packager_1_1media_1_1mp4_1_1ID3v2.html index a7a10d7fd9..86b58d5d92 100644 --- a/docs/d9/d21/structedash__packager_1_1media_1_1mp4_1_1ID3v2.html +++ b/docs/d9/d21/structedash__packager_1_1media_1_1mp4_1_1ID3v2.html @@ -189,7 +189,7 @@ Additional Inherited Members diff --git a/docs/d9/d2c/classedash__packager_1_1media_1_1ProgressListener.html b/docs/d9/d2c/classedash__packager_1_1media_1_1ProgressListener.html index 03fdf22949..2c054747c2 100644 --- a/docs/d9/d2c/classedash__packager_1_1media_1_1ProgressListener.html +++ b/docs/d9/d2c/classedash__packager_1_1media_1_1ProgressListener.html @@ -146,7 +146,7 @@ Public Member Functions diff --git a/docs/d9/d3b/classedash__packager_1_1media_1_1MemoryFile-members.html b/docs/d9/d3b/classedash__packager_1_1media_1_1MemoryFile-members.html index e762b1e37f..2e707ddcdd 100644 --- a/docs/d9/d3b/classedash__packager_1_1media_1_1MemoryFile-members.html +++ b/docs/d9/d3b/classedash__packager_1_1media_1_1MemoryFile-members.html @@ -119,7 +119,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/d3b/webm__content__encodings_8h_source.html b/docs/d9/d3b/webm__content__encodings_8h_source.html index 5969756ef2..bd4d2e3a78 100644 --- a/docs/d9/d3b/webm__content__encodings_8h_source.html +++ b/docs/d9/d3b/webm__content__encodings_8h_source.html @@ -179,7 +179,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/d46/classedash__packager_1_1media_1_1BufferReader.html b/docs/d9/d46/classedash__packager_1_1media_1_1BufferReader.html index c88c673734..0054edf801 100644 --- a/docs/d9/d46/classedash__packager_1_1media_1_1BufferReader.html +++ b/docs/d9/d46/classedash__packager_1_1media_1_1BufferReader.html @@ -276,7 +276,7 @@ bool ReadNBytesInto8s diff --git a/docs/d9/d47/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentHeader.html b/docs/d9/d47/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentHeader.html index 9473764567..0090fa89ef 100644 --- a/docs/d9/d47/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentHeader.html +++ b/docs/d9/d47/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentHeader.html @@ -222,7 +222,7 @@ Additional Inherited Members diff --git a/docs/d9/d5b/structedash__packager_1_1SegmentInfo-members.html b/docs/d9/d5b/structedash__packager_1_1SegmentInfo-members.html index c384969cd8..14da550509 100644 --- a/docs/d9/d5b/structedash__packager_1_1SegmentInfo-members.html +++ b/docs/d9/d5b/structedash__packager_1_1SegmentInfo-members.html @@ -99,7 +99,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/d65/classedash__packager_1_1media_1_1TextTrack-members.html b/docs/d9/d65/classedash__packager_1_1media_1_1TextTrack-members.html index 323986391e..5cee9d9817 100644 --- a/docs/d9/d65/classedash__packager_1_1media_1_1TextTrack-members.html +++ b/docs/d9/d65/classedash__packager_1_1media_1_1TextTrack-members.html @@ -98,7 +98,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/d76/structedash__packager_1_1media_1_1H264ModificationOfPicNum.html b/docs/d9/d76/structedash__packager_1_1media_1_1H264ModificationOfPicNum.html index 2a602b7181..cefc204e20 100644 --- a/docs/d9/d76/structedash__packager_1_1media_1_1H264ModificationOfPicNum.html +++ b/docs/d9/d76/structedash__packager_1_1media_1_1H264ModificationOfPicNum.html @@ -119,7 +119,7 @@ union { diff --git a/docs/d9/d7b/structedash__packager_1_1media_1_1wvm_1_1PrevSampleData.html b/docs/d9/d7b/structedash__packager_1_1media_1_1wvm_1_1PrevSampleData.html index 48c95daba7..2a1245c254 100644 --- a/docs/d9/d7b/structedash__packager_1_1media_1_1wvm_1_1PrevSampleData.html +++ b/docs/d9/d7b/structedash__packager_1_1media_1_1wvm_1_1PrevSampleData.html @@ -132,7 +132,7 @@ int64_t video_sample_durat diff --git a/docs/d9/d86/limits_8h_source.html b/docs/d9/d86/limits_8h_source.html index 94051e624a..87bd68862f 100644 --- a/docs/d9/d86/limits_8h_source.html +++ b/docs/d9/d86/limits_8h_source.html @@ -141,7 +141,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/d8b/classedash__packager_1_1media_1_1KeySource.html b/docs/d9/d8b/classedash__packager_1_1media_1_1KeySource.html index 168ea05c76..e7f5aac7fa 100644 --- a/docs/d9/d8b/classedash__packager_1_1media_1_1KeySource.html +++ b/docs/d9/d8b/classedash__packager_1_1media_1_1KeySource.html @@ -582,7 +582,7 @@ Static Protected Member Functions diff --git a/docs/d9/d90/text__track_8h_source.html b/docs/d9/d90/text__track_8h_source.html index d4bb4ba199..fa03bc6ced 100644 --- a/docs/d9/d90/text__track_8h_source.html +++ b/docs/d9/d90/text__track_8h_source.html @@ -134,7 +134,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/d91/h264__bit__reader_8h_source.html b/docs/d9/d91/h264__bit__reader_8h_source.html index 803cfb16a8..5daf316034 100644 --- a/docs/d9/d91/h264__bit__reader_8h_source.html +++ b/docs/d9/d91/h264__bit__reader_8h_source.html @@ -170,7 +170,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/d93/media__stream_8h_source.html b/docs/d9/d93/media__stream_8h_source.html index 97fbe69c1a..9b0092e141 100644 --- a/docs/d9/d93/media__stream_8h_source.html +++ b/docs/d9/d93/media__stream_8h_source.html @@ -170,7 +170,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/d95/classedash__packager_1_1media_1_1MediaStream-members.html b/docs/d9/d95/classedash__packager_1_1media_1_1MediaStream-members.html index 03b0978e63..ec3ce1ec18 100644 --- a/docs/d9/d95/classedash__packager_1_1media_1_1MediaStream-members.html +++ b/docs/d9/d95/classedash__packager_1_1media_1_1MediaStream-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/d99/classedash__packager_1_1media_1_1DecryptConfig-members.html b/docs/d9/d99/classedash__packager_1_1media_1_1DecryptConfig-members.html index 7d80069131..fd6c55ee29 100644 --- a/docs/d9/d99/classedash__packager_1_1media_1_1DecryptConfig-members.html +++ b/docs/d9/d99/classedash__packager_1_1media_1_1DecryptConfig-members.html @@ -93,17 +93,16 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');

This is the complete list of members for edash_packager::media::DecryptConfig, including all inherited members.

- - - - - - - + + + + + +
data_offset() const (defined in edash_packager::media::DecryptConfig)edash_packager::media::DecryptConfiginline
DecryptConfig(const std::vector< uint8_t > &key_id, const std::vector< uint8_t > &iv, const int data_offset, const std::vector< SubsampleEntry > &subsamples)edash_packager::media::DecryptConfig
iv() const (defined in edash_packager::media::DecryptConfig)edash_packager::media::DecryptConfiginline
kDecryptionKeySizeedash_packager::media::DecryptConfigstatic
key_id() const (defined in edash_packager::media::DecryptConfig)edash_packager::media::DecryptConfiginline
subsamples() const (defined in edash_packager::media::DecryptConfig)edash_packager::media::DecryptConfiginline
~DecryptConfig() (defined in edash_packager::media::DecryptConfig)edash_packager::media::DecryptConfig
DecryptConfig(const std::vector< uint8_t > &key_id, const std::vector< uint8_t > &iv, const std::vector< SubsampleEntry > &subsamples)edash_packager::media::DecryptConfig
iv() const (defined in edash_packager::media::DecryptConfig)edash_packager::media::DecryptConfiginline
kDecryptionKeySizeedash_packager::media::DecryptConfigstatic
key_id() const (defined in edash_packager::media::DecryptConfig)edash_packager::media::DecryptConfiginline
subsamples() const (defined in edash_packager::media::DecryptConfig)edash_packager::media::DecryptConfiginline
~DecryptConfig() (defined in edash_packager::media::DecryptConfig)edash_packager::media::DecryptConfig
diff --git a/docs/d9/d9b/structedash__packager_1_1SegmentInfo.html b/docs/d9/d9b/structedash__packager_1_1SegmentInfo.html index 8526ae3c10..9131325f45 100644 --- a/docs/d9/d9b/structedash__packager_1_1SegmentInfo.html +++ b/docs/d9/d9b/structedash__packager_1_1SegmentInfo.html @@ -118,7 +118,7 @@ uint64_t repeat diff --git a/docs/d9/da4/stream__descriptor_8h_source.html b/docs/d9/da4/stream__descriptor_8h_source.html index 43a3de74f0..649eb7f23f 100644 --- a/docs/d9/da4/stream__descriptor_8h_source.html +++ b/docs/d9/da4/stream__descriptor_8h_source.html @@ -141,7 +141,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/db4/classedash__packager_1_1media_1_1VodMediaInfoDumpMuxerListener.html b/docs/d9/db4/classedash__packager_1_1media_1_1VodMediaInfoDumpMuxerListener.html index 1b9f47ee99..502c2832aa 100644 --- a/docs/d9/db4/classedash__packager_1_1media_1_1VodMediaInfoDumpMuxerListener.html +++ b/docs/d9/db4/classedash__packager_1_1media_1_1VodMediaInfoDumpMuxerListener.html @@ -252,7 +252,7 @@ Additional Inherited Members diff --git a/docs/d9/db9/content__protection__element_8cc_source.html b/docs/d9/db9/content__protection__element_8cc_source.html index 1714678087..13caf1e3a9 100644 --- a/docs/d9/db9/content__protection__element_8cc_source.html +++ b/docs/d9/db9/content__protection__element_8cc_source.html @@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/db9/muxer_8cc_source.html b/docs/d9/db9/muxer_8cc_source.html index 6bdfb141c1..caa438177d 100644 --- a/docs/d9/db9/muxer_8cc_source.html +++ b/docs/d9/db9/muxer_8cc_source.html @@ -214,7 +214,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/dbf/classedash__packager_1_1media_1_1TextStreamInfo-members.html b/docs/d9/dbf/classedash__packager_1_1media_1_1TextStreamInfo-members.html index acaf40ccc1..07adbed476 100644 --- a/docs/d9/dbf/classedash__packager_1_1media_1_1TextStreamInfo-members.html +++ b/docs/d9/dbf/classedash__packager_1_1media_1_1TextStreamInfo-members.html @@ -116,7 +116,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/dc8/webm__constants_8cc_source.html b/docs/d9/dc8/webm__constants_8cc_source.html index 700e8373c2..2039fa6c2b 100644 --- a/docs/d9/dc8/webm__constants_8cc_source.html +++ b/docs/d9/dc8/webm__constants_8cc_source.html @@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/dcc/structedash__packager_1_1media_1_1mp4_1_1ElementaryStreamDescriptor.html b/docs/d9/dcc/structedash__packager_1_1media_1_1mp4_1_1ElementaryStreamDescriptor.html index 69788aa6ef..2bdc60d6ca 100644 --- a/docs/d9/dcc/structedash__packager_1_1media_1_1mp4_1_1ElementaryStreamDescriptor.html +++ b/docs/d9/dcc/structedash__packager_1_1media_1_1mp4_1_1ElementaryStreamDescriptor.html @@ -185,7 +185,7 @@ Additional Inherited Members diff --git a/docs/d9/dcc/webm__video__client_8h_source.html b/docs/d9/dcc/webm__video__client_8h_source.html index 86ca61dfdb..f20d0a4bda 100644 --- a/docs/d9/dcc/webm__video__client_8h_source.html +++ b/docs/d9/dcc/webm__video__client_8h_source.html @@ -149,7 +149,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/de3/muxer__listener__internal_8cc_source.html b/docs/d9/de3/muxer__listener__internal_8cc_source.html index af9b2afc22..83403075fc 100644 --- a/docs/d9/de3/muxer__listener__internal_8cc_source.html +++ b/docs/d9/de3/muxer__listener__internal_8cc_source.html @@ -326,7 +326,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/dec/classedash__packager_1_1media_1_1RequestSigner-members.html b/docs/d9/dec/classedash__packager_1_1media_1_1RequestSigner-members.html index c167581277..f7d83bb131 100644 --- a/docs/d9/dec/classedash__packager_1_1media_1_1RequestSigner-members.html +++ b/docs/d9/dec/classedash__packager_1_1media_1_1RequestSigner-members.html @@ -100,7 +100,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/d9/ded/aac__audio__specific__config_8cc_source.html b/docs/d9/ded/aac__audio__specific__config_8cc_source.html index 380e17be56..79cf73f2eb 100644 --- a/docs/d9/ded/aac__audio__specific__config_8cc_source.html +++ b/docs/d9/ded/aac__audio__specific__config_8cc_source.html @@ -357,7 +357,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d00/structedash__packager_1_1media_1_1mp4_1_1SubtitleMediaHeader-members.html b/docs/da/d00/structedash__packager_1_1media_1_1mp4_1_1SubtitleMediaHeader-members.html index 62ad3df4d3..4f6776f440 100644 --- a/docs/da/d00/structedash__packager_1_1media_1_1mp4_1_1SubtitleMediaHeader-members.html +++ b/docs/da/d00/structedash__packager_1_1media_1_1mp4_1_1SubtitleMediaHeader-members.html @@ -112,7 +112,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d02/structedash__packager_1_1media_1_1H264WeightingFactors-members.html b/docs/da/d02/structedash__packager_1_1media_1_1H264WeightingFactors-members.html index 78d8860596..7657d080dc 100644 --- a/docs/da/d02/structedash__packager_1_1media_1_1H264WeightingFactors-members.html +++ b/docs/da/d02/structedash__packager_1_1media_1_1H264WeightingFactors-members.html @@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d02/structedash__packager_1_1media_1_1mp4_1_1SyncSample-members.html b/docs/da/d02/structedash__packager_1_1media_1_1mp4_1_1SyncSample-members.html index 016449e30e..88cb5f6573 100644 --- a/docs/da/d02/structedash__packager_1_1media_1_1mp4_1_1SyncSample-members.html +++ b/docs/da/d02/structedash__packager_1_1media_1_1mp4_1_1SyncSample-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d04/audio__stream__info_8cc_source.html b/docs/da/d04/audio__stream__info_8cc_source.html index a17e351e2d..a67eefac63 100644 --- a/docs/da/d04/audio__stream__info_8cc_source.html +++ b/docs/da/d04/audio__stream__info_8cc_source.html @@ -225,7 +225,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d09/classedash__packager_1_1media_1_1SegmentTestBase-members.html b/docs/da/d09/classedash__packager_1_1media_1_1SegmentTestBase-members.html index afa1fadbc0..4fe7ac276c 100644 --- a/docs/da/d09/classedash__packager_1_1media_1_1SegmentTestBase-members.html +++ b/docs/da/d09/classedash__packager_1_1media_1_1SegmentTestBase-members.html @@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d14/classedash__packager_1_1media_1_1webm_1_1Segmenter.html b/docs/da/d14/classedash__packager_1_1media_1_1webm_1_1Segmenter.html index 5de58f84a5..0aed5f97b2 100644 --- a/docs/da/d14/classedash__packager_1_1media_1_1webm_1_1Segmenter.html +++ b/docs/da/d14/classedash__packager_1_1media_1_1webm_1_1Segmenter.html @@ -427,7 +427,7 @@ virtual diff --git a/docs/da/d15/structedash__packager_1_1media_1_1mp4_1_1HandlerReference-members.html b/docs/da/d15/structedash__packager_1_1media_1_1mp4_1_1HandlerReference-members.html index 48fdf8d922..1d144fe899 100644 --- a/docs/da/d15/structedash__packager_1_1media_1_1mp4_1_1HandlerReference-members.html +++ b/docs/da/d15/structedash__packager_1_1media_1_1mp4_1_1HandlerReference-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d17/structedash__packager_1_1media_1_1mp4_1_1MovieExtendsHeader.html b/docs/da/d17/structedash__packager_1_1media_1_1mp4_1_1MovieExtendsHeader.html index 19114a73df..dd57fa50c6 100644 --- a/docs/da/d17/structedash__packager_1_1media_1_1mp4_1_1MovieExtendsHeader.html +++ b/docs/da/d17/structedash__packager_1_1media_1_1mp4_1_1MovieExtendsHeader.html @@ -182,7 +182,7 @@ Additional Inherited Members diff --git a/docs/da/d1e/classedash__packager_1_1media_1_1StreamInfo-members.html b/docs/da/d1e/classedash__packager_1_1media_1_1StreamInfo-members.html index 3126c4663e..cdabade9e9 100644 --- a/docs/da/d1e/classedash__packager_1_1media_1_1StreamInfo-members.html +++ b/docs/da/d1e/classedash__packager_1_1media_1_1StreamInfo-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d22/key__rotation__fragmenter_8h_source.html b/docs/da/d22/key__rotation__fragmenter_8h_source.html index 1bf1f5a24e..d1871df5ab 100644 --- a/docs/da/d22/key__rotation__fragmenter_8h_source.html +++ b/docs/da/d22/key__rotation__fragmenter_8h_source.html @@ -155,7 +155,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d27/classedash__packager_1_1media_1_1AudioStreamInfo.html b/docs/da/d27/classedash__packager_1_1media_1_1AudioStreamInfo.html index 90a681496a..5fe44d7f6c 100644 --- a/docs/da/d27/classedash__packager_1_1media_1_1AudioStreamInfo.html +++ b/docs/da/d27/classedash__packager_1_1media_1_1AudioStreamInfo.html @@ -307,7 +307,7 @@ Static Public Member Functions diff --git a/docs/da/d2a/structedash__packager_1_1media_1_1mp4_1_1ProtectionSystemSpecificHeader.html b/docs/da/d2a/structedash__packager_1_1media_1_1mp4_1_1ProtectionSystemSpecificHeader.html index 78c74f2d63..53eba0ffb2 100644 --- a/docs/da/d2a/structedash__packager_1_1media_1_1mp4_1_1ProtectionSystemSpecificHeader.html +++ b/docs/da/d2a/structedash__packager_1_1media_1_1mp4_1_1ProtectionSystemSpecificHeader.html @@ -188,7 +188,7 @@ Additional Inherited Members diff --git a/docs/da/d2a/text__stream__info_8h_source.html b/docs/da/d2a/text__stream__info_8h_source.html index af801c11ab..161dc6a09a 100644 --- a/docs/da/d2a/text__stream__info_8h_source.html +++ b/docs/da/d2a/text__stream__info_8h_source.html @@ -140,7 +140,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d37/classedash__packager_1_1media_1_1IoCache-members.html b/docs/da/d37/classedash__packager_1_1media_1_1IoCache-members.html index de2024d9ad..3c0bed7247 100644 --- a/docs/da/d37/classedash__packager_1_1media_1_1IoCache-members.html +++ b/docs/da/d37/classedash__packager_1_1media_1_1IoCache-members.html @@ -107,7 +107,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d38/classedash__packager_1_1MpdNotifier.html b/docs/da/d38/classedash__packager_1_1MpdNotifier.html index 5f7b69e4ff..54a4df57ad 100644 --- a/docs/da/d38/classedash__packager_1_1MpdNotifier.html +++ b/docs/da/d38/classedash__packager_1_1MpdNotifier.html @@ -472,7 +472,7 @@ Public Member Functions diff --git a/docs/da/d40/classedash__packager_1_1media_1_1RsaPrivateKey-members.html b/docs/da/d40/classedash__packager_1_1media_1_1RsaPrivateKey-members.html index 5f78a72aa6..d1585bcf9b 100644 --- a/docs/da/d40/classedash__packager_1_1media_1_1RsaPrivateKey-members.html +++ b/docs/da/d40/classedash__packager_1_1media_1_1RsaPrivateKey-members.html @@ -100,7 +100,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d41/mp4_2multi__segment__segmenter_8h_source.html b/docs/da/d41/mp4_2multi__segment__segmenter_8h_source.html index 905bae25a6..f6560b3635 100644 --- a/docs/da/d41/mp4_2multi__segment__segmenter_8h_source.html +++ b/docs/da/d41/mp4_2multi__segment__segmenter_8h_source.html @@ -143,7 +143,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d47/structedash__packager_1_1media_1_1H264PPS-members.html b/docs/da/d47/structedash__packager_1_1media_1_1H264PPS-members.html index 7d5559d41b..786327f73f 100644 --- a/docs/da/d47/structedash__packager_1_1media_1_1H264PPS-members.html +++ b/docs/da/d47/structedash__packager_1_1media_1_1H264PPS-members.html @@ -117,7 +117,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d49/classedash__packager_1_1DashIopMpdNotifier.html b/docs/da/d49/classedash__packager_1_1DashIopMpdNotifier.html index accdca711d..ea21033bf8 100644 --- a/docs/da/d49/classedash__packager_1_1DashIopMpdNotifier.html +++ b/docs/da/d49/classedash__packager_1_1DashIopMpdNotifier.html @@ -473,7 +473,7 @@ class DashIopMpdNotifierTe diff --git a/docs/da/d4b/structedash__packager_1_1media_1_1mp4_1_1OriginalFormat.html b/docs/da/d4b/structedash__packager_1_1media_1_1mp4_1_1OriginalFormat.html index 297ca8268d..2819255cc0 100644 --- a/docs/da/d4b/structedash__packager_1_1media_1_1mp4_1_1OriginalFormat.html +++ b/docs/da/d4b/structedash__packager_1_1media_1_1mp4_1_1OriginalFormat.html @@ -173,7 +173,7 @@ Additional Inherited Members diff --git a/docs/da/d54/structedash__packager_1_1media_1_1mp4_1_1CompositionTimeToSample.html b/docs/da/d54/structedash__packager_1_1media_1_1mp4_1_1CompositionTimeToSample.html index 8c6c65a74e..fbccd1aa76 100644 --- a/docs/da/d54/structedash__packager_1_1media_1_1mp4_1_1CompositionTimeToSample.html +++ b/docs/da/d54/structedash__packager_1_1media_1_1mp4_1_1CompositionTimeToSample.html @@ -182,7 +182,7 @@ Additional Inherited Members diff --git a/docs/da/d5c/widevine__key__source_8h_source.html b/docs/da/d5c/widevine__key__source_8h_source.html index b3e6cf01ff..2034151275 100644 --- a/docs/da/d5c/widevine__key__source_8h_source.html +++ b/docs/da/d5c/widevine__key__source_8h_source.html @@ -217,7 +217,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d5f/classedash__packager_1_1media_1_1VP9Parser.html b/docs/da/d5f/classedash__packager_1_1media_1_1VP9Parser.html index 13f572cc7a..91a8e45bd8 100644 --- a/docs/da/d5f/classedash__packager_1_1media_1_1VP9Parser.html +++ b/docs/da/d5f/classedash__packager_1_1media_1_1VP9Parser.html @@ -238,7 +238,7 @@ Additional Inherited Members diff --git a/docs/da/d60/structedash__packager_1_1media_1_1EncryptionKey-members.html b/docs/da/d60/structedash__packager_1_1media_1_1EncryptionKey-members.html index e806f13f71..3cacef9257 100644 --- a/docs/da/d60/structedash__packager_1_1media_1_1EncryptionKey-members.html +++ b/docs/da/d60/structedash__packager_1_1media_1_1EncryptionKey-members.html @@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d72/classedash__packager_1_1media_1_1mp2t_1_1EsParser-members.html b/docs/da/d72/classedash__packager_1_1media_1_1mp2t_1_1EsParser-members.html index 146179b720..dd487e25d6 100644 --- a/docs/da/d72/classedash__packager_1_1media_1_1mp2t_1_1EsParser-members.html +++ b/docs/da/d72/classedash__packager_1_1media_1_1mp2t_1_1EsParser-members.html @@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d75/classedash__packager_1_1media_1_1mp4_1_1SingleSegmentSegmenter.html b/docs/da/d75/classedash__packager_1_1media_1_1mp4_1_1SingleSegmentSegmenter.html index 5fbf7ab1b9..b2ebdd21ef 100644 --- a/docs/da/d75/classedash__packager_1_1media_1_1mp4_1_1SingleSegmentSegmenter.html +++ b/docs/da/d75/classedash__packager_1_1media_1_1mp4_1_1SingleSegmentSegmenter.html @@ -259,7 +259,7 @@ void set_progress_target diff --git a/docs/da/d78/structedash__packager_1_1media_1_1mp4_1_1Metadata-members.html b/docs/da/d78/structedash__packager_1_1media_1_1mp4_1_1Metadata-members.html index ff53e8a44e..208ead511e 100644 --- a/docs/da/d78/structedash__packager_1_1media_1_1mp4_1_1Metadata-members.html +++ b/docs/da/d78/structedash__packager_1_1media_1_1mp4_1_1Metadata-members.html @@ -114,7 +114,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d7a/classedash__packager_1_1media_1_1AVCDecoderConfiguration-members.html b/docs/da/d7a/classedash__packager_1_1media_1_1AVCDecoderConfiguration-members.html index b881ceea15..d461cb25a0 100644 --- a/docs/da/d7a/classedash__packager_1_1media_1_1AVCDecoderConfiguration-members.html +++ b/docs/da/d7a/classedash__packager_1_1media_1_1AVCDecoderConfiguration-members.html @@ -110,7 +110,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d7a/fixed__key__encryption__flags_8h_source.html b/docs/da/d7a/fixed__key__encryption__flags_8h_source.html index ba0e561e2a..fbc9bf8e88 100644 --- a/docs/da/d7a/fixed__key__encryption__flags_8h_source.html +++ b/docs/da/d7a/fixed__key__encryption__flags_8h_source.html @@ -118,7 +118,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d7d/classedash__packager_1_1media_1_1StreamDescriptorCompareFn.html b/docs/da/d7d/classedash__packager_1_1media_1_1StreamDescriptorCompareFn.html index 2d4b4bb9b2..d0c8276119 100644 --- a/docs/da/d7d/classedash__packager_1_1media_1_1StreamDescriptorCompareFn.html +++ b/docs/da/d7d/classedash__packager_1_1media_1_1StreamDescriptorCompareFn.html @@ -109,7 +109,7 @@ bool operator() (const diff --git a/docs/da/d7f/hevc__decoder__configuration_8h_source.html b/docs/da/d7f/hevc__decoder__configuration_8h_source.html index 8f8c71813e..902aace2ff 100644 --- a/docs/da/d7f/hevc__decoder__configuration_8h_source.html +++ b/docs/da/d7f/hevc__decoder__configuration_8h_source.html @@ -141,7 +141,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d81/structedash__packager_1_1media_1_1mp4_1_1ChunkLargeOffset.html b/docs/da/d81/structedash__packager_1_1media_1_1mp4_1_1ChunkLargeOffset.html index 2d3865e6d6..902f33922f 100644 --- a/docs/da/d81/structedash__packager_1_1media_1_1mp4_1_1ChunkLargeOffset.html +++ b/docs/da/d81/structedash__packager_1_1media_1_1mp4_1_1ChunkLargeOffset.html @@ -185,7 +185,7 @@ Additional Inherited Members diff --git a/docs/da/d88/mp4__muxer_8cc_source.html b/docs/da/d88/mp4__muxer_8cc_source.html index 572e53f42d..cfdf142cea 100644 --- a/docs/da/d88/mp4__muxer_8cc_source.html +++ b/docs/da/d88/mp4__muxer_8cc_source.html @@ -469,7 +469,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d8e/container__names_8cc_source.html b/docs/da/d8e/container__names_8cc_source.html index 6484c23901..801ae1d3f9 100644 --- a/docs/da/d8e/container__names_8cc_source.html +++ b/docs/da/d8e/container__names_8cc_source.html @@ -1840,7 +1840,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d95/classedash__packager_1_1media_1_1MkvWriter-members.html b/docs/da/d95/classedash__packager_1_1media_1_1MkvWriter-members.html index 6f1061bd13..38585ff678 100644 --- a/docs/da/d95/classedash__packager_1_1media_1_1MkvWriter-members.html +++ b/docs/da/d95/classedash__packager_1_1media_1_1MkvWriter-members.html @@ -107,7 +107,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/d99/classedash__packager_1_1media_1_1webm_1_1Encryptor-members.html b/docs/da/d99/classedash__packager_1_1media_1_1webm_1_1Encryptor-members.html index 6aee6b7244..bdafedf8c6 100644 --- a/docs/da/d99/classedash__packager_1_1media_1_1webm_1_1Encryptor-members.html +++ b/docs/da/d99/classedash__packager_1_1media_1_1webm_1_1Encryptor-members.html @@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/db0/structedash__packager_1_1media_1_1mp4_1_1SoundMediaHeader.html b/docs/da/db0/structedash__packager_1_1media_1_1mp4_1_1SoundMediaHeader.html index c208a5c49f..10bfceb464 100644 --- a/docs/da/db0/structedash__packager_1_1media_1_1mp4_1_1SoundMediaHeader.html +++ b/docs/da/db0/structedash__packager_1_1media_1_1mp4_1_1SoundMediaHeader.html @@ -182,7 +182,7 @@ Additional Inherited Members diff --git a/docs/da/dc3/status_8cc_source.html b/docs/da/dc3/status_8cc_source.html index f0fcc1adc0..89639f6921 100644 --- a/docs/da/dc3/status_8cc_source.html +++ b/docs/da/dc3/status_8cc_source.html @@ -168,7 +168,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/dcb/es__descriptor_8h_source.html b/docs/da/dcb/es__descriptor_8h_source.html index 9db86382f1..9c6dd95f60 100644 --- a/docs/da/dcb/es__descriptor_8h_source.html +++ b/docs/da/dcb/es__descriptor_8h_source.html @@ -187,7 +187,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/dd0/webm__info__parser_8h_source.html b/docs/da/dd0/webm__info__parser_8h_source.html index 758350289c..90f94cade2 100644 --- a/docs/da/dd0/webm__info__parser_8h_source.html +++ b/docs/da/dd0/webm__info__parser_8h_source.html @@ -138,7 +138,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/dd1/fragmenter_8h_source.html b/docs/da/dd1/fragmenter_8h_source.html index bc4d5d5795..9382827916 100644 --- a/docs/da/dd1/fragmenter_8h_source.html +++ b/docs/da/dd1/fragmenter_8h_source.html @@ -197,7 +197,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/de2/mock__mpd__builder_8cc_source.html b/docs/da/de2/mock__mpd__builder_8cc_source.html index 3a40d9753c..d84213a988 100644 --- a/docs/da/de2/mock__mpd__builder_8cc_source.html +++ b/docs/da/de2/mock__mpd__builder_8cc_source.html @@ -123,7 +123,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/da/de4/classedash__packager_1_1media_1_1AudioTimestampHelper.html b/docs/da/de4/classedash__packager_1_1media_1_1AudioTimestampHelper.html index 0e4b1483d6..d67e3e63df 100644 --- a/docs/da/de4/classedash__packager_1_1media_1_1AudioTimestampHelper.html +++ b/docs/da/de4/classedash__packager_1_1media_1_1AudioTimestampHelper.html @@ -131,7 +131,7 @@ int64_t GetFramesToTarget< diff --git a/docs/da/dfe/structedash__packager_1_1media_1_1mp4_1_1CompositionOffset.html b/docs/da/dfe/structedash__packager_1_1media_1_1mp4_1_1CompositionOffset.html index ef11aa91df..78187c2124 100644 --- a/docs/da/dfe/structedash__packager_1_1media_1_1mp4_1_1CompositionOffset.html +++ b/docs/da/dfe/structedash__packager_1_1media_1_1mp4_1_1CompositionOffset.html @@ -112,7 +112,7 @@ int64_t sample_offset< diff --git a/docs/db/d01/avc__decoder__configuration_8cc_source.html b/docs/db/d01/avc__decoder__configuration_8cc_source.html index f94d3ef105..d4b9d51312 100644 --- a/docs/db/d01/avc__decoder__configuration_8cc_source.html +++ b/docs/db/d01/avc__decoder__configuration_8cc_source.html @@ -171,7 +171,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d01/classedash__packager_1_1media_1_1mp4_1_1SyncSampleIterator.html b/docs/db/d01/classedash__packager_1_1media_1_1mp4_1_1SyncSampleIterator.html index a8ddd2accc..962abf0684 100644 --- a/docs/db/d01/classedash__packager_1_1media_1_1mp4_1_1SyncSampleIterator.html +++ b/docs/db/d01/classedash__packager_1_1media_1_1mp4_1_1SyncSampleIterator.html @@ -177,7 +177,7 @@ Public Member Functions diff --git a/docs/db/d09/namespaceedash__packager.html b/docs/db/d09/namespaceedash__packager.html index 4007dff973..1f0b03fc04 100644 --- a/docs/db/d09/namespaceedash__packager.html +++ b/docs/db/d09/namespaceedash__packager.html @@ -550,7 +550,7 @@ const char kEncryptedMp4Va diff --git a/docs/db/d11/classedash__packager_1_1media_1_1ContentEncoding-members.html b/docs/db/d11/classedash__packager_1_1media_1_1ContentEncoding-members.html index d79259b359..2ba3afbe02 100644 --- a/docs/db/d11/classedash__packager_1_1media_1_1ContentEncoding-members.html +++ b/docs/db/d11/classedash__packager_1_1media_1_1ContentEncoding-members.html @@ -132,7 +132,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d15/structedash__packager_1_1media_1_1mp4_1_1DecodingTimeToSample-members.html b/docs/db/d15/structedash__packager_1_1media_1_1mp4_1_1DecodingTimeToSample-members.html index b3807491f6..69beb8a5a3 100644 --- a/docs/db/d15/structedash__packager_1_1media_1_1mp4_1_1DecodingTimeToSample-members.html +++ b/docs/db/d15/structedash__packager_1_1media_1_1mp4_1_1DecodingTimeToSample-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d23/classedash__packager_1_1media_1_1WebMTracksParser.html b/docs/db/d23/classedash__packager_1_1media_1_1WebMTracksParser.html index 707995891c..a6e0576a44 100644 --- a/docs/db/d23/classedash__packager_1_1media_1_1WebMTracksParser.html +++ b/docs/db/d23/classedash__packager_1_1media_1_1WebMTracksParser.html @@ -225,7 +225,7 @@ The number of bytes parsed on success. diff --git a/docs/db/d26/classedash__packager_1_1media_1_1mp4_1_1TrackRunIterator.html b/docs/db/d26/classedash__packager_1_1media_1_1mp4_1_1TrackRunIterator.html index 8333568b93..6f8d33bf26 100644 --- a/docs/db/d26/classedash__packager_1_1media_1_1mp4_1_1TrackRunIterator.html +++ b/docs/db/d26/classedash__packager_1_1media_1_1mp4_1_1TrackRunIterator.html @@ -412,7 +412,7 @@ bool is_keyframe () co diff --git a/docs/db/d2e/classedash__packager_1_1MockMpdBuilder.html b/docs/db/d2e/classedash__packager_1_1MockMpdBuilder.html index 5d14027a19..3ebfab2939 100644 --- a/docs/db/d2e/classedash__packager_1_1MockMpdBuilder.html +++ b/docs/db/d2e/classedash__packager_1_1MockMpdBuilder.html @@ -153,7 +153,7 @@ Additional Inherited Members diff --git a/docs/db/d31/track__run__iterator_8cc_source.html b/docs/db/d31/track__run__iterator_8cc_source.html index fabd14895b..0a987bcec4 100644 --- a/docs/db/d31/track__run__iterator_8cc_source.html +++ b/docs/db/d31/track__run__iterator_8cc_source.html @@ -689,13 +689,12 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
600  return scoped_ptr<DecryptConfig>(new DecryptConfig(
601  track_encryption().default_kid,
602  sample_encryption_entry.initialization_vector,
-
603  0, // No offset to start of media data in MP4 using CENC.
-
604  sample_encryption_entry.subsamples));
-
605 }
-
606 
-
607 } // namespace mp4
-
608 } // namespace media
-
609 } // namespace edash_packager
+
603  sample_encryption_entry.subsamples));
+
604 }
+
605 
+
606 } // namespace mp4
+
607 } // namespace media
+
608 } // namespace edash_packager
const VideoSampleEntry & video_description() const
Only valid if is_video() is true.
@@ -747,7 +746,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d44/structedash__packager_1_1media_1_1mp4_1_1DataReference-members.html b/docs/db/d44/structedash__packager_1_1media_1_1mp4_1_1DataReference-members.html index 67af48ff01..ebaf5c0f74 100644 --- a/docs/db/d44/structedash__packager_1_1media_1_1mp4_1_1DataReference-members.html +++ b/docs/db/d44/structedash__packager_1_1media_1_1mp4_1_1DataReference-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d45/mpd__notify__muxer__listener_8h_source.html b/docs/db/d45/mpd__notify__muxer__listener_8h_source.html index 9c16de5faa..f1c3273d1d 100644 --- a/docs/db/d45/mpd__notify__muxer__listener_8h_source.html +++ b/docs/db/d45/mpd__notify__muxer__listener_8h_source.html @@ -186,7 +186,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d4e/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPsi.html b/docs/db/d4e/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPsi.html index f4269ea8e3..c961818f83 100644 --- a/docs/db/d4e/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPsi.html +++ b/docs/db/d4e/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPsi.html @@ -147,7 +147,7 @@ Additional Inherited Members diff --git a/docs/db/d51/mp2t__media__parser_8h_source.html b/docs/db/d51/mp2t__media__parser_8h_source.html index d0070b74cb..b60c4132cc 100644 --- a/docs/db/d51/mp2t__media__parser_8h_source.html +++ b/docs/db/d51/mp2t__media__parser_8h_source.html @@ -195,7 +195,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d51/two__pass__single__segment__segmenter_8h_source.html b/docs/db/d51/two__pass__single__segment__segmenter_8h_source.html index 7d92cb4953..f08accdf2e 100644 --- a/docs/db/d51/two__pass__single__segment__segmenter_8h_source.html +++ b/docs/db/d51/two__pass__single__segment__segmenter_8h_source.html @@ -145,7 +145,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d56/classedash__packager_1_1SimpleMpdNotifier.html b/docs/db/d56/classedash__packager_1_1SimpleMpdNotifier.html index 5ebaf9bb81..5949327b13 100644 --- a/docs/db/d56/classedash__packager_1_1SimpleMpdNotifier.html +++ b/docs/db/d56/classedash__packager_1_1SimpleMpdNotifier.html @@ -471,7 +471,7 @@ class SimpleMpdNotifierTes diff --git a/docs/db/d5a/structedash__packager_1_1media_1_1mp4_1_1SampleEncryptionEntry-members.html b/docs/db/d5a/structedash__packager_1_1media_1_1mp4_1_1SampleEncryptionEntry-members.html index 626621834f..25788486f0 100644 --- a/docs/db/d5a/structedash__packager_1_1media_1_1mp4_1_1SampleEncryptionEntry-members.html +++ b/docs/db/d5a/structedash__packager_1_1media_1_1mp4_1_1SampleEncryptionEntry-members.html @@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d5b/classedash__packager_1_1media_1_1HEVCDecoderConfiguration-members.html b/docs/db/d5b/classedash__packager_1_1media_1_1HEVCDecoderConfiguration-members.html index 9548c3c067..8f74a6acbb 100644 --- a/docs/db/d5b/classedash__packager_1_1media_1_1HEVCDecoderConfiguration-members.html +++ b/docs/db/d5b/classedash__packager_1_1media_1_1HEVCDecoderConfiguration-members.html @@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d60/mpd__options_8h_source.html b/docs/db/d60/mpd__options_8h_source.html index e648bd9579..4bd9aadea3 100644 --- a/docs/db/d60/mpd__options_8h_source.html +++ b/docs/db/d60/mpd__options_8h_source.html @@ -130,7 +130,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d61/classedash__packager_1_1media_1_1mp4_1_1SingleSegmentSegmenter-members.html b/docs/db/d61/classedash__packager_1_1media_1_1mp4_1_1SingleSegmentSegmenter-members.html index 40b896ecfb..e2ace619cc 100644 --- a/docs/db/d61/classedash__packager_1_1media_1_1mp4_1_1SingleSegmentSegmenter-members.html +++ b/docs/db/d61/classedash__packager_1_1media_1_1mp4_1_1SingleSegmentSegmenter-members.html @@ -118,7 +118,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d64/webvtt__media__parser_8h_source.html b/docs/db/d64/webvtt__media__parser_8h_source.html index 15c917fd6c..53dee2d45f 100644 --- a/docs/db/d64/webvtt__media__parser_8h_source.html +++ b/docs/db/d64/webvtt__media__parser_8h_source.html @@ -180,7 +180,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d69/classedash__packager_1_1media_1_1mp2t_1_1AdtsHeader.html b/docs/db/d69/classedash__packager_1_1media_1_1mp2t_1_1AdtsHeader.html index 5a28d041de..25e290d23f 100644 --- a/docs/db/d69/classedash__packager_1_1media_1_1mp2t_1_1AdtsHeader.html +++ b/docs/db/d69/classedash__packager_1_1media_1_1mp2t_1_1AdtsHeader.html @@ -336,7 +336,7 @@ Static Public Member Functions diff --git a/docs/db/d6b/structedash__packager_1_1media_1_1mp4_1_1VTTAdditionalTextBox.html b/docs/db/d6b/structedash__packager_1_1media_1_1mp4_1_1VTTAdditionalTextBox.html index 77cbaf6f91..5344deda42 100644 --- a/docs/db/d6b/structedash__packager_1_1media_1_1mp4_1_1VTTAdditionalTextBox.html +++ b/docs/db/d6b/structedash__packager_1_1media_1_1mp4_1_1VTTAdditionalTextBox.html @@ -173,7 +173,7 @@ Additional Inherited Members diff --git a/docs/db/d6c/classedash__packager_1_1media_1_1mp4_1_1BoxReader.html b/docs/db/d6c/classedash__packager_1_1media_1_1mp4_1_1BoxReader.html index 79a310bf16..6b829d9793 100644 --- a/docs/db/d6c/classedash__packager_1_1media_1_1mp4_1_1BoxReader.html +++ b/docs/db/d6c/classedash__packager_1_1media_1_1mp4_1_1BoxReader.html @@ -497,7 +497,7 @@ template<typename T > diff --git a/docs/db/d71/http__key__fetcher_8h_source.html b/docs/db/d71/http__key__fetcher_8h_source.html index 9813842bd6..0789e666a5 100644 --- a/docs/db/d71/http__key__fetcher_8h_source.html +++ b/docs/db/d71/http__key__fetcher_8h_source.html @@ -150,7 +150,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d79/structedash__packager_1_1media_1_1mp4_1_1EditListEntry-members.html b/docs/db/d79/structedash__packager_1_1media_1_1mp4_1_1EditListEntry-members.html index fcc25b93b8..30d5ab3af9 100644 --- a/docs/db/d79/structedash__packager_1_1media_1_1mp4_1_1EditListEntry-members.html +++ b/docs/db/d79/structedash__packager_1_1media_1_1mp4_1_1EditListEntry-members.html @@ -100,7 +100,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d7e/muxer__options_8cc_source.html b/docs/db/d7e/muxer__options_8cc_source.html index 01bbd20ce5..bdd6cb153e 100644 --- a/docs/db/d7e/muxer__options_8cc_source.html +++ b/docs/db/d7e/muxer__options_8cc_source.html @@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d89/structedash__packager_1_1media_1_1mp4_1_1CompactSampleSize.html b/docs/db/d89/structedash__packager_1_1media_1_1mp4_1_1CompactSampleSize.html index e4ab76c94f..46df8fe700 100644 --- a/docs/db/d89/structedash__packager_1_1media_1_1mp4_1_1CompactSampleSize.html +++ b/docs/db/d89/structedash__packager_1_1media_1_1mp4_1_1CompactSampleSize.html @@ -185,7 +185,7 @@ Additional Inherited Members diff --git a/docs/db/d8f/mp4__muxer_8h_source.html b/docs/db/d8f/mp4__muxer_8h_source.html index b51b63fcc4..b588dca21e 100644 --- a/docs/db/d8f/mp4__muxer_8h_source.html +++ b/docs/db/d8f/mp4__muxer_8h_source.html @@ -175,7 +175,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d96/wvm__media__parser_8h_source.html b/docs/db/d96/wvm__media__parser_8h_source.html index 47bb69066f..0acb25c522 100644 --- a/docs/db/d96/wvm__media__parser_8h_source.html +++ b/docs/db/d96/wvm__media__parser_8h_source.html @@ -365,7 +365,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/d97/classedash__packager_1_1media_1_1WebMContentEncodingsClient-members.html b/docs/db/d97/classedash__packager_1_1media_1_1WebMContentEncodingsClient-members.html index eb2c2218de..1e2ebb2f96 100644 --- a/docs/db/d97/classedash__packager_1_1media_1_1WebMContentEncodingsClient-members.html +++ b/docs/db/d97/classedash__packager_1_1media_1_1WebMContentEncodingsClient-members.html @@ -108,7 +108,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/da0/classedash__packager_1_1media_1_1WebMClusterParser.html b/docs/db/da0/classedash__packager_1_1media_1_1WebMClusterParser.html index 07dee09841..0a9d004550 100644 --- a/docs/db/da0/classedash__packager_1_1media_1_1WebMClusterParser.html +++ b/docs/db/da0/classedash__packager_1_1media_1_1WebMClusterParser.html @@ -114,9 +114,8 @@ Public Types - - + + @@ -147,7 +146,7 @@ Additional Inherited Members

Public Member Functions

WebMClusterParser (int64_t timecode_scale, scoped_refptr< AudioStreamInfo > audio_stream_info, scoped_refptr< VideoStreamInfo > video_stream_info, int64_t audio_default_duration, int64_t video_default_duration, const WebMTracksParser::TextTracks &text_tracks, const std::set< int64_t > &ignored_tracks, const std::string &audio_encryption_key_id, const std::string &video_encryption_key_id, const MediaParser::NewSampleCB &new_sample_cb, const MediaParser::InitCB &init_cb)
 
 WebMClusterParser (int64_t timecode_scale, scoped_refptr< AudioStreamInfo > audio_stream_info, scoped_refptr< VideoStreamInfo > video_stream_info, int64_t audio_default_duration, int64_t video_default_duration, const WebMTracksParser::TextTracks &text_tracks, const std::set< int64_t > &ignored_tracks, const std::string &audio_encryption_key_id, const std::string &video_encryption_key_id, const MediaParser::NewSampleCB &new_sample_cb, const MediaParser::InitCB &init_cb, KeySource *decryption_key_source)
 
void Reset ()
 Resets the parser state so it can accept a new cluster.

Detailed Description

-

Definition at line 22 of file webm_cluster_parser.h.

+

Definition at line 23 of file webm_cluster_parser.h.

Member Enumeration Documentation

@@ -168,7 +167,114 @@ Additional Inherited Members -

Definition at line 26 of file webm_cluster_parser.h.

+

Definition at line 27 of file webm_cluster_parser.h.

+ +
+ +

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
edash_packager::media::WebMClusterParser::WebMClusterParser (int64_t timecode_scale,
scoped_refptr< AudioStreamInfoaudio_stream_info,
scoped_refptr< VideoStreamInfovideo_stream_info,
int64_t audio_default_duration,
int64_t video_default_duration,
const WebMTracksParser::TextTracks & text_tracks,
const std::set< int64_t > & ignored_tracks,
const std::string & audio_encryption_key_id,
const std::string & video_encryption_key_id,
const MediaParser::NewSampleCBnew_sample_cb,
const MediaParser::InitCBinit_cb,
KeySourcedecryption_key_source 
)
+
+

Create a WebMClusterParser from given parameters.

+
Parameters
+ + + + + + + + + + + + + +
timecode_scaleindicates timecode scale for the clusters.
audio_stream_inforeferences audio stream information. It will be NULL if there are no audio tracks available.
video_stream_inforeferences video stream information. It will be NULL if there are no video tracks available.
audio_default_durationindicates default duration for audio samples.
video_default_durationindicates default duration for video samples.
text_trackscontains text track information.
ignored_trackscontains a list of ignored track ids.
audio_encryption_key_idindicates the encryption key id for audio samples if there is an audio stream and the audio stream is encrypted. It is empty otherwise.
video_encryption_key_idindicates the encryption key id for video samples if there is a video stream and the video stream is encrypted. It is empty otherwise.
new_sample_cbis the callback to emit new samples.
init_cbis the callback to initialize streams.
decryption_key_sourcepoints to a decryption key source to fetch decryption keys. Should not be NULL if the tracks are encrypted.
+
+
+ +

Definition at line 52 of file webm_cluster_parser.cc.

@@ -195,7 +301,7 @@ Additional Inherited Members
Returns
true if the last Parse() call stopped at the end of a cluster.
-

Definition at line 125 of file webm_cluster_parser.h.

+

Definition at line 149 of file webm_cluster_parser.h.

@@ -213,7 +319,7 @@ Additional Inherited Members

Flush data currently in the parser and reset the parser so it can accept a new cluster.

-

Definition at line 103 of file webm_cluster_parser.cc.

+

Definition at line 106 of file webm_cluster_parser.cc.

@@ -247,7 +353,7 @@ Additional Inherited Members
The number of bytes parsed on success.
-

Definition at line 110 of file webm_cluster_parser.cc.

+

Definition at line 113 of file webm_cluster_parser.cc.

@@ -258,7 +364,7 @@ The number of bytes parsed on success. diff --git a/docs/db/da4/classBandwidthEstimator-members.html b/docs/db/da4/classBandwidthEstimator-members.html index 717baa1075..18b1fb611b 100644 --- a/docs/db/da4/classBandwidthEstimator-members.html +++ b/docs/db/da4/classBandwidthEstimator-members.html @@ -97,7 +97,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/da4/classedash__packager_1_1media_1_1WidevineKeySource.html b/docs/db/da4/classedash__packager_1_1media_1_1WidevineKeySource.html index aa08ba9337..1cca9978ff 100644 --- a/docs/db/da4/classedash__packager_1_1media_1_1WidevineKeySource.html +++ b/docs/db/da4/classedash__packager_1_1media_1_1WidevineKeySource.html @@ -559,7 +559,7 @@ static std::string  diff --git a/docs/db/da5/structedash__packager_1_1media_1_1mp4_1_1CencSampleEncryptionInfoEntry-members.html b/docs/db/da5/structedash__packager_1_1media_1_1mp4_1_1CencSampleEncryptionInfoEntry-members.html index e3dbf97dd2..8d32612eb7 100644 --- a/docs/db/da5/structedash__packager_1_1media_1_1mp4_1_1CencSampleEncryptionInfoEntry-members.html +++ b/docs/db/da5/structedash__packager_1_1media_1_1mp4_1_1CencSampleEncryptionInfoEntry-members.html @@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/da6/memory__file_8h_source.html b/docs/db/da6/memory__file_8h_source.html index d1d4051c4c..1d477558d7 100644 --- a/docs/db/da6/memory__file_8h_source.html +++ b/docs/db/da6/memory__file_8h_source.html @@ -154,7 +154,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/dae/classedash__packager_1_1media_1_1mp4_1_1Fragmenter.html b/docs/db/dae/classedash__packager_1_1media_1_1mp4_1_1Fragmenter.html index b1b2619801..42e42b729e 100644 --- a/docs/db/dae/classedash__packager_1_1media_1_1mp4_1_1Fragmenter.html +++ b/docs/db/dae/classedash__packager_1_1media_1_1mp4_1_1Fragmenter.html @@ -299,7 +299,7 @@ template<typename T > diff --git a/docs/db/db8/structedash__packager_1_1media_1_1mp4_1_1ID3v2-members.html b/docs/db/db8/structedash__packager_1_1media_1_1mp4_1_1ID3v2-members.html index 73d46d306f..658681c4d8 100644 --- a/docs/db/db8/structedash__packager_1_1media_1_1mp4_1_1ID3v2-members.html +++ b/docs/db/db8/structedash__packager_1_1media_1_1mp4_1_1ID3v2-members.html @@ -114,7 +114,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/dc8/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPmt-members.html b/docs/db/dc8/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPmt-members.html index 2abee6dfeb..1f2ef61b85 100644 --- a/docs/db/dc8/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPmt-members.html +++ b/docs/db/dc8/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPmt-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/dd1/structedash__packager_1_1media_1_1mp4_1_1SampleEncryption-members.html b/docs/db/dd1/structedash__packager_1_1media_1_1mp4_1_1SampleEncryption-members.html index 898a3cce1e..bad770de0c 100644 --- a/docs/db/dd1/structedash__packager_1_1media_1_1mp4_1_1SampleEncryption-members.html +++ b/docs/db/dd1/structedash__packager_1_1media_1_1mp4_1_1SampleEncryption-members.html @@ -118,7 +118,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/dd2/chunk__info__iterator_8h_source.html b/docs/db/dd2/chunk__info__iterator_8h_source.html index ccfd862977..2f141e0fd0 100644 --- a/docs/db/dd2/chunk__info__iterator_8h_source.html +++ b/docs/db/dd2/chunk__info__iterator_8h_source.html @@ -161,7 +161,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/dd9/sync__sample__iterator_8h_source.html b/docs/db/dd9/sync__sample__iterator_8h_source.html index 175d3c7a37..ffb6daee3f 100644 --- a/docs/db/dd9/sync__sample__iterator_8h_source.html +++ b/docs/db/dd9/sync__sample__iterator_8h_source.html @@ -140,7 +140,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/de4/classedash__packager_1_1AdaptationSet.html b/docs/db/de4/classedash__packager_1_1AdaptationSet.html index b6b998065e..87f62f95bb 100644 --- a/docs/db/de4/classedash__packager_1_1AdaptationSet.html +++ b/docs/db/de4/classedash__packager_1_1AdaptationSet.html @@ -582,7 +582,7 @@ template<MpdBuilder::MpdType type> diff --git a/docs/db/de9/classedash__packager_1_1media_1_1StreamDescriptorCompareFn-members.html b/docs/db/de9/classedash__packager_1_1media_1_1StreamDescriptorCompareFn-members.html index d4dec5a512..3b170900f0 100644 --- a/docs/db/de9/classedash__packager_1_1media_1_1StreamDescriptorCompareFn-members.html +++ b/docs/db/de9/classedash__packager_1_1media_1_1StreamDescriptorCompareFn-members.html @@ -97,7 +97,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/dec/audio__timestamp__helper_8cc_source.html b/docs/db/dec/audio__timestamp__helper_8cc_source.html index 12785ddf2d..262fc86780 100644 --- a/docs/db/dec/audio__timestamp__helper_8cc_source.html +++ b/docs/db/dec/audio__timestamp__helper_8cc_source.html @@ -165,7 +165,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/df2/classedash__packager_1_1media_1_1mp2t_1_1EsParser.html b/docs/db/df2/classedash__packager_1_1media_1_1mp2t_1_1EsParser.html index f7b621cb49..25cc1bf1ad 100644 --- a/docs/db/df2/classedash__packager_1_1media_1_1mp2t_1_1EsParser.html +++ b/docs/db/df2/classedash__packager_1_1media_1_1mp2t_1_1EsParser.html @@ -144,7 +144,7 @@ uint32_t pid () diff --git a/docs/db/df6/muxer_8h_source.html b/docs/db/df6/muxer_8h_source.html index 65440eb32f..78db19584b 100644 --- a/docs/db/df6/muxer_8h_source.html +++ b/docs/db/df6/muxer_8h_source.html @@ -208,7 +208,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/df7/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPsi-members.html b/docs/db/df7/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPsi-members.html index 57640f8ad6..acc21886ca 100644 --- a/docs/db/df7/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPsi-members.html +++ b/docs/db/df7/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPsi-members.html @@ -110,7 +110,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/df7/structedash__packager_1_1media_1_1mp4_1_1VideoMediaHeader.html b/docs/db/df7/structedash__packager_1_1media_1_1mp4_1_1VideoMediaHeader.html index becdc71dc8..e57f1b6e56 100644 --- a/docs/db/df7/structedash__packager_1_1media_1_1mp4_1_1VideoMediaHeader.html +++ b/docs/db/df7/structedash__packager_1_1media_1_1mp4_1_1VideoMediaHeader.html @@ -191,7 +191,7 @@ Additional Inherited Members diff --git a/docs/db/dfb/mpd__utils_8cc_source.html b/docs/db/dfb/mpd__utils_8cc_source.html index b002a40941..bd46d345bf 100644 --- a/docs/db/dfb/mpd__utils_8cc_source.html +++ b/docs/db/dfb/mpd__utils_8cc_source.html @@ -385,7 +385,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/dfc/mpd__notify__muxer__listener_8cc_source.html b/docs/db/dfc/mpd__notify__muxer__listener_8cc_source.html index 9799777c91..2127740126 100644 --- a/docs/db/dfc/mpd__notify__muxer__listener_8cc_source.html +++ b/docs/db/dfc/mpd__notify__muxer__listener_8cc_source.html @@ -265,7 +265,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/db/dfe/classedash__packager_1_1media_1_1AesCbcPkcs5Decryptor.html b/docs/db/dfe/classedash__packager_1_1media_1_1AesCbcPkcs5Decryptor.html index 65a6a86370..c6fa6a4f4a 100644 --- a/docs/db/dfe/classedash__packager_1_1media_1_1AesCbcPkcs5Decryptor.html +++ b/docs/db/dfe/classedash__packager_1_1media_1_1AesCbcPkcs5Decryptor.html @@ -209,7 +209,7 @@ const std::vector< uint8_t > &  diff --git a/docs/dc/d05/classedash__packager_1_1xml_1_1RepresentationXmlNode.html b/docs/dc/d05/classedash__packager_1_1xml_1_1RepresentationXmlNode.html index 2a5740d2fb..6923b40dcc 100644 --- a/docs/dc/d05/classedash__packager_1_1xml_1_1RepresentationXmlNode.html +++ b/docs/dc/d05/classedash__packager_1_1xml_1_1RepresentationXmlNode.html @@ -311,7 +311,7 @@ Additional Inherited Members diff --git a/docs/dc/d0c/classedash__packager_1_1media_1_1WebMVideoClient.html b/docs/dc/d0c/classedash__packager_1_1media_1_1WebMVideoClient.html index 685298de92..77ab4b2647 100644 --- a/docs/dc/d0c/classedash__packager_1_1media_1_1WebMVideoClient.html +++ b/docs/dc/d0c/classedash__packager_1_1media_1_1WebMVideoClient.html @@ -190,7 +190,7 @@ An empty scoped_refptr if there was unexpected values in the provided parameters diff --git a/docs/dc/d0d/structedash__packager_1_1media_1_1mp4_1_1EditListEntry.html b/docs/dc/d0d/structedash__packager_1_1media_1_1mp4_1_1EditListEntry.html index cf1fe4f4c2..491997f699 100644 --- a/docs/dc/d0d/structedash__packager_1_1media_1_1mp4_1_1EditListEntry.html +++ b/docs/dc/d0d/structedash__packager_1_1media_1_1mp4_1_1EditListEntry.html @@ -118,7 +118,7 @@ int16_t media_rate_fractio diff --git a/docs/dc/d0e/structedash__packager_1_1media_1_1mp4_1_1WVTTSampleEntry.html b/docs/dc/d0e/structedash__packager_1_1media_1_1mp4_1_1WVTTSampleEntry.html index a789ed693d..12a4c4f403 100644 --- a/docs/dc/d0e/structedash__packager_1_1media_1_1mp4_1_1WVTTSampleEntry.html +++ b/docs/dc/d0e/structedash__packager_1_1media_1_1mp4_1_1WVTTSampleEntry.html @@ -179,7 +179,7 @@ Additional Inherited Members diff --git a/docs/dc/d19/box_8h_source.html b/docs/dc/d19/box_8h_source.html index b07b587e45..a8eab40227 100644 --- a/docs/dc/d19/box_8h_source.html +++ b/docs/dc/d19/box_8h_source.html @@ -184,7 +184,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d22/dash__iop__mpd__notifier_8cc_source.html b/docs/dc/d22/dash__iop__mpd__notifier_8cc_source.html index 82abb7b31e..e04b7c64ca 100644 --- a/docs/dc/d22/dash__iop__mpd__notifier_8cc_source.html +++ b/docs/dc/d22/dash__iop__mpd__notifier_8cc_source.html @@ -407,7 +407,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d23/classedash__packager_1_1MockMpdNotifier-members.html b/docs/dc/d23/classedash__packager_1_1MockMpdNotifier-members.html index af3de8eee3..18cbb2dee3 100644 --- a/docs/dc/d23/classedash__packager_1_1MockMpdNotifier-members.html +++ b/docs/dc/d23/classedash__packager_1_1MockMpdNotifier-members.html @@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d2f/classedash__packager_1_1media_1_1KeySource-members.html b/docs/dc/d2f/classedash__packager_1_1media_1_1KeySource-members.html index 9fc8d31399..38e1017a43 100644 --- a/docs/dc/d2f/classedash__packager_1_1media_1_1KeySource-members.html +++ b/docs/dc/d2f/classedash__packager_1_1media_1_1KeySource-members.html @@ -117,7 +117,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d31/classedash__packager_1_1media_1_1ClusterBuilder-members.html b/docs/dc/d31/classedash__packager_1_1media_1_1ClusterBuilder-members.html index ea1ab96fe0..e7bd31f21c 100644 --- a/docs/dc/d31/classedash__packager_1_1media_1_1ClusterBuilder-members.html +++ b/docs/dc/d31/classedash__packager_1_1media_1_1ClusterBuilder-members.html @@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d35/classedash__packager_1_1media_1_1mp2t_1_1Mp2tMediaParser-members.html b/docs/dc/d35/classedash__packager_1_1media_1_1mp2t_1_1Mp2tMediaParser-members.html index a779de6f18..e1ebde620a 100644 --- a/docs/dc/d35/classedash__packager_1_1media_1_1mp2t_1_1Mp2tMediaParser-members.html +++ b/docs/dc/d35/classedash__packager_1_1media_1_1mp2t_1_1Mp2tMediaParser-members.html @@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d3b/fixed__key__encryption__flags_8cc_source.html b/docs/dc/d3b/fixed__key__encryption__flags_8cc_source.html index 7f5d4d6dc2..091946bf69 100644 --- a/docs/dc/d3b/fixed__key__encryption__flags_8cc_source.html +++ b/docs/dc/d3b/fixed__key__encryption__flags_8cc_source.html @@ -153,7 +153,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d3c/webm__cluster__parser_8h_source.html b/docs/dc/d3c/webm__cluster__parser_8h_source.html index 575a1f0080..42fc408686 100644 --- a/docs/dc/d3c/webm__cluster__parser_8h_source.html +++ b/docs/dc/d3c/webm__cluster__parser_8h_source.html @@ -100,199 +100,204 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
11 #include <string>
12 
13 #include "packager/base/memory/scoped_ptr.h"
-
14 #include "packager/media/base/media_parser.h"
-
15 #include "packager/media/base/media_sample.h"
-
16 #include "packager/media/formats/webm/webm_parser.h"
-
17 #include "packager/media/formats/webm/webm_tracks_parser.h"
-
18 
-
19 namespace edash_packager {
-
20 namespace media {
-
21 
- -
23  public:
-
26  enum {
- -
29 
- -
33  };
-
34 
-
35  private:
-
36  // Helper class that manages per-track state.
-
37  class Track {
-
38  public:
-
39  Track(int track_num,
-
40  bool is_video,
-
41  int64_t default_duration,
-
42  const MediaParser::NewSampleCB& new_sample_cb);
-
43  ~Track();
-
44 
-
45  int track_num() const { return track_num_; }
-
46 
-
47  // If |last_added_buffer_missing_duration_| is set, updates its duration
-
48  // relative to |buffer|'s timestamp, and emits it and unsets
-
49  // |last_added_buffer_missing_duration_|. Otherwise, if |buffer| is missing
-
50  // duration, saves |buffer| into |last_added_buffer_missing_duration_|.
-
51  bool EmitBuffer(const scoped_refptr<MediaSample>& buffer);
-
52 
-
53  // If |last_added_buffer_missing_duration_| is set, estimate the duration
-
54  // for this buffer using helper function GetDurationEstimate() then emits it
-
55  // and unsets |last_added_buffer_missing_duration_| (This method helps
-
56  // stream parser emit all buffers in a media segment).
-
57  void ApplyDurationEstimateIfNeeded();
-
58 
-
59  // Clears all buffer state, including any possibly held-aside buffer that
-
60  // was missing duration.
-
61  void Reset();
-
62 
-
63  private:
-
64  // Helper that sanity-checks |buffer| duration, updates
-
65  // |estimated_next_frame_duration_|, and emits |buffer|.
-
66  // Returns false if |buffer| failed sanity check and therefore was not
-
67  // emitted. Returns true otherwise.
-
68  bool EmitBufferHelp(const scoped_refptr<MediaSample>& buffer);
-
69 
-
70  // Helper function that calculates the buffer duration to use in
-
71  // ApplyDurationEstimateIfNeeded().
-
72  int64_t GetDurationEstimate();
-
73 
-
74  int track_num_;
-
75  bool is_video_;
-
76 
-
77  // Holding the sample that is missing duration. The duration will be
-
78  // computed from the difference in timestamp when next sample arrives; or
-
79  // estimated if it is the last sample in this track.
-
80  scoped_refptr<MediaSample> last_added_buffer_missing_duration_;
-
81 
-
82  // If kNoTimestamp, then |estimated_next_frame_duration_| will be used.
-
83  int64_t default_duration_;
-
84 
-
85  // If kNoTimestamp, then a hardcoded default value will be used. This
-
86  // estimate is the maximum duration seen so far for this track, and is used
-
87  // only if |default_duration_| is kNoTimestamp.
-
88  int64_t estimated_next_frame_duration_;
-
89 
-
90  MediaParser::NewSampleCB new_sample_cb_;
-
91  };
-
92 
-
93  typedef std::map<int, Track> TextTrackMap;
-
94 
-
95  public:
-
96  WebMClusterParser(int64_t timecode_scale,
-
97  scoped_refptr<AudioStreamInfo> audio_stream_info,
-
98  scoped_refptr<VideoStreamInfo> video_stream_info,
-
99  int64_t audio_default_duration,
-
100  int64_t video_default_duration,
-
101  const WebMTracksParser::TextTracks& text_tracks,
-
102  const std::set<int64_t>& ignored_tracks,
-
103  const std::string& audio_encryption_key_id,
-
104  const std::string& video_encryption_key_id,
-
105  const MediaParser::NewSampleCB& new_sample_cb,
-
106  const MediaParser::InitCB& init_cb);
-
107  ~WebMClusterParser() override;
-
108 
-
110  void Reset();
-
111 
-
114  void Flush();
-
115 
-
120  int Parse(const uint8_t* buf, int size);
-
121 
-
122  int64_t cluster_start_time() const { return cluster_start_time_; }
-
123 
-
125  bool cluster_ended() const { return cluster_ended_; }
-
126 
-
127  private:
-
128  // WebMParserClient methods.
-
129  WebMParserClient* OnListStart(int id) override;
-
130  bool OnListEnd(int id) override;
-
131  bool OnUInt(int id, int64_t val) override;
-
132  bool OnBinary(int id, const uint8_t* data, int size) override;
-
133 
-
134  bool ParseBlock(bool is_simple_block,
-
135  const uint8_t* buf,
-
136  int size,
-
137  const uint8_t* additional,
-
138  int additional_size,
-
139  int duration,
-
140  int64_t discard_padding);
-
141  bool OnBlock(bool is_simple_block,
-
142  int track_num,
-
143  int timecode,
-
144  int duration,
-
145  int flags,
-
146  const uint8_t* data,
-
147  int size,
-
148  const uint8_t* additional,
-
149  int additional_size,
-
150  int64_t discard_padding);
-
151 
-
152  // Resets the Track objects associated with each text track.
-
153  void ResetTextTracks();
-
154 
-
155  // Search for the indicated track_num among the text tracks. Returns NULL
-
156  // if that track num is not a text track.
-
157  Track* FindTextTrack(int track_num);
-
158 
-
159  // Multiplier used to convert timecodes into microseconds.
-
160  double timecode_multiplier_;
-
161 
-
162  scoped_refptr<AudioStreamInfo> audio_stream_info_;
-
163  scoped_refptr<VideoStreamInfo> video_stream_info_;
-
164  std::set<int64_t> ignored_tracks_;
-
165  std::string audio_encryption_key_id_;
-
166  std::string video_encryption_key_id_;
-
167 
-
168  WebMListParser parser_;
-
169 
-
170  // Indicates whether init_cb has been executed. |init_cb| is executed when we
-
171  // have codec configuration of video stream, which is extracted from the first
-
172  // video sample.
-
173  bool initialized_;
-
174  MediaParser::InitCB init_cb_;
+
14 #include "packager/media/base/decryptor_source.h"
+
15 #include "packager/media/base/media_parser.h"
+
16 #include "packager/media/base/media_sample.h"
+
17 #include "packager/media/formats/webm/webm_parser.h"
+
18 #include "packager/media/formats/webm/webm_tracks_parser.h"
+
19 
+
20 namespace edash_packager {
+
21 namespace media {
+
22 
+ +
24  public:
+
27  enum {
+ +
30 
+ +
34  };
+
35 
+
36  private:
+
37  // Helper class that manages per-track state.
+
38  class Track {
+
39  public:
+
40  Track(int track_num,
+
41  bool is_video,
+
42  int64_t default_duration,
+
43  const MediaParser::NewSampleCB& new_sample_cb);
+
44  ~Track();
+
45 
+
46  int track_num() const { return track_num_; }
+
47 
+
48  // If |last_added_buffer_missing_duration_| is set, updates its duration
+
49  // relative to |buffer|'s timestamp, and emits it and unsets
+
50  // |last_added_buffer_missing_duration_|. Otherwise, if |buffer| is missing
+
51  // duration, saves |buffer| into |last_added_buffer_missing_duration_|.
+
52  bool EmitBuffer(const scoped_refptr<MediaSample>& buffer);
+
53 
+
54  // If |last_added_buffer_missing_duration_| is set, estimate the duration
+
55  // for this buffer using helper function GetDurationEstimate() then emits it
+
56  // and unsets |last_added_buffer_missing_duration_| (This method helps
+
57  // stream parser emit all buffers in a media segment).
+
58  void ApplyDurationEstimateIfNeeded();
+
59 
+
60  // Clears all buffer state, including any possibly held-aside buffer that
+
61  // was missing duration.
+
62  void Reset();
+
63 
+
64  private:
+
65  // Helper that sanity-checks |buffer| duration, updates
+
66  // |estimated_next_frame_duration_|, and emits |buffer|.
+
67  // Returns false if |buffer| failed sanity check and therefore was not
+
68  // emitted. Returns true otherwise.
+
69  bool EmitBufferHelp(const scoped_refptr<MediaSample>& buffer);
+
70 
+
71  // Helper function that calculates the buffer duration to use in
+
72  // ApplyDurationEstimateIfNeeded().
+
73  int64_t GetDurationEstimate();
+
74 
+
75  int track_num_;
+
76  bool is_video_;
+
77 
+
78  // Holding the sample that is missing duration. The duration will be
+
79  // computed from the difference in timestamp when next sample arrives; or
+
80  // estimated if it is the last sample in this track.
+
81  scoped_refptr<MediaSample> last_added_buffer_missing_duration_;
+
82 
+
83  // If kNoTimestamp, then |estimated_next_frame_duration_| will be used.
+
84  int64_t default_duration_;
+
85 
+
86  // If kNoTimestamp, then a hardcoded default value will be used. This
+
87  // estimate is the maximum duration seen so far for this track, and is used
+
88  // only if |default_duration_| is kNoTimestamp.
+
89  int64_t estimated_next_frame_duration_;
+
90 
+
91  MediaParser::NewSampleCB new_sample_cb_;
+
92  };
+
93 
+
94  typedef std::map<int, Track> TextTrackMap;
+
95 
+
96  public:
+
119  WebMClusterParser(int64_t timecode_scale,
+
120  scoped_refptr<AudioStreamInfo> audio_stream_info,
+
121  scoped_refptr<VideoStreamInfo> video_stream_info,
+
122  int64_t audio_default_duration,
+
123  int64_t video_default_duration,
+
124  const WebMTracksParser::TextTracks& text_tracks,
+
125  const std::set<int64_t>& ignored_tracks,
+
126  const std::string& audio_encryption_key_id,
+
127  const std::string& video_encryption_key_id,
+
128  const MediaParser::NewSampleCB& new_sample_cb,
+
129  const MediaParser::InitCB& init_cb,
+
130  KeySource* decryption_key_source);
+
131  ~WebMClusterParser() override;
+
132 
+
134  void Reset();
+
135 
+
138  void Flush();
+
139 
+
144  int Parse(const uint8_t* buf, int size);
+
145 
+
146  int64_t cluster_start_time() const { return cluster_start_time_; }
+
147 
+
149  bool cluster_ended() const { return cluster_ended_; }
+
150 
+
151  private:
+
152  // WebMParserClient methods.
+
153  WebMParserClient* OnListStart(int id) override;
+
154  bool OnListEnd(int id) override;
+
155  bool OnUInt(int id, int64_t val) override;
+
156  bool OnBinary(int id, const uint8_t* data, int size) override;
+
157 
+
158  bool ParseBlock(bool is_simple_block,
+
159  const uint8_t* buf,
+
160  int size,
+
161  const uint8_t* additional,
+
162  int additional_size,
+
163  int duration,
+
164  int64_t discard_padding);
+
165  bool OnBlock(bool is_simple_block,
+
166  int track_num,
+
167  int timecode,
+
168  int duration,
+
169  int flags,
+
170  const uint8_t* data,
+
171  int size,
+
172  const uint8_t* additional,
+
173  int additional_size,
+
174  int64_t discard_padding);
175 
-
176  int64_t last_block_timecode_ = -1;
-
177  scoped_ptr<uint8_t[]> block_data_;
-
178  int block_data_size_ = -1;
-
179  int64_t block_duration_ = -1;
-
180  int64_t block_add_id_ = -1;
-
181 
-
182  scoped_ptr<uint8_t[]> block_additional_data_;
-
183  // Must be 0 if |block_additional_data_| is null. Must be > 0 if
-
184  // |block_additional_data_| is NOT null.
-
185  int block_additional_data_size_ = 0;
-
186 
-
187  int64_t discard_padding_ = -1;
-
188  bool discard_padding_set_ = false;
+
176  // Resets the Track objects associated with each text track.
+
177  void ResetTextTracks();
+
178 
+
179  // Search for the indicated track_num among the text tracks. Returns NULL
+
180  // if that track num is not a text track.
+
181  Track* FindTextTrack(int track_num);
+
182 
+
183  // Multiplier used to convert timecodes into microseconds.
+
184  double timecode_multiplier_;
+
185 
+
186  scoped_refptr<AudioStreamInfo> audio_stream_info_;
+
187  scoped_refptr<VideoStreamInfo> video_stream_info_;
+
188  std::set<int64_t> ignored_tracks_;
189 
-
190  int64_t cluster_timecode_ = -1;
-
191  int64_t cluster_start_time_;
-
192  bool cluster_ended_ = false;
+
190  scoped_ptr<DecryptorSource> decryptor_source_;
+
191  std::string audio_encryption_key_id_;
+
192  std::string video_encryption_key_id_;
193 
-
194  Track audio_;
-
195  Track video_;
-
196  TextTrackMap text_track_map_;
-
197 
-
198  DISALLOW_COPY_AND_ASSIGN(WebMClusterParser);
-
199 };
-
200 
-
201 } // namespace media
-
202 } // namespace edash_packager
-
203 
-
204 #endif // MEDIA_FORMATS_WEBM_WEBM_CLUSTER_PARSER_H_
+
194  WebMListParser parser_;
+
195 
+
196  // Indicates whether init_cb has been executed. |init_cb| is executed when we
+
197  // have codec configuration of video stream, which is extracted from the first
+
198  // video sample.
+
199  bool initialized_;
+
200  MediaParser::InitCB init_cb_;
+
201 
+
202  int64_t last_block_timecode_ = -1;
+
203  scoped_ptr<uint8_t[]> block_data_;
+
204  int block_data_size_ = -1;
+
205  int64_t block_duration_ = -1;
+
206  int64_t block_add_id_ = -1;
+
207 
+
208  scoped_ptr<uint8_t[]> block_additional_data_;
+
209  // Must be 0 if |block_additional_data_| is null. Must be > 0 if
+
210  // |block_additional_data_| is NOT null.
+
211  int block_additional_data_size_ = 0;
+
212 
+
213  int64_t discard_padding_ = -1;
+
214  bool discard_padding_set_ = false;
+
215 
+
216  int64_t cluster_timecode_ = -1;
+
217  int64_t cluster_start_time_;
+
218  bool cluster_ended_ = false;
+
219 
+
220  Track audio_;
+
221  Track video_;
+
222  TextTrackMap text_track_map_;
+
223 
+
224  DISALLOW_COPY_AND_ASSIGN(WebMClusterParser);
+
225 };
+
226 
+
227 } // namespace media
+
228 } // namespace edash_packager
+
229 
+
230 #endif // MEDIA_FORMATS_WEBM_WEBM_CLUSTER_PARSER_H_
-
void Reset()
Resets the parser state so it can accept a new cluster.
- -
int Parse(const uint8_t *buf, int size)
+
void Reset()
Resets the parser state so it can accept a new cluster.
+ +
int Parse(const uint8_t *buf, int size)
base::Callback< bool(uint32_t track_id, const scoped_refptr< MediaSample > &media_sample)> NewSampleCB
Definition: media_parser.h:43
base::Callback< void(const std::vector< scoped_refptr< StreamInfo > > &stream_info)> InitCB
Definition: media_parser.h:34
- - + +
WebMClusterParser(int64_t timecode_scale, scoped_refptr< AudioStreamInfo > audio_stream_info, scoped_refptr< VideoStreamInfo > video_stream_info, int64_t audio_default_duration, int64_t video_default_duration, const WebMTracksParser::TextTracks &text_tracks, const std::set< int64_t > &ignored_tracks, const std::string &audio_encryption_key_id, const std::string &video_encryption_key_id, const MediaParser::NewSampleCB &new_sample_cb, const MediaParser::InitCB &init_cb, KeySource *decryption_key_source)
+ - - + + diff --git a/docs/dc/d3f/key__source_8h_source.html b/docs/dc/d3f/key__source_8h_source.html index a8b8c1c747..208e91afda 100644 --- a/docs/dc/d3f/key__source_8h_source.html +++ b/docs/dc/d3f/key__source_8h_source.html @@ -189,7 +189,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d41/classedash__packager_1_1xml_1_1RepresentationXmlNode-members.html b/docs/dc/d41/classedash__packager_1_1xml_1_1RepresentationXmlNode-members.html index e4567a3dc0..37e9672a38 100644 --- a/docs/dc/d41/classedash__packager_1_1xml_1_1RepresentationXmlNode-members.html +++ b/docs/dc/d41/classedash__packager_1_1xml_1_1RepresentationXmlNode-members.html @@ -117,7 +117,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d44/classedash__packager_1_1xml_1_1XmlNode-members.html b/docs/dc/d44/classedash__packager_1_1xml_1_1XmlNode-members.html index 67f698ff38..53dc37f64f 100644 --- a/docs/dc/d44/classedash__packager_1_1xml_1_1XmlNode-members.html +++ b/docs/dc/d44/classedash__packager_1_1xml_1_1XmlNode-members.html @@ -108,7 +108,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d46/classedash__packager_1_1media_1_1Cluster-members.html b/docs/dc/d46/classedash__packager_1_1media_1_1Cluster-members.html index 80224487cd..ca2b8ff663 100644 --- a/docs/dc/d46/classedash__packager_1_1media_1_1Cluster-members.html +++ b/docs/dc/d46/classedash__packager_1_1media_1_1Cluster-members.html @@ -100,7 +100,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d48/classedash__packager_1_1media_1_1MediaParser.html b/docs/dc/d48/classedash__packager_1_1media_1_1MediaParser.html index 8ec4a6a7f0..794e940b18 100644 --- a/docs/dc/d48/classedash__packager_1_1media_1_1MediaParser.html +++ b/docs/dc/d48/classedash__packager_1_1media_1_1MediaParser.html @@ -199,7 +199,7 @@ Public Member Functions @@ -249,7 +249,7 @@ Public Member Functions -

Implemented in edash_packager::media::wvm::WvmMediaParser, edash_packager::media::mp4::MP4MediaParser, edash_packager::media::WebVttMediaParser, edash_packager::media::mp2t::Mp2tMediaParser, and edash_packager::media::WebMMediaParser.

+

Implemented in edash_packager::media::wvm::WvmMediaParser, edash_packager::media::WebVttMediaParser, edash_packager::media::mp4::MP4MediaParser, edash_packager::media::mp2t::Mp2tMediaParser, and edash_packager::media::WebMMediaParser.

@@ -287,7 +287,7 @@ Public Member Functions

Should be called when there is new data to parse.

Returns
true if successful.
-

Implemented in edash_packager::media::wvm::WvmMediaParser, edash_packager::media::mp4::MP4MediaParser, edash_packager::media::WebVttMediaParser, edash_packager::media::mp2t::Mp2tMediaParser, and edash_packager::media::WebMMediaParser.

+

Implemented in edash_packager::media::wvm::WvmMediaParser, edash_packager::media::WebVttMediaParser, edash_packager::media::mp4::MP4MediaParser, edash_packager::media::mp2t::Mp2tMediaParser, and edash_packager::media::WebMMediaParser.

@@ -297,7 +297,7 @@ Public Member Functions diff --git a/docs/dc/d4a/structedash__packager_1_1media_1_1mp4_1_1WebVTTConfigurationBox-members.html b/docs/dc/d4a/structedash__packager_1_1media_1_1mp4_1_1WebVTTConfigurationBox-members.html index 57821fb8e5..0ca2e366cd 100644 --- a/docs/dc/d4a/structedash__packager_1_1media_1_1mp4_1_1WebVTTConfigurationBox-members.html +++ b/docs/dc/d4a/structedash__packager_1_1media_1_1mp4_1_1WebVTTConfigurationBox-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d51/structedash__packager_1_1media_1_1mp4_1_1WVTTSampleEntry-members.html b/docs/dc/d51/structedash__packager_1_1media_1_1mp4_1_1WVTTSampleEntry-members.html index 814ad63e2e..b223aa5a20 100644 --- a/docs/dc/d51/structedash__packager_1_1media_1_1mp4_1_1WVTTSampleEntry-members.html +++ b/docs/dc/d51/structedash__packager_1_1media_1_1mp4_1_1WVTTSampleEntry-members.html @@ -111,7 +111,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d52/decoding__time__iterator_8h_source.html b/docs/dc/d52/decoding__time__iterator_8h_source.html index 9892a3da7e..8beab142b0 100644 --- a/docs/dc/d52/decoding__time__iterator_8h_source.html +++ b/docs/dc/d52/decoding__time__iterator_8h_source.html @@ -147,7 +147,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d53/webm_2segmenter_8cc_source.html b/docs/dc/d53/webm_2segmenter_8cc_source.html index 0874a36ea5..51b2654205 100644 --- a/docs/dc/d53/webm_2segmenter_8cc_source.html +++ b/docs/dc/d53/webm_2segmenter_8cc_source.html @@ -463,7 +463,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d55/structedash__packager_1_1media_1_1H264SEIMessage-members.html b/docs/dc/d55/structedash__packager_1_1media_1_1H264SEIMessage-members.html index d97c4e2c27..8e358e5e87 100644 --- a/docs/dc/d55/structedash__packager_1_1media_1_1H264SEIMessage-members.html +++ b/docs/dc/d55/structedash__packager_1_1media_1_1H264SEIMessage-members.html @@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d58/webm__media__parser_8h_source.html b/docs/dc/d58/webm__media__parser_8h_source.html index 09b5aac8af..dba5e87b0a 100644 --- a/docs/dc/d58/webm__media__parser_8h_source.html +++ b/docs/dc/d58/webm__media__parser_8h_source.html @@ -144,30 +144,31 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
56  // Returning > 0 indicates success & the number of bytes parsed.
57  int ParseCluster(const uint8_t* data, int size);
58 
-
59  // Fire needkey event through the |encrypted_media_init_data_cb_|.
-
60  void OnEncryptedMediaInitData(const std::string& key_id);
-
61 
-
62  State state_;
-
63  InitCB init_cb_;
-
64  NewSampleCB new_sample_cb_;
-
65  KeySource* decryption_key_source_;
-
66  bool ignore_text_tracks_;
-
67 
-
68  bool unknown_segment_size_;
-
69 
-
70  scoped_ptr<WebMClusterParser> cluster_parser_;
-
71  ByteQueue byte_queue_;
-
72 
-
73  DISALLOW_COPY_AND_ASSIGN(WebMMediaParser);
-
74 };
-
75 
-
76 } // namespace media
-
77 } // namespace edash_packager
-
78 
-
79 #endif // MEDIA_FORMATS_WEBM_WEBM_MEDIA_PARSER_H_
-
bool Parse(const uint8_t *buf, int size) override
- -
void Init(const InitCB &init_cb, const NewSampleCB &new_sample_cb, KeySource *decryption_key_source) override
StreamParser implementation.
+
59  // Fetch keys for the input key ids. Returns true on success, false otherwise.
+
60  bool FetchKeysIfNecessary(const std::string& audio_encryption_key_id,
+
61  const std::string& video_encryption_key_id);
+
62 
+
63  State state_;
+
64  InitCB init_cb_;
+
65  NewSampleCB new_sample_cb_;
+
66  KeySource* decryption_key_source_;
+
67  bool ignore_text_tracks_;
+
68 
+
69  bool unknown_segment_size_;
+
70 
+
71  scoped_ptr<WebMClusterParser> cluster_parser_;
+
72  ByteQueue byte_queue_;
+
73 
+
74  DISALLOW_COPY_AND_ASSIGN(WebMMediaParser);
+
75 };
+
76 
+
77 } // namespace media
+
78 } // namespace edash_packager
+
79 
+
80 #endif // MEDIA_FORMATS_WEBM_WEBM_MEDIA_PARSER_H_
+
bool Parse(const uint8_t *buf, int size) override
+ +
void Init(const InitCB &init_cb, const NewSampleCB &new_sample_cb, KeySource *decryption_key_source) override
StreamParser implementation.
base::Callback< bool(uint32_t track_id, const scoped_refptr< MediaSample > &media_sample)> NewSampleCB
Definition: media_parser.h:43
@@ -177,7 +178,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d73/classedash__packager_1_1media_1_1RequestSigner.html b/docs/dc/d73/classedash__packager_1_1media_1_1RequestSigner.html index 878db7a045..d99fa8915b 100644 --- a/docs/dc/d73/classedash__packager_1_1media_1_1RequestSigner.html +++ b/docs/dc/d73/classedash__packager_1_1media_1_1RequestSigner.html @@ -180,7 +180,7 @@ Protected Member Functions diff --git a/docs/dc/d7a/classedash__packager_1_1media_1_1mp4_1_1MultiSegmentSegmenter.html b/docs/dc/d7a/classedash__packager_1_1media_1_1mp4_1_1MultiSegmentSegmenter.html index 570700afbc..bc8d1e2488 100644 --- a/docs/dc/d7a/classedash__packager_1_1media_1_1mp4_1_1MultiSegmentSegmenter.html +++ b/docs/dc/d7a/classedash__packager_1_1media_1_1mp4_1_1MultiSegmentSegmenter.html @@ -259,7 +259,7 @@ void set_progress_target diff --git a/docs/dc/d7b/closure__thread_8cc_source.html b/docs/dc/d7b/closure__thread_8cc_source.html index ccc2262f44..e81c4a0ae4 100644 --- a/docs/dc/d7b/closure__thread_8cc_source.html +++ b/docs/dc/d7b/closure__thread_8cc_source.html @@ -118,7 +118,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d7b/h264__parser_8cc_source.html b/docs/dc/d7b/h264__parser_8cc_source.html index 1a73416693..0cb0b3bd38 100644 --- a/docs/dc/d7b/h264__parser_8cc_source.html +++ b/docs/dc/d7b/h264__parser_8cc_source.html @@ -1446,7 +1446,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/d81/classedash__packager_1_1MpdWriter.html b/docs/dc/d81/classedash__packager_1_1MpdWriter.html index 77a1684d21..dfcf45dcb0 100644 --- a/docs/dc/d81/classedash__packager_1_1MpdWriter.html +++ b/docs/dc/d81/classedash__packager_1_1MpdWriter.html @@ -123,7 +123,7 @@ class MpdWriterTest diff --git a/docs/dc/d8a/classedash__packager_1_1media_1_1mp4_1_1KeyRotationFragmenter.html b/docs/dc/d8a/classedash__packager_1_1media_1_1mp4_1_1KeyRotationFragmenter.html index cddc901965..9527ed9915 100644 --- a/docs/dc/d8a/classedash__packager_1_1media_1_1mp4_1_1KeyRotationFragmenter.html +++ b/docs/dc/d8a/classedash__packager_1_1media_1_1mp4_1_1KeyRotationFragmenter.html @@ -303,7 +303,7 @@ void set_encryption_key diff --git a/docs/dc/dab/classedash__packager_1_1media_1_1mp2t_1_1Mp2tMediaParser.html b/docs/dc/dab/classedash__packager_1_1media_1_1mp2t_1_1Mp2tMediaParser.html index b3ee0a9a4e..dab03c1195 100644 --- a/docs/dc/dab/classedash__packager_1_1media_1_1mp2t_1_1Mp2tMediaParser.html +++ b/docs/dc/dab/classedash__packager_1_1media_1_1mp2t_1_1Mp2tMediaParser.html @@ -255,7 +255,7 @@ track_id, const scoped_refptr
diff --git a/docs/dc/db7/structedash__packager_1_1media_1_1mp4_1_1DecodingTimeToSample.html b/docs/dc/db7/structedash__packager_1_1media_1_1mp4_1_1DecodingTimeToSample.html index 8a83e9e982..a8520644e3 100644 --- a/docs/dc/db7/structedash__packager_1_1media_1_1mp4_1_1DecodingTimeToSample.html +++ b/docs/dc/db7/structedash__packager_1_1media_1_1mp4_1_1DecodingTimeToSample.html @@ -182,7 +182,7 @@ Additional Inherited Members diff --git a/docs/dc/dbf/box__buffer_8h_source.html b/docs/dc/dbf/box__buffer_8h_source.html index 4688425646..009be8557f 100644 --- a/docs/dc/dbf/box__buffer_8h_source.html +++ b/docs/dc/dbf/box__buffer_8h_source.html @@ -294,7 +294,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/dc6/classedash__packager_1_1media_1_1mp4_1_1AACAudioSpecificConfig.html b/docs/dc/dc6/classedash__packager_1_1media_1_1mp4_1_1AACAudioSpecificConfig.html index 198bec803b..6a9f626ded 100644 --- a/docs/dc/dc6/classedash__packager_1_1media_1_1mp4_1_1AACAudioSpecificConfig.html +++ b/docs/dc/dc6/classedash__packager_1_1media_1_1mp4_1_1AACAudioSpecificConfig.html @@ -313,7 +313,7 @@ static const size_t  diff --git a/docs/dc/dc8/classedash__packager_1_1media_1_1WebMWebVTTParser.html b/docs/dc/dc8/classedash__packager_1_1media_1_1WebMWebVTTParser.html index cd0e33de14..80622dd48c 100644 --- a/docs/dc/dc8/classedash__packager_1_1media_1_1WebMWebVTTParser.html +++ b/docs/dc/dc8/classedash__packager_1_1media_1_1WebMWebVTTParser.html @@ -111,7 +111,7 @@ static void  diff --git a/docs/dc/dd4/structedash__packager_1_1media_1_1mp4_1_1SampleToGroupEntry-members.html b/docs/dc/dd4/structedash__packager_1_1media_1_1mp4_1_1SampleToGroupEntry-members.html index 2185888d38..0fad45c4ff 100644 --- a/docs/dc/dd4/structedash__packager_1_1media_1_1mp4_1_1SampleToGroupEntry-members.html +++ b/docs/dc/dd4/structedash__packager_1_1media_1_1mp4_1_1SampleToGroupEntry-members.html @@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/dd9/rsa__key_8cc_source.html b/docs/dc/dd9/rsa__key_8cc_source.html index d91dd99815..9365b7c9ed 100644 --- a/docs/dc/dd9/rsa__key_8cc_source.html +++ b/docs/dc/dd9/rsa__key_8cc_source.html @@ -350,7 +350,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/ddf/classedash__packager_1_1media_1_1WebMInfoParser-members.html b/docs/dc/ddf/classedash__packager_1_1media_1_1WebMInfoParser-members.html index 7fa2024ac1..5a4fb15916 100644 --- a/docs/dc/ddf/classedash__packager_1_1media_1_1WebMInfoParser-members.html +++ b/docs/dc/ddf/classedash__packager_1_1media_1_1WebMInfoParser-members.html @@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/ddf/udp__file__posix_8cc_source.html b/docs/dc/ddf/udp__file__posix_8cc_source.html index 327847a793..57d30bb551 100644 --- a/docs/dc/ddf/udp__file__posix_8cc_source.html +++ b/docs/dc/ddf/udp__file__posix_8cc_source.html @@ -322,7 +322,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/de1/classedash__packager_1_1media_1_1mp4_1_1Segmenter.html b/docs/dc/de1/classedash__packager_1_1media_1_1mp4_1_1Segmenter.html index 45bc248b27..f289fa542f 100644 --- a/docs/dc/de1/classedash__packager_1_1media_1_1mp4_1_1Segmenter.html +++ b/docs/dc/de1/classedash__packager_1_1media_1_1mp4_1_1Segmenter.html @@ -423,7 +423,7 @@ void set_progress_target diff --git a/docs/dc/dec/ts__section__pmt_8cc_source.html b/docs/dc/dec/ts__section__pmt_8cc_source.html index 339c540820..c8affbcb62 100644 --- a/docs/dc/dec/ts__section__pmt_8cc_source.html +++ b/docs/dc/dec/ts__section__pmt_8cc_source.html @@ -207,7 +207,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/def/structedash__packager_1_1media_1_1mp4_1_1DataInformation-members.html b/docs/dc/def/structedash__packager_1_1media_1_1mp4_1_1DataInformation-members.html index 9907fc7633..007aaca8c5 100644 --- a/docs/dc/def/structedash__packager_1_1media_1_1mp4_1_1DataInformation-members.html +++ b/docs/dc/def/structedash__packager_1_1media_1_1mp4_1_1DataInformation-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/df1/classedash__packager_1_1media_1_1DecryptorSource.html b/docs/dc/df1/classedash__packager_1_1media_1_1DecryptorSource.html index 47ff02bc4c..953c440f08 100644 --- a/docs/dc/df1/classedash__packager_1_1media_1_1DecryptorSource.html +++ b/docs/dc/df1/classedash__packager_1_1media_1_1DecryptorSource.html @@ -90,75 +90,36 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); Public Member Functions | List of all members
-
edash_packager::media::DecryptorSource Class Referenceabstract
+
edash_packager::media::DecryptorSource Class Reference
-

DecryptorSource is responsible for decryption key acquisition. +

DecryptorSource wraps KeySource and is responsible for decryptor management. More...

#include <decryptor_source.h>

- - + + + +

Public Member Functions

virtual Status OnNeedKey (MediaContainerName container, const std::string &init_data)=0
 
DecryptorSource (KeySource *key_source)
 
+bool DecryptSampleBuffer (const DecryptConfig *decrypt_config, uint8_t *buffer, size_t buffer_size)
 

Detailed Description

-

DecryptorSource is responsible for decryption key acquisition.

+

DecryptorSource wraps KeySource and is responsible for decryptor management.

-

Definition at line 18 of file decryptor_source.h.

-

Member Function Documentation

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
virtual Status edash_packager::media::DecryptorSource::OnNeedKey (MediaContainerName container,
const std::string & init_data 
)
-
-pure virtual
-
-

NeedKey event handler.

-
Parameters
- - - -
containerindicates the container format.
init_dataspecifies container dependent initialization data that is used to initialize the decryption key.
-
-
-
Returns
OK on success, an adequate status on error.
- -
-
-
The documentation for this class was generated from the following file:

The documentation for this class was generated from the following files:
diff --git a/docs/dc/df8/closure__thread_8h_source.html b/docs/dc/df8/closure__thread_8h_source.html index 6d0fff30b3..0646bf8d58 100644 --- a/docs/dc/df8/closure__thread_8h_source.html +++ b/docs/dc/df8/closure__thread_8h_source.html @@ -127,7 +127,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dc/dfa/classedash__packager_1_1media_1_1ThreadedIoFile.html b/docs/dc/dfa/classedash__packager_1_1media_1_1ThreadedIoFile.html index dccb54c3f9..d755a32649 100644 --- a/docs/dc/dfa/classedash__packager_1_1media_1_1ThreadedIoFile.html +++ b/docs/dc/dfa/classedash__packager_1_1media_1_1ThreadedIoFile.html @@ -438,7 +438,7 @@ Additional Inherited Members diff --git a/docs/dc/dfc/classedash__packager_1_1media_1_1Muxer-members.html b/docs/dc/dfc/classedash__packager_1_1media_1_1Muxer-members.html index 67c8faed02..5e61d8df86 100644 --- a/docs/dc/dfc/classedash__packager_1_1media_1_1Muxer-members.html +++ b/docs/dc/dfc/classedash__packager_1_1media_1_1Muxer-members.html @@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d0c/classedash__packager_1_1media_1_1SegmentTestBase_1_1ClusterParser-members.html b/docs/dd/d0c/classedash__packager_1_1media_1_1SegmentTestBase_1_1ClusterParser-members.html index fb758fd76c..e895be0153 100644 --- a/docs/dd/d0c/classedash__packager_1_1media_1_1SegmentTestBase_1_1ClusterParser-members.html +++ b/docs/dd/d0c/classedash__packager_1_1media_1_1SegmentTestBase_1_1ClusterParser-members.html @@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d0e/classedash__packager_1_1media_1_1mp2t_1_1EsParserH264.html b/docs/dd/d0e/classedash__packager_1_1media_1_1mp2t_1_1EsParserH264.html index a2e884143a..1529cbf173 100644 --- a/docs/dd/d0e/classedash__packager_1_1media_1_1mp2t_1_1EsParserH264.html +++ b/docs/dd/d0e/classedash__packager_1_1media_1_1mp2t_1_1EsParserH264.html @@ -149,7 +149,7 @@ const scoped_refptr
diff --git a/docs/dd/d0e/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPat.html b/docs/dd/d0e/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPat.html index 918cfc26e1..d769ebf5c3 100644 --- a/docs/dd/d0e/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPat.html +++ b/docs/dd/d0e/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPat.html @@ -155,7 +155,7 @@ void Reset () override diff --git a/docs/dd/d11/mpd__builder_8cc_source.html b/docs/dd/d11/mpd__builder_8cc_source.html index 71940e040c..ad93047c4d 100644 --- a/docs/dd/d11/mpd__builder_8cc_source.html +++ b/docs/dd/d11/mpd__builder_8cc_source.html @@ -1503,7 +1503,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d12/mpd__writer_8cc_source.html b/docs/dd/d12/mpd__writer_8cc_source.html index 78f88759fb..c8409178e9 100644 --- a/docs/dd/d12/mpd__writer_8cc_source.html +++ b/docs/dd/d12/mpd__writer_8cc_source.html @@ -224,7 +224,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d12/structedash__packager_1_1media_1_1mp4_1_1CueTimeBox.html b/docs/dd/d12/structedash__packager_1_1media_1_1mp4_1_1CueTimeBox.html index e2f2ab9764..f80f185ab7 100644 --- a/docs/dd/d12/structedash__packager_1_1media_1_1mp4_1_1CueTimeBox.html +++ b/docs/dd/d12/structedash__packager_1_1media_1_1mp4_1_1CueTimeBox.html @@ -173,7 +173,7 @@ Additional Inherited Members diff --git a/docs/dd/d14/structedash__packager_1_1media_1_1mp4_1_1MovieHeader.html b/docs/dd/d14/structedash__packager_1_1media_1_1mp4_1_1MovieHeader.html index a0686e9110..7d53abfece 100644 --- a/docs/dd/d14/structedash__packager_1_1media_1_1mp4_1_1MovieHeader.html +++ b/docs/dd/d14/structedash__packager_1_1media_1_1mp4_1_1MovieHeader.html @@ -200,7 +200,7 @@ Additional Inherited Members diff --git a/docs/dd/d15/structedash__packager_1_1media_1_1mp4_1_1TrackHeader.html b/docs/dd/d15/structedash__packager_1_1media_1_1mp4_1_1TrackHeader.html index 5456394711..cc33e2628e 100644 --- a/docs/dd/d15/structedash__packager_1_1media_1_1mp4_1_1TrackHeader.html +++ b/docs/dd/d15/structedash__packager_1_1media_1_1mp4_1_1TrackHeader.html @@ -215,7 +215,7 @@ Additional Inherited Members diff --git a/docs/dd/d18/es__parser__adts_8h_source.html b/docs/dd/d18/es__parser__adts_8h_source.html index 35369729b7..9cb7a82a2a 100644 --- a/docs/dd/d18/es__parser__adts_8h_source.html +++ b/docs/dd/d18/es__parser__adts_8h_source.html @@ -172,7 +172,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d19/video__stream__info_8cc_source.html b/docs/dd/d19/video__stream__info_8cc_source.html index 9697e1bd58..9201c66bd9 100644 --- a/docs/dd/d19/video__stream__info_8cc_source.html +++ b/docs/dd/d19/video__stream__info_8cc_source.html @@ -197,7 +197,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d1a/classedash__packager_1_1media_1_1H264ByteToUnitStreamConverter-members.html b/docs/dd/d1a/classedash__packager_1_1media_1_1H264ByteToUnitStreamConverter-members.html index bf8510466a..aca61c8092 100644 --- a/docs/dd/d1a/classedash__packager_1_1media_1_1H264ByteToUnitStreamConverter-members.html +++ b/docs/dd/d1a/classedash__packager_1_1media_1_1H264ByteToUnitStreamConverter-members.html @@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d2b/classedash__packager_1_1media_1_1ClosureThread.html b/docs/dd/d2b/classedash__packager_1_1media_1_1ClosureThread.html index a1e897337f..cfe30474cc 100644 --- a/docs/dd/d2b/classedash__packager_1_1media_1_1ClosureThread.html +++ b/docs/dd/d2b/classedash__packager_1_1media_1_1ClosureThread.html @@ -179,7 +179,7 @@ void  diff --git a/docs/dd/d30/wvm__media__parser_8cc_source.html b/docs/dd/d30/wvm__media__parser_8cc_source.html index 488ad4b597..2499ed64cb 100644 --- a/docs/dd/d30/wvm__media__parser_8cc_source.html +++ b/docs/dd/d30/wvm__media__parser_8cc_source.html @@ -1259,7 +1259,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d36/classedash__packager_1_1media_1_1MediaSample-members.html b/docs/dd/d36/classedash__packager_1_1media_1_1MediaSample-members.html index 02e1fd4bf6..1c3e8d5742 100644 --- a/docs/dd/d36/classedash__packager_1_1media_1_1MediaSample-members.html +++ b/docs/dd/d36/classedash__packager_1_1media_1_1MediaSample-members.html @@ -123,7 +123,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d3b/mp4_2segmenter_8h_source.html b/docs/dd/d3b/mp4_2segmenter_8h_source.html index 900ff4d60f..603ffac397 100644 --- a/docs/dd/d3b/mp4_2segmenter_8h_source.html +++ b/docs/dd/d3b/mp4_2segmenter_8h_source.html @@ -219,7 +219,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d41/structedash__packager_1_1media_1_1H264NALU.html b/docs/dd/d41/structedash__packager_1_1media_1_1H264NALU.html index 20387289b2..684ec4e2f4 100644 --- a/docs/dd/d41/structedash__packager_1_1media_1_1H264NALU.html +++ b/docs/dd/d41/structedash__packager_1_1media_1_1H264NALU.html @@ -139,7 +139,7 @@ int nal_unit_type diff --git a/docs/dd/d42/encryptor_8h_source.html b/docs/dd/d42/encryptor_8h_source.html index 119df4803a..e9f0e62b1b 100644 --- a/docs/dd/d42/encryptor_8h_source.html +++ b/docs/dd/d42/encryptor_8h_source.html @@ -151,7 +151,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d44/structedash__packager_1_1media_1_1mp4_1_1SegmentReference-members.html b/docs/dd/d44/structedash__packager_1_1media_1_1mp4_1_1SegmentReference-members.html index e66ef678e0..716a4d47ec 100644 --- a/docs/dd/d44/structedash__packager_1_1media_1_1mp4_1_1SegmentReference-members.html +++ b/docs/dd/d44/structedash__packager_1_1media_1_1mp4_1_1SegmentReference-members.html @@ -111,7 +111,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d46/webm__parser_8h_source.html b/docs/dd/d46/webm__parser_8h_source.html index 55ade50558..5558b42531 100644 --- a/docs/dd/d46/webm__parser_8h_source.html +++ b/docs/dd/d46/webm__parser_8h_source.html @@ -227,7 +227,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d47/classedash__packager_1_1media_1_1WebMInfoParser.html b/docs/dd/d47/classedash__packager_1_1media_1_1WebMInfoParser.html index 6a7adb36aa..945c94a4a2 100644 --- a/docs/dd/d47/classedash__packager_1_1media_1_1WebMInfoParser.html +++ b/docs/dd/d47/classedash__packager_1_1media_1_1WebMInfoParser.html @@ -175,7 +175,7 @@ The number of bytes parsed on success. diff --git a/docs/dd/d4c/structedash__packager_1_1media_1_1mp4_1_1FullBox-members.html b/docs/dd/d4c/structedash__packager_1_1media_1_1mp4_1_1FullBox-members.html index 30d142c6b8..c1e79a6543 100644 --- a/docs/dd/d4c/structedash__packager_1_1media_1_1mp4_1_1FullBox-members.html +++ b/docs/dd/d4c/structedash__packager_1_1media_1_1mp4_1_1FullBox-members.html @@ -110,7 +110,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d4f/classedash__packager_1_1media_1_1mp4_1_1BoxBuffer.html b/docs/dd/d4f/classedash__packager_1_1media_1_1mp4_1_1BoxBuffer.html index f43fa85c85..e02a277536 100644 --- a/docs/dd/d4f/classedash__packager_1_1media_1_1mp4_1_1BoxBuffer.html +++ b/docs/dd/d4f/classedash__packager_1_1media_1_1mp4_1_1BoxBuffer.html @@ -589,7 +589,7 @@ bool ReadWriteInt64 (i diff --git a/docs/dd/d54/widevine__encryption__flags_8h_source.html b/docs/dd/d54/widevine__encryption__flags_8h_source.html index bbc20d9e5f..b166321efa 100644 --- a/docs/dd/d54/widevine__encryption__flags_8h_source.html +++ b/docs/dd/d54/widevine__encryption__flags_8h_source.html @@ -123,7 +123,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d5e/structedash__packager_1_1media_1_1mp4_1_1CuePayloadBox-members.html b/docs/dd/d5e/structedash__packager_1_1media_1_1mp4_1_1CuePayloadBox-members.html index 009297ef41..80397eeb9c 100644 --- a/docs/dd/d5e/structedash__packager_1_1media_1_1mp4_1_1CuePayloadBox-members.html +++ b/docs/dd/d5e/structedash__packager_1_1media_1_1mp4_1_1CuePayloadBox-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d60/structedash__packager_1_1media_1_1mp4_1_1VTTEmptyCueBox-members.html b/docs/dd/d60/structedash__packager_1_1media_1_1mp4_1_1VTTEmptyCueBox-members.html index f54149c891..63b18ae7ac 100644 --- a/docs/dd/d60/structedash__packager_1_1media_1_1mp4_1_1VTTEmptyCueBox-members.html +++ b/docs/dd/d60/structedash__packager_1_1media_1_1mp4_1_1VTTEmptyCueBox-members.html @@ -108,7 +108,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d65/vp8__parser_8h_source.html b/docs/dd/d65/vp8__parser_8h_source.html index 12a80147f7..af70d55f37 100644 --- a/docs/dd/d65/vp8__parser_8h_source.html +++ b/docs/dd/d65/vp8__parser_8h_source.html @@ -136,7 +136,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d67/h264__byte__to__unit__stream__converter_8cc_source.html b/docs/dd/d67/h264__byte__to__unit__stream__converter_8cc_source.html index 34e97ea65c..ea655e175e 100644 --- a/docs/dd/d67/h264__byte__to__unit__stream__converter_8cc_source.html +++ b/docs/dd/d67/h264__byte__to__unit__stream__converter_8cc_source.html @@ -226,7 +226,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d79/classedash__packager_1_1media_1_1AesCtrEncryptor.html b/docs/dd/d79/classedash__packager_1_1media_1_1AesCtrEncryptor.html index 0e27640d66..4c01b7b46b 100644 --- a/docs/dd/d79/classedash__packager_1_1media_1_1AesCtrEncryptor.html +++ b/docs/dd/d79/classedash__packager_1_1media_1_1AesCtrEncryptor.html @@ -255,7 +255,7 @@ bool Encrypt (const st diff --git a/docs/dd/d80/media__sample_8h_source.html b/docs/dd/d80/media__sample_8h_source.html index 7b5b9e9524..c410aa841c 100644 --- a/docs/dd/d80/media__sample_8h_source.html +++ b/docs/dd/d80/media__sample_8h_source.html @@ -260,7 +260,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d85/classedash__packager_1_1xml_1_1XmlNode.html b/docs/dd/d85/classedash__packager_1_1xml_1_1XmlNode.html index 8a43ad4ac0..af3827f1dc 100644 --- a/docs/dd/d85/classedash__packager_1_1xml_1_1XmlNode.html +++ b/docs/dd/d85/classedash__packager_1_1xml_1_1XmlNode.html @@ -419,7 +419,7 @@ bool  diff --git a/docs/dd/d85/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentHeader-members.html b/docs/dd/d85/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentHeader-members.html index d39e80bb1b..59e7efd7a2 100644 --- a/docs/dd/d85/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentHeader-members.html +++ b/docs/dd/d85/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentHeader-members.html @@ -133,7 +133,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d87/memory__file_8cc_source.html b/docs/dd/d87/memory__file_8cc_source.html index f8f8daddea..029ee5b7db 100644 --- a/docs/dd/d87/memory__file_8cc_source.html +++ b/docs/dd/d87/memory__file_8cc_source.html @@ -241,7 +241,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d8c/file__test__util_8h_source.html b/docs/dd/d8c/file__test__util_8h_source.html index 0a68438e30..c3270dfa7c 100644 --- a/docs/dd/d8c/file__test__util_8h_source.html +++ b/docs/dd/d8c/file__test__util_8h_source.html @@ -119,7 +119,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d8e/classedash__packager_1_1media_1_1mp4_1_1KeyRotationFragmenter-members.html b/docs/dd/d8e/classedash__packager_1_1media_1_1mp4_1_1KeyRotationFragmenter-members.html index de1cb79e7e..3ee186ffa9 100644 --- a/docs/dd/d8e/classedash__packager_1_1media_1_1mp4_1_1KeyRotationFragmenter-members.html +++ b/docs/dd/d8e/classedash__packager_1_1media_1_1mp4_1_1KeyRotationFragmenter-members.html @@ -120,7 +120,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/d96/classedash__packager_1_1media_1_1AesCbcCtsDecryptor.html b/docs/dd/d96/classedash__packager_1_1media_1_1AesCbcCtsDecryptor.html index 577b9d9472..c3b6defcd9 100644 --- a/docs/dd/d96/classedash__packager_1_1media_1_1AesCbcCtsDecryptor.html +++ b/docs/dd/d96/classedash__packager_1_1media_1_1AesCbcCtsDecryptor.html @@ -252,7 +252,7 @@ const std::vector< uint8_t > &  diff --git a/docs/dd/d98/classedash__packager_1_1media_1_1LocalFile.html b/docs/dd/d98/classedash__packager_1_1media_1_1LocalFile.html index 81f925b831..5ceabba2f6 100644 --- a/docs/dd/d98/classedash__packager_1_1media_1_1LocalFile.html +++ b/docs/dd/d98/classedash__packager_1_1media_1_1LocalFile.html @@ -502,7 +502,7 @@ bool  diff --git a/docs/dd/d99/classedash__packager_1_1media_1_1WebMMediaParser.html b/docs/dd/d99/classedash__packager_1_1media_1_1WebMMediaParser.html index fd959c9146..3b9754c6f7 100644 --- a/docs/dd/d99/classedash__packager_1_1media_1_1WebMMediaParser.html +++ b/docs/dd/d99/classedash__packager_1_1media_1_1WebMMediaParser.html @@ -154,7 +154,7 @@ track_id, const scoped_refptr

Implements edash_packager::media::MediaParser.

-

Definition at line 42 of file webm_media_parser.cc.

+

Definition at line 44 of file webm_media_parser.cc.

@@ -194,7 +194,7 @@ track_id, const scoped_refptr

Implements edash_packager::media::MediaParser.

-

Definition at line 53 of file webm_media_parser.cc.

+

Definition at line 55 of file webm_media_parser.cc.

@@ -205,7 +205,7 @@ track_id, const scoped_refptr
diff --git a/docs/dd/d9a/audio__timestamp__helper_8h_source.html b/docs/dd/d9a/audio__timestamp__helper_8h_source.html index ad2f2bb9ed..24a33d04f3 100644 --- a/docs/dd/d9a/audio__timestamp__helper_8h_source.html +++ b/docs/dd/d9a/audio__timestamp__helper_8h_source.html @@ -167,7 +167,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/da2/structedash__packager_1_1media_1_1mp4_1_1MovieFragment.html b/docs/dd/da2/structedash__packager_1_1media_1_1mp4_1_1MovieFragment.html index e3a4f3df2d..220c694251 100644 --- a/docs/dd/da2/structedash__packager_1_1media_1_1mp4_1_1MovieFragment.html +++ b/docs/dd/da2/structedash__packager_1_1media_1_1mp4_1_1MovieFragment.html @@ -180,7 +180,7 @@ Additional Inherited Members diff --git a/docs/dd/da6/structedash__packager_1_1media_1_1mp4_1_1SegmentType.html b/docs/dd/da6/structedash__packager_1_1media_1_1mp4_1_1SegmentType.html index 6b36b102ef..2dd32a5e44 100644 --- a/docs/dd/da6/structedash__packager_1_1media_1_1mp4_1_1SegmentType.html +++ b/docs/dd/da6/structedash__packager_1_1media_1_1mp4_1_1SegmentType.html @@ -177,7 +177,7 @@ std::vector< FourCC > < diff --git a/docs/dd/da8/classedash__packager_1_1media_1_1RsaRequestSigner.html b/docs/dd/da8/classedash__packager_1_1media_1_1RsaRequestSigner.html index 5736b4154b..6255bf6038 100644 --- a/docs/dd/da8/classedash__packager_1_1media_1_1RsaRequestSigner.html +++ b/docs/dd/da8/classedash__packager_1_1media_1_1RsaRequestSigner.html @@ -182,7 +182,7 @@ Additional Inherited Members diff --git a/docs/dd/daa/vod__media__info__dump__muxer__listener_8h_source.html b/docs/dd/daa/vod__media__info__dump__muxer__listener_8h_source.html index f35e4bdecb..ddd220605d 100644 --- a/docs/dd/daa/vod__media__info__dump__muxer__listener_8h_source.html +++ b/docs/dd/daa/vod__media__info__dump__muxer__listener_8h_source.html @@ -178,7 +178,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/dab/structedash__packager_1_1media_1_1mp4_1_1SampleToGroupEntry.html b/docs/dd/dab/structedash__packager_1_1media_1_1mp4_1_1SampleToGroupEntry.html index 57bb16c7c1..d7e5254fb3 100644 --- a/docs/dd/dab/structedash__packager_1_1media_1_1mp4_1_1SampleToGroupEntry.html +++ b/docs/dd/dab/structedash__packager_1_1media_1_1mp4_1_1SampleToGroupEntry.html @@ -120,7 +120,7 @@ uint32_t group_description diff --git a/docs/dd/dab/webm__muxer_8h_source.html b/docs/dd/dab/webm__muxer_8h_source.html index 3d2febdd18..2f0833bbec 100644 --- a/docs/dd/dab/webm__muxer_8h_source.html +++ b/docs/dd/dab/webm__muxer_8h_source.html @@ -138,7 +138,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/dad/classedash__packager_1_1media_1_1WebMParserClient-members.html b/docs/dd/dad/classedash__packager_1_1media_1_1WebMParserClient-members.html index 998daf0b95..caff886134 100644 --- a/docs/dd/dad/classedash__packager_1_1media_1_1WebMParserClient-members.html +++ b/docs/dd/dad/classedash__packager_1_1media_1_1WebMParserClient-members.html @@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/dbc/buffer__reader_8cc_source.html b/docs/dd/dbc/buffer__reader_8cc_source.html index b7879f87d6..eacae5ac36 100644 --- a/docs/dd/dbc/buffer__reader_8cc_source.html +++ b/docs/dd/dbc/buffer__reader_8cc_source.html @@ -196,7 +196,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/dbd/classedash__packager_1_1media_1_1AesCtrEncryptor-members.html b/docs/dd/dbd/classedash__packager_1_1media_1_1AesCtrEncryptor-members.html index 26dad698f7..3eab58da3b 100644 --- a/docs/dd/dbd/classedash__packager_1_1media_1_1AesCtrEncryptor-members.html +++ b/docs/dd/dbd/classedash__packager_1_1media_1_1AesCtrEncryptor-members.html @@ -110,7 +110,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/dbd/structedash__packager_1_1media_1_1mp4_1_1MediaInformation.html b/docs/dd/dbd/structedash__packager_1_1media_1_1mp4_1_1MediaInformation.html index 9b13b57fdd..7395466b24 100644 --- a/docs/dd/dbd/structedash__packager_1_1media_1_1mp4_1_1MediaInformation.html +++ b/docs/dd/dbd/structedash__packager_1_1media_1_1mp4_1_1MediaInformation.html @@ -185,7 +185,7 @@ Additional Inherited Members diff --git a/docs/dd/dbf/classedash__packager_1_1MpdNotifier-members.html b/docs/dd/dbf/classedash__packager_1_1MpdNotifier-members.html index 2f674b992b..3c32a6a2b5 100644 --- a/docs/dd/dbf/classedash__packager_1_1MpdNotifier-members.html +++ b/docs/dd/dbf/classedash__packager_1_1MpdNotifier-members.html @@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/dbf/webm__webvtt__parser_8h_source.html b/docs/dd/dbf/webm__webvtt__parser_8h_source.html index aa54b576b1..384fd90bc5 100644 --- a/docs/dd/dbf/webm__webvtt__parser_8h_source.html +++ b/docs/dd/dbf/webm__webvtt__parser_8h_source.html @@ -144,7 +144,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/dc9/structedash__packager_1_1media_1_1mp4_1_1ProtectionSchemeInfo.html b/docs/dd/dc9/structedash__packager_1_1media_1_1mp4_1_1ProtectionSchemeInfo.html index 9b80d377e4..6b75fb2c40 100644 --- a/docs/dd/dc9/structedash__packager_1_1media_1_1mp4_1_1ProtectionSchemeInfo.html +++ b/docs/dd/dc9/structedash__packager_1_1media_1_1mp4_1_1ProtectionSchemeInfo.html @@ -179,7 +179,7 @@ Additional Inherited Members diff --git a/docs/dd/dcb/classedash__packager_1_1MpdNotifierFactory.html b/docs/dd/dcb/classedash__packager_1_1MpdNotifierFactory.html index 74f4a2ee35..0ba4c028f8 100644 --- a/docs/dd/dcb/classedash__packager_1_1MpdNotifierFactory.html +++ b/docs/dd/dcb/classedash__packager_1_1MpdNotifierFactory.html @@ -112,7 +112,7 @@ virtual scoped_ptr< diff --git a/docs/dd/dcf/structedash__packager_1_1media_1_1H264PPS.html b/docs/dd/dcf/structedash__packager_1_1media_1_1H264PPS.html index d8b9fd4bc2..02fc381cfc 100644 --- a/docs/dd/dcf/structedash__packager_1_1media_1_1H264PPS.html +++ b/docs/dd/dcf/structedash__packager_1_1media_1_1H264PPS.html @@ -167,7 +167,7 @@ int second_chroma_qp_index diff --git a/docs/dd/dd2/buffer__writer_8h_source.html b/docs/dd/dd2/buffer__writer_8h_source.html index 08945ac489..9cd2c63405 100644 --- a/docs/dd/dd2/buffer__writer_8h_source.html +++ b/docs/dd/dd2/buffer__writer_8h_source.html @@ -159,7 +159,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/dd3/buffer__writer_8cc_source.html b/docs/dd/dd3/buffer__writer_8cc_source.html index 45f53a3bec..65ff4a02e2 100644 --- a/docs/dd/dd3/buffer__writer_8cc_source.html +++ b/docs/dd/dd3/buffer__writer_8cc_source.html @@ -186,7 +186,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/de7/xml__node_8h_source.html b/docs/dd/de7/xml__node_8h_source.html index 3136f13d66..59373af71e 100644 --- a/docs/dd/de7/xml__node_8h_source.html +++ b/docs/dd/de7/xml__node_8h_source.html @@ -230,7 +230,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/dec/structedash__packager_1_1media_1_1OnMediaEndParameters-members.html b/docs/dd/dec/structedash__packager_1_1media_1_1OnMediaEndParameters-members.html index 936b82c3ed..30c30f354b 100644 --- a/docs/dd/dec/structedash__packager_1_1media_1_1OnMediaEndParameters-members.html +++ b/docs/dd/dec/structedash__packager_1_1media_1_1OnMediaEndParameters-members.html @@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/dee/box__definitions_8cc_source.html b/docs/dd/dee/box__definitions_8cc_source.html index d265f57c62..8fb8f23686 100644 --- a/docs/dd/dee/box__definitions_8cc_source.html +++ b/docs/dd/dee/box__definitions_8cc_source.html @@ -2782,7 +2782,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/def/classedash__packager_1_1media_1_1TextTrackConfig.html b/docs/dd/def/classedash__packager_1_1media_1_1TextTrackConfig.html index 2f7bd4c9e6..98d63f8460 100644 --- a/docs/dd/def/classedash__packager_1_1media_1_1TextTrackConfig.html +++ b/docs/dd/def/classedash__packager_1_1media_1_1TextTrackConfig.html @@ -125,7 +125,7 @@ const std::string & id diff --git a/docs/dd/df2/webm_2multi__segment__segmenter_8h_source.html b/docs/dd/df2/webm_2multi__segment__segmenter_8h_source.html index 0f132ec767..a4396b21db 100644 --- a/docs/dd/df2/webm_2multi__segment__segmenter_8h_source.html +++ b/docs/dd/df2/webm_2multi__segment__segmenter_8h_source.html @@ -149,7 +149,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dd/dfa/structedash__packager_1_1media_1_1MuxerOptions-members.html b/docs/dd/dfa/structedash__packager_1_1media_1_1MuxerOptions-members.html index 19408285b3..3dda0edf4d 100644 --- a/docs/dd/dfa/structedash__packager_1_1media_1_1MuxerOptions-members.html +++ b/docs/dd/dfa/structedash__packager_1_1media_1_1MuxerOptions-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d07/structedash__packager_1_1media_1_1mp4_1_1CueIDBox.html b/docs/de/d07/structedash__packager_1_1media_1_1mp4_1_1CueIDBox.html index 7083091057..dd519c9313 100644 --- a/docs/de/d07/structedash__packager_1_1media_1_1mp4_1_1CueIDBox.html +++ b/docs/de/d07/structedash__packager_1_1media_1_1mp4_1_1CueIDBox.html @@ -173,7 +173,7 @@ Additional Inherited Members diff --git a/docs/de/d0f/local__file_8h_source.html b/docs/de/d0f/local__file_8h_source.html index c353dd37d4..ead3f6752d 100644 --- a/docs/de/d0f/local__file_8h_source.html +++ b/docs/de/d0f/local__file_8h_source.html @@ -152,7 +152,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d12/container__names_8h_source.html b/docs/de/d12/container__names_8h_source.html index a270ca3867..85eb29f99a 100644 --- a/docs/de/d12/container__names_8h_source.html +++ b/docs/de/d12/container__names_8h_source.html @@ -159,7 +159,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d15/media__stream_8cc_source.html b/docs/de/d15/media__stream_8cc_source.html index cd6fce8796..61c80e5391 100644 --- a/docs/de/d15/media__stream_8cc_source.html +++ b/docs/de/d15/media__stream_8cc_source.html @@ -210,7 +210,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d17/cluster__builder_8cc_source.html b/docs/de/d17/cluster__builder_8cc_source.html index 5dc4b31471..0579dd7ecf 100644 --- a/docs/de/d17/cluster__builder_8cc_source.html +++ b/docs/de/d17/cluster__builder_8cc_source.html @@ -330,7 +330,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d18/classedash__packager_1_1media_1_1WebVttMediaParser-members.html b/docs/de/d18/classedash__packager_1_1media_1_1WebVttMediaParser-members.html index 4a8e368faa..2484a32ca3 100644 --- a/docs/de/d18/classedash__packager_1_1media_1_1WebVttMediaParser-members.html +++ b/docs/de/d18/classedash__packager_1_1media_1_1WebVttMediaParser-members.html @@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d19/classedash__packager_1_1media_1_1File.html b/docs/de/d19/classedash__packager_1_1media_1_1File.html index dbcc2b99b5..fdc865a1ae 100644 --- a/docs/de/d19/classedash__packager_1_1media_1_1File.html +++ b/docs/de/d19/classedash__packager_1_1media_1_1File.html @@ -811,7 +811,7 @@ class ThreadedIoFile diff --git a/docs/de/d1e/mp4_2single__segment__segmenter_8cc_source.html b/docs/de/d1e/mp4_2single__segment__segmenter_8cc_source.html index f46961d75f..0fe2256f69 100644 --- a/docs/de/d1e/mp4_2single__segment__segmenter_8cc_source.html +++ b/docs/de/d1e/mp4_2single__segment__segmenter_8cc_source.html @@ -333,7 +333,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d1f/structedash__packager_1_1media_1_1StreamDescriptor.html b/docs/de/d1f/structedash__packager_1_1media_1_1StreamDescriptor.html index eca9bc0e7f..b80bf3efa4 100644 --- a/docs/de/d1f/structedash__packager_1_1media_1_1StreamDescriptor.html +++ b/docs/de/d1f/structedash__packager_1_1media_1_1StreamDescriptor.html @@ -131,7 +131,7 @@ MediaContainerName output_ diff --git a/docs/de/d34/offset__byte__queue_8h_source.html b/docs/de/d34/offset__byte__queue_8h_source.html index fdd3a55d18..343c81ab38 100644 --- a/docs/de/d34/offset__byte__queue_8h_source.html +++ b/docs/de/d34/offset__byte__queue_8h_source.html @@ -143,7 +143,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d3c/macros_8h_source.html b/docs/de/d3c/macros_8h_source.html index aa2012380c..a98d5fcd2e 100644 --- a/docs/de/d3c/macros_8h_source.html +++ b/docs/de/d3c/macros_8h_source.html @@ -144,7 +144,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d3e/buffer__reader_8h_source.html b/docs/de/d3e/buffer__reader_8h_source.html index e7eb6932f8..b785c40a6e 100644 --- a/docs/de/d3e/buffer__reader_8h_source.html +++ b/docs/de/d3e/buffer__reader_8h_source.html @@ -163,7 +163,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d44/structedash__packager_1_1media_1_1mp4_1_1TrackEncryption.html b/docs/de/d44/structedash__packager_1_1media_1_1mp4_1_1TrackEncryption.html index 1979000887..4575680dea 100644 --- a/docs/de/d44/structedash__packager_1_1media_1_1mp4_1_1TrackEncryption.html +++ b/docs/de/d44/structedash__packager_1_1media_1_1mp4_1_1TrackEncryption.html @@ -188,7 +188,7 @@ Additional Inherited Members diff --git a/docs/de/d48/classedash__packager_1_1media_1_1VP8Parser-members.html b/docs/de/d48/classedash__packager_1_1media_1_1VP8Parser-members.html index e6d7b71df5..b318eccabd 100644 --- a/docs/de/d48/classedash__packager_1_1media_1_1VP8Parser-members.html +++ b/docs/de/d48/classedash__packager_1_1media_1_1VP8Parser-members.html @@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d4a/muxer__listener__internal_8h_source.html b/docs/de/d4a/muxer__listener__internal_8h_source.html index 11a930cb88..a5f665352d 100644 --- a/docs/de/d4a/muxer__listener__internal_8h_source.html +++ b/docs/de/d4a/muxer__listener__internal_8h_source.html @@ -144,7 +144,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d4c/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPat-members.html b/docs/de/d4c/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPat-members.html index 5557d84f1c..8b1b90f266 100644 --- a/docs/de/d4c/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPat-members.html +++ b/docs/de/d4c/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPat-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d57/structedash__packager_1_1media_1_1MuxerOptions.html b/docs/de/d57/structedash__packager_1_1media_1_1MuxerOptions.html index 9d4efaa142..53789b4ca0 100644 --- a/docs/de/d57/structedash__packager_1_1media_1_1MuxerOptions.html +++ b/docs/de/d57/structedash__packager_1_1media_1_1MuxerOptions.html @@ -275,7 +275,7 @@ std::string  diff --git a/docs/de/d59/classedash__packager_1_1media_1_1mp2t_1_1EsParserAdts.html b/docs/de/d59/classedash__packager_1_1media_1_1mp2t_1_1EsParserAdts.html index fce9580b50..ccd93920b3 100644 --- a/docs/de/d59/classedash__packager_1_1media_1_1mp2t_1_1EsParserAdts.html +++ b/docs/de/d59/classedash__packager_1_1media_1_1mp2t_1_1EsParserAdts.html @@ -148,7 +148,7 @@ const scoped_refptr
diff --git a/docs/de/d5a/structedash__packager_1_1media_1_1mp4_1_1SchemeType-members.html b/docs/de/d5a/structedash__packager_1_1media_1_1mp4_1_1SchemeType-members.html index db69f04f07..470a42e607 100644 --- a/docs/de/d5a/structedash__packager_1_1media_1_1mp4_1_1SchemeType-members.html +++ b/docs/de/d5a/structedash__packager_1_1media_1_1mp4_1_1SchemeType-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d5b/adts__header_8cc_source.html b/docs/de/d5b/adts__header_8cc_source.html index 743b94bdd8..348057c998 100644 --- a/docs/de/d5b/adts__header_8cc_source.html +++ b/docs/de/d5b/adts__header_8cc_source.html @@ -207,7 +207,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d5c/mpd__flags_8h_source.html b/docs/de/d5c/mpd__flags_8h_source.html index 96ade8d59b..1524d9c9c3 100644 --- a/docs/de/d5c/mpd__flags_8h_source.html +++ b/docs/de/d5c/mpd__flags_8h_source.html @@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d68/structedash__packager_1_1media_1_1mp4_1_1Track-members.html b/docs/de/d68/structedash__packager_1_1media_1_1mp4_1_1Track-members.html index 4c1f6b31e3..51abf7d58f 100644 --- a/docs/de/d68/structedash__packager_1_1media_1_1mp4_1_1Track-members.html +++ b/docs/de/d68/structedash__packager_1_1media_1_1mp4_1_1Track-members.html @@ -112,7 +112,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d6a/classedash__packager_1_1media_1_1webm_1_1WebMMuxer.html b/docs/de/d6a/classedash__packager_1_1media_1_1webm_1_1WebMMuxer.html index 00ea473530..a980b97be5 100644 --- a/docs/de/d6a/classedash__packager_1_1media_1_1webm_1_1WebMMuxer.html +++ b/docs/de/d6a/classedash__packager_1_1media_1_1webm_1_1WebMMuxer.html @@ -179,7 +179,7 @@ base::Clock * clock () diff --git a/docs/de/d6e/language__utils_8h_source.html b/docs/de/d6e/language__utils_8h_source.html index b63d221b6d..6eda441aa7 100644 --- a/docs/de/d6e/language__utils_8h_source.html +++ b/docs/de/d6e/language__utils_8h_source.html @@ -114,7 +114,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d70/http__key__fetcher_8cc_source.html b/docs/de/d70/http__key__fetcher_8cc_source.html index 800f8b68eb..0e3cc2a4df 100644 --- a/docs/de/d70/http__key__fetcher_8cc_source.html +++ b/docs/de/d70/http__key__fetcher_8cc_source.html @@ -238,7 +238,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d77/classedash__packager_1_1media_1_1VodMediaInfoDumpMuxerListener-members.html b/docs/de/d77/classedash__packager_1_1media_1_1VodMediaInfoDumpMuxerListener-members.html index dd7cda911b..3579d30762 100644 --- a/docs/de/d77/classedash__packager_1_1media_1_1VodMediaInfoDumpMuxerListener-members.html +++ b/docs/de/d77/classedash__packager_1_1media_1_1VodMediaInfoDumpMuxerListener-members.html @@ -112,7 +112,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d77/webm__content__encodings__client_8cc_source.html b/docs/de/d77/webm__content__encodings__client_8cc_source.html index 2c5fd25ee2..739811a88a 100644 --- a/docs/de/d77/webm__content__encodings__client_8cc_source.html +++ b/docs/de/d77/webm__content__encodings__client_8cc_source.html @@ -361,7 +361,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d7b/mp4__media__parser_8h_source.html b/docs/de/d7b/mp4__media__parser_8h_source.html index df82863d2e..40fbd8129d 100644 --- a/docs/de/d7b/mp4__media__parser_8h_source.html +++ b/docs/de/d7b/mp4__media__parser_8h_source.html @@ -106,118 +106,107 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
17 #include "packager/base/memory/scoped_ptr.h"
18 #include "packager/base/memory/ref_counted.h"
19 #include "packager/base/memory/scoped_ptr.h"
-
20 #include "packager/media/base/media_parser.h"
-
21 #include "packager/media/base/offset_byte_queue.h"
-
22 
-
23 namespace edash_packager {
-
24 namespace media {
-
25 
-
26 class AesCtrEncryptor;
-
27 class DecryptConfig;
-
28 
-
29 namespace mp4 {
-
30 
-
31 class BoxReader;
-
32 class TrackRunIterator;
-
33 struct Movie;
-
34 struct ProtectionSystemSpecificHeader;
-
35 
-
36 class MP4MediaParser : public MediaParser {
-
37  public:
- -
39  ~MP4MediaParser() override;
-
40 
-
43  void Init(const InitCB& init_cb,
-
44  const NewSampleCB& new_sample_cb,
-
45  KeySource* decryption_key_source) override;
-
46  void Flush() override;
-
47  bool Parse(const uint8_t* buf, int size) override;
-
49 
-
56  bool LoadMoov(const std::string& file_path);
-
57 
-
58  private:
-
59  enum State {
-
60  kWaitingForInit,
-
61  kParsingBoxes,
-
62  kEmittingSamples,
-
63  kError
-
64  };
-
65 
-
66  bool ParseBox(bool* err);
-
67  bool ParseMoov(mp4::BoxReader* reader);
-
68  bool ParseMoof(mp4::BoxReader* reader);
+
20 #include "packager/media/base/decryptor_source.h"
+
21 #include "packager/media/base/media_parser.h"
+
22 #include "packager/media/base/offset_byte_queue.h"
+
23 
+
24 namespace edash_packager {
+
25 namespace media {
+
26 namespace mp4 {
+
27 
+
28 class BoxReader;
+
29 class TrackRunIterator;
+
30 struct Movie;
+
31 struct ProtectionSystemSpecificHeader;
+
32 
+
33 class MP4MediaParser : public MediaParser {
+
34  public:
+ +
36  ~MP4MediaParser() override;
+
37 
+
40  void Init(const InitCB& init_cb,
+
41  const NewSampleCB& new_sample_cb,
+
42  KeySource* decryption_key_source) override;
+
43  void Flush() override;
+
44  bool Parse(const uint8_t* buf, int size) override;
+
46 
+
53  bool LoadMoov(const std::string& file_path);
+
54 
+
55  private:
+
56  enum State {
+
57  kWaitingForInit,
+
58  kParsingBoxes,
+
59  kEmittingSamples,
+
60  kError
+
61  };
+
62 
+
63  bool ParseBox(bool* err);
+
64  bool ParseMoov(mp4::BoxReader* reader);
+
65  bool ParseMoof(mp4::BoxReader* reader);
+
66 
+
67  bool FetchKeysIfNecessary(
+
68  const std::vector<ProtectionSystemSpecificHeader>& headers);
69 
-
70  bool FetchKeysIfNecessary(
-
71  const std::vector<ProtectionSystemSpecificHeader>& headers);
-
72 
-
73  bool DecryptSampleBuffer(const DecryptConfig* decrypt_config,
-
74  uint8_t* buffer,
-
75  size_t buffer_size);
-
76 
-
77  // To retain proper framing, each 'mdat' box must be read; to limit memory
-
78  // usage, the box's data needs to be discarded incrementally as frames are
-
79  // extracted from the stream. This function discards data from the stream up
-
80  // to |offset|, updating the |mdat_tail_| value so that framing can be
-
81  // retained after all 'mdat' information has been read.
-
82  // Returns 'true' on success, 'false' if there was an error.
-
83  bool ReadAndDiscardMDATsUntil(const int64_t offset);
-
84 
-
85  void ChangeState(State new_state);
-
86 
-
87  bool EmitConfigs();
-
88 
-
89  bool EnqueueSample(bool* err);
-
90 
-
91  void Reset();
-
92 
-
93  State state_;
-
94  InitCB init_cb_;
-
95  NewSampleCB new_sample_cb_;
-
96  KeySource* decryption_key_source_;
-
97 
-
98  OffsetByteQueue queue_;
-
99 
-
100  // These two parameters are only valid in the |kEmittingSegments| state.
-
101  //
-
102  // |moof_head_| is the offset of the start of the most recently parsed moof
-
103  // block. All byte offsets in sample information are relative to this offset,
-
104  // as mandated by the Media Source spec.
-
105  int64_t moof_head_;
-
106  // |mdat_tail_| is the stream offset of the end of the current 'mdat' box.
-
107  // Valid iff it is greater than the head of the queue.
-
108  int64_t mdat_tail_;
+
70  // To retain proper framing, each 'mdat' box must be read; to limit memory
+
71  // usage, the box's data needs to be discarded incrementally as frames are
+
72  // extracted from the stream. This function discards data from the stream up
+
73  // to |offset|, updating the |mdat_tail_| value so that framing can be
+
74  // retained after all 'mdat' information has been read.
+
75  // Returns 'true' on success, 'false' if there was an error.
+
76  bool ReadAndDiscardMDATsUntil(const int64_t offset);
+
77 
+
78  void ChangeState(State new_state);
+
79 
+
80  bool EmitConfigs();
+
81 
+
82  bool EnqueueSample(bool* err);
+
83 
+
84  void Reset();
+
85 
+
86  State state_;
+
87  InitCB init_cb_;
+
88  NewSampleCB new_sample_cb_;
+
89  KeySource* decryption_key_source_;
+
90  scoped_ptr<DecryptorSource> decryptor_source_;
+
91 
+
92  OffsetByteQueue queue_;
+
93 
+
94  // These two parameters are only valid in the |kEmittingSegments| state.
+
95  //
+
96  // |moof_head_| is the offset of the start of the most recently parsed moof
+
97  // block. All byte offsets in sample information are relative to this offset,
+
98  // as mandated by the Media Source spec.
+
99  int64_t moof_head_;
+
100  // |mdat_tail_| is the stream offset of the end of the current 'mdat' box.
+
101  // Valid iff it is greater than the head of the queue.
+
102  int64_t mdat_tail_;
+
103 
+
104  scoped_ptr<Movie> moov_;
+
105  scoped_ptr<TrackRunIterator> runs_;
+
106 
+
107  DISALLOW_COPY_AND_ASSIGN(MP4MediaParser);
+
108 };
109 
-
110  scoped_ptr<Movie> moov_;
-
111  scoped_ptr<TrackRunIterator> runs_;
-
112 
-
113  typedef std::map<std::vector<uint8_t>, AesCtrEncryptor*> DecryptorMap;
-
114  DecryptorMap decryptor_map_;
-
115 
-
116  DISALLOW_COPY_AND_ASSIGN(MP4MediaParser);
-
117 };
-
118 
-
119 } // namespace mp4
-
120 } // namespace media
-
121 } // namespace edash_packager
-
122 
-
123 #endif // MEDIA_FORMATS_MP4_MP4_MEDIA_PARSER_H_
- - -
bool Parse(const uint8_t *buf, int size) override
+
110 } // namespace mp4
+
111 } // namespace media
+
112 } // namespace edash_packager
+
113 
+
114 #endif // MEDIA_FORMATS_MP4_MP4_MEDIA_PARSER_H_
+ +
bool Parse(const uint8_t *buf, int size) override
- -
bool LoadMoov(const std::string &file_path)
+ +
bool LoadMoov(const std::string &file_path)
base::Callback< bool(uint32_t track_id, const scoped_refptr< MediaSample > &media_sample)> NewSampleCB
Definition: media_parser.h:43
KeySource is responsible for encryption key acquisition.
Definition: key_source.h:29
base::Callback< void(const std::vector< scoped_refptr< StreamInfo > > &stream_info)> InitCB
Definition: media_parser.h:34
void Init(const InitCB &init_cb, const NewSampleCB &new_sample_cb, KeySource *decryption_key_source) override
-
Class for reading MP4 boxes.
Definition: box_reader.h:24
diff --git a/docs/de/d83/box__definitions__comparison_8h_source.html b/docs/de/d83/box__definitions__comparison_8h_source.html index 50501f4355..6f2c5765e9 100644 --- a/docs/de/d83/box__definitions__comparison_8h_source.html +++ b/docs/de/d83/box__definitions__comparison_8h_source.html @@ -576,7 +576,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d87/structedash__packager_1_1media_1_1mp4_1_1ChunkInfo-members.html b/docs/de/d87/structedash__packager_1_1media_1_1mp4_1_1ChunkInfo-members.html index 974b55dce6..7b0156e4ee 100644 --- a/docs/de/d87/structedash__packager_1_1media_1_1mp4_1_1ChunkInfo-members.html +++ b/docs/de/d87/structedash__packager_1_1media_1_1mp4_1_1ChunkInfo-members.html @@ -99,7 +99,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d8b/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPes.html b/docs/de/d8b/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPes.html index a1b5500d6d..408bc85224 100644 --- a/docs/de/d8b/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPes.html +++ b/docs/de/d8b/classedash__packager_1_1media_1_1mp2t_1_1TsSectionPes.html @@ -142,7 +142,7 @@ Additional Inherited Members diff --git a/docs/de/d8d/structedash__packager_1_1media_1_1H264SliceHeader.html b/docs/de/d8d/structedash__packager_1_1media_1_1H264SliceHeader.html index c4ffe4b018..7b9841199e 100644 --- a/docs/de/d8d/structedash__packager_1_1media_1_1H264SliceHeader.html +++ b/docs/de/d8d/structedash__packager_1_1media_1_1H264SliceHeader.html @@ -276,7 +276,7 @@ int slice_beta_offset_div2 diff --git a/docs/de/d93/classedash__packager_1_1media_1_1ByteQueue-members.html b/docs/de/d93/classedash__packager_1_1media_1_1ByteQueue-members.html index 34539c3101..d3414ce214 100644 --- a/docs/de/d93/classedash__packager_1_1media_1_1ByteQueue-members.html +++ b/docs/de/d93/classedash__packager_1_1media_1_1ByteQueue-members.html @@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d98/classedash__packager_1_1media_1_1WebMAudioClient.html b/docs/de/d98/classedash__packager_1_1media_1_1WebMAudioClient.html index 66f28655fc..4a4c65c0e9 100644 --- a/docs/de/d98/classedash__packager_1_1media_1_1WebMAudioClient.html +++ b/docs/de/d98/classedash__packager_1_1media_1_1WebMAudioClient.html @@ -199,7 +199,7 @@ An empty scoped_refptr if there was unexpected values in the provided parameters diff --git a/docs/de/d9d/classedash__packager_1_1media_1_1TracksBuilder-members.html b/docs/de/d9d/classedash__packager_1_1media_1_1TracksBuilder-members.html index 0cdfc37376..6808b1432e 100644 --- a/docs/de/d9d/classedash__packager_1_1media_1_1TracksBuilder-members.html +++ b/docs/de/d9d/classedash__packager_1_1media_1_1TracksBuilder-members.html @@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/d9e/classedash__packager_1_1media_1_1TextTrack.html b/docs/de/d9e/classedash__packager_1_1media_1_1TextTrack.html index a22565995f..778818f186 100644 --- a/docs/de/d9e/classedash__packager_1_1media_1_1TextTrack.html +++ b/docs/de/d9e/classedash__packager_1_1media_1_1TextTrack.html @@ -109,7 +109,7 @@ virtual void addWebVTTCue< diff --git a/docs/de/da0/classedash__packager_1_1media_1_1AesCbcCtsDecryptor-members.html b/docs/de/da0/classedash__packager_1_1media_1_1AesCbcCtsDecryptor-members.html index a76447700a..85ff126f33 100644 --- a/docs/de/da0/classedash__packager_1_1media_1_1AesCbcCtsDecryptor-members.html +++ b/docs/de/da0/classedash__packager_1_1media_1_1AesCbcCtsDecryptor-members.html @@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/da5/classedash__packager_1_1media_1_1WebMParserClient.html b/docs/de/da5/classedash__packager_1_1media_1_1WebMParserClient.html index 4f69de0b34..790446828c 100644 --- a/docs/de/da5/classedash__packager_1_1media_1_1WebMParserClient.html +++ b/docs/de/da5/classedash__packager_1_1media_1_1WebMParserClient.html @@ -151,7 +151,7 @@ Protected Member Functions diff --git a/docs/de/da6/classedash__packager_1_1media_1_1mp4_1_1DecodingTimeIterator-members.html b/docs/de/da6/classedash__packager_1_1media_1_1mp4_1_1DecodingTimeIterator-members.html index a760eb1e8b..0549940fdb 100644 --- a/docs/de/da6/classedash__packager_1_1media_1_1mp4_1_1DecodingTimeIterator-members.html +++ b/docs/de/da6/classedash__packager_1_1media_1_1mp4_1_1DecodingTimeIterator-members.html @@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/da7/classedash__packager_1_1media_1_1AudioTimestampHelper-members.html b/docs/de/da7/classedash__packager_1_1media_1_1AudioTimestampHelper-members.html index 419e69e5de..8962453e8c 100644 --- a/docs/de/da7/classedash__packager_1_1media_1_1AudioTimestampHelper-members.html +++ b/docs/de/da7/classedash__packager_1_1media_1_1AudioTimestampHelper-members.html @@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/dab/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentRun-members.html b/docs/de/dab/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentRun-members.html index f9f82b50af..5b92c8c836 100644 --- a/docs/de/dab/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentRun-members.html +++ b/docs/de/dab/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentRun-members.html @@ -125,7 +125,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/dad/validate__flag_8cc_source.html b/docs/de/dad/validate__flag_8cc_source.html index ba34d5942a..3e716782cf 100644 --- a/docs/de/dad/validate__flag_8cc_source.html +++ b/docs/de/dad/validate__flag_8cc_source.html @@ -132,7 +132,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/db1/classedash__packager_1_1media_1_1mp4_1_1ESDescriptor.html b/docs/de/db1/classedash__packager_1_1media_1_1mp4_1_1ESDescriptor.html index cb47d1cc2a..f6ef77a244 100644 --- a/docs/de/db1/classedash__packager_1_1media_1_1mp4_1_1ESDescriptor.html +++ b/docs/de/db1/classedash__packager_1_1media_1_1mp4_1_1ESDescriptor.html @@ -181,7 +181,7 @@ bool IsDTS () const diff --git a/docs/de/db4/structedash__packager_1_1media_1_1mp4_1_1SchemeInfo-members.html b/docs/de/db4/structedash__packager_1_1media_1_1mp4_1_1SchemeInfo-members.html index bf5df02c38..a1f0ea792d 100644 --- a/docs/de/db4/structedash__packager_1_1media_1_1mp4_1_1SchemeInfo-members.html +++ b/docs/de/db4/structedash__packager_1_1media_1_1mp4_1_1SchemeInfo-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/dc1/demuxer_8h_source.html b/docs/de/dc1/demuxer_8h_source.html index b044143421..75e3c38b91 100644 --- a/docs/de/dc1/demuxer_8h_source.html +++ b/docs/de/dc1/demuxer_8h_source.html @@ -171,7 +171,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/dc4/structedash__packager_1_1media_1_1mp4_1_1SampleAuxiliaryInformationOffset.html b/docs/de/dc4/structedash__packager_1_1media_1_1mp4_1_1SampleAuxiliaryInformationOffset.html index 9c77a461f7..430b1f1273 100644 --- a/docs/de/dc4/structedash__packager_1_1media_1_1mp4_1_1SampleAuxiliaryInformationOffset.html +++ b/docs/de/dc4/structedash__packager_1_1media_1_1mp4_1_1SampleAuxiliaryInformationOffset.html @@ -182,7 +182,7 @@ Additional Inherited Members diff --git a/docs/de/dcc/mock__mpd__notifier_8cc_source.html b/docs/de/dcc/mock__mpd__notifier_8cc_source.html index eeaadb024f..faba1cd8d6 100644 --- a/docs/de/dcc/mock__mpd__notifier_8cc_source.html +++ b/docs/de/dcc/mock__mpd__notifier_8cc_source.html @@ -98,7 +98,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/dcf/file__closer_8h_source.html b/docs/de/dcf/file__closer_8h_source.html index 0ff25ff615..e45aecd6bb 100644 --- a/docs/de/dcf/file__closer_8h_source.html +++ b/docs/de/dcf/file__closer_8h_source.html @@ -125,7 +125,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/dd4/classedash__packager_1_1media_1_1mp4_1_1MP4Muxer-members.html b/docs/de/dd4/classedash__packager_1_1media_1_1mp4_1_1MP4Muxer-members.html index ea552d57bc..8b72de4932 100644 --- a/docs/de/dd4/classedash__packager_1_1media_1_1mp4_1_1MP4Muxer-members.html +++ b/docs/de/dd4/classedash__packager_1_1media_1_1mp4_1_1MP4Muxer-members.html @@ -116,7 +116,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/dd6/content__protection__element_8h_source.html b/docs/de/dd6/content__protection__element_8h_source.html index c6e1fc8a0a..f9c3abdaad 100644 --- a/docs/de/dd6/content__protection__element_8h_source.html +++ b/docs/de/dd6/content__protection__element_8h_source.html @@ -142,7 +142,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/dd6/muxer__listener__test__helper_8cc_source.html b/docs/de/dd6/muxer__listener__test__helper_8cc_source.html index d8eae980f4..c3b0d85c56 100644 --- a/docs/de/dd6/muxer__listener__test__helper_8cc_source.html +++ b/docs/de/dd6/muxer__listener__test__helper_8cc_source.html @@ -206,7 +206,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/de7/structedash__packager_1_1media_1_1mp4_1_1Media.html b/docs/de/de7/structedash__packager_1_1media_1_1mp4_1_1Media.html index a3f0a1f814..c0c41764fb 100644 --- a/docs/de/de7/structedash__packager_1_1media_1_1mp4_1_1Media.html +++ b/docs/de/de7/structedash__packager_1_1media_1_1mp4_1_1Media.html @@ -179,7 +179,7 @@ Additional Inherited Members diff --git a/docs/de/de9/classedash__packager_1_1media_1_1LibcryptoThreading.html b/docs/de/de9/classedash__packager_1_1media_1_1LibcryptoThreading.html index 1bd9a4bf01..65655d9313 100644 --- a/docs/de/de9/classedash__packager_1_1media_1_1LibcryptoThreading.html +++ b/docs/de/de9/classedash__packager_1_1media_1_1LibcryptoThreading.html @@ -108,7 +108,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/dfa/muxer__listener_8h_source.html b/docs/de/dfa/muxer__listener_8h_source.html index a4a390ef9f..cf8809e71c 100644 --- a/docs/de/dfa/muxer__listener_8h_source.html +++ b/docs/de/dfa/muxer__listener_8h_source.html @@ -204,7 +204,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/dfb/structedash__packager_1_1media_1_1H264ModificationOfPicNum-members.html b/docs/de/dfb/structedash__packager_1_1media_1_1H264ModificationOfPicNum-members.html index 8d4cad3aa5..4825cdf6c2 100644 --- a/docs/de/dfb/structedash__packager_1_1media_1_1H264ModificationOfPicNum-members.html +++ b/docs/de/dfb/structedash__packager_1_1media_1_1H264ModificationOfPicNum-members.html @@ -99,7 +99,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/dfc/classedash__packager_1_1media_1_1mp2t_1_1EsParserH264-members.html b/docs/de/dfc/classedash__packager_1_1media_1_1mp2t_1_1EsParserH264-members.html index 455a95d571..99201db684 100644 --- a/docs/de/dfc/classedash__packager_1_1media_1_1mp2t_1_1EsParserH264-members.html +++ b/docs/de/dfc/classedash__packager_1_1media_1_1mp2t_1_1EsParserH264-members.html @@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/de/dfd/stream__info_8cc_source.html b/docs/de/dfd/stream__info_8cc_source.html index 4742e48903..1db05ad085 100644 --- a/docs/de/dfd/stream__info_8cc_source.html +++ b/docs/de/dfd/stream__info_8cc_source.html @@ -143,7 +143,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/d0c/classedash__packager_1_1media_1_1VPCodecConfiguration-members.html b/docs/df/d0c/classedash__packager_1_1media_1_1VPCodecConfiguration-members.html index 7524fc1c17..64ad60846e 100644 --- a/docs/df/d0c/classedash__packager_1_1media_1_1VPCodecConfiguration-members.html +++ b/docs/df/d0c/classedash__packager_1_1media_1_1VPCodecConfiguration-members.html @@ -131,7 +131,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/d1a/offset__byte__queue_8cc_source.html b/docs/df/d1a/offset__byte__queue_8cc_source.html index 19c3ce6f03..c785581d0a 100644 --- a/docs/df/d1a/offset__byte__queue_8cc_source.html +++ b/docs/df/d1a/offset__byte__queue_8cc_source.html @@ -164,7 +164,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/d1c/composition__offset__iterator_8h_source.html b/docs/df/d1c/composition__offset__iterator_8h_source.html index b9ced1d877..027499757e 100644 --- a/docs/df/d1c/composition__offset__iterator_8h_source.html +++ b/docs/df/d1c/composition__offset__iterator_8h_source.html @@ -147,7 +147,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/d1f/classedash__packager_1_1media_1_1mp4_1_1TrackRunIterator-members.html b/docs/df/d1f/classedash__packager_1_1media_1_1mp4_1_1TrackRunIterator-members.html index 22398e6383..49d557ceaa 100644 --- a/docs/df/d1f/classedash__packager_1_1media_1_1mp4_1_1TrackRunIterator-members.html +++ b/docs/df/d1f/classedash__packager_1_1media_1_1mp4_1_1TrackRunIterator-members.html @@ -122,7 +122,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/d21/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentRun.html b/docs/df/d21/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentRun.html index f105bb43df..3346e826a6 100644 --- a/docs/df/d21/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentRun.html +++ b/docs/df/d21/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentRun.html @@ -212,7 +212,7 @@ Additional Inherited Members diff --git a/docs/df/d22/validate__flag_8h_source.html b/docs/df/d22/validate__flag_8h_source.html index ea95d1c172..6e6ada3a8b 100644 --- a/docs/df/d22/validate__flag_8h_source.html +++ b/docs/df/d22/validate__flag_8h_source.html @@ -120,7 +120,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/d2f/structedash__packager_1_1media_1_1mp4_1_1Language.html b/docs/df/d2f/structedash__packager_1_1media_1_1mp4_1_1Language.html index 5f2e1ec20e..dc15525c46 100644 --- a/docs/df/d2f/structedash__packager_1_1media_1_1mp4_1_1Language.html +++ b/docs/df/d2f/structedash__packager_1_1media_1_1mp4_1_1Language.html @@ -120,7 +120,7 @@ std::string code< diff --git a/docs/df/d30/classedash__packager_1_1media_1_1ContentEncoding.html b/docs/df/d30/classedash__packager_1_1media_1_1ContentEncoding.html index 22da5b03c9..0ab815e8c0 100644 --- a/docs/df/d30/classedash__packager_1_1media_1_1ContentEncoding.html +++ b/docs/df/d30/classedash__packager_1_1media_1_1ContentEncoding.html @@ -208,7 +208,7 @@ Static Public Attributes diff --git a/docs/df/d31/muxer__util_8cc_source.html b/docs/df/d31/muxer__util_8cc_source.html index 63e88a3e46..92ca7078f5 100644 --- a/docs/df/d31/muxer__util_8cc_source.html +++ b/docs/df/d31/muxer__util_8cc_source.html @@ -247,7 +247,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/d32/audio__stream__info_8h_source.html b/docs/df/d32/audio__stream__info_8h_source.html index 19ffd9dff8..b217ba94c4 100644 --- a/docs/df/d32/audio__stream__info_8h_source.html +++ b/docs/df/d32/audio__stream__info_8h_source.html @@ -187,7 +187,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/d3c/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentDecodeTime-members.html b/docs/df/d3c/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentDecodeTime-members.html index c2306d87bf..be1b41de8a 100644 --- a/docs/df/d3c/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentDecodeTime-members.html +++ b/docs/df/d3c/structedash__packager_1_1media_1_1mp4_1_1TrackFragmentDecodeTime-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/d40/classedash__packager_1_1media_1_1Cluster.html b/docs/df/d40/classedash__packager_1_1media_1_1Cluster.html index 762464551c..0d2fa70b4d 100644 --- a/docs/df/d40/classedash__packager_1_1media_1_1Cluster.html +++ b/docs/df/d40/classedash__packager_1_1media_1_1Cluster.html @@ -116,7 +116,7 @@ int size () const diff --git a/docs/df/d43/classedash__packager_1_1media_1_1mp4_1_1Segmenter-members.html b/docs/df/d43/classedash__packager_1_1media_1_1mp4_1_1Segmenter-members.html index 50fd43089b..e049252e6b 100644 --- a/docs/df/d43/classedash__packager_1_1media_1_1mp4_1_1Segmenter-members.html +++ b/docs/df/d43/classedash__packager_1_1media_1_1mp4_1_1Segmenter-members.html @@ -116,7 +116,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/d4e/classedash__packager_1_1media_1_1webm_1_1MultiSegmentSegmenter.html b/docs/df/d4e/classedash__packager_1_1media_1_1webm_1_1MultiSegmentSegmenter.html index 9c3c5aeca1..3cb02a21f6 100644 --- a/docs/df/d4e/classedash__packager_1_1media_1_1webm_1_1MultiSegmentSegmenter.html +++ b/docs/df/d4e/classedash__packager_1_1media_1_1webm_1_1MultiSegmentSegmenter.html @@ -277,7 +277,7 @@ double cluster_length_sec< diff --git a/docs/df/d5b/classedash__packager_1_1media_1_1mp2t_1_1EsParserAdts-members.html b/docs/df/d5b/classedash__packager_1_1media_1_1mp2t_1_1EsParserAdts-members.html index 0f9d8ddde5..cd6df5e370 100644 --- a/docs/df/d5b/classedash__packager_1_1media_1_1mp2t_1_1EsParserAdts-members.html +++ b/docs/df/d5b/classedash__packager_1_1media_1_1mp2t_1_1EsParserAdts-members.html @@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/d5e/classedash__packager_1_1media_1_1mp2t_1_1TsSection-members.html b/docs/df/d5e/classedash__packager_1_1media_1_1mp2t_1_1TsSection-members.html index cb63eb94b8..319734fbd0 100644 --- a/docs/df/d5e/classedash__packager_1_1media_1_1mp2t_1_1TsSection-members.html +++ b/docs/df/d5e/classedash__packager_1_1media_1_1mp2t_1_1TsSection-members.html @@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/d62/structedash__packager_1_1media_1_1mp4_1_1AudioSampleEntry.html b/docs/df/d62/structedash__packager_1_1media_1_1mp4_1_1AudioSampleEntry.html index 288992fc8c..d762a5b1e1 100644 --- a/docs/df/d62/structedash__packager_1_1media_1_1mp4_1_1AudioSampleEntry.html +++ b/docs/df/d62/structedash__packager_1_1media_1_1mp4_1_1AudioSampleEntry.html @@ -203,7 +203,7 @@ Additional Inherited Members diff --git a/docs/df/d6a/structedash__packager_1_1media_1_1mp4_1_1VideoSampleEntry.html b/docs/df/d6a/structedash__packager_1_1media_1_1mp4_1_1VideoSampleEntry.html index 33dc127ae4..14d14dfa32 100644 --- a/docs/df/d6a/structedash__packager_1_1media_1_1mp4_1_1VideoSampleEntry.html +++ b/docs/df/d6a/structedash__packager_1_1media_1_1mp4_1_1VideoSampleEntry.html @@ -194,7 +194,7 @@ Additional Inherited Members diff --git a/docs/df/d6e/structedash__packager_1_1media_1_1mp4_1_1Language-members.html b/docs/df/d6e/structedash__packager_1_1media_1_1mp4_1_1Language-members.html index f8cb63f713..38deb28f25 100644 --- a/docs/df/d6e/structedash__packager_1_1media_1_1mp4_1_1Language-members.html +++ b/docs/df/d6e/structedash__packager_1_1media_1_1mp4_1_1Language-members.html @@ -99,7 +99,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/d76/structedash__packager_1_1media_1_1mp4_1_1SampleToChunk.html b/docs/df/d76/structedash__packager_1_1media_1_1mp4_1_1SampleToChunk.html index f6b51bf97c..08394fc0d7 100644 --- a/docs/df/d76/structedash__packager_1_1media_1_1mp4_1_1SampleToChunk.html +++ b/docs/df/d76/structedash__packager_1_1media_1_1mp4_1_1SampleToChunk.html @@ -182,7 +182,7 @@ Additional Inherited Members diff --git a/docs/df/d7d/webm__info__parser_8cc_source.html b/docs/df/d7d/webm__info__parser_8cc_source.html index 9254adf4eb..f1446bd7d0 100644 --- a/docs/df/d7d/webm__info__parser_8cc_source.html +++ b/docs/df/d7d/webm__info__parser_8cc_source.html @@ -200,7 +200,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/d86/structedash__packager_1_1media_1_1mp4_1_1MovieFragmentHeader.html b/docs/df/d86/structedash__packager_1_1media_1_1mp4_1_1MovieFragmentHeader.html index 69779a30d7..721895492a 100644 --- a/docs/df/d86/structedash__packager_1_1media_1_1mp4_1_1MovieFragmentHeader.html +++ b/docs/df/d86/structedash__packager_1_1media_1_1mp4_1_1MovieFragmentHeader.html @@ -182,7 +182,7 @@ Additional Inherited Members diff --git a/docs/df/d89/classedash__packager_1_1media_1_1SegmentTestBase_1_1ClusterParser.html b/docs/df/d89/classedash__packager_1_1media_1_1SegmentTestBase_1_1ClusterParser.html index e8318e551e..1a2edf9d13 100644 --- a/docs/df/d89/classedash__packager_1_1media_1_1SegmentTestBase_1_1ClusterParser.html +++ b/docs/df/d89/classedash__packager_1_1media_1_1SegmentTestBase_1_1ClusterParser.html @@ -128,7 +128,7 @@ int cluster_count () c diff --git a/docs/df/d8a/vp9__parser_8h_source.html b/docs/df/d8a/vp9__parser_8h_source.html index 841862cf03..19666adcc7 100644 --- a/docs/df/d8a/vp9__parser_8h_source.html +++ b/docs/df/d8a/vp9__parser_8h_source.html @@ -136,7 +136,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/d8a/vpx__parser_8h_source.html b/docs/df/d8a/vpx__parser_8h_source.html index 0423b3c4bc..11deb25aac 100644 --- a/docs/df/d8a/vpx__parser_8h_source.html +++ b/docs/df/d8a/vpx__parser_8h_source.html @@ -145,7 +145,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/d96/xml__node_8cc_source.html b/docs/df/d96/xml__node_8cc_source.html index ddf9d5d094..915da993df 100644 --- a/docs/df/d96/xml__node_8cc_source.html +++ b/docs/df/d96/xml__node_8cc_source.html @@ -475,7 +475,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/da9/classedash__packager_1_1media_1_1mp4_1_1Fragmenter-members.html b/docs/df/da9/classedash__packager_1_1media_1_1mp4_1_1Fragmenter-members.html index 5054a2e72c..65ef374e91 100644 --- a/docs/df/da9/classedash__packager_1_1media_1_1mp4_1_1Fragmenter-members.html +++ b/docs/df/da9/classedash__packager_1_1media_1_1mp4_1_1Fragmenter-members.html @@ -110,7 +110,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/da9/structedash__packager_1_1media_1_1mp4_1_1WebVTTSourceLabelBox.html b/docs/df/da9/structedash__packager_1_1media_1_1mp4_1_1WebVTTSourceLabelBox.html index 89d92fd431..3b17c6cb98 100644 --- a/docs/df/da9/structedash__packager_1_1media_1_1mp4_1_1WebVTTSourceLabelBox.html +++ b/docs/df/da9/structedash__packager_1_1media_1_1mp4_1_1WebVTTSourceLabelBox.html @@ -173,7 +173,7 @@ Additional Inherited Members diff --git a/docs/df/dad/decrypt__config_8h_source.html b/docs/df/dad/decrypt__config_8h_source.html index 100ee32eb3..124f1bc7ea 100644 --- a/docs/df/dad/decrypt__config_8h_source.html +++ b/docs/df/dad/decrypt__config_8h_source.html @@ -113,45 +113,40 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
35  public:
37  static const size_t kDecryptionKeySize = 16;
38 
-
48  DecryptConfig(const std::vector<uint8_t>& key_id,
-
49  const std::vector<uint8_t>& iv,
-
50  const int data_offset,
-
51  const std::vector<SubsampleEntry>& subsamples);
-
52  ~DecryptConfig();
-
53 
-
54  const std::vector<uint8_t>& key_id() const { return key_id_; }
-
55  const std::vector<uint8_t>& iv() const { return iv_; }
-
56  int data_offset() const { return data_offset_; }
-
57  const std::vector<SubsampleEntry>& subsamples() const { return subsamples_; }
+
44  DecryptConfig(const std::vector<uint8_t>& key_id,
+
45  const std::vector<uint8_t>& iv,
+
46  const std::vector<SubsampleEntry>& subsamples);
+
47  ~DecryptConfig();
+
48 
+
49  const std::vector<uint8_t>& key_id() const { return key_id_; }
+
50  const std::vector<uint8_t>& iv() const { return iv_; }
+
51  const std::vector<SubsampleEntry>& subsamples() const { return subsamples_; }
+
52 
+
53  private:
+
54  const std::vector<uint8_t> key_id_;
+
55 
+
56  // Initialization vector.
+
57  const std::vector<uint8_t> iv_;
58 
-
59  private:
-
60  const std::vector<uint8_t> key_id_;
-
61 
-
62  // Initialization vector.
-
63  const std::vector<uint8_t> iv_;
-
64 
-
65  // Amount of data to be discarded before applying subsample information.
-
66  const int data_offset_;
-
67 
-
68  // Subsample information. May be empty for some formats, meaning entire frame
-
69  // (less data ignored by data_offset_) is encrypted.
-
70  const std::vector<SubsampleEntry> subsamples_;
-
71 
-
72  DISALLOW_COPY_AND_ASSIGN(DecryptConfig);
-
73 };
-
74 
-
75 } // namespace media
-
76 } // namespace edash_packager
-
77 
-
78 #endif // MEDIA_BASE_DECRYPT_CONFIG_H_
+
59  // Subsample information. May be empty for some formats, meaning entire frame
+
60  // (less data ignored by data_offset_) is encrypted.
+
61  const std::vector<SubsampleEntry> subsamples_;
+
62 
+
63  DISALLOW_COPY_AND_ASSIGN(DecryptConfig);
+
64 };
+
65 
+
66 } // namespace media
+
67 } // namespace edash_packager
+
68 
+
69 #endif // MEDIA_BASE_DECRYPT_CONFIG_H_
static const size_t kDecryptionKeySize
Keys are always 128 bits.
-
DecryptConfig(const std::vector< uint8_t > &key_id, const std::vector< uint8_t > &iv, const int data_offset, const std::vector< SubsampleEntry > &subsamples)
+
DecryptConfig(const std::vector< uint8_t > &key_id, const std::vector< uint8_t > &iv, const std::vector< SubsampleEntry > &subsamples)
diff --git a/docs/df/db4/classedash__packager_1_1media_1_1BitReader.html b/docs/df/db4/classedash__packager_1_1media_1_1BitReader.html index f2f99e7844..28ef250818 100644 --- a/docs/df/db4/classedash__packager_1_1media_1_1BitReader.html +++ b/docs/df/db4/classedash__packager_1_1media_1_1BitReader.html @@ -362,7 +362,7 @@ template<typename T > diff --git a/docs/df/db8/structedash__packager_1_1media_1_1mp4_1_1AC3Specific-members.html b/docs/df/db8/structedash__packager_1_1media_1_1mp4_1_1AC3Specific-members.html index 35e298308a..040f0d4791 100644 --- a/docs/df/db8/structedash__packager_1_1media_1_1mp4_1_1AC3Specific-members.html +++ b/docs/df/db8/structedash__packager_1_1media_1_1mp4_1_1AC3Specific-members.html @@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/dbc/structedash__packager_1_1media_1_1mp4_1_1ChunkLargeOffset-members.html b/docs/df/dbc/structedash__packager_1_1media_1_1mp4_1_1ChunkLargeOffset-members.html index 4a25099c51..3d3a49637a 100644 --- a/docs/df/dbc/structedash__packager_1_1media_1_1mp4_1_1ChunkLargeOffset-members.html +++ b/docs/df/dbc/structedash__packager_1_1media_1_1mp4_1_1ChunkLargeOffset-members.html @@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/dd1/structedash__packager_1_1media_1_1mp4_1_1FileType-members.html b/docs/df/dd1/structedash__packager_1_1media_1_1mp4_1_1FileType-members.html index 71e082cbc4..a86532edb0 100644 --- a/docs/df/dd1/structedash__packager_1_1media_1_1mp4_1_1FileType-members.html +++ b/docs/df/dd1/structedash__packager_1_1media_1_1mp4_1_1FileType-members.html @@ -111,7 +111,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/dd2/classedash__packager_1_1MockMpdBuilder-members.html b/docs/df/dd2/classedash__packager_1_1MockMpdBuilder-members.html index c8071e2286..943237ad1f 100644 --- a/docs/df/dd2/classedash__packager_1_1MockMpdBuilder-members.html +++ b/docs/df/dd2/classedash__packager_1_1MockMpdBuilder-members.html @@ -112,7 +112,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/dd2/mpd__utils_8h_source.html b/docs/df/dd2/mpd__utils_8h_source.html index 079fa342f3..7441125b4b 100644 --- a/docs/df/dd2/mpd__utils_8h_source.html +++ b/docs/df/dd2/mpd__utils_8h_source.html @@ -165,7 +165,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/dda/structedash__packager_1_1media_1_1Cue.html b/docs/df/dda/structedash__packager_1_1media_1_1Cue.html index d166dc9f29..5831320e07 100644 --- a/docs/df/dda/structedash__packager_1_1media_1_1Cue.html +++ b/docs/df/dda/structedash__packager_1_1media_1_1Cue.html @@ -125,7 +125,7 @@ std::vector< std::string >  diff --git a/docs/df/ddc/webm_2segmenter_8h_source.html b/docs/df/ddc/webm_2segmenter_8h_source.html index 62224d6aed..c534b41b0d 100644 --- a/docs/df/ddc/webm_2segmenter_8h_source.html +++ b/docs/df/ddc/webm_2segmenter_8h_source.html @@ -244,7 +244,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/dde/classedash__packager_1_1media_1_1BufferWriter.html b/docs/df/dde/classedash__packager_1_1media_1_1BufferWriter.html index 7c4519bb8a..16ca1929b1 100644 --- a/docs/df/dde/classedash__packager_1_1media_1_1BufferWriter.html +++ b/docs/df/dde/classedash__packager_1_1media_1_1BufferWriter.html @@ -301,7 +301,7 @@ void AppendInt (int64_ diff --git a/docs/df/dde/ts__section__psi_8cc_source.html b/docs/df/dde/ts__section__psi_8cc_source.html index 97bd64bda8..f8f345faf1 100644 --- a/docs/df/dde/ts__section__psi_8cc_source.html +++ b/docs/df/dde/ts__section__psi_8cc_source.html @@ -228,7 +228,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/de3/structedash__packager_1_1media_1_1mp4_1_1TrackHeader-members.html b/docs/df/de3/structedash__packager_1_1media_1_1mp4_1_1TrackHeader-members.html index e4e47d7aa7..c2e0702b18 100644 --- a/docs/df/de3/structedash__packager_1_1media_1_1mp4_1_1TrackHeader-members.html +++ b/docs/df/de3/structedash__packager_1_1media_1_1mp4_1_1TrackHeader-members.html @@ -125,7 +125,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/de3/text__track__config_8cc_source.html b/docs/df/de3/text__track__config_8cc_source.html index a4f16699d4..50662a1979 100644 --- a/docs/df/de3/text__track__config_8cc_source.html +++ b/docs/df/de3/text__track__config_8cc_source.html @@ -122,7 +122,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/de7/classedash__packager_1_1media_1_1MuxerListener.html b/docs/df/de7/classedash__packager_1_1media_1_1MuxerListener.html index ced0908ebc..3462b0c3ec 100644 --- a/docs/df/de7/classedash__packager_1_1media_1_1MuxerListener.html +++ b/docs/df/de7/classedash__packager_1_1media_1_1MuxerListener.html @@ -177,7 +177,7 @@ virtual void OnNewSegment< diff --git a/docs/df/de9/segment__info_8h_source.html b/docs/df/de9/segment__info_8h_source.html index 76daa2c834..3902ba5cb7 100644 --- a/docs/df/de9/segment__info_8h_source.html +++ b/docs/df/de9/segment__info_8h_source.html @@ -114,7 +114,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/dec/classedash__packager_1_1media_1_1MuxerListener-members.html b/docs/df/dec/classedash__packager_1_1media_1_1MuxerListener-members.html index 7e36073b9f..6d1d9c2c02 100644 --- a/docs/df/dec/classedash__packager_1_1media_1_1MuxerListener-members.html +++ b/docs/df/dec/classedash__packager_1_1media_1_1MuxerListener-members.html @@ -108,7 +108,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/df/df4/classedash__packager_1_1media_1_1SeekHead.html b/docs/df/df4/classedash__packager_1_1media_1_1SeekHead.html index 8b401ff1a1..d5864a61cf 100644 --- a/docs/df/df4/classedash__packager_1_1media_1_1SeekHead.html +++ b/docs/df/df4/classedash__packager_1_1media_1_1SeekHead.html @@ -148,7 +148,7 @@ void set_tracks_pos (u diff --git a/docs/df/dfa/classedash__packager_1_1media_1_1RsaPublicKey-members.html b/docs/df/dfa/classedash__packager_1_1media_1_1RsaPublicKey-members.html index cedc171797..4044edd8f4 100644 --- a/docs/df/dfa/classedash__packager_1_1media_1_1RsaPublicKey-members.html +++ b/docs/df/dfa/classedash__packager_1_1media_1_1RsaPublicKey-members.html @@ -100,7 +100,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search'); diff --git a/docs/dir_2618cd273dea54f184e42d7a562af818.html b/docs/dir_2618cd273dea54f184e42d7a562af818.html index 10e9a0885a..a66db1ecc1 100644 --- a/docs/dir_2618cd273dea54f184e42d7a562af818.html +++ b/docs/dir_2618cd273dea54f184e42d7a562af818.html @@ -140,7 +140,7 @@ Files diff --git a/docs/dir_279fd47bebb21302c25cfb685e84c359.html b/docs/dir_279fd47bebb21302c25cfb685e84c359.html index 6b11900f5b..a833a103c4 100644 --- a/docs/dir_279fd47bebb21302c25cfb685e84c359.html +++ b/docs/dir_279fd47bebb21302c25cfb685e84c359.html @@ -119,7 +119,7 @@ Files diff --git a/docs/dir_2eceb70145328c029a5f43350007537a.html b/docs/dir_2eceb70145328c029a5f43350007537a.html index 718233a5a0..7d751f26af 100644 --- a/docs/dir_2eceb70145328c029a5f43350007537a.html +++ b/docs/dir_2eceb70145328c029a5f43350007537a.html @@ -93,7 +93,7 @@ Files diff --git a/docs/dir_39dc0668bd5a501998f94e8b4e546c71.html b/docs/dir_39dc0668bd5a501998f94e8b4e546c71.html index 1366662f50..c07010b01c 100644 --- a/docs/dir_39dc0668bd5a501998f94e8b4e546c71.html +++ b/docs/dir_39dc0668bd5a501998f94e8b4e546c71.html @@ -99,7 +99,7 @@ Directories diff --git a/docs/dir_3e9291fd7a18fdecc763294cb2628910.html b/docs/dir_3e9291fd7a18fdecc763294cb2628910.html index 46c7c80a04..20c097b896 100644 --- a/docs/dir_3e9291fd7a18fdecc763294cb2628910.html +++ b/docs/dir_3e9291fd7a18fdecc763294cb2628910.html @@ -169,7 +169,7 @@ Files diff --git a/docs/dir_49627ef5ef0630f6cf11dd06344c4cf0.html b/docs/dir_49627ef5ef0630f6cf11dd06344c4cf0.html index 8a44147597..5c362c95ba 100644 --- a/docs/dir_49627ef5ef0630f6cf11dd06344c4cf0.html +++ b/docs/dir_49627ef5ef0630f6cf11dd06344c4cf0.html @@ -93,7 +93,7 @@ Files diff --git a/docs/dir_5039d854a18988ed1f1dbebc120ffbf7.html b/docs/dir_5039d854a18988ed1f1dbebc120ffbf7.html index 6530a3bbba..7fe25f219e 100644 --- a/docs/dir_5039d854a18988ed1f1dbebc120ffbf7.html +++ b/docs/dir_5039d854a18988ed1f1dbebc120ffbf7.html @@ -181,7 +181,7 @@ Files diff --git a/docs/dir_5eb2e460866db0ed29e32d64402e5c22.html b/docs/dir_5eb2e460866db0ed29e32d64402e5c22.html index 0202148b1c..c5583efed2 100644 --- a/docs/dir_5eb2e460866db0ed29e32d64402e5c22.html +++ b/docs/dir_5eb2e460866db0ed29e32d64402e5c22.html @@ -125,7 +125,7 @@ Files diff --git a/docs/dir_65f7acfa8cf3a5f1edc11faa2428b914.html b/docs/dir_65f7acfa8cf3a5f1edc11faa2428b914.html index 0109a7f5a5..821c2f02ef 100644 --- a/docs/dir_65f7acfa8cf3a5f1edc11faa2428b914.html +++ b/docs/dir_65f7acfa8cf3a5f1edc11faa2428b914.html @@ -101,7 +101,7 @@ Directories diff --git a/docs/dir_679a6f4e9fa092b388fc986148018f2a.html b/docs/dir_679a6f4e9fa092b388fc986148018f2a.html index cdc24f21e7..c87d556e40 100644 --- a/docs/dir_679a6f4e9fa092b388fc986148018f2a.html +++ b/docs/dir_679a6f4e9fa092b388fc986148018f2a.html @@ -95,7 +95,7 @@ Files diff --git a/docs/dir_7f5e01ba7faf319a30cabd201b6ef121.html b/docs/dir_7f5e01ba7faf319a30cabd201b6ef121.html index c9655835b9..cab533d036 100644 --- a/docs/dir_7f5e01ba7faf319a30cabd201b6ef121.html +++ b/docs/dir_7f5e01ba7faf319a30cabd201b6ef121.html @@ -93,7 +93,7 @@ Files diff --git a/docs/dir_89dd766eb2df7d7257dbe806a34404af.html b/docs/dir_89dd766eb2df7d7257dbe806a34404af.html index 178609d3b1..5968526edf 100644 --- a/docs/dir_89dd766eb2df7d7257dbe806a34404af.html +++ b/docs/dir_89dd766eb2df7d7257dbe806a34404af.html @@ -93,7 +93,7 @@ Directories diff --git a/docs/dir_aa73376d632f252584a1c0dfbefab2c4.html b/docs/dir_aa73376d632f252584a1c0dfbefab2c4.html index 004cdeb8a5..173c80ad3a 100644 --- a/docs/dir_aa73376d632f252584a1c0dfbefab2c4.html +++ b/docs/dir_aa73376d632f252584a1c0dfbefab2c4.html @@ -109,7 +109,7 @@ Files diff --git a/docs/dir_c6ada2450b25ab5438a4dba6c9b890af.html b/docs/dir_c6ada2450b25ab5438a4dba6c9b890af.html index e560d97ab5..9c4afb6907 100644 --- a/docs/dir_c6ada2450b25ab5438a4dba6c9b890af.html +++ b/docs/dir_c6ada2450b25ab5438a4dba6c9b890af.html @@ -125,6 +125,8 @@ Files   file  decrypt_config.h [code]   +file  decryptor_source.cc [code] +  file  decryptor_source.h [code]   file  demuxer.cc [code] @@ -219,7 +221,7 @@ Files diff --git a/docs/dir_d422163b96683743ed3963d4aac17747.html b/docs/dir_d422163b96683743ed3963d4aac17747.html index 3b457a8420..90b4148632 100644 --- a/docs/dir_d422163b96683743ed3963d4aac17747.html +++ b/docs/dir_d422163b96683743ed3963d4aac17747.html @@ -131,7 +131,7 @@ Files diff --git a/docs/dir_eeaeb49ac3913fcfb450d3ce9cc0141b.html b/docs/dir_eeaeb49ac3913fcfb450d3ce9cc0141b.html index f8fff3e821..7ed65c4e76 100644 --- a/docs/dir_eeaeb49ac3913fcfb450d3ce9cc0141b.html +++ b/docs/dir_eeaeb49ac3913fcfb450d3ce9cc0141b.html @@ -93,7 +93,7 @@ Files diff --git a/docs/dir_f7dcbe7025bbacfc4b9a7dff6ad41d72.html b/docs/dir_f7dcbe7025bbacfc4b9a7dff6ad41d72.html index 5efaa26ade..3b95414354 100644 --- a/docs/dir_f7dcbe7025bbacfc4b9a7dff6ad41d72.html +++ b/docs/dir_f7dcbe7025bbacfc4b9a7dff6ad41d72.html @@ -131,7 +131,7 @@ Files diff --git a/docs/files.html b/docs/files.html index 9a44b32235..41edfc0fa8 100644 --- a/docs/files.html +++ b/docs/files.html @@ -129,51 +129,52 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); ||o*container_names.h ||o*decrypt_config.cc ||o*decrypt_config.h -||o*decryptor_source.h -||o*demuxer.cc -||o*demuxer.h -||o*http_key_fetcher.cc -||o*http_key_fetcher.h -||o*key_fetcher.cc -||o*key_fetcher.h -||o*key_source.cc -||o*key_source.h -||o*limits.h -||o*macros.h -||o*media_parser.h -||o*media_sample.cc -||o*media_sample.h -||o*media_stream.cc -||o*media_stream.h -||o*muxer.cc -||o*muxer.h -||o*muxer_options.cc -||o*muxer_options.h -||o*muxer_util.cc -||o*muxer_util.h -||o*network_util.cc -||o*network_util.h -||o*offset_byte_queue.cc -||o*offset_byte_queue.h -||o*producer_consumer_queue.h -||o*request_signer.cc -||o*request_signer.h -||o*rsa_key.cc -||o*rsa_key.h -||o*status.cc -||o*status.h -||o*stream_info.cc -||o*stream_info.h -||o*text_stream_info.cc -||o*text_stream_info.h -||o*text_track.h -||o*text_track_config.cc -||o*text_track_config.h -||o*timestamp.h -||o*video_stream_info.cc -||o*video_stream_info.h -||o*widevine_key_source.cc -||\*widevine_key_source.h +||o*decryptor_source.cc +||o*decryptor_source.h +||o*demuxer.cc +||o*demuxer.h +||o*http_key_fetcher.cc +||o*http_key_fetcher.h +||o*key_fetcher.cc +||o*key_fetcher.h +||o*key_source.cc +||o*key_source.h +||o*limits.h +||o*macros.h +||o*media_parser.h +||o*media_sample.cc +||o*media_sample.h +||o*media_stream.cc +||o*media_stream.h +||o*muxer.cc +||o*muxer.h +||o*muxer_options.cc +||o*muxer_options.h +||o*muxer_util.cc +||o*muxer_util.h +||o*network_util.cc +||o*network_util.h +||o*offset_byte_queue.cc +||o*offset_byte_queue.h +||o*producer_consumer_queue.h +||o*request_signer.cc +||o*request_signer.h +||o*rsa_key.cc +||o*rsa_key.h +||o*status.cc +||o*status.h +||o*stream_info.cc +||o*stream_info.h +||o*text_stream_info.cc +||o*text_stream_info.h +||o*text_track.h +||o*text_track_config.cc +||o*text_track_config.h +||o*timestamp.h +||o*video_stream_info.cc +||o*video_stream_info.h +||o*widevine_key_source.cc +||\*widevine_key_source.h |o+event ||o*mpd_notify_muxer_listener.cc ||o*mpd_notify_muxer_listener.h @@ -377,7 +378,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions.html b/docs/functions.html index d278be476d..5a2f802a67 100644 --- a/docs/functions.html +++ b/docs/functions.html @@ -214,7 +214,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_b.html b/docs/functions_b.html index edd9aea429..5d98c18dd0 100644 --- a/docs/functions_b.html +++ b/docs/functions_b.html @@ -238,7 +238,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_c.html b/docs/functions_c.html index f8e26a45dc..45c8651b8a 100644 --- a/docs/functions_c.html +++ b/docs/functions_c.html @@ -225,7 +225,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_d.html b/docs/functions_d.html index fbe29b947e..75f11ff468 100644 --- a/docs/functions_d.html +++ b/docs/functions_d.html @@ -133,7 +133,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , edash_packager::media::RsaPrivateKey
  • DecryptConfig() -: edash_packager::media::DecryptConfig +: edash_packager::media::DecryptConfig
  • Delete() : edash_packager::media::File @@ -153,7 +153,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_e.html b/docs/functions_e.html index 621175997d..9e357e34ab 100644 --- a/docs/functions_e.html +++ b/docs/functions_e.html @@ -142,7 +142,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_eval.html b/docs/functions_eval.html index 0324f67eaf..b7028c3930 100644 --- a/docs/functions_eval.html +++ b/docs/functions_eval.html @@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_f.html b/docs/functions_f.html index d81301afad..67e2e95762 100644 --- a/docs/functions_f.html +++ b/docs/functions_f.html @@ -187,7 +187,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func.html b/docs/functions_func.html index 3ec05befc8..f3b22224f7 100644 --- a/docs/functions_func.html +++ b/docs/functions_func.html @@ -214,7 +214,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_b.html b/docs/functions_func_b.html index 213c990f19..41c96eef92 100644 --- a/docs/functions_func_b.html +++ b/docs/functions_func_b.html @@ -235,7 +235,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_c.html b/docs/functions_func_c.html index 0e9246e692..6d6c62f24b 100644 --- a/docs/functions_func_c.html +++ b/docs/functions_func_c.html @@ -225,7 +225,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_d.html b/docs/functions_func_d.html index 8425339241..a1cd6517f6 100644 --- a/docs/functions_func_d.html +++ b/docs/functions_func_d.html @@ -133,7 +133,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , edash_packager::media::RsaPrivateKey
  • DecryptConfig() -: edash_packager::media::DecryptConfig +: edash_packager::media::DecryptConfig
  • Delete() : edash_packager::media::File @@ -153,7 +153,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_e.html b/docs/functions_func_e.html index d122901245..77b77d1c2f 100644 --- a/docs/functions_func_e.html +++ b/docs/functions_func_e.html @@ -142,7 +142,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_f.html b/docs/functions_func_f.html index d5cc19ceae..8b4c61a3c2 100644 --- a/docs/functions_func_f.html +++ b/docs/functions_func_f.html @@ -181,7 +181,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_g.html b/docs/functions_func_g.html index a759ba3c14..cf2a37e39a 100644 --- a/docs/functions_func_g.html +++ b/docs/functions_func_g.html @@ -234,7 +234,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_h.html b/docs/functions_func_h.html index 132884218d..0073e2b7ea 100644 --- a/docs/functions_func_h.html +++ b/docs/functions_func_h.html @@ -141,7 +141,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_i.html b/docs/functions_func_i.html index 775fcd29bf..5dca7f418b 100644 --- a/docs/functions_func_i.html +++ b/docs/functions_func_i.html @@ -200,7 +200,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_k.html b/docs/functions_func_k.html index 8cbbc3e81c..44de9a6bf5 100644 --- a/docs/functions_func_k.html +++ b/docs/functions_func_k.html @@ -128,7 +128,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_l.html b/docs/functions_func_l.html index 167bd33d36..79f3a4d731 100644 --- a/docs/functions_func_l.html +++ b/docs/functions_func_l.html @@ -137,7 +137,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_m.html b/docs/functions_func_m.html index 82d37f7f73..0fe5606dec 100644 --- a/docs/functions_func_m.html +++ b/docs/functions_func_m.html @@ -143,7 +143,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_n.html b/docs/functions_func_n.html index 95a07abc62..7155627077 100644 --- a/docs/functions_func_n.html +++ b/docs/functions_func_n.html @@ -153,7 +153,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_o.html b/docs/functions_func_o.html index 9e47117942..74f4da02a9 100644 --- a/docs/functions_func_o.html +++ b/docs/functions_func_o.html @@ -124,9 +124,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • OnListStart() : edash_packager::media::WebMContentEncodingsClient
  • -
  • OnNeedKey() -: edash_packager::media::DecryptorSource -
  • OnNewSegmentForRepresentation() : edash_packager::AdaptationSet , edash_packager::RepresentationStateChangeListener @@ -164,7 +161,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_p.html b/docs/functions_func_p.html index 79e67f7fa4..f17de53caf 100644 --- a/docs/functions_func_p.html +++ b/docs/functions_func_p.html @@ -206,7 +206,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_r.html b/docs/functions_func_r.html index d1ac9e2519..68da3689e1 100644 --- a/docs/functions_func_r.html +++ b/docs/functions_func_r.html @@ -200,7 +200,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_s.html b/docs/functions_func_s.html index 526ba0c39b..49d8def361 100644 --- a/docs/functions_func_s.html +++ b/docs/functions_func_s.html @@ -262,7 +262,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_t.html b/docs/functions_func_t.html index e4cc30bf4c..97a2d669b7 100644 --- a/docs/functions_func_t.html +++ b/docs/functions_func_t.html @@ -174,7 +174,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_u.html b/docs/functions_func_u.html index 5dfb09cd88..813c478355 100644 --- a/docs/functions_func_u.html +++ b/docs/functions_func_u.html @@ -146,7 +146,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_v.html b/docs/functions_func_v.html index 9a5af64430..bfab9ea21c 100644 --- a/docs/functions_func_v.html +++ b/docs/functions_func_v.html @@ -134,7 +134,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_w.html b/docs/functions_func_w.html index b4c8d7afae..2245dae4e5 100644 --- a/docs/functions_func_w.html +++ b/docs/functions_func_w.html @@ -124,6 +124,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • WaitUntilEmptyOrClosed() : edash_packager::media::IoCache
  • +
  • WebMClusterParser() +: edash_packager::media::WebMClusterParser +
  • WebMListParser() : edash_packager::media::WebMListParser
  • @@ -146,7 +149,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , edash_packager::media::VPCodecConfiguration
  • WriteFromFile() -: edash_packager::media::MkvWriter +: edash_packager::media::MkvWriter
  • WriteHeader() : edash_packager::media::mp4::Box @@ -173,7 +176,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_x.html b/docs/functions_func_x.html index fbaa361606..b0c064cabb 100644 --- a/docs/functions_func_x.html +++ b/docs/functions_func_x.html @@ -128,7 +128,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_func_~.html b/docs/functions_func_~.html index 3a6e6df759..13527d84f1 100644 --- a/docs/functions_func_~.html +++ b/docs/functions_func_~.html @@ -131,7 +131,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_g.html b/docs/functions_g.html index 56ea5c817c..e28ccbf495 100644 --- a/docs/functions_g.html +++ b/docs/functions_g.html @@ -234,7 +234,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_h.html b/docs/functions_h.html index b7cb508a1b..b1f33341b3 100644 --- a/docs/functions_h.html +++ b/docs/functions_h.html @@ -141,7 +141,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_i.html b/docs/functions_i.html index 223691db01..2c06504730 100644 --- a/docs/functions_i.html +++ b/docs/functions_i.html @@ -203,7 +203,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_k.html b/docs/functions_k.html index 5d60fce6f1..f0438667e1 100644 --- a/docs/functions_k.html +++ b/docs/functions_k.html @@ -143,7 +143,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_l.html b/docs/functions_l.html index b0e31b277d..7f0ada493b 100644 --- a/docs/functions_l.html +++ b/docs/functions_l.html @@ -137,7 +137,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_m.html b/docs/functions_m.html index 6d901f3a74..5dddf387c8 100644 --- a/docs/functions_m.html +++ b/docs/functions_m.html @@ -143,7 +143,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_n.html b/docs/functions_n.html index 507dd333b3..a906c75d89 100644 --- a/docs/functions_n.html +++ b/docs/functions_n.html @@ -159,7 +159,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_o.html b/docs/functions_o.html index 08e9109b6f..f13541804d 100644 --- a/docs/functions_o.html +++ b/docs/functions_o.html @@ -124,9 +124,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • OnListStart() : edash_packager::media::WebMContentEncodingsClient
  • -
  • OnNeedKey() -: edash_packager::media::DecryptorSource -
  • OnNewSegmentForRepresentation() : edash_packager::AdaptationSet , edash_packager::RepresentationStateChangeListener @@ -167,7 +164,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_p.html b/docs/functions_p.html index 1e85ed7ab5..e09960704e 100644 --- a/docs/functions_p.html +++ b/docs/functions_p.html @@ -212,7 +212,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_r.html b/docs/functions_r.html index 5222ffb502..d818afd086 100644 --- a/docs/functions_r.html +++ b/docs/functions_r.html @@ -200,7 +200,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_s.html b/docs/functions_s.html index 3d4edc72c8..b87bf41857 100644 --- a/docs/functions_s.html +++ b/docs/functions_s.html @@ -277,7 +277,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_t.html b/docs/functions_t.html index a2cb1e37c4..40f59a3b84 100644 --- a/docs/functions_t.html +++ b/docs/functions_t.html @@ -177,7 +177,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_type.html b/docs/functions_type.html index 22cb0b39f8..9ef71a29fe 100644 --- a/docs/functions_type.html +++ b/docs/functions_type.html @@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_u.html b/docs/functions_u.html index 1ebb788e40..b1951163c6 100644 --- a/docs/functions_u.html +++ b/docs/functions_u.html @@ -146,7 +146,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_v.html b/docs/functions_v.html index 57754cd1f3..3b30121c8c 100644 --- a/docs/functions_v.html +++ b/docs/functions_v.html @@ -134,7 +134,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_vars.html b/docs/functions_vars.html index fb8f8c1ece..2cd2e8cbdc 100644 --- a/docs/functions_vars.html +++ b/docs/functions_vars.html @@ -144,7 +144,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_w.html b/docs/functions_w.html index 261e2c33e7..a249727000 100644 --- a/docs/functions_w.html +++ b/docs/functions_w.html @@ -124,6 +124,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • WaitUntilEmptyOrClosed() : edash_packager::media::IoCache
  • +
  • WebMClusterParser() +: edash_packager::media::WebMClusterParser +
  • WebMListParser() : edash_packager::media::WebMListParser
  • @@ -146,7 +149,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , edash_packager::media::VPCodecConfiguration
  • WriteFromFile() -: edash_packager::media::MkvWriter +: edash_packager::media::MkvWriter
  • WriteHeader() : edash_packager::media::mp4::Box @@ -173,7 +176,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_x.html b/docs/functions_x.html index 1e329d33ef..af8270e4fd 100644 --- a/docs/functions_x.html +++ b/docs/functions_x.html @@ -128,7 +128,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/functions_~.html b/docs/functions_~.html index 51cd0e58e0..7a476ff52f 100644 --- a/docs/functions_~.html +++ b/docs/functions_~.html @@ -131,7 +131,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/hierarchy.html b/docs/hierarchy.html index 9c434fbc1d..b4e686d45d 100644 --- a/docs/hierarchy.html +++ b/docs/hierarchy.html @@ -192,7 +192,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); oCedash_packager::media::mp4::DecodingTime oCedash_packager::media::mp4::DecodingTimeIterator oCedash_packager::media::DecryptConfig -oCedash_packager::media::DecryptorSourceDecryptorSource is responsible for decryption key acquisition +oCedash_packager::media::DecryptorSourceDecryptorSource wraps KeySource and is responsible for decryptor management oCedash_packager::media::Demuxer oCedash_packager::media::wvm::DemuxStreamIdMediaSample oCedash_packager::media::mp4::EditListEntry @@ -335,7 +335,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/index.html b/docs/index.html index 30eabcded1..897c2485c2 100644 --- a/docs/index.html +++ b/docs/index.html @@ -81,7 +81,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/namespacemembers.html b/docs/namespacemembers.html index 71005d7fe6..5cdb94e258 100644 --- a/docs/namespacemembers.html +++ b/docs/namespacemembers.html @@ -124,7 +124,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/namespacemembers_func.html b/docs/namespacemembers_func.html index 0c283e2594..6ef16636e0 100644 --- a/docs/namespacemembers_func.html +++ b/docs/namespacemembers_func.html @@ -124,7 +124,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/namespaces.html b/docs/namespaces.html index fef5e9ff36..c505c6304c 100644 --- a/docs/namespaces.html +++ b/docs/namespaces.html @@ -92,7 +92,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/docs/search/all_10.js b/docs/search/all_10.js index bd937a412c..1282d96019 100644 --- a/docs/search/all_10.js +++ b/docs/search/all_10.js @@ -54,8 +54,8 @@ var searchData= ['setstringattribute',['SetStringAttribute',['../dd/d85/classedash__packager_1_1xml_1_1XmlNode.html#a13806def844e3fd8e8cc0e690f292aab',1,'edash_packager::xml::XmlNode']]], ['simplempdnotifier',['SimpleMpdNotifier',['../db/d56/classedash__packager_1_1SimpleMpdNotifier.html',1,'edash_packager']]], ['single_5fsegment',['single_segment',['../de/d57/structedash__packager_1_1media_1_1MuxerOptions.html#a7542af69b834f3a72e5c5b25f4f0f474',1,'edash_packager::media::MuxerOptions']]], - ['singlesegmentsegmenter',['SingleSegmentSegmenter',['../d0/d03/classedash__packager_1_1media_1_1webm_1_1SingleSegmentSegmenter.html',1,'edash_packager::media::webm']]], ['singlesegmentsegmenter',['SingleSegmentSegmenter',['../da/d75/classedash__packager_1_1media_1_1mp4_1_1SingleSegmentSegmenter.html',1,'edash_packager::media::mp4']]], + ['singlesegmentsegmenter',['SingleSegmentSegmenter',['../d0/d03/classedash__packager_1_1media_1_1webm_1_1SingleSegmentSegmenter.html',1,'edash_packager::media::webm']]], ['size',['Size',['../d5/d02/classedash__packager_1_1media_1_1ProducerConsumerQueue.html#aa502e5cfc6159ded7abb3672cdab8cd5',1,'edash_packager::media::ProducerConsumerQueue::Size()'],['../de/d19/classedash__packager_1_1media_1_1File.html#a1bb2a295cb69b3e51b9cc14969848632',1,'edash_packager::media::File::Size()'],['../dd/d98/classedash__packager_1_1media_1_1LocalFile.html#a8984949196dc5230a8ece08c738a9fd3',1,'edash_packager::media::LocalFile::Size()'],['../d3/d81/classedash__packager_1_1media_1_1MemoryFile.html#a01c8a932b632f130f02f067171f0f4ff',1,'edash_packager::media::MemoryFile::Size()'],['../dc/dfa/classedash__packager_1_1media_1_1ThreadedIoFile.html#af61d3986b87d43e3b5ffd86c86094478',1,'edash_packager::media::ThreadedIoFile::Size()'],['../d8/dc7/classedash__packager_1_1media_1_1UdpFile.html#a8d62376715aee117aa7a225b54be0945',1,'edash_packager::media::UdpFile::Size()'],['../dd/d4f/classedash__packager_1_1media_1_1mp4_1_1BoxBuffer.html#aef7267aa7963866d3dcef4f051f84674',1,'edash_packager::media::mp4::BoxBuffer::Size()']]], ['skipbits',['SkipBits',['../df/db4/classedash__packager_1_1media_1_1BitReader.html#acacb97d71aaae01796b90d27e7cdca0a',1,'edash_packager::media::BitReader']]], ['skipbitsconditional',['SkipBitsConditional',['../df/db4/classedash__packager_1_1media_1_1BitReader.html#a8a7f24cfdc78211fb2c1a0167c8d903e',1,'edash_packager::media::BitReader']]], diff --git a/docs/search/all_14.js b/docs/search/all_14.js index af045cc0b3..a3a6a51a72 100644 --- a/docs/search/all_14.js +++ b/docs/search/all_14.js @@ -3,10 +3,11 @@ var searchData= ['waituntilemptyorclosed',['WaitUntilEmptyOrClosed',['../d3/d6b/classedash__packager_1_1media_1_1IoCache.html#ace4946f4ecb34f84c4750d276404a3e5',1,'edash_packager::media::IoCache']]], ['webmaudioclient',['WebMAudioClient',['../de/d98/classedash__packager_1_1media_1_1WebMAudioClient.html',1,'edash_packager::media']]], ['webmclusterparser',['WebMClusterParser',['../db/da0/classedash__packager_1_1media_1_1WebMClusterParser.html',1,'edash_packager::media']]], + ['webmclusterparser',['WebMClusterParser',['../db/da0/classedash__packager_1_1media_1_1WebMClusterParser.html#af420883e77742b0256f11d53ac7ca42d',1,'edash_packager::media::WebMClusterParser']]], ['webmcontentencodingsclient',['WebMContentEncodingsClient',['../d8/d78/classedash__packager_1_1media_1_1WebMContentEncodingsClient.html',1,'edash_packager::media']]], ['webminfoparser',['WebMInfoParser',['../dd/d47/classedash__packager_1_1media_1_1WebMInfoParser.html',1,'edash_packager::media']]], - ['webmlistparser',['WebMListParser',['../d6/dd6/classedash__packager_1_1media_1_1WebMListParser.html#ac259917babda572b9c37e92acdd2c00d',1,'edash_packager::media::WebMListParser']]], ['webmlistparser',['WebMListParser',['../d6/dd6/classedash__packager_1_1media_1_1WebMListParser.html',1,'edash_packager::media']]], + ['webmlistparser',['WebMListParser',['../d6/dd6/classedash__packager_1_1media_1_1WebMListParser.html#ac259917babda572b9c37e92acdd2c00d',1,'edash_packager::media::WebMListParser']]], ['webmmediaparser',['WebMMediaParser',['../dd/d99/classedash__packager_1_1media_1_1WebMMediaParser.html',1,'edash_packager::media']]], ['webmmuxer',['WebMMuxer',['../de/d6a/classedash__packager_1_1media_1_1webm_1_1WebMMuxer.html#ad5b45ced96d661f2304fc9f84de74813',1,'edash_packager::media::webm::WebMMuxer']]], ['webmmuxer',['WebMMuxer',['../de/d6a/classedash__packager_1_1media_1_1webm_1_1WebMMuxer.html',1,'edash_packager::media::webm']]], diff --git a/docs/search/all_3.js b/docs/search/all_3.js index a02c612fee..e500118b07 100644 --- a/docs/search/all_3.js +++ b/docs/search/all_3.js @@ -11,7 +11,7 @@ var searchData= ['decodingtimetosample',['DecodingTimeToSample',['../dc/db7/structedash__packager_1_1media_1_1mp4_1_1DecodingTimeToSample.html',1,'edash_packager::media::mp4']]], ['decrypt',['Decrypt',['../db/dfe/classedash__packager_1_1media_1_1AesCbcPkcs5Decryptor.html#a99992a6413029b81074735a74ce392e3',1,'edash_packager::media::AesCbcPkcs5Decryptor::Decrypt()'],['../dd/d96/classedash__packager_1_1media_1_1AesCbcCtsDecryptor.html#ab4401816a4dbae48500ce4e8f011c511',1,'edash_packager::media::AesCbcCtsDecryptor::Decrypt(const uint8_t *ciphertext, size_t size, uint8_t *plaintext)'],['../dd/d96/classedash__packager_1_1media_1_1AesCbcCtsDecryptor.html#a07ead5ae4cff840782578f123a79c5e8',1,'edash_packager::media::AesCbcCtsDecryptor::Decrypt(const std::vector< uint8_t > &ciphertext, std::vector< uint8_t > *plaintext)'],['../d5/d62/classedash__packager_1_1media_1_1RsaPrivateKey.html#a5356e2154dfc0707df39f603932ed96b',1,'edash_packager::media::RsaPrivateKey::Decrypt()']]], ['decryptconfig',['DecryptConfig',['../d4/da1/classedash__packager_1_1media_1_1DecryptConfig.html',1,'edash_packager::media']]], - ['decryptconfig',['DecryptConfig',['../d4/da1/classedash__packager_1_1media_1_1DecryptConfig.html#a8241c75bb72af0b2de61ae1e276692ed',1,'edash_packager::media::DecryptConfig']]], + ['decryptconfig',['DecryptConfig',['../d4/da1/classedash__packager_1_1media_1_1DecryptConfig.html#a271d0e6319a0542e00a2dd7005293bd2',1,'edash_packager::media::DecryptConfig']]], ['decryptorsource',['DecryptorSource',['../dc/df1/classedash__packager_1_1media_1_1DecryptorSource.html',1,'edash_packager::media']]], ['delete',['Delete',['../de/d19/classedash__packager_1_1media_1_1File.html#a7e0fcd3c439e810e8e17baf32dcc75af',1,'edash_packager::media::File::Delete()'],['../dd/d98/classedash__packager_1_1media_1_1LocalFile.html#a95e4a5eff87224c9a156b5e2c7824cb9',1,'edash_packager::media::LocalFile::Delete()'],['../d3/d81/classedash__packager_1_1media_1_1MemoryFile.html#a039f71274ee7607087a43d3be67fd6f8',1,'edash_packager::media::MemoryFile::Delete()']]], ['deleteall',['DeleteAll',['../d3/d81/classedash__packager_1_1media_1_1MemoryFile.html#a85b276d2b2d58c6b6a4d599906a510de',1,'edash_packager::media::MemoryFile']]], diff --git a/docs/search/all_d.js b/docs/search/all_d.js index b99e6b72cf..b6ea3890a8 100644 --- a/docs/search/all_d.js +++ b/docs/search/all_d.js @@ -3,7 +3,6 @@ var searchData= ['offsetbytequeue',['OffsetByteQueue',['../d1/d92/classedash__packager_1_1media_1_1OffsetByteQueue.html',1,'edash_packager::media']]], ['onliststart',['OnListStart',['../d8/d78/classedash__packager_1_1media_1_1WebMContentEncodingsClient.html#a373c4683227bade5618140c330932d3f',1,'edash_packager::media::WebMContentEncodingsClient']]], ['onmediaendparameters',['OnMediaEndParameters',['../d3/de7/structedash__packager_1_1media_1_1OnMediaEndParameters.html',1,'edash_packager::media']]], - ['onneedkey',['OnNeedKey',['../dc/df1/classedash__packager_1_1media_1_1DecryptorSource.html#a635b0367a1903f3a0afb1ca931f1274a',1,'edash_packager::media::DecryptorSource']]], ['onnewsegmentforrepresentation',['OnNewSegmentForRepresentation',['../db/de4/classedash__packager_1_1AdaptationSet.html#aed9c81cd32d8bbb8ed71d5ab3f16efac',1,'edash_packager::AdaptationSet::OnNewSegmentForRepresentation()'],['../d2/dfa/classedash__packager_1_1RepresentationStateChangeListener.html#a555f268d74e4c70afd067ffe2e6ca64e',1,'edash_packager::RepresentationStateChangeListener::OnNewSegmentForRepresentation()']]], ['onprogress',['OnProgress',['../d9/d2c/classedash__packager_1_1media_1_1ProgressListener.html#a2e30994077f8798d56f61ee20fd9a776',1,'edash_packager::media::ProgressListener']]], ['onsampledurationready',['OnSampleDurationReady',['../d3/d0e/classedash__packager_1_1media_1_1MpdNotifyMuxerListener.html#a0d5eb925ea47fb5656c05becb980d17d',1,'edash_packager::media::MpdNotifyMuxerListener::OnSampleDurationReady()'],['../df/de7/classedash__packager_1_1media_1_1MuxerListener.html#a5626ff553138db438c561db2ca0d05f2',1,'edash_packager::media::MuxerListener::OnSampleDurationReady()'],['../d9/db4/classedash__packager_1_1media_1_1VodMediaInfoDumpMuxerListener.html#a2229a8631ae24fc7f253f5a0b1fb6bab',1,'edash_packager::media::VodMediaInfoDumpMuxerListener::OnSampleDurationReady()']]], diff --git a/docs/search/classes_e.js b/docs/search/classes_e.js index ae9a73af35..8b32369782 100644 --- a/docs/search/classes_e.js +++ b/docs/search/classes_e.js @@ -22,8 +22,8 @@ var searchData= ['segmenttestbase',['SegmentTestBase',['../d2/d28/classedash__packager_1_1media_1_1SegmentTestBase.html',1,'edash_packager::media']]], ['segmenttype',['SegmentType',['../dd/da6/structedash__packager_1_1media_1_1mp4_1_1SegmentType.html',1,'edash_packager::media::mp4']]], ['simplempdnotifier',['SimpleMpdNotifier',['../db/d56/classedash__packager_1_1SimpleMpdNotifier.html',1,'edash_packager']]], - ['singlesegmentsegmenter',['SingleSegmentSegmenter',['../d0/d03/classedash__packager_1_1media_1_1webm_1_1SingleSegmentSegmenter.html',1,'edash_packager::media::webm']]], ['singlesegmentsegmenter',['SingleSegmentSegmenter',['../da/d75/classedash__packager_1_1media_1_1mp4_1_1SingleSegmentSegmenter.html',1,'edash_packager::media::mp4']]], + ['singlesegmentsegmenter',['SingleSegmentSegmenter',['../d0/d03/classedash__packager_1_1media_1_1webm_1_1SingleSegmentSegmenter.html',1,'edash_packager::media::webm']]], ['soundmediaheader',['SoundMediaHeader',['../da/db0/structedash__packager_1_1media_1_1mp4_1_1SoundMediaHeader.html',1,'edash_packager::media::mp4']]], ['status',['Status',['../d2/d90/classedash__packager_1_1media_1_1Status.html',1,'edash_packager::media']]], ['streamdescriptor',['StreamDescriptor',['../de/d1f/structedash__packager_1_1media_1_1StreamDescriptor.html',1,'edash_packager::media']]], diff --git a/docs/search/functions_14.js b/docs/search/functions_14.js index 062d7dddbc..1e8d5d2dbc 100644 --- a/docs/search/functions_14.js +++ b/docs/search/functions_14.js @@ -1,6 +1,7 @@ var searchData= [ ['waituntilemptyorclosed',['WaitUntilEmptyOrClosed',['../d3/d6b/classedash__packager_1_1media_1_1IoCache.html#ace4946f4ecb34f84c4750d276404a3e5',1,'edash_packager::media::IoCache']]], + ['webmclusterparser',['WebMClusterParser',['../db/da0/classedash__packager_1_1media_1_1WebMClusterParser.html#af420883e77742b0256f11d53ac7ca42d',1,'edash_packager::media::WebMClusterParser']]], ['webmlistparser',['WebMListParser',['../d6/dd6/classedash__packager_1_1media_1_1WebMListParser.html#ac259917babda572b9c37e92acdd2c00d',1,'edash_packager::media::WebMListParser']]], ['webmmuxer',['WebMMuxer',['../de/d6a/classedash__packager_1_1media_1_1webm_1_1WebMMuxer.html#ad5b45ced96d661f2304fc9f84de74813',1,'edash_packager::media::webm::WebMMuxer']]], ['widevinekeysource',['WidevineKeySource',['../db/da4/classedash__packager_1_1media_1_1WidevineKeySource.html#a78ebb07ba8a23086ec81839b16472857',1,'edash_packager::media::WidevineKeySource']]], diff --git a/docs/search/functions_3.js b/docs/search/functions_3.js index c525b83ca0..107f776da0 100644 --- a/docs/search/functions_3.js +++ b/docs/search/functions_3.js @@ -3,7 +3,7 @@ var searchData= ['dash_5fprofile',['dash_profile',['../da/d38/classedash__packager_1_1MpdNotifier.html#ad49d92e75fcbb2ad1d5e43cd3d0716f7',1,'edash_packager::MpdNotifier']]], ['decodingtimeiterator',['DecodingTimeIterator',['../d4/d90/classedash__packager_1_1media_1_1mp4_1_1DecodingTimeIterator.html#a23d155e855c769a50114d0a720b6aac0',1,'edash_packager::media::mp4::DecodingTimeIterator']]], ['decrypt',['Decrypt',['../db/dfe/classedash__packager_1_1media_1_1AesCbcPkcs5Decryptor.html#a99992a6413029b81074735a74ce392e3',1,'edash_packager::media::AesCbcPkcs5Decryptor::Decrypt()'],['../dd/d96/classedash__packager_1_1media_1_1AesCbcCtsDecryptor.html#ab4401816a4dbae48500ce4e8f011c511',1,'edash_packager::media::AesCbcCtsDecryptor::Decrypt(const uint8_t *ciphertext, size_t size, uint8_t *plaintext)'],['../dd/d96/classedash__packager_1_1media_1_1AesCbcCtsDecryptor.html#a07ead5ae4cff840782578f123a79c5e8',1,'edash_packager::media::AesCbcCtsDecryptor::Decrypt(const std::vector< uint8_t > &ciphertext, std::vector< uint8_t > *plaintext)'],['../d5/d62/classedash__packager_1_1media_1_1RsaPrivateKey.html#a5356e2154dfc0707df39f603932ed96b',1,'edash_packager::media::RsaPrivateKey::Decrypt()']]], - ['decryptconfig',['DecryptConfig',['../d4/da1/classedash__packager_1_1media_1_1DecryptConfig.html#a8241c75bb72af0b2de61ae1e276692ed',1,'edash_packager::media::DecryptConfig']]], + ['decryptconfig',['DecryptConfig',['../d4/da1/classedash__packager_1_1media_1_1DecryptConfig.html#a271d0e6319a0542e00a2dd7005293bd2',1,'edash_packager::media::DecryptConfig']]], ['delete',['Delete',['../de/d19/classedash__packager_1_1media_1_1File.html#a7e0fcd3c439e810e8e17baf32dcc75af',1,'edash_packager::media::File::Delete()'],['../dd/d98/classedash__packager_1_1media_1_1LocalFile.html#a95e4a5eff87224c9a156b5e2c7824cb9',1,'edash_packager::media::LocalFile::Delete()'],['../d3/d81/classedash__packager_1_1media_1_1MemoryFile.html#a039f71274ee7607087a43d3be67fd6f8',1,'edash_packager::media::MemoryFile::Delete()']]], ['deleteall',['DeleteAll',['../d3/d81/classedash__packager_1_1media_1_1MemoryFile.html#a85b276d2b2d58c6b6a4d599906a510de',1,'edash_packager::media::MemoryFile']]], ['demuxer',['Demuxer',['../d5/dce/classedash__packager_1_1media_1_1Demuxer.html#a5305b2b16956b7ab973eeded4232226e',1,'edash_packager::media::Demuxer']]], diff --git a/docs/search/functions_d.js b/docs/search/functions_d.js index c66eccb66e..9f71874d03 100644 --- a/docs/search/functions_d.js +++ b/docs/search/functions_d.js @@ -1,7 +1,6 @@ var searchData= [ ['onliststart',['OnListStart',['../d8/d78/classedash__packager_1_1media_1_1WebMContentEncodingsClient.html#a373c4683227bade5618140c330932d3f',1,'edash_packager::media::WebMContentEncodingsClient']]], - ['onneedkey',['OnNeedKey',['../dc/df1/classedash__packager_1_1media_1_1DecryptorSource.html#a635b0367a1903f3a0afb1ca931f1274a',1,'edash_packager::media::DecryptorSource']]], ['onnewsegmentforrepresentation',['OnNewSegmentForRepresentation',['../db/de4/classedash__packager_1_1AdaptationSet.html#aed9c81cd32d8bbb8ed71d5ab3f16efac',1,'edash_packager::AdaptationSet::OnNewSegmentForRepresentation()'],['../d2/dfa/classedash__packager_1_1RepresentationStateChangeListener.html#a555f268d74e4c70afd067ffe2e6ca64e',1,'edash_packager::RepresentationStateChangeListener::OnNewSegmentForRepresentation()']]], ['onprogress',['OnProgress',['../d9/d2c/classedash__packager_1_1media_1_1ProgressListener.html#a2e30994077f8798d56f61ee20fd9a776',1,'edash_packager::media::ProgressListener']]], ['onsampledurationready',['OnSampleDurationReady',['../d3/d0e/classedash__packager_1_1media_1_1MpdNotifyMuxerListener.html#a0d5eb925ea47fb5656c05becb980d17d',1,'edash_packager::media::MpdNotifyMuxerListener::OnSampleDurationReady()'],['../df/de7/classedash__packager_1_1media_1_1MuxerListener.html#a5626ff553138db438c561db2ca0d05f2',1,'edash_packager::media::MuxerListener::OnSampleDurationReady()'],['../d9/db4/classedash__packager_1_1media_1_1VodMediaInfoDumpMuxerListener.html#a2229a8631ae24fc7f253f5a0b1fb6bab',1,'edash_packager::media::VodMediaInfoDumpMuxerListener::OnSampleDurationReady()']]],