Generate SDK documents for commit 8f2cd6da91

This commit is contained in:
Widevine Buildbot 2017-03-08 19:14:10 +00:00
parent 6ae6af8c7f
commit 8b73b4cfc8
1019 changed files with 5865 additions and 6125 deletions

View File

@ -260,103 +260,102 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<tr id="row_0_0_35_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/d9b/classshaka_1_1media_1_1MediaHandlerTestBase.html" target="_self">MediaHandlerTestBase</a></td><td class="desc"></td></tr>
<tr id="row_0_0_36_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d3/d0a/classshaka_1_1media_1_1MediaParser.html" target="_self">MediaParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_37_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d7/d6d/classshaka_1_1media_1_1MediaSample.html" target="_self">MediaSample</a></td><td class="desc">Class to hold a media sample </td></tr>
<tr id="row_0_0_38_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d8/d5c/classshaka_1_1media_1_1MediaStream.html" target="_self">MediaStream</a></td><td class="desc"></td></tr>
<tr id="row_0_0_39_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="df/d46/classshaka_1_1media_1_1Muxer.html" target="_self">Muxer</a></td><td class="desc"></td></tr>
<tr id="row_0_0_40_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d0/d27/structshaka_1_1media_1_1MuxerOptions.html" target="_self">MuxerOptions</a></td><td class="desc">This structure contains the list of configuration options for <a class="el" href="df/d46/classshaka_1_1media_1_1Muxer.html">Muxer</a> </td></tr>
<tr id="row_0_0_41_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/df9/classshaka_1_1media_1_1OffsetByteQueue.html" target="_self">OffsetByteQueue</a></td><td class="desc"></td></tr>
<tr id="row_0_0_42_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/da6/classshaka_1_1media_1_1PlayReadyKeySource.html" target="_self">PlayReadyKeySource</a></td><td class="desc">A key source that uses playready for encryption </td></tr>
<tr id="row_0_0_43_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d5/d33/classshaka_1_1media_1_1ProducerConsumerQueue.html" target="_self">ProducerConsumerQueue</a></td><td class="desc"></td></tr>
<tr id="row_0_0_44_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d0/dd4/classshaka_1_1media_1_1ProtectionSystemSpecificInfo.html" target="_self">ProtectionSystemSpecificInfo</a></td><td class="desc"></td></tr>
<tr id="row_0_0_45_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="df/d3c/classshaka_1_1media_1_1RequestSigner.html" target="_self">RequestSigner</a></td><td class="desc">Abstract class used for signature generation </td></tr>
<tr id="row_0_0_46_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/d8c/classshaka_1_1media_1_1AesRequestSigner.html" target="_self">AesRequestSigner</a></td><td class="desc"><a class="el" href="d9/d8c/classshaka_1_1media_1_1AesRequestSigner.html" title="AesRequestSigner uses AES-CBC signing. ">AesRequestSigner</a> uses AES-CBC signing </td></tr>
<tr id="row_0_0_47_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d7/ddd/classshaka_1_1media_1_1RsaRequestSigner.html" target="_self">RsaRequestSigner</a></td><td class="desc"><a class="el" href="d7/ddd/classshaka_1_1media_1_1RsaRequestSigner.html" title="RsaRequestSigner uses RSA-PSS signing. ">RsaRequestSigner</a> uses RSA-PSS signing </td></tr>
<tr id="row_0_0_48_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d0/dce/classshaka_1_1media_1_1RsaPrivateKey.html" target="_self">RsaPrivateKey</a></td><td class="desc">Rsa private key, used for message signing and decryption </td></tr>
<tr id="row_0_0_49_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/d0c/classshaka_1_1media_1_1RsaPublicKey.html" target="_self">RsaPublicKey</a></td><td class="desc">Rsa public key, used for signature verification and encryption </td></tr>
<tr id="row_0_0_50_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d0/d93/classshaka_1_1media_1_1Status.html" target="_self">Status</a></td><td class="desc"></td></tr>
<tr id="row_0_0_51_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d5/db1/classshaka_1_1media_1_1StreamInfo.html" target="_self">StreamInfo</a></td><td class="desc">Abstract class holds stream information </td></tr>
<tr id="row_0_0_52_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/dab/classshaka_1_1media_1_1TextStreamInfo.html" target="_self">TextStreamInfo</a></td><td class="desc"></td></tr>
<tr id="row_0_0_53_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/d0b/classshaka_1_1media_1_1TextTrack.html" target="_self">TextTrack</a></td><td class="desc"></td></tr>
<tr id="row_0_0_54_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="de/db3/classshaka_1_1media_1_1TextTrackConfig.html" target="_self">TextTrackConfig</a></td><td class="desc"></td></tr>
<tr id="row_0_0_55_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d6/db1/classshaka_1_1media_1_1VideoStreamInfo.html" target="_self">VideoStreamInfo</a></td><td class="desc">Holds video stream information </td></tr>
<tr id="row_0_0_56_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="da/ddd/classshaka_1_1media_1_1WidevineKeySource.html" target="_self">WidevineKeySource</a></td><td class="desc"></td></tr>
<tr id="row_0_0_57_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/d02/structshaka_1_1media_1_1ChunkingOptions.html" target="_self">ChunkingOptions</a></td><td class="desc"></td></tr>
<tr id="row_0_0_58_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/d43/classshaka_1_1media_1_1ChunkingHandler.html" target="_self">ChunkingHandler</a></td><td class="desc"></td></tr>
<tr id="row_0_0_59_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d0/da2/classshaka_1_1media_1_1AACAudioSpecificConfig.html" target="_self">AACAudioSpecificConfig</a></td><td class="desc"></td></tr>
<tr id="row_0_0_60_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d6/d57/classshaka_1_1media_1_1AVCDecoderConfigurationRecord.html" target="_self">AVCDecoderConfigurationRecord</a></td><td class="desc">Class for parsing AVC decoder configuration record </td></tr>
<tr id="row_0_0_61_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="de/de0/classshaka_1_1media_1_1DecoderConfigurationRecord.html" target="_self">DecoderConfigurationRecord</a></td><td class="desc"></td></tr>
<tr id="row_0_0_62_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d5/d13/classshaka_1_1media_1_1ESDescriptor.html" target="_self">ESDescriptor</a></td><td class="desc"></td></tr>
<tr id="row_0_0_63_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d8/d08/classshaka_1_1media_1_1H264ByteToUnitStreamConverter.html" target="_self">H264ByteToUnitStreamConverter</a></td><td class="desc"></td></tr>
<tr id="row_0_0_64_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d1/d0a/structshaka_1_1media_1_1H264Sps.html" target="_self">H264Sps</a></td><td class="desc"></td></tr>
<tr id="row_0_0_65_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="de/de4/structshaka_1_1media_1_1H264Pps.html" target="_self">H264Pps</a></td><td class="desc"></td></tr>
<tr id="row_0_0_66_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/dff/structshaka_1_1media_1_1H264ModificationOfPicNum.html" target="_self">H264ModificationOfPicNum</a></td><td class="desc"></td></tr>
<tr id="row_0_0_67_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/d4c/structshaka_1_1media_1_1H264WeightingFactors.html" target="_self">H264WeightingFactors</a></td><td class="desc"></td></tr>
<tr id="row_0_0_68_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dc/d54/structshaka_1_1media_1_1H264DecRefPicMarking.html" target="_self">H264DecRefPicMarking</a></td><td class="desc"></td></tr>
<tr id="row_0_0_69_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d2/d59/structshaka_1_1media_1_1H264SliceHeader.html" target="_self">H264SliceHeader</a></td><td class="desc"></td></tr>
<tr id="row_0_0_70_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="df/de2/structshaka_1_1media_1_1H264SEIRecoveryPoint.html" target="_self">H264SEIRecoveryPoint</a></td><td class="desc"></td></tr>
<tr id="row_0_0_71_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d6/dd0/structshaka_1_1media_1_1H264SEIMessage.html" target="_self">H264SEIMessage</a></td><td class="desc"></td></tr>
<tr id="row_0_0_72_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d3/d91/classshaka_1_1media_1_1H264Parser.html" target="_self">H264Parser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_73_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/df8/classshaka_1_1media_1_1H265ByteToUnitStreamConverter.html" target="_self">H265ByteToUnitStreamConverter</a></td><td class="desc"></td></tr>
<tr id="row_0_0_74_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d5/dad/structshaka_1_1media_1_1H265ReferencePictureSet.html" target="_self">H265ReferencePictureSet</a></td><td class="desc"></td></tr>
<tr id="row_0_0_75_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/d67/structshaka_1_1media_1_1H265VuiParameters.html" target="_self">H265VuiParameters</a></td><td class="desc"></td></tr>
<tr id="row_0_0_76_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="de/d33/structshaka_1_1media_1_1H265Pps.html" target="_self">H265Pps</a></td><td class="desc"></td></tr>
<tr id="row_0_0_77_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/dfd/structshaka_1_1media_1_1H265Sps.html" target="_self">H265Sps</a></td><td class="desc"></td></tr>
<tr id="row_0_0_78_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d5/d9d/structshaka_1_1media_1_1H265ReferencePictureListModifications.html" target="_self">H265ReferencePictureListModifications</a></td><td class="desc"></td></tr>
<tr id="row_0_0_79_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_0_0_79_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('0_0_79_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/d05/structshaka_1_1media_1_1H265SliceHeader.html" target="_self">H265SliceHeader</a></td><td class="desc"></td></tr>
<tr id="row_0_0_79_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d7/d9c/structshaka_1_1media_1_1H265SliceHeader_1_1LongTermPicsInfo.html" target="_self">LongTermPicsInfo</a></td><td class="desc"></td></tr>
<tr id="row_0_0_80_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="de/dc2/classshaka_1_1media_1_1H265Parser.html" target="_self">H265Parser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_81_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="de/db4/classshaka_1_1media_1_1H26xBitReader.html" target="_self">H26xBitReader</a></td><td class="desc"></td></tr>
<tr id="row_0_0_82_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="de/dea/classshaka_1_1media_1_1H26xByteToUnitStreamConverter.html" target="_self">H26xByteToUnitStreamConverter</a></td><td class="desc">A base class that is used to convert H.26x byte streams to NAL unit streams </td></tr>
<tr id="row_0_0_83_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/d8a/classshaka_1_1media_1_1HEVCDecoderConfigurationRecord.html" target="_self">HEVCDecoderConfigurationRecord</a></td><td class="desc">Class for parsing HEVC decoder configuration record </td></tr>
<tr id="row_0_0_84_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d5/d66/classshaka_1_1media_1_1NalUnitToByteStreamConverter.html" target="_self">NalUnitToByteStreamConverter</a></td><td class="desc"></td></tr>
<tr id="row_0_0_85_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d6/dff/classshaka_1_1media_1_1Nalu.html" target="_self">Nalu</a></td><td class="desc"></td></tr>
<tr id="row_0_0_86_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/d86/classshaka_1_1media_1_1NaluReader.html" target="_self">NaluReader</a></td><td class="desc"></td></tr>
<tr id="row_0_0_87_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dd/de4/classshaka_1_1media_1_1VideoSliceHeaderParser.html" target="_self">VideoSliceHeaderParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_88_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="da/df0/classshaka_1_1media_1_1H264VideoSliceHeaderParser.html" target="_self">H264VideoSliceHeaderParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_89_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d1/d79/classshaka_1_1media_1_1H265VideoSliceHeaderParser.html" target="_self">H265VideoSliceHeaderParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_90_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d8/d14/classshaka_1_1media_1_1VP8Parser.html" target="_self">VP8Parser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_91_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/d5a/classshaka_1_1media_1_1VP9Parser.html" target="_self">VP9Parser</a></td><td class="desc">Class to parse a vp9 bit stream </td></tr>
<tr id="row_0_0_92_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d1/da5/classshaka_1_1media_1_1VPCodecConfigurationRecord.html" target="_self">VPCodecConfigurationRecord</a></td><td class="desc">Class for parsing or writing VP codec configuration record </td></tr>
<tr id="row_0_0_93_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d0/d11/structshaka_1_1media_1_1VPxFrameInfo.html" target="_self">VPxFrameInfo</a></td><td class="desc"></td></tr>
<tr id="row_0_0_94_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/dcb/classshaka_1_1media_1_1VPxParser.html" target="_self">VPxParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_95_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d6/d82/structshaka_1_1media_1_1EncryptionOptions.html" target="_self">EncryptionOptions</a></td><td class="desc">This structure defines encryption options </td></tr>
<tr id="row_0_0_96_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d6/d4c/classshaka_1_1media_1_1EncryptionHandler.html" target="_self">EncryptionHandler</a></td><td class="desc"></td></tr>
<tr id="row_0_0_97_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d5/dfa/classshaka_1_1media_1_1HlsNotifyMuxerListener.html" target="_self">HlsNotifyMuxerListener</a></td><td class="desc"><a class="el" href="dd/d7a/classshaka_1_1media_1_1MuxerListener.html">MuxerListener</a> that uses HlsNotifier </td></tr>
<tr id="row_0_0_98_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dc/d73/classshaka_1_1media_1_1MockMuxerListener.html" target="_self">MockMuxerListener</a></td><td class="desc"></td></tr>
<tr id="row_0_0_99_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/da5/classshaka_1_1media_1_1MpdNotifyMuxerListener.html" target="_self">MpdNotifyMuxerListener</a></td><td class="desc"></td></tr>
<tr id="row_0_0_100_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dd/d7a/classshaka_1_1media_1_1MuxerListener.html" target="_self">MuxerListener</a></td><td class="desc"></td></tr>
<tr id="row_0_0_101_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d6/d26/structshaka_1_1media_1_1VideoStreamInfoParameters.html" target="_self">VideoStreamInfoParameters</a></td><td class="desc"></td></tr>
<tr id="row_0_0_102_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/db8/structshaka_1_1media_1_1OnMediaEndParameters.html" target="_self">OnMediaEndParameters</a></td><td class="desc"></td></tr>
<tr id="row_0_0_103_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/de6/classshaka_1_1media_1_1ProgressListener.html" target="_self">ProgressListener</a></td><td class="desc">This class listens to progress updates events </td></tr>
<tr id="row_0_0_104_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/dd0/classshaka_1_1media_1_1VodMediaInfoDumpMuxerListener.html" target="_self">VodMediaInfoDumpMuxerListener</a></td><td class="desc"></td></tr>
<tr id="row_0_0_105_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d3/d61/classshaka_1_1media_1_1File.html" target="_self">File</a></td><td class="desc">Define an abstract file interface </td></tr>
<tr id="row_0_0_106_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d3/d8b/structshaka_1_1media_1_1FileCloser.html" target="_self">FileCloser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_107_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dd/d7c/classshaka_1_1media_1_1IoCache.html" target="_self">IoCache</a></td><td class="desc">Declaration of class which implements a thread-safe circular buffer </td></tr>
<tr id="row_0_0_108_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/de6/classshaka_1_1media_1_1LocalFile.html" target="_self">LocalFile</a></td><td class="desc">Implement <a class="el" href="d9/de6/classshaka_1_1media_1_1LocalFile.html" title="Implement LocalFile which deals with local storage. ">LocalFile</a> which deals with local storage </td></tr>
<tr id="row_0_0_109_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/dbd/classshaka_1_1media_1_1MemoryFile.html" target="_self">MemoryFile</a></td><td class="desc"></td></tr>
<tr id="row_0_0_110_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d0/d66/classshaka_1_1media_1_1ThreadedIoFile.html" target="_self">ThreadedIoFile</a></td><td class="desc">Declaration of class which implements a thread-safe circular buffer </td></tr>
<tr id="row_0_0_111_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d7/d7a/classshaka_1_1media_1_1UdpFile.html" target="_self">UdpFile</a></td><td class="desc">Implements <a class="el" href="d7/d7a/classshaka_1_1media_1_1UdpFile.html" title="Implements UdpFile, which receives UDP unicast and multicast streams. ">UdpFile</a>, which receives UDP unicast and multicast streams </td></tr>
<tr id="row_0_0_112_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/d8e/classshaka_1_1media_1_1UdpOptions.html" target="_self">UdpOptions</a></td><td class="desc">Options parsed from UDP url string of the form: udp://ip:port[?options] </td></tr>
<tr id="row_0_0_113_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d1/dd5/classshaka_1_1media_1_1Cluster.html" target="_self">Cluster</a></td><td class="desc"></td></tr>
<tr id="row_0_0_114_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/d94/classshaka_1_1media_1_1ClusterBuilder.html" target="_self">ClusterBuilder</a></td><td class="desc"></td></tr>
<tr id="row_0_0_115_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d1/d0a/classshaka_1_1media_1_1MkvWriter.html" target="_self">MkvWriter</a></td><td class="desc">An implementation of IMkvWriter using our <a class="el" href="d3/d61/classshaka_1_1media_1_1File.html" title="Define an abstract file interface. ">File</a> type </td></tr>
<tr id="row_0_0_116_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dc/d16/classshaka_1_1media_1_1SeekHead.html" target="_self">SeekHead</a></td><td class="desc"></td></tr>
<tr id="row_0_0_117_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_0_0_117_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('0_0_117_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d2/dba/classshaka_1_1media_1_1SegmentTestBase.html" target="_self">SegmentTestBase</a></td><td class="desc"></td></tr>
<tr id="row_0_0_117_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d2/df8/classshaka_1_1media_1_1SegmentTestBase_1_1ClusterParser.html" target="_self">ClusterParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_118_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d8/d74/classshaka_1_1media_1_1TracksBuilder.html" target="_self">TracksBuilder</a></td><td class="desc"></td></tr>
<tr id="row_0_0_119_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d3/d7c/classshaka_1_1media_1_1WebMAudioClient.html" target="_self">WebMAudioClient</a></td><td class="desc">Helper class used to parse an Audio element inside a TrackEntry element </td></tr>
<tr id="row_0_0_120_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="da/de4/classshaka_1_1media_1_1WebMClusterParser.html" target="_self">WebMClusterParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_121_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dc/da6/classshaka_1_1media_1_1ContentEncoding.html" target="_self">ContentEncoding</a></td><td class="desc"></td></tr>
<tr id="row_0_0_122_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/d87/classshaka_1_1media_1_1WebMContentEncodingsClient.html" target="_self">WebMContentEncodingsClient</a></td><td class="desc">Parser for WebM ContentEncodings element </td></tr>
<tr id="row_0_0_123_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/dae/classshaka_1_1media_1_1WebMInfoParser.html" target="_self">WebMInfoParser</a></td><td class="desc">Parser for WebM Info element </td></tr>
<tr id="row_0_0_124_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d2/ddb/classshaka_1_1media_1_1WebMMediaParser.html" target="_self">WebMMediaParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_125_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d5/dec/classshaka_1_1media_1_1WebMParserClient.html" target="_self">WebMParserClient</a></td><td class="desc"></td></tr>
<tr id="row_0_0_126_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dc/dca/classshaka_1_1media_1_1WebMListParser.html" target="_self">WebMListParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_127_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d8/d86/classshaka_1_1media_1_1WebMTracksParser.html" target="_self">WebMTracksParser</a></td><td class="desc">Parser for WebM Tracks element </td></tr>
<tr id="row_0_0_128_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d3/d67/classshaka_1_1media_1_1WebMVideoClient.html" target="_self">WebMVideoClient</a></td><td class="desc">Helper class used to parse a Video element inside a TrackEntry element </td></tr>
<tr id="row_0_0_129_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/d59/classshaka_1_1media_1_1WebMWebVTTParser.html" target="_self">WebMWebVTTParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_130_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dd/dce/structshaka_1_1media_1_1Cue.html" target="_self">Cue</a></td><td class="desc"></td></tr>
<tr id="row_0_0_131_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dc/df2/classshaka_1_1media_1_1WebVttMediaParser.html" target="_self">WebVttMediaParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_132_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="de/ddd/classshaka_1_1media_1_1WebVttSampleConverter.html" target="_self">WebVttSampleConverter</a></td><td class="desc"></td></tr>
<tr id="row_0_0_38_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="df/d46/classshaka_1_1media_1_1Muxer.html" target="_self">Muxer</a></td><td class="desc"></td></tr>
<tr id="row_0_0_39_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d0/d27/structshaka_1_1media_1_1MuxerOptions.html" target="_self">MuxerOptions</a></td><td class="desc">This structure contains the list of configuration options for <a class="el" href="df/d46/classshaka_1_1media_1_1Muxer.html">Muxer</a> </td></tr>
<tr id="row_0_0_40_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/df9/classshaka_1_1media_1_1OffsetByteQueue.html" target="_self">OffsetByteQueue</a></td><td class="desc"></td></tr>
<tr id="row_0_0_41_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/da6/classshaka_1_1media_1_1PlayReadyKeySource.html" target="_self">PlayReadyKeySource</a></td><td class="desc">A key source that uses playready for encryption </td></tr>
<tr id="row_0_0_42_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d5/d33/classshaka_1_1media_1_1ProducerConsumerQueue.html" target="_self">ProducerConsumerQueue</a></td><td class="desc"></td></tr>
<tr id="row_0_0_43_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d0/dd4/classshaka_1_1media_1_1ProtectionSystemSpecificInfo.html" target="_self">ProtectionSystemSpecificInfo</a></td><td class="desc"></td></tr>
<tr id="row_0_0_44_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="df/d3c/classshaka_1_1media_1_1RequestSigner.html" target="_self">RequestSigner</a></td><td class="desc">Abstract class used for signature generation </td></tr>
<tr id="row_0_0_45_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/d8c/classshaka_1_1media_1_1AesRequestSigner.html" target="_self">AesRequestSigner</a></td><td class="desc"><a class="el" href="d9/d8c/classshaka_1_1media_1_1AesRequestSigner.html" title="AesRequestSigner uses AES-CBC signing. ">AesRequestSigner</a> uses AES-CBC signing </td></tr>
<tr id="row_0_0_46_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d7/ddd/classshaka_1_1media_1_1RsaRequestSigner.html" target="_self">RsaRequestSigner</a></td><td class="desc"><a class="el" href="d7/ddd/classshaka_1_1media_1_1RsaRequestSigner.html" title="RsaRequestSigner uses RSA-PSS signing. ">RsaRequestSigner</a> uses RSA-PSS signing </td></tr>
<tr id="row_0_0_47_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d0/dce/classshaka_1_1media_1_1RsaPrivateKey.html" target="_self">RsaPrivateKey</a></td><td class="desc">Rsa private key, used for message signing and decryption </td></tr>
<tr id="row_0_0_48_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/d0c/classshaka_1_1media_1_1RsaPublicKey.html" target="_self">RsaPublicKey</a></td><td class="desc">Rsa public key, used for signature verification and encryption </td></tr>
<tr id="row_0_0_49_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d0/d93/classshaka_1_1media_1_1Status.html" target="_self">Status</a></td><td class="desc"></td></tr>
<tr id="row_0_0_50_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d5/db1/classshaka_1_1media_1_1StreamInfo.html" target="_self">StreamInfo</a></td><td class="desc">Abstract class holds stream information </td></tr>
<tr id="row_0_0_51_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/dab/classshaka_1_1media_1_1TextStreamInfo.html" target="_self">TextStreamInfo</a></td><td class="desc"></td></tr>
<tr id="row_0_0_52_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/d0b/classshaka_1_1media_1_1TextTrack.html" target="_self">TextTrack</a></td><td class="desc"></td></tr>
<tr id="row_0_0_53_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="de/db3/classshaka_1_1media_1_1TextTrackConfig.html" target="_self">TextTrackConfig</a></td><td class="desc"></td></tr>
<tr id="row_0_0_54_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d6/db1/classshaka_1_1media_1_1VideoStreamInfo.html" target="_self">VideoStreamInfo</a></td><td class="desc">Holds video stream information </td></tr>
<tr id="row_0_0_55_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="da/ddd/classshaka_1_1media_1_1WidevineKeySource.html" target="_self">WidevineKeySource</a></td><td class="desc"></td></tr>
<tr id="row_0_0_56_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/d02/structshaka_1_1media_1_1ChunkingOptions.html" target="_self">ChunkingOptions</a></td><td class="desc"></td></tr>
<tr id="row_0_0_57_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/d43/classshaka_1_1media_1_1ChunkingHandler.html" target="_self">ChunkingHandler</a></td><td class="desc"></td></tr>
<tr id="row_0_0_58_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d0/da2/classshaka_1_1media_1_1AACAudioSpecificConfig.html" target="_self">AACAudioSpecificConfig</a></td><td class="desc"></td></tr>
<tr id="row_0_0_59_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d6/d57/classshaka_1_1media_1_1AVCDecoderConfigurationRecord.html" target="_self">AVCDecoderConfigurationRecord</a></td><td class="desc">Class for parsing AVC decoder configuration record </td></tr>
<tr id="row_0_0_60_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="de/de0/classshaka_1_1media_1_1DecoderConfigurationRecord.html" target="_self">DecoderConfigurationRecord</a></td><td class="desc"></td></tr>
<tr id="row_0_0_61_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d5/d13/classshaka_1_1media_1_1ESDescriptor.html" target="_self">ESDescriptor</a></td><td class="desc"></td></tr>
<tr id="row_0_0_62_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d8/d08/classshaka_1_1media_1_1H264ByteToUnitStreamConverter.html" target="_self">H264ByteToUnitStreamConverter</a></td><td class="desc"></td></tr>
<tr id="row_0_0_63_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d1/d0a/structshaka_1_1media_1_1H264Sps.html" target="_self">H264Sps</a></td><td class="desc"></td></tr>
<tr id="row_0_0_64_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="de/de4/structshaka_1_1media_1_1H264Pps.html" target="_self">H264Pps</a></td><td class="desc"></td></tr>
<tr id="row_0_0_65_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/dff/structshaka_1_1media_1_1H264ModificationOfPicNum.html" target="_self">H264ModificationOfPicNum</a></td><td class="desc"></td></tr>
<tr id="row_0_0_66_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/d4c/structshaka_1_1media_1_1H264WeightingFactors.html" target="_self">H264WeightingFactors</a></td><td class="desc"></td></tr>
<tr id="row_0_0_67_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dc/d54/structshaka_1_1media_1_1H264DecRefPicMarking.html" target="_self">H264DecRefPicMarking</a></td><td class="desc"></td></tr>
<tr id="row_0_0_68_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d2/d59/structshaka_1_1media_1_1H264SliceHeader.html" target="_self">H264SliceHeader</a></td><td class="desc"></td></tr>
<tr id="row_0_0_69_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="df/de2/structshaka_1_1media_1_1H264SEIRecoveryPoint.html" target="_self">H264SEIRecoveryPoint</a></td><td class="desc"></td></tr>
<tr id="row_0_0_70_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d6/dd0/structshaka_1_1media_1_1H264SEIMessage.html" target="_self">H264SEIMessage</a></td><td class="desc"></td></tr>
<tr id="row_0_0_71_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d3/d91/classshaka_1_1media_1_1H264Parser.html" target="_self">H264Parser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_72_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/df8/classshaka_1_1media_1_1H265ByteToUnitStreamConverter.html" target="_self">H265ByteToUnitStreamConverter</a></td><td class="desc"></td></tr>
<tr id="row_0_0_73_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d5/dad/structshaka_1_1media_1_1H265ReferencePictureSet.html" target="_self">H265ReferencePictureSet</a></td><td class="desc"></td></tr>
<tr id="row_0_0_74_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/d67/structshaka_1_1media_1_1H265VuiParameters.html" target="_self">H265VuiParameters</a></td><td class="desc"></td></tr>
<tr id="row_0_0_75_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="de/d33/structshaka_1_1media_1_1H265Pps.html" target="_self">H265Pps</a></td><td class="desc"></td></tr>
<tr id="row_0_0_76_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/dfd/structshaka_1_1media_1_1H265Sps.html" target="_self">H265Sps</a></td><td class="desc"></td></tr>
<tr id="row_0_0_77_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d5/d9d/structshaka_1_1media_1_1H265ReferencePictureListModifications.html" target="_self">H265ReferencePictureListModifications</a></td><td class="desc"></td></tr>
<tr id="row_0_0_78_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_0_0_78_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('0_0_78_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/d05/structshaka_1_1media_1_1H265SliceHeader.html" target="_self">H265SliceHeader</a></td><td class="desc"></td></tr>
<tr id="row_0_0_78_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d7/d9c/structshaka_1_1media_1_1H265SliceHeader_1_1LongTermPicsInfo.html" target="_self">LongTermPicsInfo</a></td><td class="desc"></td></tr>
<tr id="row_0_0_79_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="de/dc2/classshaka_1_1media_1_1H265Parser.html" target="_self">H265Parser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_80_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="de/db4/classshaka_1_1media_1_1H26xBitReader.html" target="_self">H26xBitReader</a></td><td class="desc"></td></tr>
<tr id="row_0_0_81_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="de/dea/classshaka_1_1media_1_1H26xByteToUnitStreamConverter.html" target="_self">H26xByteToUnitStreamConverter</a></td><td class="desc">A base class that is used to convert H.26x byte streams to NAL unit streams </td></tr>
<tr id="row_0_0_82_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/d8a/classshaka_1_1media_1_1HEVCDecoderConfigurationRecord.html" target="_self">HEVCDecoderConfigurationRecord</a></td><td class="desc">Class for parsing HEVC decoder configuration record </td></tr>
<tr id="row_0_0_83_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d5/d66/classshaka_1_1media_1_1NalUnitToByteStreamConverter.html" target="_self">NalUnitToByteStreamConverter</a></td><td class="desc"></td></tr>
<tr id="row_0_0_84_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d6/dff/classshaka_1_1media_1_1Nalu.html" target="_self">Nalu</a></td><td class="desc"></td></tr>
<tr id="row_0_0_85_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/d86/classshaka_1_1media_1_1NaluReader.html" target="_self">NaluReader</a></td><td class="desc"></td></tr>
<tr id="row_0_0_86_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dd/de4/classshaka_1_1media_1_1VideoSliceHeaderParser.html" target="_self">VideoSliceHeaderParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_87_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="da/df0/classshaka_1_1media_1_1H264VideoSliceHeaderParser.html" target="_self">H264VideoSliceHeaderParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_88_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d1/d79/classshaka_1_1media_1_1H265VideoSliceHeaderParser.html" target="_self">H265VideoSliceHeaderParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_89_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d8/d14/classshaka_1_1media_1_1VP8Parser.html" target="_self">VP8Parser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_90_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/d5a/classshaka_1_1media_1_1VP9Parser.html" target="_self">VP9Parser</a></td><td class="desc">Class to parse a vp9 bit stream </td></tr>
<tr id="row_0_0_91_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d1/da5/classshaka_1_1media_1_1VPCodecConfigurationRecord.html" target="_self">VPCodecConfigurationRecord</a></td><td class="desc">Class for parsing or writing VP codec configuration record </td></tr>
<tr id="row_0_0_92_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d0/d11/structshaka_1_1media_1_1VPxFrameInfo.html" target="_self">VPxFrameInfo</a></td><td class="desc"></td></tr>
<tr id="row_0_0_93_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/dcb/classshaka_1_1media_1_1VPxParser.html" target="_self">VPxParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_94_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d6/d82/structshaka_1_1media_1_1EncryptionOptions.html" target="_self">EncryptionOptions</a></td><td class="desc">This structure defines encryption options </td></tr>
<tr id="row_0_0_95_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d6/d4c/classshaka_1_1media_1_1EncryptionHandler.html" target="_self">EncryptionHandler</a></td><td class="desc"></td></tr>
<tr id="row_0_0_96_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d5/dfa/classshaka_1_1media_1_1HlsNotifyMuxerListener.html" target="_self">HlsNotifyMuxerListener</a></td><td class="desc"><a class="el" href="dd/d7a/classshaka_1_1media_1_1MuxerListener.html">MuxerListener</a> that uses HlsNotifier </td></tr>
<tr id="row_0_0_97_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dc/d73/classshaka_1_1media_1_1MockMuxerListener.html" target="_self">MockMuxerListener</a></td><td class="desc"></td></tr>
<tr id="row_0_0_98_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/da5/classshaka_1_1media_1_1MpdNotifyMuxerListener.html" target="_self">MpdNotifyMuxerListener</a></td><td class="desc"></td></tr>
<tr id="row_0_0_99_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dd/d7a/classshaka_1_1media_1_1MuxerListener.html" target="_self">MuxerListener</a></td><td class="desc"></td></tr>
<tr id="row_0_0_100_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d6/d26/structshaka_1_1media_1_1VideoStreamInfoParameters.html" target="_self">VideoStreamInfoParameters</a></td><td class="desc"></td></tr>
<tr id="row_0_0_101_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/db8/structshaka_1_1media_1_1OnMediaEndParameters.html" target="_self">OnMediaEndParameters</a></td><td class="desc"></td></tr>
<tr id="row_0_0_102_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/de6/classshaka_1_1media_1_1ProgressListener.html" target="_self">ProgressListener</a></td><td class="desc">This class listens to progress updates events </td></tr>
<tr id="row_0_0_103_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/dd0/classshaka_1_1media_1_1VodMediaInfoDumpMuxerListener.html" target="_self">VodMediaInfoDumpMuxerListener</a></td><td class="desc"></td></tr>
<tr id="row_0_0_104_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d3/d61/classshaka_1_1media_1_1File.html" target="_self">File</a></td><td class="desc">Define an abstract file interface </td></tr>
<tr id="row_0_0_105_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d3/d8b/structshaka_1_1media_1_1FileCloser.html" target="_self">FileCloser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_106_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dd/d7c/classshaka_1_1media_1_1IoCache.html" target="_self">IoCache</a></td><td class="desc">Declaration of class which implements a thread-safe circular buffer </td></tr>
<tr id="row_0_0_107_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/de6/classshaka_1_1media_1_1LocalFile.html" target="_self">LocalFile</a></td><td class="desc">Implement <a class="el" href="d9/de6/classshaka_1_1media_1_1LocalFile.html" title="Implement LocalFile which deals with local storage. ">LocalFile</a> which deals with local storage </td></tr>
<tr id="row_0_0_108_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/dbd/classshaka_1_1media_1_1MemoryFile.html" target="_self">MemoryFile</a></td><td class="desc"></td></tr>
<tr id="row_0_0_109_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d0/d66/classshaka_1_1media_1_1ThreadedIoFile.html" target="_self">ThreadedIoFile</a></td><td class="desc">Declaration of class which implements a thread-safe circular buffer </td></tr>
<tr id="row_0_0_110_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d7/d7a/classshaka_1_1media_1_1UdpFile.html" target="_self">UdpFile</a></td><td class="desc">Implements <a class="el" href="d7/d7a/classshaka_1_1media_1_1UdpFile.html" title="Implements UdpFile, which receives UDP unicast and multicast streams. ">UdpFile</a>, which receives UDP unicast and multicast streams </td></tr>
<tr id="row_0_0_111_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/d8e/classshaka_1_1media_1_1UdpOptions.html" target="_self">UdpOptions</a></td><td class="desc">Options parsed from UDP url string of the form: udp://ip:port[?options] </td></tr>
<tr id="row_0_0_112_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d1/dd5/classshaka_1_1media_1_1Cluster.html" target="_self">Cluster</a></td><td class="desc"></td></tr>
<tr id="row_0_0_113_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/d94/classshaka_1_1media_1_1ClusterBuilder.html" target="_self">ClusterBuilder</a></td><td class="desc"></td></tr>
<tr id="row_0_0_114_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d1/d0a/classshaka_1_1media_1_1MkvWriter.html" target="_self">MkvWriter</a></td><td class="desc">An implementation of IMkvWriter using our <a class="el" href="d3/d61/classshaka_1_1media_1_1File.html" title="Define an abstract file interface. ">File</a> type </td></tr>
<tr id="row_0_0_115_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dc/d16/classshaka_1_1media_1_1SeekHead.html" target="_self">SeekHead</a></td><td class="desc"></td></tr>
<tr id="row_0_0_116_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_0_0_116_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('0_0_116_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d2/dba/classshaka_1_1media_1_1SegmentTestBase.html" target="_self">SegmentTestBase</a></td><td class="desc"></td></tr>
<tr id="row_0_0_116_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d2/df8/classshaka_1_1media_1_1SegmentTestBase_1_1ClusterParser.html" target="_self">ClusterParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_117_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d8/d74/classshaka_1_1media_1_1TracksBuilder.html" target="_self">TracksBuilder</a></td><td class="desc"></td></tr>
<tr id="row_0_0_118_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d3/d7c/classshaka_1_1media_1_1WebMAudioClient.html" target="_self">WebMAudioClient</a></td><td class="desc">Helper class used to parse an Audio element inside a TrackEntry element </td></tr>
<tr id="row_0_0_119_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="da/de4/classshaka_1_1media_1_1WebMClusterParser.html" target="_self">WebMClusterParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_120_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dc/da6/classshaka_1_1media_1_1ContentEncoding.html" target="_self">ContentEncoding</a></td><td class="desc"></td></tr>
<tr id="row_0_0_121_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d9/d87/classshaka_1_1media_1_1WebMContentEncodingsClient.html" target="_self">WebMContentEncodingsClient</a></td><td class="desc">Parser for WebM ContentEncodings element </td></tr>
<tr id="row_0_0_122_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="db/dae/classshaka_1_1media_1_1WebMInfoParser.html" target="_self">WebMInfoParser</a></td><td class="desc">Parser for WebM Info element </td></tr>
<tr id="row_0_0_123_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d2/ddb/classshaka_1_1media_1_1WebMMediaParser.html" target="_self">WebMMediaParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_124_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d5/dec/classshaka_1_1media_1_1WebMParserClient.html" target="_self">WebMParserClient</a></td><td class="desc"></td></tr>
<tr id="row_0_0_125_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dc/dca/classshaka_1_1media_1_1WebMListParser.html" target="_self">WebMListParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_126_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d8/d86/classshaka_1_1media_1_1WebMTracksParser.html" target="_self">WebMTracksParser</a></td><td class="desc">Parser for WebM Tracks element </td></tr>
<tr id="row_0_0_127_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d3/d67/classshaka_1_1media_1_1WebMVideoClient.html" target="_self">WebMVideoClient</a></td><td class="desc">Helper class used to parse a Video element inside a TrackEntry element </td></tr>
<tr id="row_0_0_128_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d4/d59/classshaka_1_1media_1_1WebMWebVTTParser.html" target="_self">WebMWebVTTParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_129_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dd/dce/structshaka_1_1media_1_1Cue.html" target="_self">Cue</a></td><td class="desc"></td></tr>
<tr id="row_0_0_130_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dc/df2/classshaka_1_1media_1_1WebVttMediaParser.html" target="_self">WebVttMediaParser</a></td><td class="desc"></td></tr>
<tr id="row_0_0_131_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="de/ddd/classshaka_1_1media_1_1WebVttSampleConverter.html" target="_self">WebVttSampleConverter</a></td><td class="desc"></td></tr>
<tr id="row_0_1_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_0_1_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('0_1_')"/><img src="ftv2ns.png" alt="N" width="24" height="22" /><b>xml</b></td><td class="desc"></td></tr>
<tr id="row_0_1_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="dd/da4/structshaka_1_1xml_1_1XmlDeleter.html" target="_self">XmlDeleter</a></td><td class="desc"></td></tr>
<tr id="row_0_1_1_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="d1/d31/classshaka_1_1xml_1_1XmlNode.html" target="_self">XmlNode</a></td><td class="desc"></td></tr>
@ -386,7 +385,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -89,99 +89,99 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="qindex"><a class="qindex" href="#letter_A">A</a>&#160;|&#160;<a class="qindex" href="#letter_B">B</a>&#160;|&#160;<a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_D">D</a>&#160;|&#160;<a class="qindex" href="#letter_E">E</a>&#160;|&#160;<a class="qindex" href="#letter_F">F</a>&#160;|&#160;<a class="qindex" href="#letter_H">H</a>&#160;|&#160;<a class="qindex" href="#letter_I">I</a>&#160;|&#160;<a class="qindex" href="#letter_K">K</a>&#160;|&#160;<a class="qindex" href="#letter_L">L</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_N">N</a>&#160;|&#160;<a class="qindex" href="#letter_O">O</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a>&#160;|&#160;<a class="qindex" href="#letter_U">U</a>&#160;|&#160;<a class="qindex" href="#letter_V">V</a>&#160;|&#160;<a class="qindex" href="#letter_W">W</a>&#160;|&#160;<a class="qindex" href="#letter_X">X</a></div>
<table style="margin: 10px; white-space: nowrap;" align="center" width="95%" border="0" cellspacing="0" cellpadding="0">
<tr><td rowspan="2" valign="bottom"><a name="letter_A"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;A&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="de/def/structshaka_1_1media_1_1mp4_1_1DecodingTimeToSample.html">DecodingTimeToSample</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/d7c/classshaka_1_1media_1_1IoCache.html">IoCache</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/d93/classshaka_1_1media_1_1mp2t_1_1PesPacket.html">PesPacket</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/db5/structshaka_1_1media_1_1mp4_1_1Track.html">Track</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
</td><td valign="top"><a class="el" href="de/def/structshaka_1_1media_1_1mp4_1_1DecodingTimeToSample.html">DecodingTimeToSample</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/d7c/classshaka_1_1media_1_1IoCache.html">IoCache</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/de0/classshaka_1_1media_1_1mp2t_1_1PesPacketGenerator.html">PesPacketGenerator</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/db8/structshaka_1_1media_1_1mp4_1_1TrackEncryption.html">TrackEncryption</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="de/d49/classshaka_1_1media_1_1DecryptConfig.html">DecryptConfig</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_K"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;K&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="d5/de0/classshaka_1_1media_1_1mp2t_1_1PesPacketGenerator.html">PesPacketGenerator</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/db8/structshaka_1_1media_1_1mp4_1_1TrackEncryption.html">TrackEncryption</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d0/da2/classshaka_1_1media_1_1AACAudioSpecificConfig.html">AACAudioSpecificConfig</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d59/classshaka_1_1media_1_1DecryptorSource.html">DecryptorSource</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/d71/structshaka_1_1media_1_1mp4_1_1PixelAspectRatio.html">PixelAspectRatio</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/d29/structshaka_1_1media_1_1mp4_1_1TrackExtends.html">TrackExtends</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d4/dc8/classshaka_1_1media_1_1mp2t_1_1AacProgramMapTableWriter.html">AacProgramMapTableWriter</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/d17/classshaka_1_1media_1_1Demuxer.html">Demuxer</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/d66/classshaka_1_1media_1_1KeyFetcher.html">KeyFetcher</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/da6/classshaka_1_1media_1_1PlayReadyKeySource.html">PlayReadyKeySource</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/d7b/structshaka_1_1media_1_1mp4_1_1TrackFragment.html">TrackFragment</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d4/dfa/structshaka_1_1media_1_1mp4_1_1AC3Specific.html">AC3Specific</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/da1/structshaka_1_1media_1_1wvm_1_1DemuxStreamIdMediaSample.html">DemuxStreamIdMediaSample</a> (shaka::media::wvm)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/d29/classshaka_1_1media_1_1mp4_1_1KeyRotationFragmenter.html">KeyRotationFragmenter</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/d0f/structshaka_1_1media_1_1wvm_1_1PrevSampleData.html">PrevSampleData</a> (shaka::media::wvm)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/d9a/structshaka_1_1media_1_1mp4_1_1TrackFragmentDecodeTime.html">TrackFragmentDecodeTime</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d8/d8e/classshaka_1_1AdaptationSet.html">AdaptationSet</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/da0/structshaka_1_1media_1_1mp4_1_1DTSSpecific.html">DTSSpecific</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/d1f/classshaka_1_1media_1_1KeySource.html">KeySource</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d47/structshaka_1_1media_1_1mp4_1_1PrivFrame.html">PrivFrame</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/d6e/structshaka_1_1media_1_1mp4_1_1TrackFragmentHeader.html">TrackFragmentHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
</td><td valign="top"><a class="el" href="dd/d71/structshaka_1_1media_1_1mp4_1_1PixelAspectRatio.html">PixelAspectRatio</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/d29/structshaka_1_1media_1_1mp4_1_1TrackExtends.html">TrackExtends</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d0/da2/classshaka_1_1media_1_1AACAudioSpecificConfig.html">AACAudioSpecificConfig</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d59/classshaka_1_1media_1_1DecryptorSource.html">DecryptorSource</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/da6/classshaka_1_1media_1_1PlayReadyKeySource.html">PlayReadyKeySource</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/d7b/structshaka_1_1media_1_1mp4_1_1TrackFragment.html">TrackFragment</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d4/dc8/classshaka_1_1media_1_1mp2t_1_1AacProgramMapTableWriter.html">AacProgramMapTableWriter</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/d17/classshaka_1_1media_1_1Demuxer.html">Demuxer</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/d66/classshaka_1_1media_1_1KeyFetcher.html">KeyFetcher</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/d0f/structshaka_1_1media_1_1wvm_1_1PrevSampleData.html">PrevSampleData</a> (shaka::media::wvm)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/d9a/structshaka_1_1media_1_1mp4_1_1TrackFragmentDecodeTime.html">TrackFragmentDecodeTime</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d4/dfa/structshaka_1_1media_1_1mp4_1_1AC3Specific.html">AC3Specific</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/da1/structshaka_1_1media_1_1wvm_1_1DemuxStreamIdMediaSample.html">DemuxStreamIdMediaSample</a> (shaka::media::wvm)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/d29/classshaka_1_1media_1_1mp4_1_1KeyRotationFragmenter.html">KeyRotationFragmenter</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d47/structshaka_1_1media_1_1mp4_1_1PrivFrame.html">PrivFrame</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/d6e/structshaka_1_1media_1_1mp4_1_1TrackFragmentHeader.html">TrackFragmentHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d8/d8e/classshaka_1_1AdaptationSet.html">AdaptationSet</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/da0/structshaka_1_1media_1_1mp4_1_1DTSSpecific.html">DTSSpecific</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/d1f/classshaka_1_1media_1_1KeySource.html">KeySource</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/d33/classshaka_1_1media_1_1ProducerConsumerQueue.html">ProducerConsumerQueue</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/df5/structshaka_1_1media_1_1mp4_1_1TrackFragmentRun.html">TrackFragmentRun</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d1/de7/classshaka_1_1xml_1_1AdaptationSetXmlNode.html">AdaptationSetXmlNode</a> (shaka::xml)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_E"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;E&#160;&#160;</div></td></tr></table>
</td><td rowspan="2" valign="bottom"><a name="letter_L"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;L&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="d5/d33/classshaka_1_1media_1_1ProducerConsumerQueue.html">ProducerConsumerQueue</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/df5/structshaka_1_1media_1_1mp4_1_1TrackFragmentRun.html">TrackFragmentRun</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d3/d0c/classshaka_1_1media_1_1mp2t_1_1AdtsHeader.html">AdtsHeader</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/d03/classshaka_1_1media_1_1mp2t_1_1ProgramMapTableWriter.html">ProgramMapTableWriter</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/dc4/structshaka_1_1media_1_1mp4_1_1TrackHeader.html">TrackHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="df/d2d/classshaka_1_1media_1_1AesCbcDecryptor.html">AesCbcDecryptor</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/d8d/structshaka_1_1media_1_1mp4_1_1EC3Specific.html">EC3Specific</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/d1a/structshaka_1_1media_1_1mp4_1_1Language.html">Language</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/de6/classshaka_1_1media_1_1ProgressListener.html">ProgressListener</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/df6/classshaka_1_1media_1_1mp4_1_1TrackRunIterator.html">TrackRunIterator</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d4/d20/classshaka_1_1media_1_1AesCbcEncryptor.html">AesCbcEncryptor</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/dd0/structshaka_1_1media_1_1mp4_1_1Edit.html">Edit</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d51/classshaka_1_1media_1_1LibcryptoThreading.html">LibcryptoThreading</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/de9/structshaka_1_1media_1_1mp4_1_1ProtectionSchemeInfo.html">ProtectionSchemeInfo</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/d74/classshaka_1_1media_1_1TracksBuilder.html">TracksBuilder</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="df/d87/classshaka_1_1media_1_1AesCryptor.html">AesCryptor</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/dbe/structshaka_1_1media_1_1mp4_1_1EditList.html">EditList</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/de6/classshaka_1_1media_1_1LocalFile.html">LocalFile</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d3c/structshaka_1_1media_1_1mp4_1_1ProtectionSystemSpecificHeader.html">ProtectionSystemSpecificHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d71/classshaka_1_1media_1_1mp2t_1_1TsMuxer.html">TsMuxer</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d0/dd8/classshaka_1_1media_1_1AesCtrEncryptor.html">AesCtrEncryptor</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/d18/structshaka_1_1media_1_1mp4_1_1EditListEntry.html">EditListEntry</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d9c/structshaka_1_1media_1_1H265SliceHeader_1_1LongTermPicsInfo.html">H265SliceHeader::LongTermPicsInfo</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/dd4/classshaka_1_1media_1_1ProtectionSystemSpecificInfo.html">ProtectionSystemSpecificInfo</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/da1/classshaka_1_1media_1_1mp2t_1_1TsPacket.html">TsPacket</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d3/d75/classshaka_1_1media_1_1AesEncryptor.html">AesEncryptor</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/da9/structshaka_1_1Element.html">Element</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_M"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;M&#160;&#160;</div></td></tr></table>
</td><td rowspan="2" valign="bottom"><a name="letter_R"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;R&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="dc/d03/classshaka_1_1media_1_1mp2t_1_1ProgramMapTableWriter.html">ProgramMapTableWriter</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/dc4/structshaka_1_1media_1_1mp4_1_1TrackHeader.html">TrackHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d3/d0c/classshaka_1_1media_1_1mp2t_1_1AdtsHeader.html">AdtsHeader</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/de6/classshaka_1_1media_1_1ProgressListener.html">ProgressListener</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/df6/classshaka_1_1media_1_1mp4_1_1TrackRunIterator.html">TrackRunIterator</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="df/d2d/classshaka_1_1media_1_1AesCbcDecryptor.html">AesCbcDecryptor</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/d8d/structshaka_1_1media_1_1mp4_1_1EC3Specific.html">EC3Specific</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/d1a/structshaka_1_1media_1_1mp4_1_1Language.html">Language</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/de9/structshaka_1_1media_1_1mp4_1_1ProtectionSchemeInfo.html">ProtectionSchemeInfo</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/d74/classshaka_1_1media_1_1TracksBuilder.html">TracksBuilder</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d4/d20/classshaka_1_1media_1_1AesCbcEncryptor.html">AesCbcEncryptor</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/dd0/structshaka_1_1media_1_1mp4_1_1Edit.html">Edit</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d51/classshaka_1_1media_1_1LibcryptoThreading.html">LibcryptoThreading</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d3c/structshaka_1_1media_1_1mp4_1_1ProtectionSystemSpecificHeader.html">ProtectionSystemSpecificHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d71/classshaka_1_1media_1_1mp2t_1_1TsMuxer.html">TsMuxer</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="df/d87/classshaka_1_1media_1_1AesCryptor.html">AesCryptor</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/dbe/structshaka_1_1media_1_1mp4_1_1EditList.html">EditList</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/de6/classshaka_1_1media_1_1LocalFile.html">LocalFile</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/dd4/classshaka_1_1media_1_1ProtectionSystemSpecificInfo.html">ProtectionSystemSpecificInfo</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/da1/classshaka_1_1media_1_1mp2t_1_1TsPacket.html">TsPacket</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d0/dd8/classshaka_1_1media_1_1AesCtrEncryptor.html">AesCtrEncryptor</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/d18/structshaka_1_1media_1_1mp4_1_1EditListEntry.html">EditListEntry</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d9c/structshaka_1_1media_1_1H265SliceHeader_1_1LongTermPicsInfo.html">H265SliceHeader::LongTermPicsInfo</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_R"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;R&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="da/d1c/classshaka_1_1media_1_1mp2t_1_1TsSection.html">TsSection</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d3/dfe/classshaka_1_1media_1_1AesPatternCryptor.html">AesPatternCryptor</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/d11/structshaka_1_1media_1_1mp4_1_1ElementaryStreamDescriptor.html">ElementaryStreamDescriptor</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d26/classshaka_1_1media_1_1mp2t_1_1TsSectionPat.html">TsSectionPat</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d9/d8c/classshaka_1_1media_1_1AesRequestSigner.html">AesRequestSigner</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/df3/classshaka_1_1media_1_1mp4_1_1EncryptingFragmenter.html">EncryptingFragmenter</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/ddf/structshaka_1_1media_1_1mp4_1_1Media.html">Media</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/d52/classshaka_1_1Representation.html">Representation</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/d30/classshaka_1_1media_1_1mp2t_1_1TsSectionPes.html">TsSectionPes</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="da/d6e/structshaka_1_1media_1_1mp4_1_1AudioRollRecoveryEntry.html">AudioRollRecoveryEntry</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d34/structshaka_1_1media_1_1EncryptionConfig.html">EncryptionConfig</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/dae/structshaka_1_1media_1_1mp4_1_1MediaData.html">MediaData</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/db9/classshaka_1_1xml_1_1RepresentationBaseXmlNode.html">RepresentationBaseXmlNode</a> (shaka::xml)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/de3/classshaka_1_1media_1_1mp2t_1_1TsSectionPmt.html">TsSectionPmt</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d8/d5b/structshaka_1_1media_1_1mp4_1_1AudioSampleEntry.html">AudioSampleEntry</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/d4c/classshaka_1_1media_1_1EncryptionHandler.html">EncryptionHandler</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/dd3/structshaka_1_1media_1_1MediaEvent.html">MediaEvent</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/d94/classshaka_1_1RepresentationStateChangeListener.html">RepresentationStateChangeListener</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/d7e/classshaka_1_1media_1_1mp2t_1_1TsSectionPsi.html">TsSectionPsi</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="da/d4e/classshaka_1_1media_1_1AudioStreamInfo.html">AudioStreamInfo</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/dbd/structshaka_1_1media_1_1EncryptionKey.html">EncryptionKey</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/dfd/classshaka_1_1media_1_1MediaHandler.html">MediaHandler</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/d9e/classshaka_1_1xml_1_1RepresentationXmlNode.html">RepresentationXmlNode</a> (shaka::xml)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/dde/classshaka_1_1media_1_1mp2t_1_1TsSegmenter.html">TsSegmenter</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d0/d4d/classshaka_1_1media_1_1AudioTimestampHelper.html">AudioTimestampHelper</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/d82/structshaka_1_1media_1_1EncryptionOptions.html">EncryptionOptions</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/d9b/classshaka_1_1media_1_1MediaHandlerTestBase.html">MediaHandlerTestBase</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/d3c/classshaka_1_1media_1_1RequestSigner.html">RequestSigner</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/d64/classshaka_1_1media_1_1mp2t_1_1TsWriter.html">TsWriter</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d6/d57/classshaka_1_1media_1_1AVCDecoderConfigurationRecord.html">AVCDecoderConfigurationRecord</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/dfa/classshaka_1_1media_1_1webm_1_1Encryptor.html">Encryptor</a> (shaka::media::webm)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/db9/structshaka_1_1media_1_1mp4_1_1MediaHeader.html">MediaHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/dce/classshaka_1_1media_1_1RsaPrivateKey.html">RsaPrivateKey</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/da5/classshaka_1_1media_1_1webm_1_1TwoPassSingleSegmentSegmenter.html">TwoPassSingleSegmentSegmenter</a> (shaka::media::webm)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d3/d75/classshaka_1_1media_1_1AesEncryptor.html">AesEncryptor</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/da9/structshaka_1_1Element.html">Element</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_M"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;M&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="d0/d26/classshaka_1_1media_1_1mp2t_1_1TsSectionPat.html">TsSectionPat</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d3/dfe/classshaka_1_1media_1_1AesPatternCryptor.html">AesPatternCryptor</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/d11/structshaka_1_1media_1_1mp4_1_1ElementaryStreamDescriptor.html">ElementaryStreamDescriptor</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/d52/classshaka_1_1Representation.html">Representation</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/d30/classshaka_1_1media_1_1mp2t_1_1TsSectionPes.html">TsSectionPes</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d9/d8c/classshaka_1_1media_1_1AesRequestSigner.html">AesRequestSigner</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/df3/classshaka_1_1media_1_1mp4_1_1EncryptingFragmenter.html">EncryptingFragmenter</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/ddf/structshaka_1_1media_1_1mp4_1_1Media.html">Media</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/db9/classshaka_1_1xml_1_1RepresentationBaseXmlNode.html">RepresentationBaseXmlNode</a> (shaka::xml)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/de3/classshaka_1_1media_1_1mp2t_1_1TsSectionPmt.html">TsSectionPmt</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="da/d6e/structshaka_1_1media_1_1mp4_1_1AudioRollRecoveryEntry.html">AudioRollRecoveryEntry</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d34/structshaka_1_1media_1_1EncryptionConfig.html">EncryptionConfig</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/dae/structshaka_1_1media_1_1mp4_1_1MediaData.html">MediaData</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/d94/classshaka_1_1RepresentationStateChangeListener.html">RepresentationStateChangeListener</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/d7e/classshaka_1_1media_1_1mp2t_1_1TsSectionPsi.html">TsSectionPsi</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d8/d5b/structshaka_1_1media_1_1mp4_1_1AudioSampleEntry.html">AudioSampleEntry</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/d4c/classshaka_1_1media_1_1EncryptionHandler.html">EncryptionHandler</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/dd3/structshaka_1_1media_1_1MediaEvent.html">MediaEvent</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/d9e/classshaka_1_1xml_1_1RepresentationXmlNode.html">RepresentationXmlNode</a> (shaka::xml)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/dde/classshaka_1_1media_1_1mp2t_1_1TsSegmenter.html">TsSegmenter</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="da/d4e/classshaka_1_1media_1_1AudioStreamInfo.html">AudioStreamInfo</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/dbd/structshaka_1_1media_1_1EncryptionKey.html">EncryptionKey</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/dfd/classshaka_1_1media_1_1MediaHandler.html">MediaHandler</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/d3c/classshaka_1_1media_1_1RequestSigner.html">RequestSigner</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/d64/classshaka_1_1media_1_1mp2t_1_1TsWriter.html">TsWriter</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d0/d4d/classshaka_1_1media_1_1AudioTimestampHelper.html">AudioTimestampHelper</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/d82/structshaka_1_1media_1_1EncryptionOptions.html">EncryptionOptions</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/d9b/classshaka_1_1media_1_1MediaHandlerTestBase.html">MediaHandlerTestBase</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/dce/classshaka_1_1media_1_1RsaPrivateKey.html">RsaPrivateKey</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/da5/classshaka_1_1media_1_1webm_1_1TwoPassSingleSegmentSegmenter.html">TwoPassSingleSegmentSegmenter</a> (shaka::media::webm)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d6/d57/classshaka_1_1media_1_1AVCDecoderConfigurationRecord.html">AVCDecoderConfigurationRecord</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/dfa/classshaka_1_1media_1_1webm_1_1Encryptor.html">Encryptor</a> (shaka::media::webm)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/db9/structshaka_1_1media_1_1mp4_1_1MediaHeader.html">MediaHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/d0c/classshaka_1_1media_1_1RsaPublicKey.html">RsaPublicKey</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_U"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;U&#160;&#160;</div></td></tr></table>
</td></tr>
<tr><td rowspan="2" valign="bottom"><a name="letter_B"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;B&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="d5/d13/classshaka_1_1media_1_1ESDescriptor.html">ESDescriptor</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/d86/structshaka_1_1media_1_1mp4_1_1MediaInformation.html">MediaInformation</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/d0c/classshaka_1_1media_1_1RsaPublicKey.html">RsaPublicKey</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_U"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;U&#160;&#160;</div></td></tr></table>
</td></tr>
<tr><td valign="top"><a class="el" href="da/d10/classshaka_1_1media_1_1mp2t_1_1EsParser.html">EsParser</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d0a/classshaka_1_1media_1_1MediaParser.html">MediaParser</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/ddd/classshaka_1_1media_1_1RsaRequestSigner.html">RsaRequestSigner</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d2/d6f/classBandwidthEstimator.html">BandwidthEstimator</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/dcf/classshaka_1_1media_1_1mp2t_1_1EsParserAdts.html">EsParserAdts</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d6d/classshaka_1_1media_1_1MediaSample.html">MediaSample</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_S"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;S&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="d5/d13/classshaka_1_1media_1_1ESDescriptor.html">ESDescriptor</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/d86/structshaka_1_1media_1_1mp4_1_1MediaInformation.html">MediaInformation</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/ddd/classshaka_1_1media_1_1RsaRequestSigner.html">RsaRequestSigner</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="da/d10/classshaka_1_1media_1_1mp2t_1_1EsParser.html">EsParser</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d0a/classshaka_1_1media_1_1MediaParser.html">MediaParser</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_S"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;S&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="d7/d7a/classshaka_1_1media_1_1UdpFile.html">UdpFile</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d6/da9/classshaka_1_1media_1_1BitReader.html">BitReader</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/db9/classshaka_1_1media_1_1mp2t_1_1EsParserH264.html">EsParserH264</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/d5c/classshaka_1_1media_1_1MediaStream.html">MediaStream</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/d8e/classshaka_1_1media_1_1UdpOptions.html">UdpOptions</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d1/d2d/structshaka_1_1media_1_1mp4_1_1Box.html">Box</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/d63/classshaka_1_1media_1_1mp2t_1_1EsParserH265.html">EsParserH265</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/dbd/classshaka_1_1media_1_1MemoryFile.html">MemoryFile</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/dca/structshaka_1_1media_1_1mp4_1_1SampleAuxiliaryInformationOffset.html">SampleAuxiliaryInformationOffset</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_V"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;V&#160;&#160;</div></td></tr></table>
<tr><td valign="top"><a class="el" href="d2/d6f/classBandwidthEstimator.html">BandwidthEstimator</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/dcf/classshaka_1_1media_1_1mp2t_1_1EsParserAdts.html">EsParserAdts</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d6d/classshaka_1_1media_1_1MediaSample.html">MediaSample</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/d8e/classshaka_1_1media_1_1UdpOptions.html">UdpOptions</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d6/da9/classshaka_1_1media_1_1BitReader.html">BitReader</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/db9/classshaka_1_1media_1_1mp2t_1_1EsParserH264.html">EsParserH264</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/dbd/classshaka_1_1media_1_1MemoryFile.html">MemoryFile</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/dca/structshaka_1_1media_1_1mp4_1_1SampleAuxiliaryInformationOffset.html">SampleAuxiliaryInformationOffset</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_V"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;V&#160;&#160;</div></td></tr></table>
</td></tr>
<tr><td valign="top"><a class="el" href="d1/da1/classshaka_1_1media_1_1mp4_1_1BoxBuffer.html">BoxBuffer</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/d23/classshaka_1_1media_1_1mp2t_1_1EsParserH26x.html">EsParserH26x</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/df6/structshaka_1_1media_1_1mp4_1_1Metadata.html">Metadata</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/d13/structshaka_1_1media_1_1mp4_1_1SampleAuxiliaryInformationSize.html">SampleAuxiliaryInformationSize</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d1/d2d/structshaka_1_1media_1_1mp4_1_1Box.html">Box</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/d63/classshaka_1_1media_1_1mp2t_1_1EsParserH265.html">EsParserH265</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/df6/structshaka_1_1media_1_1mp4_1_1Metadata.html">Metadata</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/d13/structshaka_1_1media_1_1mp4_1_1SampleAuxiliaryInformationSize.html">SampleAuxiliaryInformationSize</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d1/da1/classshaka_1_1media_1_1mp4_1_1BoxBuffer.html">BoxBuffer</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/d23/classshaka_1_1media_1_1mp2t_1_1EsParserH26x.html">EsParserH26x</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/d0a/classshaka_1_1media_1_1MkvWriter.html">MkvWriter</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/df5/structshaka_1_1media_1_1mp4_1_1SampleDescription.html">SampleDescription</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/db0/structshaka_1_1media_1_1mp4_1_1VideoMediaHeader.html">VideoMediaHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d1/dee/classshaka_1_1media_1_1mp4_1_1BoxReader.html">BoxReader</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_F"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;F&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="d1/d0a/classshaka_1_1media_1_1MkvWriter.html">MkvWriter</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/df5/structshaka_1_1media_1_1mp4_1_1SampleDescription.html">SampleDescription</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/db0/structshaka_1_1media_1_1mp4_1_1VideoMediaHeader.html">VideoMediaHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d9/d13/classshaka_1_1media_1_1BufferReader.html">BufferReader</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/d4b/classshaka_1_1MockAdaptationSet.html">MockAdaptationSet</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/dad/structshaka_1_1media_1_1mp4_1_1SampleEncryption.html">SampleEncryption</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d73/structshaka_1_1media_1_1mp4_1_1VideoSampleEntry.html">VideoSampleEntry</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="dc/d41/classshaka_1_1media_1_1BufferWriter.html">BufferWriter</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d61/classshaka_1_1media_1_1File.html">File</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/d60/classshaka_1_1MockMpdBuilder.html">MockMpdBuilder</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/dcb/structshaka_1_1media_1_1mp4_1_1SampleEncryptionEntry.html">SampleEncryptionEntry</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/de4/classshaka_1_1media_1_1VideoSliceHeaderParser.html">VideoSliceHeaderParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d7/dda/classshaka_1_1media_1_1ByteQueue.html">ByteQueue</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d8b/structshaka_1_1media_1_1FileCloser.html">FileCloser</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/d5c/classshaka_1_1MockMpdNotifier.html">MockMpdNotifier</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d01/structshaka_1_1media_1_1mp4_1_1SampleGroupDescription.html">SampleGroupDescription</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/dc2/structshaka_1_1media_1_1mp2t_1_1EsParserH26x_1_1VideoSliceInfo.html">EsParserH26x::VideoSliceInfo</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
</td><td valign="top"><a class="el" href="db/d4b/classshaka_1_1MockAdaptationSet.html">MockAdaptationSet</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/dad/structshaka_1_1media_1_1mp4_1_1SampleEncryption.html">SampleEncryption</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d73/structshaka_1_1media_1_1mp4_1_1VideoSampleEntry.html">VideoSampleEntry</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d9/d13/classshaka_1_1media_1_1BufferReader.html">BufferReader</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/d60/classshaka_1_1MockMpdBuilder.html">MockMpdBuilder</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/dcb/structshaka_1_1media_1_1mp4_1_1SampleEncryptionEntry.html">SampleEncryptionEntry</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/de4/classshaka_1_1media_1_1VideoSliceHeaderParser.html">VideoSliceHeaderParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="dc/d41/classshaka_1_1media_1_1BufferWriter.html">BufferWriter</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d61/classshaka_1_1media_1_1File.html">File</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/d5c/classshaka_1_1MockMpdNotifier.html">MockMpdNotifier</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d01/structshaka_1_1media_1_1mp4_1_1SampleGroupDescription.html">SampleGroupDescription</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/dc2/structshaka_1_1media_1_1mp2t_1_1EsParserH26x_1_1VideoSliceInfo.html">EsParserH26x::VideoSliceInfo</a> (shaka::media::mp2t)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d7/dda/classshaka_1_1media_1_1ByteQueue.html">ByteQueue</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d8b/structshaka_1_1media_1_1FileCloser.html">FileCloser</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/d73/classshaka_1_1media_1_1MockMuxerListener.html">MockMuxerListener</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d42/structshaka_1_1media_1_1mp4_1_1SampleSize.html">SampleSize</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/db1/classshaka_1_1media_1_1VideoStreamInfo.html">VideoStreamInfo</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td rowspan="2" valign="bottom"><a name="letter_C"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;C&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="d5/d03/structshaka_1_1media_1_1mp4_1_1FileType.html">FileType</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/d73/classshaka_1_1media_1_1MockMuxerListener.html">MockMuxerListener</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d42/structshaka_1_1media_1_1mp4_1_1SampleSize.html">SampleSize</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/db1/classshaka_1_1media_1_1VideoStreamInfo.html">VideoStreamInfo</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d0/dac/classshaka_1_1media_1_1FixedKeySource.html">FixedKeySource</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d33/classshaka_1_1MockRepresentation.html">MockRepresentation</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/dee/structshaka_1_1media_1_1mp4_1_1SampleTable.html">SampleTable</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/d26/structshaka_1_1media_1_1VideoStreamInfoParameters.html">VideoStreamInfoParameters</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d8/dd6/structshaka_1_1media_1_1mp4_1_1CencSampleEncryptionInfoEntry.html">CencSampleEncryptionInfoEntry</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/d95/classshaka_1_1media_1_1mp4_1_1Fragmenter.html">Fragmenter</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d9a/structshaka_1_1media_1_1mp4_1_1Movie.html">Movie</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d87/structshaka_1_1media_1_1mp4_1_1SampleToChunk.html">SampleToChunk</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/dd0/classshaka_1_1media_1_1VodMediaInfoDumpMuxerListener.html">VodMediaInfoDumpMuxerListener</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="df/d38/structshaka_1_1media_1_1mp4_1_1ChunkInfo.html">ChunkInfo</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/dc1/structshaka_1_1media_1_1mp4_1_1FullBox.html">FullBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/d3e/structshaka_1_1media_1_1mp4_1_1MovieExtends.html">MovieExtends</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d7c/structshaka_1_1media_1_1mp4_1_1SampleToGroup.html">SampleToGroup</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/d14/classshaka_1_1media_1_1VP8Parser.html">VP8Parser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
</td><td valign="top"><a class="el" href="d5/d03/structshaka_1_1media_1_1mp4_1_1FileType.html">FileType</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d33/classshaka_1_1MockRepresentation.html">MockRepresentation</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/dee/structshaka_1_1media_1_1mp4_1_1SampleTable.html">SampleTable</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/d26/structshaka_1_1media_1_1VideoStreamInfoParameters.html">VideoStreamInfoParameters</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d0/dac/classshaka_1_1media_1_1FixedKeySource.html">FixedKeySource</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d9a/structshaka_1_1media_1_1mp4_1_1Movie.html">Movie</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d87/structshaka_1_1media_1_1mp4_1_1SampleToChunk.html">SampleToChunk</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/dd0/classshaka_1_1media_1_1VodMediaInfoDumpMuxerListener.html">VodMediaInfoDumpMuxerListener</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d8/dd6/structshaka_1_1media_1_1mp4_1_1CencSampleEncryptionInfoEntry.html">CencSampleEncryptionInfoEntry</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/d95/classshaka_1_1media_1_1mp4_1_1Fragmenter.html">Fragmenter</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/d3e/structshaka_1_1media_1_1mp4_1_1MovieExtends.html">MovieExtends</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d7c/structshaka_1_1media_1_1mp4_1_1SampleToGroup.html">SampleToGroup</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/d14/classshaka_1_1media_1_1VP8Parser.html">VP8Parser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="df/d38/structshaka_1_1media_1_1mp4_1_1ChunkInfo.html">ChunkInfo</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/dc1/structshaka_1_1media_1_1mp4_1_1FullBox.html">FullBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/d50/structshaka_1_1media_1_1mp4_1_1MovieExtendsHeader.html">MovieExtendsHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/de0/structshaka_1_1media_1_1mp4_1_1SampleToGroupEntry.html">SampleToGroupEntry</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/d5a/classshaka_1_1media_1_1VP9Parser.html">VP9Parser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d9/d57/classshaka_1_1media_1_1mp4_1_1ChunkInfoIterator.html">ChunkInfoIterator</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_H"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;H&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="da/d50/structshaka_1_1media_1_1mp4_1_1MovieExtendsHeader.html">MovieExtendsHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/de0/structshaka_1_1media_1_1mp4_1_1SampleToGroupEntry.html">SampleToGroupEntry</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/d5a/classshaka_1_1media_1_1VP9Parser.html">VP9Parser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d4/d43/classshaka_1_1media_1_1ChunkingHandler.html">ChunkingHandler</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/d1f/structshaka_1_1media_1_1mp4_1_1MovieFragment.html">MovieFragment</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/d70/structshaka_1_1media_1_1mp4_1_1SchemeInfo.html">SchemeInfo</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/da5/classshaka_1_1media_1_1VPCodecConfigurationRecord.html">VPCodecConfigurationRecord</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="db/d02/structshaka_1_1media_1_1ChunkingOptions.html">ChunkingOptions</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/d08/classshaka_1_1media_1_1H264ByteToUnitStreamConverter.html">H264ByteToUnitStreamConverter</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/d8f/structshaka_1_1media_1_1mp4_1_1MovieFragmentHeader.html">MovieFragmentHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/da2/structshaka_1_1media_1_1mp4_1_1SchemeType.html">SchemeType</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d11/structshaka_1_1media_1_1VPxFrameInfo.html">VPxFrameInfo</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="db/d95/structshaka_1_1media_1_1mp4_1_1ChunkLargeOffset.html">ChunkLargeOffset</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/d54/structshaka_1_1media_1_1H264DecRefPicMarking.html">H264DecRefPicMarking</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/d1a/structshaka_1_1media_1_1mp4_1_1MovieHeader.html">MovieHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/d16/classshaka_1_1media_1_1SeekHead.html">SeekHead</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/dcb/classshaka_1_1media_1_1VPxParser.html">VPxParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="dd/d06/structshaka_1_1media_1_1mp4_1_1ChunkOffset.html">ChunkOffset</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/dff/structshaka_1_1media_1_1H264ModificationOfPicNum.html">H264ModificationOfPicNum</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/dc1/classshaka_1_1media_1_1mp2t_1_1Mp2tMediaParser.html">Mp2tMediaParser</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/d26/classshaka_1_1media_1_1mp4_1_1Segmenter.html">Segmenter</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/d79/structshaka_1_1media_1_1mp4_1_1VTTAdditionalTextBox.html">VTTAdditionalTextBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="dc/df0/classshaka_1_1media_1_1ClosureThread.html">ClosureThread</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d91/classshaka_1_1media_1_1H264Parser.html">H264Parser</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/dd5/classshaka_1_1media_1_1mp4_1_1MP4MediaParser.html">MP4MediaParser</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/dc5/classshaka_1_1media_1_1webm_1_1Segmenter.html">Segmenter</a> (shaka::media::webm)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/daa/structshaka_1_1media_1_1mp4_1_1VTTCueBox.html">VTTCueBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d1/dd5/classshaka_1_1media_1_1Cluster.html">Cluster</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/de4/structshaka_1_1media_1_1H264Pps.html">H264Pps</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/d30/classshaka_1_1media_1_1mp4_1_1MP4Muxer.html">MP4Muxer</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/df9/structshaka_1_1media_1_1mp4_1_1SegmentIndex.html">SegmentIndex</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/d3c/structshaka_1_1media_1_1mp4_1_1VTTEmptyCueBox.html">VTTEmptyCueBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="db/d94/classshaka_1_1media_1_1ClusterBuilder.html">ClusterBuilder</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/d27/classshaka_1_1media_1_1mp2t_1_1H264ProgramMapTableWriter.html">H264ProgramMapTableWriter</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/da1/classshaka_1_1MpdBuilder.html">MpdBuilder</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/dc0/structshaka_1_1media_1_1SegmentInfo.html">SegmentInfo</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_W"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;W&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="d9/d1f/structshaka_1_1media_1_1mp4_1_1MovieFragment.html">MovieFragment</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/d70/structshaka_1_1media_1_1mp4_1_1SchemeInfo.html">SchemeInfo</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/da5/classshaka_1_1media_1_1VPCodecConfigurationRecord.html">VPCodecConfigurationRecord</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d4/d43/classshaka_1_1media_1_1ChunkingHandler.html">ChunkingHandler</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/d8f/structshaka_1_1media_1_1mp4_1_1MovieFragmentHeader.html">MovieFragmentHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/da2/structshaka_1_1media_1_1mp4_1_1SchemeType.html">SchemeType</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d11/structshaka_1_1media_1_1VPxFrameInfo.html">VPxFrameInfo</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="db/d02/structshaka_1_1media_1_1ChunkingOptions.html">ChunkingOptions</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/d08/classshaka_1_1media_1_1H264ByteToUnitStreamConverter.html">H264ByteToUnitStreamConverter</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/d1a/structshaka_1_1media_1_1mp4_1_1MovieHeader.html">MovieHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/d16/classshaka_1_1media_1_1SeekHead.html">SeekHead</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/dcb/classshaka_1_1media_1_1VPxParser.html">VPxParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="db/d95/structshaka_1_1media_1_1mp4_1_1ChunkLargeOffset.html">ChunkLargeOffset</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/d54/structshaka_1_1media_1_1H264DecRefPicMarking.html">H264DecRefPicMarking</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/dc1/classshaka_1_1media_1_1mp2t_1_1Mp2tMediaParser.html">Mp2tMediaParser</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/dc5/classshaka_1_1media_1_1webm_1_1Segmenter.html">Segmenter</a> (shaka::media::webm)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/d79/structshaka_1_1media_1_1mp4_1_1VTTAdditionalTextBox.html">VTTAdditionalTextBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="dd/d06/structshaka_1_1media_1_1mp4_1_1ChunkOffset.html">ChunkOffset</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/dff/structshaka_1_1media_1_1H264ModificationOfPicNum.html">H264ModificationOfPicNum</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/dd5/classshaka_1_1media_1_1mp4_1_1MP4MediaParser.html">MP4MediaParser</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/d26/classshaka_1_1media_1_1mp4_1_1Segmenter.html">Segmenter</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/daa/structshaka_1_1media_1_1mp4_1_1VTTCueBox.html">VTTCueBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="dc/df0/classshaka_1_1media_1_1ClosureThread.html">ClosureThread</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d91/classshaka_1_1media_1_1H264Parser.html">H264Parser</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/d30/classshaka_1_1media_1_1mp4_1_1MP4Muxer.html">MP4Muxer</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/df9/structshaka_1_1media_1_1mp4_1_1SegmentIndex.html">SegmentIndex</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/d3c/structshaka_1_1media_1_1mp4_1_1VTTEmptyCueBox.html">VTTEmptyCueBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d1/dd5/classshaka_1_1media_1_1Cluster.html">Cluster</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/de4/structshaka_1_1media_1_1H264Pps.html">H264Pps</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/da1/classshaka_1_1MpdBuilder.html">MpdBuilder</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/dc0/structshaka_1_1media_1_1SegmentInfo.html">SegmentInfo</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_W"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;W&#160;&#160;</div></td></tr></table>
</td></tr>
<tr><td valign="top"><a class="el" href="d2/df8/classshaka_1_1media_1_1SegmentTestBase_1_1ClusterParser.html">SegmentTestBase::ClusterParser</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/dd0/structshaka_1_1media_1_1H264SEIMessage.html">H264SEIMessage</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/dd0/classshaka_1_1MpdNotifier.html">MpdNotifier</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/de1/structshaka_1_1SegmentInfo.html">SegmentInfo</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="db/d11/structshaka_1_1media_1_1mp4_1_1CodecConfiguration.html">CodecConfiguration</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/de2/structshaka_1_1media_1_1H264SEIRecoveryPoint.html">H264SEIRecoveryPoint</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/db4/classshaka_1_1MpdNotifierFactory.html">MpdNotifierFactory</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/d9b/structshaka_1_1media_1_1mp4_1_1SegmentReference.html">SegmentReference</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d7c/classshaka_1_1media_1_1WebMAudioClient.html">WebMAudioClient</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="da/d59/structshaka_1_1media_1_1mp4_1_1CompactSampleSize.html">CompactSampleSize</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/d59/structshaka_1_1media_1_1H264SliceHeader.html">H264SliceHeader</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/da5/classshaka_1_1media_1_1MpdNotifyMuxerListener.html">MpdNotifyMuxerListener</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/dba/classshaka_1_1media_1_1SegmentTestBase.html">SegmentTestBase</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/de4/classshaka_1_1media_1_1WebMClusterParser.html">WebMClusterParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d5/d8c/structshaka_1_1media_1_1mp4_1_1CompositionOffset.html">CompositionOffset</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/d0a/structshaka_1_1media_1_1H264Sps.html">H264Sps</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/df3/structshaka_1_1MpdOptions.html">MpdOptions</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/dd0/structshaka_1_1media_1_1mp4_1_1SegmentType.html">SegmentType</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/d87/classshaka_1_1media_1_1WebMContentEncodingsClient.html">WebMContentEncodingsClient</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="db/d4e/classshaka_1_1media_1_1mp4_1_1CompositionOffsetIterator.html">CompositionOffsetIterator</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/df0/classshaka_1_1media_1_1H264VideoSliceHeaderParser.html">H264VideoSliceHeaderParser</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/dcd/classshaka_1_1MpdWriter.html">MpdWriter</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/de1/classshaka_1_1SimpleMpdNotifier.html">SimpleMpdNotifier</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/dae/classshaka_1_1media_1_1WebMInfoParser.html">WebMInfoParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="df/d7b/structshaka_1_1media_1_1mp4_1_1CompositionTimeToSample.html">CompositionTimeToSample</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/d4c/structshaka_1_1media_1_1H264WeightingFactors.html">H264WeightingFactors</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/db7/classshaka_1_1media_1_1mp4_1_1MultiSegmentSegmenter.html">MultiSegmentSegmenter</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/dab/classshaka_1_1media_1_1mp4_1_1SingleSegmentSegmenter.html">SingleSegmentSegmenter</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/dca/classshaka_1_1media_1_1WebMListParser.html">WebMListParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="dc/da6/classshaka_1_1media_1_1ContentEncoding.html">ContentEncoding</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/df8/classshaka_1_1media_1_1H265ByteToUnitStreamConverter.html">H265ByteToUnitStreamConverter</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/dd5/classshaka_1_1media_1_1webm_1_1MultiSegmentSegmenter.html">MultiSegmentSegmenter</a> (shaka::media::webm)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/da1/classshaka_1_1media_1_1webm_1_1SingleSegmentSegmenter.html">SingleSegmentSegmenter</a> (shaka::media::webm)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/ddb/classshaka_1_1media_1_1WebMMediaParser.html">WebMMediaParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="da/d43/structshaka_1_1ContentProtectionElement.html">ContentProtectionElement</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/dc2/classshaka_1_1media_1_1H265Parser.html">H265Parser</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/d46/classshaka_1_1media_1_1Muxer.html">Muxer</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d07/structshaka_1_1media_1_1mp4_1_1SoundMediaHeader.html">SoundMediaHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d73/classshaka_1_1media_1_1webm_1_1WebMMuxer.html">WebMMuxer</a> (shaka::media::webm)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d8/dd6/classshaka_1_1media_1_1mp2t_1_1ContinuityCounter.html">ContinuityCounter</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/d33/structshaka_1_1media_1_1H265Pps.html">H265Pps</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/d7a/classshaka_1_1media_1_1MuxerListener.html">MuxerListener</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d93/classshaka_1_1media_1_1Status.html">Status</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/dec/classshaka_1_1media_1_1WebMParserClient.html">WebMParserClient</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="dd/dce/structshaka_1_1media_1_1Cue.html">Cue</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/d9d/structshaka_1_1media_1_1H265ReferencePictureListModifications.html">H265ReferencePictureListModifications</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d27/structshaka_1_1media_1_1MuxerOptions.html">MuxerOptions</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d4c/structshaka_1_1media_1_1StreamData.html">StreamData</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/d86/classshaka_1_1media_1_1WebMTracksParser.html">WebMTracksParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d5/d09/structshaka_1_1media_1_1mp4_1_1CueIDBox.html">CueIDBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/dad/structshaka_1_1media_1_1H265ReferencePictureSet.html">H265ReferencePictureSet</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_N"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;N&#160;&#160;</div></td></tr></table>
<tr><td valign="top"><a class="el" href="db/d94/classshaka_1_1media_1_1ClusterBuilder.html">ClusterBuilder</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/d27/classshaka_1_1media_1_1mp2t_1_1H264ProgramMapTableWriter.html">H264ProgramMapTableWriter</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/dd0/classshaka_1_1MpdNotifier.html">MpdNotifier</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/de1/structshaka_1_1SegmentInfo.html">SegmentInfo</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d2/df8/classshaka_1_1media_1_1SegmentTestBase_1_1ClusterParser.html">SegmentTestBase::ClusterParser</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/dd0/structshaka_1_1media_1_1H264SEIMessage.html">H264SEIMessage</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/db4/classshaka_1_1MpdNotifierFactory.html">MpdNotifierFactory</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/d9b/structshaka_1_1media_1_1mp4_1_1SegmentReference.html">SegmentReference</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d7c/classshaka_1_1media_1_1WebMAudioClient.html">WebMAudioClient</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="db/d11/structshaka_1_1media_1_1mp4_1_1CodecConfiguration.html">CodecConfiguration</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/de2/structshaka_1_1media_1_1H264SEIRecoveryPoint.html">H264SEIRecoveryPoint</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/da5/classshaka_1_1media_1_1MpdNotifyMuxerListener.html">MpdNotifyMuxerListener</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/dba/classshaka_1_1media_1_1SegmentTestBase.html">SegmentTestBase</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/de4/classshaka_1_1media_1_1WebMClusterParser.html">WebMClusterParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="da/d59/structshaka_1_1media_1_1mp4_1_1CompactSampleSize.html">CompactSampleSize</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/d59/structshaka_1_1media_1_1H264SliceHeader.html">H264SliceHeader</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/df3/structshaka_1_1MpdOptions.html">MpdOptions</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/dd0/structshaka_1_1media_1_1mp4_1_1SegmentType.html">SegmentType</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/d87/classshaka_1_1media_1_1WebMContentEncodingsClient.html">WebMContentEncodingsClient</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d5/d8c/structshaka_1_1media_1_1mp4_1_1CompositionOffset.html">CompositionOffset</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/d0a/structshaka_1_1media_1_1H264Sps.html">H264Sps</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/dcd/classshaka_1_1MpdWriter.html">MpdWriter</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/de1/classshaka_1_1SimpleMpdNotifier.html">SimpleMpdNotifier</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/dae/classshaka_1_1media_1_1WebMInfoParser.html">WebMInfoParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="db/d4e/classshaka_1_1media_1_1mp4_1_1CompositionOffsetIterator.html">CompositionOffsetIterator</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/df0/classshaka_1_1media_1_1H264VideoSliceHeaderParser.html">H264VideoSliceHeaderParser</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/db7/classshaka_1_1media_1_1mp4_1_1MultiSegmentSegmenter.html">MultiSegmentSegmenter</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/dab/classshaka_1_1media_1_1mp4_1_1SingleSegmentSegmenter.html">SingleSegmentSegmenter</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/dca/classshaka_1_1media_1_1WebMListParser.html">WebMListParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="df/d7b/structshaka_1_1media_1_1mp4_1_1CompositionTimeToSample.html">CompositionTimeToSample</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/d4c/structshaka_1_1media_1_1H264WeightingFactors.html">H264WeightingFactors</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/dd5/classshaka_1_1media_1_1webm_1_1MultiSegmentSegmenter.html">MultiSegmentSegmenter</a> (shaka::media::webm)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/da1/classshaka_1_1media_1_1webm_1_1SingleSegmentSegmenter.html">SingleSegmentSegmenter</a> (shaka::media::webm)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/ddb/classshaka_1_1media_1_1WebMMediaParser.html">WebMMediaParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="dc/da6/classshaka_1_1media_1_1ContentEncoding.html">ContentEncoding</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/df8/classshaka_1_1media_1_1H265ByteToUnitStreamConverter.html">H265ByteToUnitStreamConverter</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="df/d46/classshaka_1_1media_1_1Muxer.html">Muxer</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d07/structshaka_1_1media_1_1mp4_1_1SoundMediaHeader.html">SoundMediaHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d73/classshaka_1_1media_1_1webm_1_1WebMMuxer.html">WebMMuxer</a> (shaka::media::webm)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="da/d43/structshaka_1_1ContentProtectionElement.html">ContentProtectionElement</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/dc2/classshaka_1_1media_1_1H265Parser.html">H265Parser</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/d7a/classshaka_1_1media_1_1MuxerListener.html">MuxerListener</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d93/classshaka_1_1media_1_1Status.html">Status</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/dec/classshaka_1_1media_1_1WebMParserClient.html">WebMParserClient</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d8/dd6/classshaka_1_1media_1_1mp2t_1_1ContinuityCounter.html">ContinuityCounter</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/d33/structshaka_1_1media_1_1H265Pps.html">H265Pps</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d27/structshaka_1_1media_1_1MuxerOptions.html">MuxerOptions</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d4c/structshaka_1_1media_1_1StreamData.html">StreamData</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/d86/classshaka_1_1media_1_1WebMTracksParser.html">WebMTracksParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="dd/dce/structshaka_1_1media_1_1Cue.html">Cue</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/d9d/structshaka_1_1media_1_1H265ReferencePictureListModifications.html">H265ReferencePictureListModifications</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_N"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;N&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="d2/d95/structshaka_1_1media_1_1StreamDescriptor.html">StreamDescriptor</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/d67/classshaka_1_1media_1_1WebMVideoClient.html">WebMVideoClient</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d2/d7f/structshaka_1_1media_1_1mp4_1_1CuePayloadBox.html">CuePayloadBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/d05/structshaka_1_1media_1_1H265SliceHeader.html">H265SliceHeader</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/d3e/classshaka_1_1media_1_1StreamDescriptorCompareFn.html">StreamDescriptorCompareFn</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/d59/classshaka_1_1media_1_1WebMWebVTTParser.html">WebMWebVTTParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d0/dd0/structshaka_1_1media_1_1mp4_1_1CueSettingsBox.html">CueSettingsBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/dfd/structshaka_1_1media_1_1H265Sps.html">H265Sps</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/dff/classshaka_1_1media_1_1Nalu.html">Nalu</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/db1/classshaka_1_1media_1_1StreamInfo.html">StreamInfo</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/d20/structshaka_1_1media_1_1mp4_1_1WebVTTConfigurationBox.html">WebVTTConfigurationBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d9/d3e/structshaka_1_1media_1_1mp4_1_1CueSourceIDBox.html">CueSourceIDBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/d79/classshaka_1_1media_1_1H265VideoSliceHeaderParser.html">H265VideoSliceHeaderParser</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/d66/classshaka_1_1media_1_1NalUnitToByteStreamConverter.html">NalUnitToByteStreamConverter</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/d34/structshaka_1_1media_1_1SubsampleEntry.html">SubsampleEntry</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/df2/classshaka_1_1media_1_1WebVttMediaParser.html">WebVttMediaParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d8/dc3/structshaka_1_1media_1_1mp4_1_1CueTimeBox.html">CueTimeBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/d67/structshaka_1_1media_1_1H265VuiParameters.html">H265VuiParameters</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/d86/classshaka_1_1media_1_1NaluReader.html">NaluReader</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/d21/structshaka_1_1media_1_1mp4_1_1SubtitleMediaHeader.html">SubtitleMediaHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/ddd/classshaka_1_1media_1_1WebVttSampleConverter.html">WebVttSampleConverter</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td rowspan="2" valign="bottom"><a name="letter_D"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;D&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="de/db4/classshaka_1_1media_1_1H26xBitReader.html">H26xBitReader</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_O"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;O&#160;&#160;</div></td></tr></table>
<tr><td valign="top"><a class="el" href="d5/d09/structshaka_1_1media_1_1mp4_1_1CueIDBox.html">CueIDBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/dad/structshaka_1_1media_1_1H265ReferencePictureSet.html">H265ReferencePictureSet</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/d3e/classshaka_1_1media_1_1StreamDescriptorCompareFn.html">StreamDescriptorCompareFn</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/d59/classshaka_1_1media_1_1WebMWebVTTParser.html">WebMWebVTTParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d2/d7f/structshaka_1_1media_1_1mp4_1_1CuePayloadBox.html">CuePayloadBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/d05/structshaka_1_1media_1_1H265SliceHeader.html">H265SliceHeader</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d6/dff/classshaka_1_1media_1_1Nalu.html">Nalu</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/db1/classshaka_1_1media_1_1StreamInfo.html">StreamInfo</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d8/d20/structshaka_1_1media_1_1mp4_1_1WebVTTConfigurationBox.html">WebVTTConfigurationBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d0/dd0/structshaka_1_1media_1_1mp4_1_1CueSettingsBox.html">CueSettingsBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/dfd/structshaka_1_1media_1_1H265Sps.html">H265Sps</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/d66/classshaka_1_1media_1_1NalUnitToByteStreamConverter.html">NalUnitToByteStreamConverter</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/d34/structshaka_1_1media_1_1SubsampleEntry.html">SubsampleEntry</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dc/df2/classshaka_1_1media_1_1WebVttMediaParser.html">WebVttMediaParser</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d9/d3e/structshaka_1_1media_1_1mp4_1_1CueSourceIDBox.html">CueSourceIDBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/d79/classshaka_1_1media_1_1H265VideoSliceHeaderParser.html">H265VideoSliceHeaderParser</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/d86/classshaka_1_1media_1_1NaluReader.html">NaluReader</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/d21/structshaka_1_1media_1_1mp4_1_1SubtitleMediaHeader.html">SubtitleMediaHeader</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/ddd/classshaka_1_1media_1_1WebVttSampleConverter.html">WebVttSampleConverter</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d8/dc3/structshaka_1_1media_1_1mp4_1_1CueTimeBox.html">CueTimeBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/d67/structshaka_1_1media_1_1H265VuiParameters.html">H265VuiParameters</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_O"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;O&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="dd/d3f/structshaka_1_1media_1_1mp4_1_1SyncSample.html">SyncSample</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/d33/structshaka_1_1media_1_1mp4_1_1WebVTTSourceLabelBox.html">WebVTTSourceLabelBox</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="de/dea/classshaka_1_1media_1_1H26xByteToUnitStreamConverter.html">H26xByteToUnitStreamConverter</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d26/classshaka_1_1media_1_1mp4_1_1SyncSampleIterator.html">SyncSampleIterator</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/ddd/classshaka_1_1media_1_1WidevineKeySource.html">WidevineKeySource</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d4/d70/classshaka_1_1DashIopMpdNotifier.html">DashIopMpdNotifier</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/dbb/structshaka_1_1media_1_1mp4_1_1HandlerReference.html">HandlerReference</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/df9/classshaka_1_1media_1_1OffsetByteQueue.html">OffsetByteQueue</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_T"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;T&#160;&#160;</div></td></tr></table>
<tr><td rowspan="2" valign="bottom"><a name="letter_D"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;D&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="de/db4/classshaka_1_1media_1_1H26xBitReader.html">H26xBitReader</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d26/classshaka_1_1media_1_1mp4_1_1SyncSampleIterator.html">SyncSampleIterator</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/ddd/classshaka_1_1media_1_1WidevineKeySource.html">WidevineKeySource</a> (shaka::media)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="de/dea/classshaka_1_1media_1_1H26xByteToUnitStreamConverter.html">H26xByteToUnitStreamConverter</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d9/df9/classshaka_1_1media_1_1OffsetByteQueue.html">OffsetByteQueue</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_T"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;T&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="dc/d18/classshaka_1_1media_1_1wvm_1_1WvmMediaParser.html">WvmMediaParser</a> (shaka::media::wvm)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="df/d8a/structshaka_1_1media_1_1mp4_1_1DataEntryUrl.html">DataEntryUrl</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/d8a/classshaka_1_1media_1_1HEVCDecoderConfigurationRecord.html">HEVCDecoderConfigurationRecord</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/db8/structshaka_1_1media_1_1OnMediaEndParameters.html">OnMediaEndParameters</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_X"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;X&#160;&#160;</div></td></tr></table>
<tr><td valign="top"><a class="el" href="d4/d70/classshaka_1_1DashIopMpdNotifier.html">DashIopMpdNotifier</a> (<a class="el" href="d8/daf/namespaceshaka.html">shaka</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="da/dbb/structshaka_1_1media_1_1mp4_1_1HandlerReference.html">HandlerReference</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/db8/structshaka_1_1media_1_1OnMediaEndParameters.html">OnMediaEndParameters</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_X"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;X&#160;&#160;</div></td></tr></table>
</td></tr>
<tr><td valign="top"><a class="el" href="d8/d6d/structshaka_1_1media_1_1mp4_1_1DataInformation.html">DataInformation</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/dfa/classshaka_1_1media_1_1HlsNotifyMuxerListener.html">HlsNotifyMuxerListener</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/dfa/structshaka_1_1media_1_1mp4_1_1OpusSpecific.html">OpusSpecific</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/dc3/structshaka_1_1media_1_1mp4_1_1TextSampleEntry.html">TextSampleEntry</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d4/de3/structshaka_1_1media_1_1mp4_1_1DataReference.html">DataReference</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/de0/classshaka_1_1media_1_1HttpKeyFetcher.html">HttpKeyFetcher</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/d05/structshaka_1_1media_1_1mp4_1_1OriginalFormat.html">OriginalFormat</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/dab/classshaka_1_1media_1_1TextStreamInfo.html">TextStreamInfo</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/da4/structshaka_1_1xml_1_1XmlDeleter.html">XmlDeleter</a> (shaka::xml)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="de/de0/classshaka_1_1media_1_1DecoderConfigurationRecord.html">DecoderConfigurationRecord</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_I"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;I&#160;&#160;</div></td></tr></table>
</td><td rowspan="2" valign="bottom"><a name="letter_P"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;P&#160;&#160;</div></td></tr></table>
<tr><td valign="top"><a class="el" href="df/d8a/structshaka_1_1media_1_1mp4_1_1DataEntryUrl.html">DataEntryUrl</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d4/d8a/classshaka_1_1media_1_1HEVCDecoderConfigurationRecord.html">HEVCDecoderConfigurationRecord</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/dfa/structshaka_1_1media_1_1mp4_1_1OpusSpecific.html">OpusSpecific</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/dc3/structshaka_1_1media_1_1mp4_1_1TextSampleEntry.html">TextSampleEntry</a> (shaka::media::mp4)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d8/d6d/structshaka_1_1media_1_1mp4_1_1DataInformation.html">DataInformation</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/dfa/classshaka_1_1media_1_1HlsNotifyMuxerListener.html">HlsNotifyMuxerListener</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d5/d05/structshaka_1_1media_1_1mp4_1_1OriginalFormat.html">OriginalFormat</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="db/dab/classshaka_1_1media_1_1TextStreamInfo.html">TextStreamInfo</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="dd/da4/structshaka_1_1xml_1_1XmlDeleter.html">XmlDeleter</a> (shaka::xml)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d4/de3/structshaka_1_1media_1_1mp4_1_1DataReference.html">DataReference</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/de0/classshaka_1_1media_1_1HttpKeyFetcher.html">HttpKeyFetcher</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_P"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;P&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="d4/d0b/classshaka_1_1media_1_1TextTrack.html">TextTrack</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d1/d31/classshaka_1_1xml_1_1XmlNode.html">XmlNode</a> (shaka::xml)&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="d8/d12/structshaka_1_1media_1_1mp4_1_1DecodingTime.html">DecodingTime</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="de/db3/classshaka_1_1media_1_1TextTrackConfig.html">TextTrackConfig</a> (shaka::media)&#160;&#160;&#160;</td><td></td></tr>
<tr><td valign="top"><a class="el" href="d1/d20/classshaka_1_1media_1_1mp4_1_1DecodingTimeIterator.html">DecodingTimeIterator</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/dad/structshaka_1_1media_1_1mp4_1_1ID3v2.html">ID3v2</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d58/structshaka_1_1media_1_1PeriodInfo.html">PeriodInfo</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d66/classshaka_1_1media_1_1ThreadedIoFile.html">ThreadedIoFile</a> (shaka::media)&#160;&#160;&#160;</td><td></td></tr>
<tr><td valign="top"><a class="el" href="de/de0/classshaka_1_1media_1_1DecoderConfigurationRecord.html">DecoderConfigurationRecord</a> (shaka::media)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_I"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;I&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="de/db3/classshaka_1_1media_1_1TextTrackConfig.html">TextTrackConfig</a> (shaka::media)&#160;&#160;&#160;</td><td></td></tr>
<tr><td valign="top"><a class="el" href="d8/d12/structshaka_1_1media_1_1mp4_1_1DecodingTime.html">DecodingTime</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d7/d58/structshaka_1_1media_1_1PeriodInfo.html">PeriodInfo</a> (shaka::media)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d0/d66/classshaka_1_1media_1_1ThreadedIoFile.html">ThreadedIoFile</a> (shaka::media)&#160;&#160;&#160;</td><td></td></tr>
<tr><td valign="top"><a class="el" href="d1/d20/classshaka_1_1media_1_1mp4_1_1DecodingTimeIterator.html">DecodingTimeIterator</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/dad/structshaka_1_1media_1_1mp4_1_1ID3v2.html">ID3v2</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d2/d93/classshaka_1_1media_1_1mp2t_1_1PesPacket.html">PesPacket</a> (shaka::media::mp2t)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="d3/db5/structshaka_1_1media_1_1mp4_1_1Track.html">Track</a> (shaka::media::mp4)&#160;&#160;&#160;</td><td></td></tr>
<tr><td></td><td></td><td></td><td></td><td></td></tr>
</table>
<div class="qindex"><a class="qindex" href="#letter_A">A</a>&#160;|&#160;<a class="qindex" href="#letter_B">B</a>&#160;|&#160;<a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_D">D</a>&#160;|&#160;<a class="qindex" href="#letter_E">E</a>&#160;|&#160;<a class="qindex" href="#letter_F">F</a>&#160;|&#160;<a class="qindex" href="#letter_H">H</a>&#160;|&#160;<a class="qindex" href="#letter_I">I</a>&#160;|&#160;<a class="qindex" href="#letter_K">K</a>&#160;|&#160;<a class="qindex" href="#letter_L">L</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_N">N</a>&#160;|&#160;<a class="qindex" href="#letter_O">O</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a>&#160;|&#160;<a class="qindex" href="#letter_U">U</a>&#160;|&#160;<a class="qindex" href="#letter_V">V</a>&#160;|&#160;<a class="qindex" href="#letter_W">W</a>&#160;|&#160;<a class="qindex" href="#letter_X">X</a></div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:06 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:06 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -152,7 +152,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -138,7 +138,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -149,7 +149,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:06 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -121,7 +121,7 @@ uint32_t&#160;</td><td class="memItemRight" valign="bottom"><b>height</b></td></
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -155,7 +155,7 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>Reset</b> () override
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:06 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -274,7 +274,7 @@ bool&#160;</td><td class="memItemRight" valign="bottom"><b>webm_subsample_encryp
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -149,7 +149,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -118,7 +118,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -160,7 +160,7 @@ Additional Inherited Members</h2></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -285,7 +285,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -233,7 +233,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -318,7 +318,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -182,7 +182,7 @@ Additional Inherited Members</h2></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:06 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:06 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -215,7 +215,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -284,7 +284,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -248,7 +248,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -100,7 +100,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -237,7 +237,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -130,7 +130,7 @@ std::shared_ptr&lt; <a class="el" href="../../d0/dc0/structshaka_1_1media_1_1Seg
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -131,7 +131,7 @@ int64_t&#160;</td><td class="memItemRight" valign="bottom"><b>GetFramesToTarget<
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -143,7 +143,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -93,33 +93,52 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
<p>This is the complete list of members for <a class="el" href="../../d3/d71/classshaka_1_1media_1_1mp2t_1_1TsMuxer.html">shaka::media::mp2t::TsMuxer</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html#ad9479d299d1c494604a5f5a052fe8280">AddStream</a>(MediaStream *stream)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html#afc48a2450ce50162de18071aef516b6c">AddHandler</a>(std::shared_ptr&lt; MediaHandler &gt; handler)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html#a9204fe352d13cea8a367ae9c14e9639e">Cancel</a>()</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>clear_lead_in_seconds</b>() const (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>clock</b>() (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>crypto_period_duration_in_seconds</b>() const (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>encryption_key_source</b>() (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>max_hd_pixels</b>() const (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>max_sd_pixels</b>() const (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>max_uhd1_pixels</b>() const (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html#accd62dd4def920571f95f4e1a98ab7ca">Dispatch</a>(std::unique_ptr&lt; StreamData &gt; stream_data)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html#acfa15d4635dda12cd3d1439d3a9368f9">DispatchEncryptionConfig</a>(int stream_index, std::unique_ptr&lt; EncryptionConfig &gt; encryption_config)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html#abcd63083b77966607b9c2aed8724e8f5">DispatchMediaEvent</a>(int stream_index, std::shared_ptr&lt; MediaEvent &gt; media_event)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html#ae5613bfa98942bcb6d0871e5e3788960">DispatchMediaSample</a>(int stream_index, std::shared_ptr&lt; MediaSample &gt; media_sample)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html#a6e8056d1955150ac946b84b7942453ee">DispatchPeriodInfo</a>(int stream_index, std::shared_ptr&lt; PeriodInfo &gt; period_info)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html#a7c2da8615f6880abf4e198dd4c17ad45">DispatchSegmentInfo</a>(int stream_index, std::shared_ptr&lt; SegmentInfo &gt; segment_info)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html#a68c2b3f1e00ffad13ec6a9e2fb82c8d6">DispatchStreamInfo</a>(int stream_index, std::shared_ptr&lt; StreamInfo &gt; stream_info)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>encryption_key_source</b>() (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html#a522a24c661f6e50aa6fb2a04afbfe5f8">FlushStream</a>(int input_stream_index) override</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html#aed0da512bbd998ec9d0a5c019ad17acb">Initialize</a>()</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>initialized</b>() (defined in <a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a>)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html#a36882e12df5c5bfd48a7b94d1dfad857">InitializeInternal</a>() override</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>max_hd_pixels</b>() const (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>max_sd_pixels</b>() const (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>max_uhd1_pixels</b>() const (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>MediaHandler</b>()=default (defined in <a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a>)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>Muxer</b>(const MuxerOptions &amp;options) (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>muxer_listener</b>() (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>options</b>() const (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>progress_listener</b>() (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>protection_scheme</b>() const (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html#adc96fbcd6a4d4ba9845f8d00974ace0f">Run</a>()</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>next_output_stream_index</b>() const (defined in <a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a>)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>num_input_streams</b>() (defined in <a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a>)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>num_input_streams</b>() const (defined in <a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a>)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>options</b>() const (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>output_handlers</b>() (defined in <a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a>)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html#aec730b070245231a0887787005c06eee">Process</a>(std::unique_ptr&lt; StreamData &gt; stream_data) override</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>progress_listener</b>() (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>protection_scheme</b>() const (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html#a3cc7feaee9a2c3a7d0569cb9c67c8c68">set_clock</a>(base::Clock *clock)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html#ad9c8f69897171ab81db6e7e9c367b4ce">SetKeySource</a>(KeySource *encryption_key_source, uint32_t max_sd_pixels, uint32_t max_hd_pixels, uint32_t max_uhd1_pixels, double clear_lead_in_seconds, double crypto_period_duration_in_seconds, FourCC protection_scheme)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html#a0e76dd0a5c07dd538221459365ae824a">SetMuxerListener</a>(std::unique_ptr&lt; MuxerListener &gt; muxer_listener)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html#a25a146d553c385aad70dbff6b3e87eec">SetProgressListener</a>(std::unique_ptr&lt; ProgressListener &gt; progress_listener)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>streams</b>() const (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>TsMuxer</b>(const MuxerOptions &amp;muxer_options) (defined in <a class="el" href="../../d3/d71/classshaka_1_1media_1_1mp2t_1_1TsMuxer.html">shaka::media::mp2t::TsMuxer</a>)</td><td class="entry"><a class="el" href="../../d3/d71/classshaka_1_1media_1_1mp2t_1_1TsMuxer.html">shaka::media::mp2t::TsMuxer</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>~Muxer</b>() (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~TsMuxer</b>() override (defined in <a class="el" href="../../d3/d71/classshaka_1_1media_1_1mp2t_1_1TsMuxer.html">shaka::media::mp2t::TsMuxer</a>)</td><td class="entry"><a class="el" href="../../d3/d71/classshaka_1_1media_1_1mp2t_1_1TsMuxer.html">shaka::media::mp2t::TsMuxer</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html#aced66ff3e906e7dd45f1f3771d61edd7">SetHandler</a>(int output_stream_index, std::shared_ptr&lt; MediaHandler &gt; handler)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html#ad9c8f69897171ab81db6e7e9c367b4ce">SetKeySource</a>(KeySource *encryption_key_source, uint32_t max_sd_pixels, uint32_t max_hd_pixels, uint32_t max_uhd1_pixels, double clear_lead_in_seconds, double crypto_period_duration_in_seconds, FourCC protection_scheme)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html#a0e76dd0a5c07dd538221459365ae824a">SetMuxerListener</a>(std::unique_ptr&lt; MuxerListener &gt; muxer_listener)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html#a25a146d553c385aad70dbff6b3e87eec">SetProgressListener</a>(std::unique_ptr&lt; ProgressListener &gt; progress_listener)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>streams</b>() const (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>TsMuxer</b>(const MuxerOptions &amp;muxer_options) (defined in <a class="el" href="../../d3/d71/classshaka_1_1media_1_1mp2t_1_1TsMuxer.html">shaka::media::mp2t::TsMuxer</a>)</td><td class="entry"><a class="el" href="../../d3/d71/classshaka_1_1media_1_1mp2t_1_1TsMuxer.html">shaka::media::mp2t::TsMuxer</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html#a7b61972eedda125b436dc4d26f88c1e6">ValidateOutputStreamIndex</a>(int stream_index) const </td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>~MediaHandler</b>()=default (defined in <a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a>)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Muxer</b>() (defined in <a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a>)</td><td class="entry"><a class="el" href="../../df/d46/classshaka_1_1media_1_1Muxer.html">shaka::media::Muxer</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>~TsMuxer</b>() override (defined in <a class="el" href="../../d3/d71/classshaka_1_1media_1_1mp2t_1_1TsMuxer.html">shaka::media::mp2t::TsMuxer</a>)</td><td class="entry"><a class="el" href="../../d3/d71/classshaka_1_1media_1_1mp2t_1_1TsMuxer.html">shaka::media::mp2t::TsMuxer</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:06 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -111,7 +111,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -438,7 +438,7 @@ Additional Inherited Members</h2></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -97,7 +97,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -197,7 +197,7 @@ Additional Inherited Members</h2></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:06 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -188,7 +188,7 @@ Additional Inherited Members</h2></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:06 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -133,7 +133,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -118,7 +118,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -112,7 +112,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -302,7 +302,7 @@ static const <a class="el" href="../../d0/d93/classshaka_1_1media_1_1Status.html
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -186,7 +186,7 @@ Additional Inherited Members</h2></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -329,7 +329,7 @@ static const size_t&#160;</td><td class="memItemRight" valign="bottom"><a class=
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -100,7 +100,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -293,7 +293,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -119,12 +119,12 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:a3338fa3d4cfe0f8ed12c2fe16735af58 inherit pub_methods_classshaka_1_1media_1_1mp4_1_1Segmenter"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3338fa3d4cfe0f8ed12c2fe16735af58"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>Segmenter</b> (const <a class="el" href="../../d0/d27/structshaka_1_1media_1_1MuxerOptions.html">MuxerOptions</a> &amp;options, std::unique_ptr&lt; <a class="el" href="../../d5/d03/structshaka_1_1media_1_1mp4_1_1FileType.html">FileType</a> &gt; ftyp, std::unique_ptr&lt; <a class="el" href="../../d0/d9a/structshaka_1_1media_1_1mp4_1_1Movie.html">Movie</a> &gt; moov)</td></tr>
<tr class="separator:a3338fa3d4cfe0f8ed12c2fe16735af58 inherit pub_methods_classshaka_1_1media_1_1mp4_1_1Segmenter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf326521fc1d46d31a7a3b94bcf17c24 inherit pub_methods_classshaka_1_1media_1_1mp4_1_1Segmenter"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d0/d93/classshaka_1_1media_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d26/classshaka_1_1media_1_1mp4_1_1Segmenter.html#aaf326521fc1d46d31a7a3b94bcf17c24">Initialize</a> (const std::vector&lt; <a class="el" href="../../d8/d5c/classshaka_1_1media_1_1MediaStream.html">MediaStream</a> * &gt; &amp;streams, <a class="el" href="../../dd/d7a/classshaka_1_1media_1_1MuxerListener.html">MuxerListener</a> *muxer_listener, <a class="el" href="../../d4/de6/classshaka_1_1media_1_1ProgressListener.html">ProgressListener</a> *progress_listener, <a class="el" href="../../d1/d1f/classshaka_1_1media_1_1KeySource.html">KeySource</a> *encryption_key_source, uint32_t max_sd_pixels, uint32_t max_hd_pixels, uint32_t max_uhd1_pixels, double clear_lead_in_seconds, double crypto_period_duration_in_seconds, FourCC protection_scheme)</td></tr>
<tr class="separator:aaf326521fc1d46d31a7a3b94bcf17c24 inherit pub_methods_classshaka_1_1media_1_1mp4_1_1Segmenter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a871281f21d7c5e4194febe925860305c inherit pub_methods_classshaka_1_1media_1_1mp4_1_1Segmenter"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d0/d93/classshaka_1_1media_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d26/classshaka_1_1media_1_1mp4_1_1Segmenter.html#a871281f21d7c5e4194febe925860305c">Initialize</a> (const std::vector&lt; std::shared_ptr&lt; <a class="el" href="../../d5/db1/classshaka_1_1media_1_1StreamInfo.html">StreamInfo</a> &gt;&gt; &amp;streams, <a class="el" href="../../dd/d7a/classshaka_1_1media_1_1MuxerListener.html">MuxerListener</a> *muxer_listener, <a class="el" href="../../d4/de6/classshaka_1_1media_1_1ProgressListener.html">ProgressListener</a> *progress_listener, <a class="el" href="../../d1/d1f/classshaka_1_1media_1_1KeySource.html">KeySource</a> *encryption_key_source, uint32_t max_sd_pixels, uint32_t max_hd_pixels, uint32_t max_uhd1_pixels, double clear_lead_in_seconds, double crypto_period_duration_in_seconds, FourCC protection_scheme)</td></tr>
<tr class="separator:a871281f21d7c5e4194febe925860305c inherit pub_methods_classshaka_1_1media_1_1mp4_1_1Segmenter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a464a30159b8888a54254356d191947ac inherit pub_methods_classshaka_1_1media_1_1mp4_1_1Segmenter"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d0/d93/classshaka_1_1media_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d26/classshaka_1_1media_1_1mp4_1_1Segmenter.html#a464a30159b8888a54254356d191947ac">Finalize</a> ()</td></tr>
<tr class="separator:a464a30159b8888a54254356d191947ac inherit pub_methods_classshaka_1_1media_1_1mp4_1_1Segmenter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7706ce1829da84b1155a2244c22411bf inherit pub_methods_classshaka_1_1media_1_1mp4_1_1Segmenter"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d0/d93/classshaka_1_1media_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d26/classshaka_1_1media_1_1mp4_1_1Segmenter.html#a7706ce1829da84b1155a2244c22411bf">AddSample</a> (const <a class="el" href="../../d8/d5c/classshaka_1_1media_1_1MediaStream.html">MediaStream</a> *stream, std::shared_ptr&lt; <a class="el" href="../../d7/d6d/classshaka_1_1media_1_1MediaSample.html">MediaSample</a> &gt; sample)</td></tr>
<tr class="separator:a7706ce1829da84b1155a2244c22411bf inherit pub_methods_classshaka_1_1media_1_1mp4_1_1Segmenter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab73caca6e3c9821a5f17c236bd798a1b inherit pub_methods_classshaka_1_1media_1_1mp4_1_1Segmenter"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d0/d93/classshaka_1_1media_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/d26/classshaka_1_1media_1_1mp4_1_1Segmenter.html#ab73caca6e3c9821a5f17c236bd798a1b">AddSample</a> (const <a class="el" href="../../d5/db1/classshaka_1_1media_1_1StreamInfo.html">StreamInfo</a> &amp;stream_Info, std::shared_ptr&lt; <a class="el" href="../../d7/d6d/classshaka_1_1media_1_1MediaSample.html">MediaSample</a> &gt; sample)</td></tr>
<tr class="separator:ab73caca6e3c9821a5f17c236bd798a1b inherit pub_methods_classshaka_1_1media_1_1mp4_1_1Segmenter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade1d84a501370686f3537840ae3a9fbc inherit pub_methods_classshaka_1_1media_1_1mp4_1_1Segmenter"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ade1d84a501370686f3537840ae3a9fbc"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><b>GetReferenceTimeScale</b> () const </td></tr>
<tr class="separator:ade1d84a501370686f3537840ae3a9fbc inherit pub_methods_classshaka_1_1media_1_1mp4_1_1Segmenter"><td class="memSeparator" colspan="2">&#160;</td></tr>
@ -209,7 +209,7 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>set_progress_target</
<p>Implements <a class="el" href="../../d9/d26/classshaka_1_1media_1_1mp4_1_1Segmenter.html#a7ab68d898343b322dc32c08ad42e859c">shaka::media::mp4::Segmenter</a>.</p>
<p>Definition at line <a class="el" href="../../de/d1e/mp4_2single__segment__segmenter_8cc_source.html#l00045">45</a> of file <a class="el" href="../../de/d1e/mp4_2single__segment__segmenter_8cc_source.html">single_segment_segmenter.cc</a>.</p>
<p>Definition at line <a class="el" href="../../de/d1e/mp4_2single__segment__segmenter_8cc_source.html#l00044">44</a> of file <a class="el" href="../../de/d1e/mp4_2single__segment__segmenter_8cc_source.html">single_segment_segmenter.cc</a>.</p>
</div>
</div>
@ -248,7 +248,7 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>set_progress_target</
<p>Implements <a class="el" href="../../d9/d26/classshaka_1_1media_1_1mp4_1_1Segmenter.html#a3a1c6721aa53a124af8be50bb3f7599c">shaka::media::mp4::Segmenter</a>.</p>
<p>Definition at line <a class="el" href="../../de/d1e/mp4_2single__segment__segmenter_8cc_source.html#l00038">38</a> of file <a class="el" href="../../de/d1e/mp4_2single__segment__segmenter_8cc_source.html">single_segment_segmenter.cc</a>.</p>
<p>Definition at line <a class="el" href="../../de/d1e/mp4_2single__segment__segmenter_8cc_source.html#l00037">37</a> of file <a class="el" href="../../de/d1e/mp4_2single__segment__segmenter_8cc_source.html">single_segment_segmenter.cc</a>.</p>
</div>
</div>
@ -259,7 +259,7 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>set_progress_target</
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -111,15 +111,16 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
<tr bgcolor="#f0f0f0"><td class="entry"><b>next_output_stream_index</b>() const (defined in <a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a>)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>num_input_streams</b>() (defined in <a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a>)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>num_input_streams</b>() const (defined in <a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a>)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../d6/d4c/classshaka_1_1media_1_1EncryptionHandler.html#a7887e6060eb572036674ecb9a7e045c4">Process</a>(std::unique_ptr&lt; StreamData &gt; stream_data) override</td><td class="entry"><a class="el" href="../../d6/d4c/classshaka_1_1media_1_1EncryptionHandler.html">shaka::media::EncryptionHandler</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html#aced66ff3e906e7dd45f1f3771d61edd7">SetHandler</a>(int output_stream_index, std::shared_ptr&lt; MediaHandler &gt; handler)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html#a7b61972eedda125b436dc4d26f88c1e6">ValidateOutputStreamIndex</a>(int stream_index) const </td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>~EncryptionHandler</b>() override (defined in <a class="el" href="../../d6/d4c/classshaka_1_1media_1_1EncryptionHandler.html">shaka::media::EncryptionHandler</a>)</td><td class="entry"><a class="el" href="../../d6/d4c/classshaka_1_1media_1_1EncryptionHandler.html">shaka::media::EncryptionHandler</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~MediaHandler</b>()=default (defined in <a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a>)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>output_handlers</b>() (defined in <a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a>)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="../../d6/d4c/classshaka_1_1media_1_1EncryptionHandler.html#a7887e6060eb572036674ecb9a7e045c4">Process</a>(std::unique_ptr&lt; StreamData &gt; stream_data) override</td><td class="entry"><a class="el" href="../../d6/d4c/classshaka_1_1media_1_1EncryptionHandler.html">shaka::media::EncryptionHandler</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html#aced66ff3e906e7dd45f1f3771d61edd7">SetHandler</a>(int output_stream_index, std::shared_ptr&lt; MediaHandler &gt; handler)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html#a7b61972eedda125b436dc4d26f88c1e6">ValidateOutputStreamIndex</a>(int stream_index) const </td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~EncryptionHandler</b>() override (defined in <a class="el" href="../../d6/d4c/classshaka_1_1media_1_1EncryptionHandler.html">shaka::media::EncryptionHandler</a>)</td><td class="entry"><a class="el" href="../../d6/d4c/classshaka_1_1media_1_1EncryptionHandler.html">shaka::media::EncryptionHandler</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>~MediaHandler</b>()=default (defined in <a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a>)</td><td class="entry"><a class="el" href="../../da/dfd/classshaka_1_1media_1_1MediaHandler.html">shaka::media::MediaHandler</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -482,7 +482,7 @@ Additional Inherited Members</h2></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -123,7 +123,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -118,7 +118,7 @@ int64_t&#160;</td><td class="memItemRight" valign="bottom"><b>duration</b> = 0</
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -108,7 +108,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -224,7 +224,7 @@ Static Public Member Functions</h2></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -173,7 +173,7 @@ Additional Inherited Members</h2></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -222,7 +222,7 @@ Static Public Member Functions</h2></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -205,7 +205,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -165,7 +165,7 @@ AES_KEY *&#160;</td><td class="memItemRight" valign="bottom"><b>mutable_aes_key<
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -217,7 +217,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -106,245 +106,178 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="preprocessor">#include &quot;packager/base/logging.h&quot;</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#include &quot;packager/base/strings/string_number_conversions.h&quot;</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/fixed_key_source.h&quot;</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/media_stream.h&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/muxer.h&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/muxer_options.h&quot;</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/playready_key_source.h&quot;</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/request_signer.h&quot;</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/stream_info.h&quot;</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/widevine_key_source.h&quot;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="preprocessor">#include &quot;packager/media/file/file.h&quot;</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="preprocessor">#include &quot;packager/mpd/base/mpd_builder.h&quot;</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;DEFINE_bool(mp4_use_decoding_timestamp_in_timeline,</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keyword">false</span>,</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="stringliteral">&quot;If set, decoding timestamp instead of presentation timestamp will &quot;</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="stringliteral">&quot;be used when generating media timeline, e.g. timestamps in sidx &quot;</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <span class="stringliteral">&quot;and mpd. This is to workaround a Chromium bug that decoding &quot;</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <span class="stringliteral">&quot;timestamp is used in buffered range, https://crbug.com/398130.&quot;</span>);</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;DEFINE_bool(dump_stream_info, <span class="keyword">false</span>, <span class="stringliteral">&quot;Dump demuxed stream info.&quot;</span>);</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/muxer_options.h&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/playready_key_source.h&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/request_signer.h&quot;</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/widevine_key_source.h&quot;</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="preprocessor">#include &quot;packager/media/file/file.h&quot;</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &quot;packager/mpd/base/mpd_options.h&quot;</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;DEFINE_bool(mp4_use_decoding_timestamp_in_timeline,</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keyword">false</span>,</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="stringliteral">&quot;If set, decoding timestamp instead of presentation timestamp will &quot;</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="stringliteral">&quot;be used when generating media timeline, e.g. timestamps in sidx &quot;</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="stringliteral">&quot;and mpd. This is to workaround a Chromium bug that decoding &quot;</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="stringliteral">&quot;timestamp is used in buffered range, https://crbug.com/398130.&quot;</span>);</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;DEFINE_bool(dump_stream_info, <span class="keyword">false</span>, <span class="stringliteral">&quot;Dump demuxed stream info.&quot;</span>);</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="keyword">namespace </span>shaka {</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="keyword">namespace </span>media {</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="keyword">namespace </span>shaka {</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keyword">namespace </span>media {</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;std::unique_ptr&lt;RequestSigner&gt; CreateSigner() {</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; std::unique_ptr&lt;RequestSigner&gt; signer;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keywordtype">void</span> DumpStreamInfo(<span class="keyword">const</span> std::vector&lt;std::unique_ptr&lt;MediaStream&gt;&gt;&amp; streams) {</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; printf(<span class="stringliteral">&quot;Found %zu stream(s).\n&quot;</span>, streams.size());</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; streams.size(); ++i)</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; printf(<span class="stringliteral">&quot;Stream [%zu] %s\n&quot;</span>, i, streams[i]-&gt;info()-&gt;ToString().c_str());</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;}</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;std::unique_ptr&lt;RequestSigner&gt; CreateSigner() {</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; std::unique_ptr&lt;RequestSigner&gt; signer;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordflow">if</span> (!FLAGS_aes_signing_key.empty()) {</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; signer.reset(<a class="code" href="../../d9/d8c/classshaka_1_1media_1_1AesRequestSigner.html#a43f4cc9fad9901fa905805be81f7d58c">AesRequestSigner::CreateSigner</a>(</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; FLAGS_signer, FLAGS_aes_signing_key, FLAGS_aes_signing_iv));</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">if</span> (!signer) {</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; LOG(ERROR) &lt;&lt; <span class="stringliteral">&quot;Cannot create an AES signer object from &#39;&quot;</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; &lt;&lt; FLAGS_aes_signing_key &lt;&lt; <span class="stringliteral">&quot;&#39;:&#39;&quot;</span> &lt;&lt; FLAGS_aes_signing_iv</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; &lt;&lt; <span class="stringliteral">&quot;&#39;.&quot;</span>;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;RequestSigner&gt;();</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; }</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!FLAGS_rsa_signing_key_path.empty()) {</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; std::string rsa_private_key;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="../../d3/d61/classshaka_1_1media_1_1File.html#a622dbc8abacebb40b816aa0174ba7c60">File::ReadFileToString</a>(FLAGS_rsa_signing_key_path.c_str(),</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; &amp;rsa_private_key)) {</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; LOG(ERROR) &lt;&lt; <span class="stringliteral">&quot;Failed to read from &#39;&quot;</span> &lt;&lt; FLAGS_rsa_signing_key_path</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; &lt;&lt; <span class="stringliteral">&quot;&#39;.&quot;</span>;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;RequestSigner&gt;();</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; }</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; signer.reset(<a class="code" href="../../d7/ddd/classshaka_1_1media_1_1RsaRequestSigner.html#af6af635a7c0a01bb638befb71b88386c">RsaRequestSigner::CreateSigner</a>(FLAGS_signer, rsa_private_key));</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">if</span> (!signer) {</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; LOG(ERROR) &lt;&lt; <span class="stringliteral">&quot;Cannot create a RSA signer object from &#39;&quot;</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; &lt;&lt; FLAGS_rsa_signing_key_path &lt;&lt; <span class="stringliteral">&quot;&#39;.&quot;</span>;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;RequestSigner&gt;();</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; }</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; }</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">return</span> signer;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;}</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;std::unique_ptr&lt;KeySource&gt; CreateEncryptionKeySource() {</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; std::unique_ptr&lt;KeySource&gt; encryption_key_source;</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">if</span> (FLAGS_enable_widevine_encryption) {</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; std::unique_ptr&lt;WidevineKeySource&gt; widevine_key_source(</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keyword">new</span> WidevineKeySource(FLAGS_key_server_url, FLAGS_include_common_pssh));</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">if</span> (!FLAGS_signer.empty()) {</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; std::unique_ptr&lt;RequestSigner&gt; request_signer(CreateSigner());</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">if</span> (!request_signer)</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;KeySource&gt;();</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; widevine_key_source-&gt;set_signer(std::move(request_signer));</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; }</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; std::vector&lt;uint8_t&gt; content_id;</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">if</span> (!base::HexStringToBytes(FLAGS_content_id, &amp;content_id)) {</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; LOG(ERROR) &lt;&lt; <span class="stringliteral">&quot;Invalid content_id hex string specified.&quot;</span>;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;KeySource&gt;();</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; }</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; Status status = widevine_key_source-&gt;FetchKeys(content_id, FLAGS_policy);</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">if</span> (!status.ok()) {</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; LOG(ERROR) &lt;&lt; <span class="stringliteral">&quot;Widevine encryption key source failed to fetch keys: &quot;</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; &lt;&lt; status.ToString();</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;KeySource&gt;();</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; }</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; encryption_key_source = std::move(widevine_key_source);</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (FLAGS_enable_fixed_key_encryption) {</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; encryption_key_source = <a class="code" href="../../d0/dac/classshaka_1_1media_1_1FixedKeySource.html#a9a91ba439d785022a1e2ceeaa9ebe81a">FixedKeySource::CreateFromHexStrings</a>(</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; FLAGS_key_id, FLAGS_key, FLAGS_pssh, FLAGS_iv);</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (FLAGS_enable_playready_encryption) {</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">if</span> (!FLAGS_playready_key_id.empty() &amp;&amp; !FLAGS_playready_key.empty()) {</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; encryption_key_source = <a class="code" href="../../d4/da6/classshaka_1_1media_1_1PlayReadyKeySource.html#a4f539e8a54fef68aea5629489669508b">PlayReadyKeySource::CreateFromKeyAndKeyId</a>(</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; FLAGS_playready_key_id, FLAGS_playready_key);</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!FLAGS_playready_server_url.empty() &amp;&amp;</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; !FLAGS_program_identifier.empty()) {</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; std::unique_ptr&lt;PlayReadyKeySource&gt; playready_key_source;</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">if</span> (!FLAGS_client_cert_file.empty() &amp;&amp;</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; !FLAGS_client_cert_private_key_file.empty() &amp;&amp;</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; !FLAGS_client_cert_private_key_password.empty()) {</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; playready_key_source.reset(<span class="keyword">new</span> PlayReadyKeySource(</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; FLAGS_playready_server_url,</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; FLAGS_client_cert_file,</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; FLAGS_client_cert_private_key_file,</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; FLAGS_client_cert_private_key_password));</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; playready_key_source.reset(<span class="keyword">new</span> PlayReadyKeySource(</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; FLAGS_playready_server_url));</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; }</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">if</span> (!FLAGS_ca_file.empty()) {</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; playready_key_source-&gt;<a class="code" href="../../d4/da6/classshaka_1_1media_1_1PlayReadyKeySource.html#adeac90b9cff39bfa259f81ff3e93679c">SetCaFile</a>(FLAGS_ca_file);</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; }</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; playready_key_source-&gt;FetchKeysWithProgramIdentifier(FLAGS_program_identifier);</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; encryption_key_source = std::move(playready_key_source);</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; LOG(ERROR) &lt;&lt; <span class="stringliteral">&quot;Error creating PlayReady key source.&quot;</span>;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;KeySource&gt;();</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; }</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">return</span> encryption_key_source;</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;}</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;std::unique_ptr&lt;KeySource&gt; CreateDecryptionKeySource() {</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; std::unique_ptr&lt;KeySource&gt; decryption_key_source;</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">if</span> (FLAGS_enable_widevine_decryption) {</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; std::unique_ptr&lt;WidevineKeySource&gt; widevine_key_source(</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keyword">new</span> WidevineKeySource(FLAGS_key_server_url, FLAGS_include_common_pssh));</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">if</span> (!FLAGS_signer.empty()) {</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; std::unique_ptr&lt;RequestSigner&gt; request_signer(CreateSigner());</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordflow">if</span> (!request_signer)</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;KeySource&gt;();</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; widevine_key_source-&gt;set_signer(std::move(request_signer));</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; }</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; decryption_key_source = std::move(widevine_key_source);</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (FLAGS_enable_fixed_key_decryption) {</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> kNoPssh[] = <span class="stringliteral">&quot;&quot;</span>;</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> kNoIv[] = <span class="stringliteral">&quot;&quot;</span>;</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; decryption_key_source = <a class="code" href="../../d0/dac/classshaka_1_1media_1_1FixedKeySource.html#a9a91ba439d785022a1e2ceeaa9ebe81a">FixedKeySource::CreateFromHexStrings</a>(</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; FLAGS_key_id, FLAGS_key, kNoPssh, kNoIv);</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; }</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">return</span> decryption_key_source;</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;}</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="keywordtype">bool</span> GetMuxerOptions(MuxerOptions* muxer_options) {</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; DCHECK(muxer_options);</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; muxer_options-&gt;segment_duration = FLAGS_segment_duration;</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; muxer_options-&gt;fragment_duration = FLAGS_fragment_duration;</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; muxer_options-&gt;segment_sap_aligned = FLAGS_segment_sap_aligned;</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; muxer_options-&gt;fragment_sap_aligned = FLAGS_fragment_sap_aligned;</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; muxer_options-&gt;num_subsegments_per_sidx = FLAGS_num_subsegments_per_sidx;</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; muxer_options-&gt;webm_subsample_encryption = FLAGS_webm_subsample_encryption;</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">if</span> (FLAGS_mp4_use_decoding_timestamp_in_timeline) {</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; LOG(WARNING) &lt;&lt; <span class="stringliteral">&quot;Flag --mp4_use_decoding_timestamp_in_timeline is set. &quot;</span></div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="stringliteral">&quot;Note that it is a temporary hack to workaround Chromium &quot;</span></div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="stringliteral">&quot;bug https://crbug.com/398130. The flag may be removed &quot;</span></div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="stringliteral">&quot;when the Chromium bug is fixed.&quot;</span>;</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; }</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; muxer_options-&gt;mp4_use_decoding_timestamp_in_timeline =</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; FLAGS_mp4_use_decoding_timestamp_in_timeline;</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; muxer_options-&gt;temp_dir = FLAGS_temp_dir;</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;}</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="keywordtype">bool</span> GetMpdOptions(<span class="keywordtype">bool</span> on_demand_profile, MpdOptions* mpd_options) {</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; DCHECK(mpd_options);</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; mpd_options-&gt;dash_profile =</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; on_demand_profile ? DashProfile::kOnDemand : DashProfile::kLive;</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; mpd_options-&gt;mpd_type =</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; (on_demand_profile || FLAGS_generate_static_mpd)</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; ? MpdType::kStatic</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; : MpdType::kDynamic;</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; mpd_options-&gt;availability_time_offset = FLAGS_availability_time_offset;</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; mpd_options-&gt;minimum_update_period = FLAGS_minimum_update_period;</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; mpd_options-&gt;min_buffer_time = FLAGS_min_buffer_time;</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; mpd_options-&gt;time_shift_buffer_depth = FLAGS_time_shift_buffer_depth;</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; mpd_options-&gt;suggested_presentation_delay =</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; FLAGS_suggested_presentation_delay;</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; mpd_options-&gt;default_language = FLAGS_default_language;</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;}</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;MediaStream* FindFirstStreamOfType(</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keyword">const</span> std::vector&lt;std::unique_ptr&lt;MediaStream&gt;&gt;&amp; streams,</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; StreamType stream_type) {</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> std::unique_ptr&lt;MediaStream&gt;&amp; stream : streams) {</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">if</span> (stream-&gt;info()-&gt;stream_type() == stream_type)</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">return</span> stream.get();</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; }</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;}</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;MediaStream* FindFirstVideoStream(</div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keyword">const</span> std::vector&lt;std::unique_ptr&lt;MediaStream&gt;&gt;&amp; streams) {</div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">return</span> FindFirstStreamOfType(streams, kStreamVideo);</div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;}</div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;MediaStream* FindFirstAudioStream(</div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keyword">const</span> std::vector&lt;std::unique_ptr&lt;MediaStream&gt;&gt;&amp; streams) {</div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">return</span> FindFirstStreamOfType(streams, kStreamAudio);</div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;}</div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="keywordtype">bool</span> AddStreamToMuxer(<span class="keyword">const</span> std::vector&lt;std::unique_ptr&lt;MediaStream&gt;&gt;&amp; streams,</div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="keyword">const</span> std::string&amp; stream_selector,</div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="keyword">const</span> std::string&amp; language_override,</div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; Muxer* muxer) {</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; DCHECK(muxer);</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;</div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; MediaStream* stream = <span class="keyword">nullptr</span>;</div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <span class="keywordflow">if</span> (stream_selector == <span class="stringliteral">&quot;video&quot;</span>) {</div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; stream = FindFirstVideoStream(streams);</div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (stream_selector == <span class="stringliteral">&quot;audio&quot;</span>) {</div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; stream = FindFirstAudioStream(streams);</div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="comment">// Expect stream_selector to be a zero based stream id.</span></div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordtype">size_t</span> stream_id;</div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordflow">if</span> (!base::StringToSizeT(stream_selector, &amp;stream_id) ||</div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; stream_id &gt;= streams.size()) {</div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; LOG(ERROR) &lt;&lt; <span class="stringliteral">&quot;Invalid argument --stream=&quot;</span> &lt;&lt; stream_selector &lt;&lt; <span class="stringliteral">&quot;; &quot;</span></div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; &lt;&lt; <span class="stringliteral">&quot;should be &#39;audio&#39;, &#39;video&#39;, or a number within [0, &quot;</span></div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; &lt;&lt; streams.size() - 1 &lt;&lt; <span class="stringliteral">&quot;].&quot;</span>;</div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; }</div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; stream = streams[stream_id].get();</div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; DCHECK(stream);</div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; }</div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;</div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="comment">// This could occur only if stream_selector=audio|video and the corresponding</span></div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="comment">// stream does not exist in the input.</span></div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordflow">if</span> (!stream) {</div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; LOG(ERROR) &lt;&lt; <span class="stringliteral">&quot;No &quot;</span> &lt;&lt; stream_selector &lt;&lt; <span class="stringliteral">&quot; stream found in the input.&quot;</span>;</div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; }</div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;</div>
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keywordflow">if</span> (!language_override.empty()) {</div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; stream-&gt;info()-&gt;set_language(language_override);</div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; }</div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;</div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; muxer-&gt;AddStream(stream);</div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;}</div>
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;</div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;} <span class="comment">// namespace media</span></div>
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;} <span class="comment">// namespace shaka</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordflow">if</span> (!FLAGS_aes_signing_key.empty()) {</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; signer.reset(<a class="code" href="../../d9/d8c/classshaka_1_1media_1_1AesRequestSigner.html#a43f4cc9fad9901fa905805be81f7d58c">AesRequestSigner::CreateSigner</a>(</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; FLAGS_signer, FLAGS_aes_signing_key, FLAGS_aes_signing_iv));</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">if</span> (!signer) {</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; LOG(ERROR) &lt;&lt; <span class="stringliteral">&quot;Cannot create an AES signer object from &#39;&quot;</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; &lt;&lt; FLAGS_aes_signing_key &lt;&lt; <span class="stringliteral">&quot;&#39;:&#39;&quot;</span> &lt;&lt; FLAGS_aes_signing_iv</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; &lt;&lt; <span class="stringliteral">&quot;&#39;.&quot;</span>;</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;RequestSigner&gt;();</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; }</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!FLAGS_rsa_signing_key_path.empty()) {</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; std::string rsa_private_key;</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="../../d3/d61/classshaka_1_1media_1_1File.html#a622dbc8abacebb40b816aa0174ba7c60">File::ReadFileToString</a>(FLAGS_rsa_signing_key_path.c_str(),</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; &amp;rsa_private_key)) {</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; LOG(ERROR) &lt;&lt; <span class="stringliteral">&quot;Failed to read from &#39;&quot;</span> &lt;&lt; FLAGS_rsa_signing_key_path</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; &lt;&lt; <span class="stringliteral">&quot;&#39;.&quot;</span>;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;RequestSigner&gt;();</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; }</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; signer.reset(<a class="code" href="../../d7/ddd/classshaka_1_1media_1_1RsaRequestSigner.html#af6af635a7c0a01bb638befb71b88386c">RsaRequestSigner::CreateSigner</a>(FLAGS_signer, rsa_private_key));</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">if</span> (!signer) {</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; LOG(ERROR) &lt;&lt; <span class="stringliteral">&quot;Cannot create a RSA signer object from &#39;&quot;</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; &lt;&lt; FLAGS_rsa_signing_key_path &lt;&lt; <span class="stringliteral">&quot;&#39;.&quot;</span>;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;RequestSigner&gt;();</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; }</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; }</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">return</span> signer;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;}</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;std::unique_ptr&lt;KeySource&gt; CreateEncryptionKeySource() {</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; std::unique_ptr&lt;KeySource&gt; encryption_key_source;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">if</span> (FLAGS_enable_widevine_encryption) {</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; std::unique_ptr&lt;WidevineKeySource&gt; widevine_key_source(</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keyword">new</span> WidevineKeySource(FLAGS_key_server_url, FLAGS_include_common_pssh));</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">if</span> (!FLAGS_signer.empty()) {</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; std::unique_ptr&lt;RequestSigner&gt; request_signer(CreateSigner());</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">if</span> (!request_signer)</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;KeySource&gt;();</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; widevine_key_source-&gt;set_signer(std::move(request_signer));</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; std::vector&lt;uint8_t&gt; content_id;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">if</span> (!base::HexStringToBytes(FLAGS_content_id, &amp;content_id)) {</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; LOG(ERROR) &lt;&lt; <span class="stringliteral">&quot;Invalid content_id hex string specified.&quot;</span>;</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;KeySource&gt;();</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; }</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; Status status = widevine_key_source-&gt;FetchKeys(content_id, FLAGS_policy);</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">if</span> (!status.ok()) {</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; LOG(ERROR) &lt;&lt; <span class="stringliteral">&quot;Widevine encryption key source failed to fetch keys: &quot;</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; &lt;&lt; status.ToString();</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;KeySource&gt;();</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; }</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; encryption_key_source = std::move(widevine_key_source);</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (FLAGS_enable_fixed_key_encryption) {</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; encryption_key_source = <a class="code" href="../../d0/dac/classshaka_1_1media_1_1FixedKeySource.html#a9a91ba439d785022a1e2ceeaa9ebe81a">FixedKeySource::CreateFromHexStrings</a>(</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; FLAGS_key_id, FLAGS_key, FLAGS_pssh, FLAGS_iv);</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (FLAGS_enable_playready_encryption) {</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">if</span> (!FLAGS_playready_key_id.empty() &amp;&amp; !FLAGS_playready_key.empty()) {</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; encryption_key_source = <a class="code" href="../../d4/da6/classshaka_1_1media_1_1PlayReadyKeySource.html#a4f539e8a54fef68aea5629489669508b">PlayReadyKeySource::CreateFromKeyAndKeyId</a>(</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; FLAGS_playready_key_id, FLAGS_playready_key);</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!FLAGS_playready_server_url.empty() &amp;&amp;</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; !FLAGS_program_identifier.empty()) {</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; std::unique_ptr&lt;PlayReadyKeySource&gt; playready_key_source;</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">if</span> (!FLAGS_client_cert_file.empty() &amp;&amp;</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; !FLAGS_client_cert_private_key_file.empty() &amp;&amp;</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; !FLAGS_client_cert_private_key_password.empty()) {</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; playready_key_source.reset(<span class="keyword">new</span> PlayReadyKeySource(</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; FLAGS_playready_server_url,</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; FLAGS_client_cert_file,</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; FLAGS_client_cert_private_key_file,</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; FLAGS_client_cert_private_key_password));</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; playready_key_source.reset(<span class="keyword">new</span> PlayReadyKeySource(</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; FLAGS_playready_server_url));</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; }</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">if</span> (!FLAGS_ca_file.empty()) {</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; playready_key_source-&gt;<a class="code" href="../../d4/da6/classshaka_1_1media_1_1PlayReadyKeySource.html#adeac90b9cff39bfa259f81ff3e93679c">SetCaFile</a>(FLAGS_ca_file);</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; playready_key_source-&gt;FetchKeysWithProgramIdentifier(FLAGS_program_identifier);</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; encryption_key_source = std::move(playready_key_source);</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; LOG(ERROR) &lt;&lt; <span class="stringliteral">&quot;Error creating PlayReady key source.&quot;</span>;</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;KeySource&gt;();</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; }</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">return</span> encryption_key_source;</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;}</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;std::unique_ptr&lt;KeySource&gt; CreateDecryptionKeySource() {</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; std::unique_ptr&lt;KeySource&gt; decryption_key_source;</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">if</span> (FLAGS_enable_widevine_decryption) {</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; std::unique_ptr&lt;WidevineKeySource&gt; widevine_key_source(</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keyword">new</span> WidevineKeySource(FLAGS_key_server_url, FLAGS_include_common_pssh));</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">if</span> (!FLAGS_signer.empty()) {</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; std::unique_ptr&lt;RequestSigner&gt; request_signer(CreateSigner());</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">if</span> (!request_signer)</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;KeySource&gt;();</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; widevine_key_source-&gt;set_signer(std::move(request_signer));</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; decryption_key_source = std::move(widevine_key_source);</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (FLAGS_enable_fixed_key_decryption) {</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> kNoPssh[] = <span class="stringliteral">&quot;&quot;</span>;</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> kNoIv[] = <span class="stringliteral">&quot;&quot;</span>;</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; decryption_key_source = <a class="code" href="../../d0/dac/classshaka_1_1media_1_1FixedKeySource.html#a9a91ba439d785022a1e2ceeaa9ebe81a">FixedKeySource::CreateFromHexStrings</a>(</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; FLAGS_key_id, FLAGS_key, kNoPssh, kNoIv);</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; }</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">return</span> decryption_key_source;</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;}</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="keywordtype">bool</span> GetMuxerOptions(MuxerOptions* muxer_options) {</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; DCHECK(muxer_options);</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; muxer_options-&gt;segment_duration = FLAGS_segment_duration;</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; muxer_options-&gt;fragment_duration = FLAGS_fragment_duration;</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; muxer_options-&gt;segment_sap_aligned = FLAGS_segment_sap_aligned;</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; muxer_options-&gt;fragment_sap_aligned = FLAGS_fragment_sap_aligned;</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; muxer_options-&gt;num_subsegments_per_sidx = FLAGS_num_subsegments_per_sidx;</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; muxer_options-&gt;webm_subsample_encryption = FLAGS_webm_subsample_encryption;</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">if</span> (FLAGS_mp4_use_decoding_timestamp_in_timeline) {</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; LOG(WARNING) &lt;&lt; <span class="stringliteral">&quot;Flag --mp4_use_decoding_timestamp_in_timeline is set. &quot;</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="stringliteral">&quot;Note that it is a temporary hack to workaround Chromium &quot;</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="stringliteral">&quot;bug https://crbug.com/398130. The flag may be removed &quot;</span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="stringliteral">&quot;when the Chromium bug is fixed.&quot;</span>;</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; }</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; muxer_options-&gt;mp4_use_decoding_timestamp_in_timeline =</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; FLAGS_mp4_use_decoding_timestamp_in_timeline;</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; muxer_options-&gt;temp_dir = FLAGS_temp_dir;</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;}</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="keywordtype">bool</span> GetMpdOptions(<span class="keywordtype">bool</span> on_demand_profile, MpdOptions* mpd_options) {</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; DCHECK(mpd_options);</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; mpd_options-&gt;dash_profile =</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; on_demand_profile ? DashProfile::kOnDemand : DashProfile::kLive;</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; mpd_options-&gt;mpd_type =</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; (on_demand_profile || FLAGS_generate_static_mpd)</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; ? MpdType::kStatic</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; : MpdType::kDynamic;</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; mpd_options-&gt;availability_time_offset = FLAGS_availability_time_offset;</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; mpd_options-&gt;minimum_update_period = FLAGS_minimum_update_period;</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; mpd_options-&gt;min_buffer_time = FLAGS_min_buffer_time;</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; mpd_options-&gt;time_shift_buffer_depth = FLAGS_time_shift_buffer_depth;</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; mpd_options-&gt;suggested_presentation_delay =</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; FLAGS_suggested_presentation_delay;</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; mpd_options-&gt;default_language = FLAGS_default_language;</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;}</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;} <span class="comment">// namespace media</span></div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;} <span class="comment">// namespace shaka</span></div>
<div class="ttc" id="classshaka_1_1media_1_1RsaRequestSigner_html_af6af635a7c0a01bb638befb71b88386c"><div class="ttname"><a href="../../d7/ddd/classshaka_1_1media_1_1RsaRequestSigner.html#af6af635a7c0a01bb638befb71b88386c">shaka::media::RsaRequestSigner::CreateSigner</a></div><div class="ttdeci">static RsaRequestSigner * CreateSigner(const std::string &amp;signer_name, const std::string &amp;pkcs1_rsa_key)</div><div class="ttdef"><b>Definition:</b> <a href="../../d4/df5/request__signer_8cc_source.html#l00064">request_signer.cc:64</a></div></div>
<div class="ttc" id="classshaka_1_1media_1_1AesRequestSigner_html_a43f4cc9fad9901fa905805be81f7d58c"><div class="ttname"><a href="../../d9/d8c/classshaka_1_1media_1_1AesRequestSigner.html#a43f4cc9fad9901fa905805be81f7d58c">shaka::media::AesRequestSigner::CreateSigner</a></div><div class="ttdeci">static AesRequestSigner * CreateSigner(const std::string &amp;signer_name, const std::string &amp;aes_key_hex, const std::string &amp;iv_hex)</div><div class="ttdef"><b>Definition:</b> <a href="../../d4/df5/request__signer_8cc_source.html#l00029">request_signer.cc:29</a></div></div>
<div class="ttc" id="classshaka_1_1media_1_1FixedKeySource_html_a9a91ba439d785022a1e2ceeaa9ebe81a"><div class="ttname"><a href="../../d0/dac/classshaka_1_1media_1_1FixedKeySource.html#a9a91ba439d785022a1e2ceeaa9ebe81a">shaka::media::FixedKeySource::CreateFromHexStrings</a></div><div class="ttdeci">static std::unique_ptr&lt; FixedKeySource &gt; CreateFromHexStrings(const std::string &amp;key_id_hex, const std::string &amp;key_hex, const std::string &amp;pssh_boxes_hex, const std::string &amp;iv_hex)</div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d6b/fixed__key__source_8cc_source.html#l00087">fixed_key_source.cc:87</a></div></div>
@ -354,7 +287,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -120,7 +120,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:06 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -376,7 +376,7 @@ Public Member Functions</h2></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -242,7 +242,7 @@ int&#160;</td><td class="memItemRight" valign="bottom"><b>chroma_array_type</b><
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -256,7 +256,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:06 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -249,7 +249,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -98,185 +98,184 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#include &lt;algorithm&gt;</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/media_sample.h&quot;</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/media_stream.h&quot;</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/muxer_options.h&quot;</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/stream_info.h&quot;</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="preprocessor">#include &quot;packager/media/file/file_util.h&quot;</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="preprocessor">#include &quot;packager/third_party/libwebm/src/mkvmuxer.hpp&quot;</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="preprocessor">#include &quot;packager/third_party/libwebm/src/mkvmuxerutil.hpp&quot;</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#include &quot;packager/third_party/libwebm/src/webmids.hpp&quot;</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="keyword">namespace </span>shaka {</div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="keyword">namespace </span>media {</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="keyword">namespace </span>webm {</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="keyword">namespace </span>{</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment">// Cues will be inserted before clusters. All clusters will be shifted down by</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment">// the size of cues. However, cluster positions affect the size of cues. This</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment">// function adjusts cues size iteratively until it is stable.</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment">// Returns the size of updated Cues.</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;uint64_t UpdateCues(mkvmuxer::Cues* cues) {</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; uint64_t cues_size = cues-&gt;Size();</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; uint64_t adjustment = cues_size;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keywordflow">while</span> (adjustment != 0) {</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; cues-&gt;cue_entries_size(); ++i) {</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; mkvmuxer::CuePoint* cue = cues-&gt;GetCueByIndex(i);</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; cue-&gt;set_cluster_pos(cue-&gt;cluster_pos() + adjustment);</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; }</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; uint64_t new_cues_size = cues-&gt;Size();</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; DCHECK_LE(cues_size, new_cues_size);</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; adjustment = new_cues_size - cues_size;</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; cues_size = new_cues_size;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; }</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordflow">return</span> cues_size;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;}</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment">// Skips a given number of bytes in a file by reading. This allows</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">// forward-seeking in non-seekable files.</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keywordtype">bool</span> ReadSkip(File* file, int64_t byte_count) {</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keyword">const</span> int64_t kBufferSize = 0x40000; <span class="comment">// 256KB.</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; std::unique_ptr&lt;char[]&gt; buffer(<span class="keyword">new</span> <span class="keywordtype">char</span>[kBufferSize]);</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; int64_t bytes_read = 0;</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordflow">while</span> (bytes_read &lt; byte_count) {</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; int64_t size = std::min(kBufferSize, byte_count - bytes_read);</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; int64_t result = file-&gt;Read(buffer.get(), size);</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="comment">// Only give success if there are no errors, not at EOF, and read exactly</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="comment">// byte_count bytes.</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordflow">if</span> (result &lt;= 0)</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; bytes_read += result;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; }</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; DCHECK_EQ(bytes_read, byte_count);</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;}</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;} <span class="comment">// namespace</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;TwoPassSingleSegmentSegmenter::TwoPassSingleSegmentSegmenter(</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keyword">const</span> MuxerOptions&amp; options)</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; : SingleSegmentSegmenter(options) {}</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;TwoPassSingleSegmentSegmenter::~TwoPassSingleSegmentSegmenter() {}</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;Status TwoPassSingleSegmentSegmenter::DoInitialize(</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; std::unique_ptr&lt;MkvWriter&gt; writer) {</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="comment">// Assume the amount of time to copy the temp file as the same amount</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="comment">// of time as to make it.</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; set_progress_target(info()-&gt;duration() * 2);</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; real_writer_ = std::move(writer);</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="../../d8/daf/namespaceshaka.html#a66e7e156c1f83435fb6c130803e48f62">TempFilePath</a>(options().temp_dir, &amp;temp_file_name_))</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">return</span> Status(error::FILE_FAILURE, <span class="stringliteral">&quot;Unable to create temporary file.&quot;</span>);</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; std::unique_ptr&lt;MkvWriter&gt; temp(<span class="keyword">new</span> MkvWriter);</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; Status status = temp-&gt;Open(temp_file_name_);</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">if</span> (!status.ok())</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">return</span> status;</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">return</span> SingleSegmentSegmenter::DoInitialize(std::move(temp));</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;}</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;Status TwoPassSingleSegmentSegmenter::DoFinalize() {</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">if</span> (!cluster()-&gt;Finalize())</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">return</span> Status(error::FILE_FAILURE, <span class="stringliteral">&quot;Error finalizing cluster.&quot;</span>);</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keyword">const</span> uint64_t header_size = init_end() + 1;</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keyword">const</span> uint64_t cues_pos = header_size - segment_payload_pos();</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keyword">const</span> uint64_t cues_size = UpdateCues(cues());</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; seek_head()-&gt;set_cues_pos(cues_pos);</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; seek_head()-&gt;set_cluster_pos(cues_pos + cues_size);</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="comment">// Write the header to the real output file.</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keyword">const</span> uint64_t file_size = writer()-&gt;<a class="code" href="../../d1/d0a/classshaka_1_1media_1_1MkvWriter.html#a468dcd83a7c087cc83e755703488e92b">Position</a>() + cues_size;</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; Status temp = WriteSegmentHeader(file_size, real_writer_.get());</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">if</span> (!temp.ok())</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">return</span> temp;</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; DCHECK_EQ(real_writer_-&gt;Position(), <span class="keyword">static_cast&lt;</span>int64_t<span class="keyword">&gt;</span>(header_size));</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="comment">// Write the cues to the real output file.</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; set_index_start(real_writer_-&gt;Position());</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">if</span> (!cues()-&gt;Write(real_writer_.get()))</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">return</span> Status(error::FILE_FAILURE, <span class="stringliteral">&quot;Error writing Cues data.&quot;</span>);</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; set_index_end(real_writer_-&gt;Position() - 1);</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; DCHECK_EQ(real_writer_-&gt;Position(),</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keyword">static_cast&lt;</span>int64_t<span class="keyword">&gt;</span>(segment_payload_pos() + cues_pos + cues_size));</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="comment">// Close the temp file and open it for reading.</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; set_writer(std::unique_ptr&lt;MkvWriter&gt;());</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; std::unique_ptr&lt;File, FileCloser&gt; temp_reader(</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <a class="code" href="../../d3/d61/classshaka_1_1media_1_1File.html#aad6b77e734bb22d077ece029c9e735a4">File::Open</a>(temp_file_name_.c_str(), <span class="stringliteral">&quot;r&quot;</span>));</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">if</span> (!temp_reader)</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">return</span> Status(error::FILE_FAILURE, <span class="stringliteral">&quot;Error opening temp file.&quot;</span>);</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="comment">// Skip the header that has already been written.</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">if</span> (!ReadSkip(temp_reader.get(), header_size))</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">return</span> Status(error::FILE_FAILURE, <span class="stringliteral">&quot;Error reading temp file.&quot;</span>);</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="comment">// Copy the rest of the data over.</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">if</span> (!CopyFileWithClusterRewrite(temp_reader.get(), real_writer_.get(),</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; cluster()-&gt;Size())) {</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">return</span> Status(error::FILE_FAILURE, <span class="stringliteral">&quot;Error copying temp file.&quot;</span>);</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; }</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="comment">// Close and delete the temp file.</span></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; temp_reader.reset();</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="../../d3/d61/classshaka_1_1media_1_1File.html#a92cdfd68e6384dfcc14c78b20c98368e">File::Delete</a>(temp_file_name_.c_str())) {</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; LOG(WARNING) &lt;&lt; <span class="stringliteral">&quot;Unable to delete temporary file &quot;</span> &lt;&lt; temp_file_name_;</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; }</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">return</span> real_writer_-&gt;Close();</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;}</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="keywordtype">bool</span> TwoPassSingleSegmentSegmenter::CopyFileWithClusterRewrite(</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; File* source,</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; MkvWriter* dest,</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; uint64_t last_size) {</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> cluster_id_size = mkvmuxer::GetUIntSize(mkvmuxer::kMkvCluster);</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> cluster_size_size = 8; <span class="comment">// The size of the Cluster size integer.</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> cluster_header_size = cluster_id_size + cluster_size_size;</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="comment">// We are at the start of a cluster, so copy the ID.</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">if</span> (dest-&gt;WriteFromFile(source, cluster_id_size) != cluster_id_size)</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; cues()-&gt;cue_entries_size() - 1; ++i) {</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="comment">// Write the size of the cluster.</span></div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keyword">const</span> mkvmuxer::CuePoint* cue = cues()-&gt;GetCueByIndex(i);</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keyword">const</span> mkvmuxer::CuePoint* next_cue = cues()-&gt;GetCueByIndex(i + 1);</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keyword">const</span> int64_t cluster_payload_size =</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; next_cue-&gt;cluster_pos() - cue-&gt;cluster_pos() - cluster_header_size;</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">if</span> (mkvmuxer::WriteUIntSize(dest, cluster_payload_size, cluster_size_size))</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">if</span> (!ReadSkip(source, cluster_size_size))</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="comment">// Copy the cluster and the next cluster&#39;s ID.</span></div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; int64_t to_copy = cluster_payload_size + cluster_id_size;</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">if</span> (dest-&gt;WriteFromFile(source, to_copy) != to_copy)</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="comment">// Update the progress; need to convert from WebM timecode to ISO BMFF.</span></div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keyword">const</span> uint64_t webm_delta_time = next_cue-&gt;time() - cue-&gt;time();</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keyword">const</span> uint64_t delta_time = FromWebMTimecode(webm_delta_time);</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; UpdateProgress(delta_time);</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; }</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="comment">// The last cluster takes up until the cues.</span></div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keyword">const</span> uint64_t last_cluster_payload_size = last_size - cluster_header_size;</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">if</span> (mkvmuxer::WriteUIntSize(dest, last_cluster_payload_size,</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; cluster_size_size))</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">if</span> (!ReadSkip(source, cluster_size_size))</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="comment">// Copy the last cluster.</span></div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">return</span> dest-&gt;WriteFromFile(source) ==</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keyword">static_cast&lt;</span>int64_t<span class="keyword">&gt;</span>(last_cluster_payload_size);</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;}</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;} <span class="comment">// namespace webm</span></div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;} <span class="comment">// namespace media</span></div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;} <span class="comment">// namespace shaka</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/muxer_options.h&quot;</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="preprocessor">#include &quot;packager/media/base/stream_info.h&quot;</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="preprocessor">#include &quot;packager/media/file/file_util.h&quot;</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="preprocessor">#include &quot;packager/third_party/libwebm/src/mkvmuxer.hpp&quot;</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="preprocessor">#include &quot;packager/third_party/libwebm/src/mkvmuxerutil.hpp&quot;</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="preprocessor">#include &quot;packager/third_party/libwebm/src/webmids.hpp&quot;</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;</div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="keyword">namespace </span>shaka {</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="keyword">namespace </span>media {</div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="keyword">namespace </span>webm {</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="keyword">namespace </span>{</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment">// Cues will be inserted before clusters. All clusters will be shifted down by</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment">// the size of cues. However, cluster positions affect the size of cues. This</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment">// function adjusts cues size iteratively until it is stable.</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment">// Returns the size of updated Cues.</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;uint64_t UpdateCues(mkvmuxer::Cues* cues) {</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; uint64_t cues_size = cues-&gt;Size();</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; uint64_t adjustment = cues_size;</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keywordflow">while</span> (adjustment != 0) {</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; cues-&gt;cue_entries_size(); ++i) {</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; mkvmuxer::CuePoint* cue = cues-&gt;GetCueByIndex(i);</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; cue-&gt;set_cluster_pos(cue-&gt;cluster_pos() + adjustment);</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; }</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; uint64_t new_cues_size = cues-&gt;Size();</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; DCHECK_LE(cues_size, new_cues_size);</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; adjustment = new_cues_size - cues_size;</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; cues_size = new_cues_size;</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; }</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keywordflow">return</span> cues_size;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;}</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">// Skips a given number of bytes in a file by reading. This allows</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment">// forward-seeking in non-seekable files.</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">bool</span> ReadSkip(File* file, int64_t byte_count) {</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keyword">const</span> int64_t kBufferSize = 0x40000; <span class="comment">// 256KB.</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; std::unique_ptr&lt;char[]&gt; buffer(<span class="keyword">new</span> <span class="keywordtype">char</span>[kBufferSize]);</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; int64_t bytes_read = 0;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">while</span> (bytes_read &lt; byte_count) {</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; int64_t size = std::min(kBufferSize, byte_count - bytes_read);</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; int64_t result = file-&gt;Read(buffer.get(), size);</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="comment">// Only give success if there are no errors, not at EOF, and read exactly</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="comment">// byte_count bytes.</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordflow">if</span> (result &lt;= 0)</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; bytes_read += result;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; }</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; DCHECK_EQ(bytes_read, byte_count);</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;}</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;} <span class="comment">// namespace</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;TwoPassSingleSegmentSegmenter::TwoPassSingleSegmentSegmenter(</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">const</span> MuxerOptions&amp; options)</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; : SingleSegmentSegmenter(options) {}</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;TwoPassSingleSegmentSegmenter::~TwoPassSingleSegmentSegmenter() {}</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;Status TwoPassSingleSegmentSegmenter::DoInitialize(</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; std::unique_ptr&lt;MkvWriter&gt; writer) {</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="comment">// Assume the amount of time to copy the temp file as the same amount</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="comment">// of time as to make it.</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; set_progress_target(info()-&gt;duration() * 2);</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; real_writer_ = std::move(writer);</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="../../d8/daf/namespaceshaka.html#a66e7e156c1f83435fb6c130803e48f62">TempFilePath</a>(options().temp_dir, &amp;temp_file_name_))</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">return</span> Status(error::FILE_FAILURE, <span class="stringliteral">&quot;Unable to create temporary file.&quot;</span>);</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; std::unique_ptr&lt;MkvWriter&gt; temp(<span class="keyword">new</span> MkvWriter);</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; Status status = temp-&gt;Open(temp_file_name_);</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">if</span> (!status.ok())</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">return</span> status;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">return</span> SingleSegmentSegmenter::DoInitialize(std::move(temp));</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;}</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;Status TwoPassSingleSegmentSegmenter::DoFinalize() {</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">if</span> (!cluster()-&gt;Finalize())</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">return</span> Status(error::FILE_FAILURE, <span class="stringliteral">&quot;Error finalizing cluster.&quot;</span>);</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keyword">const</span> uint64_t header_size = init_end() + 1;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keyword">const</span> uint64_t cues_pos = header_size - segment_payload_pos();</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keyword">const</span> uint64_t cues_size = UpdateCues(cues());</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; seek_head()-&gt;set_cues_pos(cues_pos);</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; seek_head()-&gt;set_cluster_pos(cues_pos + cues_size);</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="comment">// Write the header to the real output file.</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keyword">const</span> uint64_t file_size = writer()-&gt;<a class="code" href="../../d1/d0a/classshaka_1_1media_1_1MkvWriter.html#a468dcd83a7c087cc83e755703488e92b">Position</a>() + cues_size;</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; Status temp = WriteSegmentHeader(file_size, real_writer_.get());</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">if</span> (!temp.ok())</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">return</span> temp;</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; DCHECK_EQ(real_writer_-&gt;Position(), <span class="keyword">static_cast&lt;</span>int64_t<span class="keyword">&gt;</span>(header_size));</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="comment">// Write the cues to the real output file.</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; set_index_start(real_writer_-&gt;Position());</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">if</span> (!cues()-&gt;Write(real_writer_.get()))</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">return</span> Status(error::FILE_FAILURE, <span class="stringliteral">&quot;Error writing Cues data.&quot;</span>);</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; set_index_end(real_writer_-&gt;Position() - 1);</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; DCHECK_EQ(real_writer_-&gt;Position(),</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keyword">static_cast&lt;</span>int64_t<span class="keyword">&gt;</span>(segment_payload_pos() + cues_pos + cues_size));</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="comment">// Close the temp file and open it for reading.</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; set_writer(std::unique_ptr&lt;MkvWriter&gt;());</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; std::unique_ptr&lt;File, FileCloser&gt; temp_reader(</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="../../d3/d61/classshaka_1_1media_1_1File.html#aad6b77e734bb22d077ece029c9e735a4">File::Open</a>(temp_file_name_.c_str(), <span class="stringliteral">&quot;r&quot;</span>));</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">if</span> (!temp_reader)</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">return</span> Status(error::FILE_FAILURE, <span class="stringliteral">&quot;Error opening temp file.&quot;</span>);</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="comment">// Skip the header that has already been written.</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">if</span> (!ReadSkip(temp_reader.get(), header_size))</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">return</span> Status(error::FILE_FAILURE, <span class="stringliteral">&quot;Error reading temp file.&quot;</span>);</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="comment">// Copy the rest of the data over.</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">if</span> (!CopyFileWithClusterRewrite(temp_reader.get(), real_writer_.get(),</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; cluster()-&gt;Size())) {</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">return</span> Status(error::FILE_FAILURE, <span class="stringliteral">&quot;Error copying temp file.&quot;</span>);</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; }</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="comment">// Close and delete the temp file.</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; temp_reader.reset();</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="../../d3/d61/classshaka_1_1media_1_1File.html#a92cdfd68e6384dfcc14c78b20c98368e">File::Delete</a>(temp_file_name_.c_str())) {</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; LOG(WARNING) &lt;&lt; <span class="stringliteral">&quot;Unable to delete temporary file &quot;</span> &lt;&lt; temp_file_name_;</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; }</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">return</span> real_writer_-&gt;Close();</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;}</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="keywordtype">bool</span> TwoPassSingleSegmentSegmenter::CopyFileWithClusterRewrite(</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; File* source,</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; MkvWriter* dest,</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; uint64_t last_size) {</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> cluster_id_size = mkvmuxer::GetUIntSize(mkvmuxer::kMkvCluster);</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> cluster_size_size = 8; <span class="comment">// The size of the Cluster size integer.</span></div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> cluster_header_size = cluster_id_size + cluster_size_size;</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="comment">// We are at the start of a cluster, so copy the ID.</span></div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">if</span> (dest-&gt;WriteFromFile(source, cluster_id_size) != cluster_id_size)</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; cues()-&gt;cue_entries_size() - 1; ++i) {</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="comment">// Write the size of the cluster.</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keyword">const</span> mkvmuxer::CuePoint* cue = cues()-&gt;GetCueByIndex(i);</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keyword">const</span> mkvmuxer::CuePoint* next_cue = cues()-&gt;GetCueByIndex(i + 1);</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keyword">const</span> int64_t cluster_payload_size =</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; next_cue-&gt;cluster_pos() - cue-&gt;cluster_pos() - cluster_header_size;</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">if</span> (mkvmuxer::WriteUIntSize(dest, cluster_payload_size, cluster_size_size))</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">if</span> (!ReadSkip(source, cluster_size_size))</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="comment">// Copy the cluster and the next cluster&#39;s ID.</span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; int64_t to_copy = cluster_payload_size + cluster_id_size;</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">if</span> (dest-&gt;WriteFromFile(source, to_copy) != to_copy)</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="comment">// Update the progress; need to convert from WebM timecode to ISO BMFF.</span></div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keyword">const</span> uint64_t webm_delta_time = next_cue-&gt;time() - cue-&gt;time();</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keyword">const</span> uint64_t delta_time = FromWebMTimecode(webm_delta_time);</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; UpdateProgress(delta_time);</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; }</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="comment">// The last cluster takes up until the cues.</span></div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keyword">const</span> uint64_t last_cluster_payload_size = last_size - cluster_header_size;</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">if</span> (mkvmuxer::WriteUIntSize(dest, last_cluster_payload_size,</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; cluster_size_size))</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordflow">if</span> (!ReadSkip(source, cluster_size_size))</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="comment">// Copy the last cluster.</span></div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">return</span> dest-&gt;WriteFromFile(source) ==</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keyword">static_cast&lt;</span>int64_t<span class="keyword">&gt;</span>(last_cluster_payload_size);</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;}</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;} <span class="comment">// namespace webm</span></div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;} <span class="comment">// namespace media</span></div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;} <span class="comment">// namespace shaka</span></div>
<div class="ttc" id="classshaka_1_1media_1_1File_html_aad6b77e734bb22d077ece029c9e735a4"><div class="ttname"><a href="../../d3/d61/classshaka_1_1media_1_1File.html#aad6b77e734bb22d077ece029c9e735a4">shaka::media::File::Open</a></div><div class="ttdeci">virtual bool Open()=0</div><div class="ttdoc">Internal open. Should not be used directly. </div></div>
<div class="ttc" id="namespaceshaka_html_a66e7e156c1f83435fb6c130803e48f62"><div class="ttname"><a href="../../d8/daf/namespaceshaka.html#a66e7e156c1f83435fb6c130803e48f62">shaka::TempFilePath</a></div><div class="ttdeci">bool TempFilePath(const std::string &amp;temp_dir, std::string *temp_file_path)</div><div class="ttdef"><b>Definition:</b> <a href="../../d1/d2b/file__util_8cc_source.html#l00027">file_util.cc:27</a></div></div>
<div class="ttc" id="classshaka_1_1media_1_1MkvWriter_html_a468dcd83a7c087cc83e755703488e92b"><div class="ttname"><a href="../../d1/d0a/classshaka_1_1media_1_1MkvWriter.html#a468dcd83a7c087cc83e755703488e92b">shaka::media::MkvWriter::Position</a></div><div class="ttdeci">mkvmuxer::int64 Position() const override</div><div class="ttdef"><b>Definition:</b> <a href="../../d6/dc8/mkv__writer_8cc_source.html#l00071">mkv_writer.cc:71</a></div></div>
@ -284,7 +283,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -135,7 +135,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -410,7 +410,7 @@ static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -235,7 +235,7 @@ Public Member Functions</h2></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -126,7 +126,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:06 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -206,7 +206,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -135,7 +135,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -385,7 +385,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>BoxBuffer</b></td></
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:06 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:06 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -457,7 +457,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -142,7 +142,7 @@ Additional Inherited Members</h2></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:06 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -419,7 +419,7 @@ bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../.
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -122,7 +122,7 @@ uint32_t&#160;</td><td class="memItemRight" valign="bottom"><b>cipher_bytes</b><
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -150,7 +150,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -108,7 +108,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -176,7 +176,7 @@ Additional Inherited Members</h2></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -168,7 +168,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -139,7 +139,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:02 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -222,7 +222,7 @@ Additional Inherited Members</h2></td></tr>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -293,7 +293,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -226,7 +226,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -535,7 +535,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -152,7 +152,7 @@ int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href=".
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -268,7 +268,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -117,7 +117,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:03 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:04 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:05 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:06 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

View File

@ -124,7 +124,7 @@ var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Mar 7 2017 01:19:07 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Mar 8 2017 19:14:08 for DASH Media Packaging SDK by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>

Some files were not shown because too many files have changed in this diff Show More