shaka-packager/docs/d8/daf/namespaceshaka.html

667 lines
42 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.6"/>
<title>DASH Media Packaging SDK: shaka Namespace Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">DASH Media Packaging SDK
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="../../index.html"><span>Main&#160;Page</span></a></li>
<li class="current"><a href="../../namespaces.html"><span>Namespaces</span></a></li>
<li><a href="../../annotated.html"><span>Classes</span></a></li>
<li><a href="../../files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="../../search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="../../namespaces.html"><span>Namespace&#160;List</span></a></li>
<li><a href="../../namespacemembers.html"><span>Namespace&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">shaka Namespace Reference</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../de/da9/structshaka_1_1Element.html">Element</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d43/structshaka_1_1ContentProtectionElement.html">ContentProtectionElement</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/d70/classshaka_1_1DashIopMpdNotifier.html">DashIopMpdNotifier</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d60/classshaka_1_1MockMpdBuilder.html">MockMpdBuilder</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d4b/classshaka_1_1MockAdaptationSet.html">MockAdaptationSet</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d33/classshaka_1_1MockRepresentation.html">MockRepresentation</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d5c/classshaka_1_1MockMpdNotifier.html">MockMpdNotifier</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/da1/classshaka_1_1MpdBuilder.html">MpdBuilder</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This class generates DASH MPDs (Media Presentation Descriptions). <a href="../../dc/da1/classshaka_1_1MpdBuilder.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d8e/classshaka_1_1AdaptationSet.html">AdaptationSet</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/d94/classshaka_1_1RepresentationStateChangeListener.html">RepresentationStateChangeListener</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../de/d52/classshaka_1_1Representation.html">Representation</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d3/dd0/classshaka_1_1MpdNotifier.html">MpdNotifier</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/df3/structshaka_1_1MpdOptions.html">MpdOptions</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines Mpd Options. <a href="../../d1/df3/structshaka_1_1MpdOptions.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/de1/structshaka_1_1SegmentInfo.html">SegmentInfo</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/de1/classshaka_1_1SimpleMpdNotifier.html">SimpleMpdNotifier</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/db4/classshaka_1_1MpdNotifierFactory.html">MpdNotifierFactory</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dcd/classshaka_1_1MpdWriter.html">MpdWriter</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a7c39fc9bf2181b82700a265fd7fdcf1c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7c39fc9bf2181b82700a265fd7fdcf1c"></a>
typedef MediaInfo::AudioInfo&#160;</td><td class="memItemRight" valign="bottom"><b>AudioInfo</b></td></tr>
<tr class="separator:a7c39fc9bf2181b82700a265fd7fdcf1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba63e9fe19757e84e44f9ed11935fcc0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aba63e9fe19757e84e44f9ed11935fcc0"></a>
typedef MediaInfo::VideoInfo&#160;</td><td class="memItemRight" valign="bottom"><b>VideoInfo</b></td></tr>
<tr class="separator:aba63e9fe19757e84e44f9ed11935fcc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ad1f8ac59ccce6300a04ae6269e5042d3"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><b>ContentType</b> { <b>kContentTypeUnknown</b>,
<b>kContentTypeVideo</b>,
<b>kContentTypeAudio</b>,
<b>kContentTypeText</b>
}</td></tr>
<tr class="separator:ad1f8ac59ccce6300a04ae6269e5042d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42a71cc75fe6d63c7d7cd68575d91183"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><b>DashProfile</b> { <b>kUnknown</b>,
<b>kOnDemand</b>,
<b>kLive</b>
}</td></tr>
<tr class="separator:a42a71cc75fe6d63c7d7cd68575d91183"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48cb646cc281e5d640ba6e74ed81f22f"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><b>MpdType</b> { <b>kStatic</b>,
<b>kDynamic</b>
}</td></tr>
<tr class="separator:a48cb646cc281e5d640ba6e74ed81f22f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:abc3f498491fb895860ebdee359935d93"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/daf/namespaceshaka.html#abc3f498491fb895860ebdee359935d93">ValidateFixedCryptoFlags</a> ()</td></tr>
<tr class="separator:abc3f498491fb895860ebdee359935d93"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b6212ccc4b98e5fdb72f84acf252c6b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/daf/namespaceshaka.html#a8b6212ccc4b98e5fdb72f84acf252c6b">ValidatePRCryptoFlags</a> ()</td></tr>
<tr class="separator:a8b6212ccc4b98e5fdb72f84acf252c6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9eab59c66195b54a0f4f2ff67630c2cd"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/daf/namespaceshaka.html#a9eab59c66195b54a0f4f2ff67630c2cd">ValidateFlag</a> (const char *flag_name, const std::string &amp;flag_value, bool condition, bool optional, const char *label)</td></tr>
<tr class="separator:a9eab59c66195b54a0f4f2ff67630c2cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54fadd9c7ef14b39cd0355a5c269c772"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/daf/namespaceshaka.html#a54fadd9c7ef14b39cd0355a5c269c772">PrintError</a> (const std::string &amp;error_message)</td></tr>
<tr class="separator:a54fadd9c7ef14b39cd0355a5c269c772"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade3cbb360c0dcaacc5667676af885008"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/daf/namespaceshaka.html#ade3cbb360c0dcaacc5667676af885008">ValidateWidevineCryptoFlags</a> ()</td></tr>
<tr class="separator:ade3cbb360c0dcaacc5667676af885008"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f657931280fdf63cae2ed8a8f891288"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/daf/namespaceshaka.html#a5f657931280fdf63cae2ed8a8f891288">LanguageToShortestForm</a> (const std::string &amp;language)</td></tr>
<tr class="separator:a5f657931280fdf63cae2ed8a8f891288"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05a31cd741e2ee18f1399284e921e527"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/daf/namespaceshaka.html#a05a31cd741e2ee18f1399284e921e527">LanguageToISO_639_2</a> (const std::string &amp;language)</td></tr>
<tr class="separator:a05a31cd741e2ee18f1399284e921e527"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a66e7e156c1f83435fb6c130803e48f62"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/daf/namespaceshaka.html#a66e7e156c1f83435fb6c130803e48f62">TempFilePath</a> (const std::string &amp;temp_dir, std::string *temp_file_path)</td></tr>
<tr class="separator:a66e7e156c1f83435fb6c130803e48f62"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e940cda37fa0dbefef3b3cc9c802ab8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/daf/namespaceshaka.html#a7e940cda37fa0dbefef3b3cc9c802ab8">WriteMpdToFile</a> (const std::string &amp;output_path, <a class="el" href="../../dc/da1/classshaka_1_1MpdBuilder.html">MpdBuilder</a> *mpd_builder)</td></tr>
<tr class="separator:a7e940cda37fa0dbefef3b3cc9c802ab8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ea880937da26d677ff6a48c0219d090"><td class="memItemLeft" align="right" valign="top">ContentType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/daf/namespaceshaka.html#a5ea880937da26d677ff6a48c0219d090">GetContentType</a> (const MediaInfo &amp;media_info)</td></tr>
<tr class="separator:a5ea880937da26d677ff6a48c0219d090"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c7f8f964fec2bb9543e7ee8da9cd994"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4c7f8f964fec2bb9543e7ee8da9cd994"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/daf/namespaceshaka.html#a4c7f8f964fec2bb9543e7ee8da9cd994">Uint8VectorToBase64</a> (const std::vector&lt; uint8_t &gt; &amp;input)</td></tr>
<tr class="memdesc:a4c7f8f964fec2bb9543e7ee8da9cd994"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts uint8 vector into base64 encoded string. <br/></td></tr>
<tr class="separator:a4c7f8f964fec2bb9543e7ee8da9cd994"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6fd5545638d9a2c06c7f5e4294f5361c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6fd5545638d9a2c06c7f5e4294f5361c"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>HasVODOnlyFields</b> (const MediaInfo &amp;media_info)</td></tr>
<tr class="separator:a6fd5545638d9a2c06c7f5e4294f5361c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a97fb9cf1de5b815776fb44847bb8f6fd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a97fb9cf1de5b815776fb44847bb8f6fd"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>HasLiveOnlyFields</b> (const MediaInfo &amp;media_info)</td></tr>
<tr class="separator:a97fb9cf1de5b815776fb44847bb8f6fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf06375f1ca0df087129ec5356b26f31"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaf06375f1ca0df087129ec5356b26f31"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>RemoveDuplicateAttributes</b> (<a class="el" href="../../da/d43/structshaka_1_1ContentProtectionElement.html">ContentProtectionElement</a> *content_protection_element)</td></tr>
<tr class="separator:aaf06375f1ca0df087129ec5356b26f31"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adca279e7366ce36b971098e691956705"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adca279e7366ce36b971098e691956705"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>GetLanguage</b> (const MediaInfo &amp;media_info)</td></tr>
<tr class="separator:adca279e7366ce36b971098e691956705"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae45d1e96a8543384c3562e72615c3c3a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae45d1e96a8543384c3562e72615c3c3a"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>GetCodecs</b> (const MediaInfo &amp;media_info)</td></tr>
<tr class="separator:ae45d1e96a8543384c3562e72615c3c3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a50676d7dbec7a1140af6b7f45d5f1405"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a50676d7dbec7a1140af6b7f45d5f1405"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>GetBaseCodec</b> (const MediaInfo &amp;media_info)</td></tr>
<tr class="separator:a50676d7dbec7a1140af6b7f45d5f1405"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b38ac967acc176f7d5989eeee343ceb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8b38ac967acc176f7d5989eeee343ceb"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>GetAdaptationSetKey</b> (const MediaInfo &amp;media_info)</td></tr>
<tr class="separator:a8b38ac967acc176f7d5989eeee343ceb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adafaa111be5c5217e3b0d432f7aab035"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adafaa111be5c5217e3b0d432f7aab035"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>SecondsToXmlDuration</b> (double seconds)</td></tr>
<tr class="separator:adafaa111be5c5217e3b0d432f7aab035"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f5f36907f2cdaeb1f94a38e29804e0e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5f5f36907f2cdaeb1f94a38e29804e0e"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>GetDurationAttribute</b> (xmlNodePtr node, float *duration)</td></tr>
<tr class="separator:a5f5f36907f2cdaeb1f94a38e29804e0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afac5d8109fcf39e73f7327c4711b2fe3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afac5d8109fcf39e73f7327c4711b2fe3"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>MoreThanOneTrue</b> (bool b1, bool b2, bool b3)</td></tr>
<tr class="separator:afac5d8109fcf39e73f7327c4711b2fe3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f857ca1e3d6c3769b4dac1531f33c31"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0f857ca1e3d6c3769b4dac1531f33c31"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>AtLeastOneTrue</b> (bool b1, bool b2, bool b3)</td></tr>
<tr class="separator:a0f857ca1e3d6c3769b4dac1531f33c31"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bcee6af421b1475706656f20706cf42"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4bcee6af421b1475706656f20706cf42"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>OnlyOneTrue</b> (bool b1, bool b2, bool b3)</td></tr>
<tr class="separator:a4bcee6af421b1475706656f20706cf42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adac592409e758489bad365323d070f31"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/daf/namespaceshaka.html#adac592409e758489bad365323d070f31">DoubleToString</a> (double value)</td></tr>
<tr class="separator:adac592409e758489bad365323d070f31"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c2ea2c3e7055657ca68a6b8e285d4d6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/daf/namespaceshaka.html#a4c2ea2c3e7055657ca68a6b8e285d4d6">HexToUUID</a> (const std::string &amp;data, std::string *uuid_format)</td></tr>
<tr class="separator:a4c2ea2c3e7055657ca68a6b8e285d4d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59fa73d86d8dfdfa58b6f1e52833a361"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a59fa73d86d8dfdfa58b6f1e52833a361"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>UpdateContentProtectionPsshHelper</b> (const std::string &amp;drm_uuid, const std::string &amp;pssh, std::list&lt; <a class="el" href="../../da/d43/structshaka_1_1ContentProtectionElement.html">ContentProtectionElement</a> &gt; *content_protection_elements)</td></tr>
<tr class="separator:a59fa73d86d8dfdfa58b6f1e52833a361"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abfd977a0dfb051a942d1694442692814"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/daf/namespaceshaka.html#abfd977a0dfb051a942d1694442692814">AddContentProtectionElements</a> (const MediaInfo &amp;media_info, <a class="el" href="../../de/d52/classshaka_1_1Representation.html">Representation</a> *parent)</td></tr>
<tr class="separator:abfd977a0dfb051a942d1694442692814"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac917945d578a03ce53b902f6c1bc4e33"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/daf/namespaceshaka.html#ac917945d578a03ce53b902f6c1bc4e33">AddContentProtectionElements</a> (const MediaInfo &amp;media_info, <a class="el" href="../../d8/d8e/classshaka_1_1AdaptationSet.html">AdaptationSet</a> *parent)</td></tr>
<tr class="separator:ac917945d578a03ce53b902f6c1bc4e33"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a8c0e2b9cf79d49c93b9dfee6b90579cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8c0e2b9cf79d49c93b9dfee6b90579cd"></a>
const char&#160;</td><td class="memItemRight" valign="bottom"><b>kEncryptedMp4Scheme</b> [] = &quot;urn:mpeg:dash:mp4protection:2011&quot;</td></tr>
<tr class="separator:a8c0e2b9cf79d49c93b9dfee6b90579cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef562479520fb514f899f4a2da76c4b5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aef562479520fb514f899f4a2da76c4b5"></a>
const char&#160;</td><td class="memItemRight" valign="bottom"><b>kPsshElementName</b> [] = &quot;cenc:pssh&quot;</td></tr>
<tr class="separator:aef562479520fb514f899f4a2da76c4b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>NOTE: Inclusion of this module will cause curl_global_init and curl_global_cleanup to be called at static initialization / deinitialization time.</p>
<p>All the methods that are virtual are virtual for mocking. NOTE: Inclusion of this module will cause xmlInitParser and xmlCleanupParser to be called at static initialization / deinitialization time.</p>
<p>This file contains helper functions and enums for <a class="el" href="../../d3/dd0/classshaka_1_1MpdNotifier.html">MpdNotifier</a> implementations. </p>
</div><h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="abfd977a0dfb051a942d1694442692814"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void shaka::AddContentProtectionElements </td>
<td>(</td>
<td class="paramtype">const MediaInfo &amp;&#160;</td>
<td class="paramname"><em>media_info</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">Representation *&#160;</td>
<td class="paramname"><em>parent</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds &lt;ContentProtection&gt; elements specified by <em>media_info</em> to <em>adaptation_set</em>. Note that this will add the elements as direct chlidren of <a class="el" href="../../d8/d8e/classshaka_1_1AdaptationSet.html">AdaptationSet</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">media_info</td><td>may or may not have protected_content field. </td></tr>
<tr><td class="paramname">adaptation_set</td><td>is the parent element that owns the ContentProtection elements. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="../../db/dfb/mpd__utils_8cc_source.html#l00357">357</a> of file <a class="el" href="../../db/dfb/mpd__utils_8cc_source.html">mpd_utils.cc</a>.</p>
</div>
</div>
<a class="anchor" id="ac917945d578a03ce53b902f6c1bc4e33"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void shaka::AddContentProtectionElements </td>
<td>(</td>
<td class="paramtype">const MediaInfo &amp;&#160;</td>
<td class="paramname"><em>media_info</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">AdaptationSet *&#160;</td>
<td class="paramname"><em>parent</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds &lt;ContentProtection&gt; elements specified by <em>media_info</em> to <em>representation</em>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">media_info</td><td>may or may not have protected_content field. </td></tr>
<tr><td class="paramname">representation</td><td>is the parent element that owns the ContentProtection elements. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="../../db/dfb/mpd__utils_8cc_source.html#l00362">362</a> of file <a class="el" href="../../db/dfb/mpd__utils_8cc_source.html">mpd_utils.cc</a>.</p>
</div>
</div>
<a class="anchor" id="adac592409e758489bad365323d070f31"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string shaka::DoubleToString </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>value</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Converts double to string. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">value</td><td>is the input double data. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>value formatted in string. </dd></dl>
<p>Definition at line <a class="el" href="../../db/dfb/mpd__utils_8cc_source.html#l00185">185</a> of file <a class="el" href="../../db/dfb/mpd__utils_8cc_source.html">mpd_utils.cc</a>.</p>
</div>
</div>
<a class="anchor" id="a5ea880937da26d677ff6a48c0219d090"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ContentType shaka::GetContentType </td>
<td>(</td>
<td class="paramtype">const MediaInfo &amp;&#160;</td>
<td class="paramname"><em>media_info</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Determines the content type of |media_info|. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">media_info</td><td>is the information about the media. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>content type of the <em>media_info</em>. </dd></dl>
<p>Definition at line <a class="el" href="../../d6/d2e/mpd__notifier__util_8cc_source.html#l00051">51</a> of file <a class="el" href="../../d6/d2e/mpd__notifier__util_8cc_source.html">mpd_notifier_util.cc</a>.</p>
</div>
</div>
<a class="anchor" id="a4c2ea2c3e7055657ca68a6b8e285d4d6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool shaka::HexToUUID </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::string *&#160;</td>
<td class="paramname"><em>uuid_format</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Converts hex data to UUID format. Hex data must be size 16. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data</td><td>input hex data. </td></tr>
<tr><td class="paramname">uuid_format</td><td>is the UUID format of the input. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="../../db/dfb/mpd__utils_8cc_source.html#l00192">192</a> of file <a class="el" href="../../db/dfb/mpd__utils_8cc_source.html">mpd_utils.cc</a>.</p>
</div>
</div>
<a class="anchor" id="a05a31cd741e2ee18f1399284e921e527"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string shaka::LanguageToISO_639_2 </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>language</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert a language tag to a 3-letter ISO-639-2 code, as required by the ISO BMFF spec. The input is assumed to be a valid ISO-639-2 or ISO-639-1 language code. Regions and variants are not supported. </p>
<p>Definition at line <a class="el" href="../../d1/d72/language__utils_8cc_source.html#l00117">117</a> of file <a class="el" href="../../d1/d72/language__utils_8cc_source.html">language_utils.cc</a>.</p>
</div>
</div>
<a class="anchor" id="a5f657931280fdf63cae2ed8a8f891288"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string shaka::LanguageToShortestForm </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>language</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert a language tag to its shortest form, as required by RFC 5646 indicated in the MPD and HLS specs. Assumes the input is a valid ISO-639-2 or ISO-639-1 language tag, or an empty string. Regions and variants are preserved in the conversion. </p>
<p>Definition at line <a class="el" href="../../d1/d72/language__utils_8cc_source.html#l00089">89</a> of file <a class="el" href="../../d1/d72/language__utils_8cc_source.html">language_utils.cc</a>.</p>
</div>
</div>
<a class="anchor" id="a54fadd9c7ef14b39cd0355a5c269c772"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void shaka::PrintError </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>error_message</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Format and print error message. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">error_message</td><td>specifies the error message. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="../../de/dad/validate__flag_8cc_source.html#l00036">36</a> of file <a class="el" href="../../de/dad/validate__flag_8cc_source.html">validate_flag.cc</a>.</p>
</div>
</div>
<a class="anchor" id="a66e7e156c1f83435fb6c130803e48f62"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool shaka::TempFilePath </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>temp_dir</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::string *&#160;</td>
<td class="paramname"><em>temp_file_path</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a temp file name in directory <em>temp_dir</em>. Generate the temp file in os specific temporary directory if <em>temp_dir</em> is empty. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">temp_dir</td><td>specifies the directory where the file should go. </td></tr>
<tr><td class="paramname">temp_file_path</td><td>is the result temp file path on success. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true on success, false otherwise. </dd></dl>
<p>Definition at line <a class="el" href="../../d1/d2b/file__util_8cc_source.html#l00027">27</a> of file <a class="el" href="../../d1/d2b/file__util_8cc_source.html">file_util.cc</a>.</p>
</div>
</div>
<a class="anchor" id="abc3f498491fb895860ebdee359935d93"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool shaka::ValidateFixedCryptoFlags </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Validate fixed encryption/decryption flags. </p>
<dl class="section return"><dt>Returns</dt><dd>true on success, false otherwise. </dd></dl>
<p>Definition at line <a class="el" href="../../dc/d3b/fixed__key__encryption__flags_8cc_source.html#l00033">33</a> of file <a class="el" href="../../dc/d3b/fixed__key__encryption__flags_8cc_source.html">fixed_key_encryption_flags.cc</a>.</p>
</div>
</div>
<a class="anchor" id="a9eab59c66195b54a0f4f2ff67630c2cd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool shaka::ValidateFlag </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>flag_name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>flag_value</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>condition</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>optional</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>label</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Validate a flag against the given condition. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">flag_name</td><td>is the name of the flag. </td></tr>
<tr><td class="paramname">flag_value</td><td>is the value of the flag. </td></tr>
<tr><td class="paramname">condition,optional</td><td>determines how the flag should be validated. If condition is true and optional is false, then this flag is required </td></tr>
<tr><td class="paramname">label</td><td>specifies the label associated with the condition. It is used to generate the error message on validation failure. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true on success, false otherwise. </dd></dl>
<p>Definition at line <a class="el" href="../../de/dad/validate__flag_8cc_source.html#l00017">17</a> of file <a class="el" href="../../de/dad/validate__flag_8cc_source.html">validate_flag.cc</a>.</p>
</div>
</div>
<a class="anchor" id="a8b6212ccc4b98e5fdb72f84acf252c6b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool shaka::ValidatePRCryptoFlags </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Validate PlayReady encryption flags. </p>
<dl class="section return"><dt>Returns</dt><dd>true on success, false otherwise. </dd></dl>
<p>Definition at line <a class="el" href="../../df/dfc/playready__key__encryption__flags_8cc_source.html#l00033">33</a> of file <a class="el" href="../../df/dfc/playready__key__encryption__flags_8cc_source.html">playready_key_encryption_flags.cc</a>.</p>
</div>
</div>
<a class="anchor" id="ade3cbb360c0dcaacc5667676af885008"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool shaka::ValidateWidevineCryptoFlags </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Validate widevine encryption/decryption flags. </p>
<dl class="section return"><dt>Returns</dt><dd>true on success, false otherwise. </dd></dl>
<p>Definition at line <a class="el" href="../../d0/d42/widevine__encryption__flags_8cc_source.html#l00071">71</a> of file <a class="el" href="../../d0/d42/widevine__encryption__flags_8cc_source.html">widevine_encryption_flags.cc</a>.</p>
</div>
</div>
<a class="anchor" id="a7e940cda37fa0dbefef3b3cc9c802ab8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool shaka::WriteMpdToFile </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>output_path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">MpdBuilder *&#160;</td>
<td class="paramname"><em>mpd_builder</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Outputs MPD to <em>output_path</em>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">output_path</td><td>is the path to the MPD output location. </td></tr>
<tr><td class="paramname">mpd_builder</td><td>is the MPD builder instance. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="../../d6/d2e/mpd__notifier__util_8cc_source.html#l00020">20</a> of file <a class="el" href="../../d6/d2e/mpd__notifier__util_8cc_source.html">mpd_notifier_util.cc</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Mon May 15 2017 22:39:24 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>
</body>
</html>