-
Notifications
You must be signed in to change notification settings - Fork 20
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit d7e7bf8
Showing
792 changed files
with
135,337 additions
and
0 deletions.
There are no files selected for viewing
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,140 @@ | ||
<!-- HTML header for doxygen 1.8.5--> | ||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | ||
<html xmlns="https://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.10.0"/> | ||
<title>CDI SDK: CDI Audio, Video and Metadata (CDI-AVM) API Home Page</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> | ||
<script type="text/javascript" src="cookie.js"></script> | ||
<link href="search/search.css" rel="stylesheet" type="text/css"/> | ||
<script type="text/javascript" src="search/searchdata.js"></script> | ||
<script type="text/javascript" src="search/search.js"></script> | ||
<link href="doxygen.css" rel="stylesheet" type="text/css" /> | ||
<link href="image_left.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">CDI SDK | ||
</div> | ||
<div id="projectbrief">SDK for transporting chunks of data reliably and with low latency using a polled mode network driver.</div> | ||
</td> | ||
</tr> | ||
</tbody> | ||
</table> | ||
</div> | ||
<!-- end header part --> | ||
<!-- Generated by Doxygen 1.10.0 --> | ||
<script type="text/javascript"> | ||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */ | ||
var searchBox = new SearchBox("searchBox", "search/",'.html'); | ||
/* @license-end */ | ||
</script> | ||
<script type="text/javascript" src="menudata.js"></script> | ||
<script type="text/javascript" src="menu.js"></script> | ||
<script type="text/javascript"> | ||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */ | ||
$(function() { | ||
initMenu('',true,false,'search.php','Search'); | ||
$(function() { init_search(); }); | ||
}); | ||
/* @license-end */ | ||
</script> | ||
<div id="main-nav"></div> | ||
<!-- window showing the filter options --> | ||
<div id="MSearchSelectWindow" | ||
onmouseover="return searchBox.OnSearchSelectShow()" | ||
onmouseout="return searchBox.OnSearchSelectHide()" | ||
onkeydown="return searchBox.OnSearchSelectKey(event)"> | ||
</div> | ||
|
||
<!-- iframe showing the search results (closed by default) --> | ||
<div id="MSearchResultsWindow"> | ||
<div id="MSearchResults"> | ||
<div class="SRPage"> | ||
<div id="SRIndex"> | ||
<div id="SRResults"></div> | ||
<div class="SRStatus" id="Loading">Loading...</div> | ||
<div class="SRStatus" id="Searching">Searching...</div> | ||
<div class="SRStatus" id="NoMatches">No Matches</div> | ||
</div> | ||
</div> | ||
</div> | ||
</div> | ||
|
||
</div><!-- top --> | ||
<div><div class="header"> | ||
<div class="headertitle"><div class="title">CDI Audio, Video and Metadata (CDI-AVM) API Home Page</div></div> | ||
</div><!--header--> | ||
<div class="contents"> | ||
<div class="toc"><h3>Table of Contents</h3> | ||
<ul><li class="level1"><a href="#avm_intro_sec">Introduction</a></li> | ||
<li class="level1"><a href="#avm_high_level_arch">CDI-AVM Architecture Overview</a></li> | ||
<li class="level1"><a href="#ec2_usage_avm">CDI-AVM EC2 Instance Workflow Example (Connections with single endpoints)</a></li> | ||
<li class="level1"><a href="#ec2_mux_demux_avm">CDI-AVM EC2 Instance Workflow Example (Connections with multiple endpoints)</a></li> | ||
<li class="level1"><a href="#avm_main_api">CDI-AVM Application Programming Interface (API)</a><ul><li class="level2"><a href="#avm_api">Connections with Single Endpoints</a></li> | ||
<li class="level2"><a href="#multi_avm_api">Connections with Multiple Endpoints</a></li> | ||
</ul> | ||
</li> | ||
</ul> | ||
</div> | ||
<div class="textblock"><h1><a class="anchor" id="avm_intro_sec"></a> | ||
Introduction</h1> | ||
<p>The Cloud Digital Interface Audio, Video and Metadata (CDI_AVM) is the library which implements the low-latency reliable transport of audio, video and metadata between EC2 instances within the Amazon network.</p> | ||
<p>The AVM interface of the CDI SDK is intended mainly for interoperabilty among vendors while remaining extensible. To better encourage interoperability, a constrained set of audio, video, and ancillary data formats is supported. Audio, for example, is always 24 bit linear PCM in big endian format. Ancillary data follows IETF RFC 8331. Video similarly has a narrow set of supported parameters. Together, these comprise the CDI baseline profile.</p> | ||
<p>Extensibility is addressed through a generic configuration mechanism which is used even for the CDI baseline profile. It is based on a structure containing a URI and optional parameter data. The URI is defined such that it ensures uniqueness and optionally points to documentation on how to interpret the parameter data. The format of the payload data is also dependent on the URI. Helper functions ease the process of creating and parsing the generic configuration structure for the CDI baseline profile.</p> | ||
<p>The URIs used for the CDI baseline profile are: </p><div class="fragment"><div class="line">https:<span class="comment">//cdi.elemental.com/specs/baseline-video</span></div> | ||
<div class="line">https:<span class="comment">//cdi.elemental.com/specs/baseline-audio</span></div> | ||
<div class="line">https:<span class="comment">//cdi.elemental.com/specs/baseline-ancillary-data</span></div> | ||
</div><!-- fragment --><p>The documents at those URIs fully specify the various aspects of each media type including the parameter data and the in memory representation of payload data. These files also reside in CDI_SDK/doc/specs.</p> | ||
<p>Since the media format details are specificated outside of the SDK, new formats (beyond the CDI baseline profile) can be added without changing the SDK. They can be publicly documented or they can remain private for situations where interoperability is not required.</p> | ||
<h1><a class="anchor" id="avm_high_level_arch"></a> | ||
CDI-AVM Architecture Overview</h1> | ||
<p>The diagram shown below provides an overview of the CDI-AVM Transmit/Receive architecture.</p> | ||
<div class="image"> | ||
<img src="high_level_architecture.jpg" alt=""/> | ||
</div> | ||
<h1><a class="anchor" id="ec2_usage_avm"></a> | ||
CDI-AVM EC2 Instance Workflow Example (Connections with single endpoints)</h1> | ||
<p>Connections that contain a single endpoint can be used to transmit video, audio and ancillary data streams that are identified by a "stream_identifier" as defined in the API. This allows applications to transmit and receive multiple streams using single endpoints. See the <a class="el" href="cdi__avm__api_8h.html#a441d0cb183564801accc30da425d8368">CdiAvmTxCreate()</a>, <a class="el" href="cdi__avm__api_8h.html#ae8e38c0bc85bcdafa2e914202fb79e46">CdiAvmTxPayload()</a>, and <a class="el" href="cdi__core__api_8h.html#a73d20e3d0997710bee4ff1f192ff0020">CdiCoreConnectionDestroy()</a> API functions.</p> | ||
<p>The diagram shown below provides an example of using the CDI-AVM API on multiple EC2 instances and multiple TX/RX connections.</p> | ||
<div class="image"> | ||
<img src="avm_ec2_usage_example.jpg" alt=""/> | ||
</div> | ||
<h1><a class="anchor" id="ec2_mux_demux_avm"></a> | ||
CDI-AVM EC2 Instance Workflow Example (Connections with multiple endpoints)</h1> | ||
<p>Connections that contain multiple endpoints can be used to demux and mux video, audio and ancillary data streams that are identified by a "stream_identifier" as defined in the API. This allows an application to receive multiple streams on a single connection and transmit them to different endpoints. It also allows an application to receive multiple streams from different endpoints on a single connection. Demuxing and muxing of the streams is handled entirely by the CDI-AVM SDK. See the <a class="el" href="cdi__avm__api_8h.html#a1a73d9ffcd7ea9e43d104e632f4fea41">CdiAvmTxStreamConnectionCreate()</a>, <a class="el" href="cdi__avm__api_8h.html#adbc7bdb972015852721aa74a0c905c25">CdiAvmTxStreamEndpointCreate()</a>, <a class="el" href="cdi__avm__api_8h.html#ab6ebd3ea9e8d9242a20a0fda2ca2f99b">CdiAvmEndpointTxPayload()</a>, and <a class="el" href="cdi__avm__api_8h.html#a441d7c5854474e003d6d901bfdbee5e4">CdiAvmStreamEndpointDestroy()</a> API functions.</p> | ||
<p>The diagram shown below provides an example of using the CDI-AVM API on multiple EC2 instances using single connections that contain multiple endpoints to demux and mux video, audio and ancillary data streams.</p> | ||
<div class="image"> | ||
<img src="multi_endpoint_flow.jpg" alt=""/> | ||
</div> | ||
<h1><a class="anchor" id="avm_main_api"></a> | ||
CDI-AVM Application Programming Interface (API)</h1> | ||
<p>The API is declared in: <a class="el" href="cdi__avm__api_8h.html">cdi_avm_api.h</a></p> | ||
<h2><a class="anchor" id="avm_api"></a> | ||
Connections with Single Endpoints</h2> | ||
<p>The diagram shown below provides an example of the typical CDI-AVM TX/RX workflow using the CDI-AVM API for a connection that contains a single endpoint. </p><div class="image"> | ||
<img src="avm_api_workflow.jpg" alt=""/> | ||
</div> | ||
<h2><a class="anchor" id="multi_avm_api"></a> | ||
Connections with Multiple Endpoints</h2> | ||
<p>The diagram shown below provides an example of the typical CDI-AVM TX/RX workflow using the CDI-AVM API for a connection that contains multiple endpoints. </p><div class="image"> | ||
<img src="multi_endpoint_avm_api_workflow.jpg" alt=""/> | ||
</div> | ||
</div></div><!-- contents --> | ||
</div><!-- PageDoc --> | ||
<!-- HTML footer for doxygen 1.8.5--> | ||
<!-- start footer part --> | ||
<hr class="footer"/><address class="footer"><small> | ||
<div>Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.</div> | ||
</small></address> | ||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,100 @@ | ||
<!-- HTML header for doxygen 1.8.5--> | ||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | ||
<html xmlns="https://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.10.0"/> | ||
<title>CDI SDK: CDI Core (CDI-CORE) API Home Page</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> | ||
<script type="text/javascript" src="cookie.js"></script> | ||
<link href="search/search.css" rel="stylesheet" type="text/css"/> | ||
<script type="text/javascript" src="search/searchdata.js"></script> | ||
<script type="text/javascript" src="search/search.js"></script> | ||
<link href="doxygen.css" rel="stylesheet" type="text/css" /> | ||
<link href="image_left.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">CDI SDK | ||
</div> | ||
<div id="projectbrief">SDK for transporting chunks of data reliably and with low latency using a polled mode network driver.</div> | ||
</td> | ||
</tr> | ||
</tbody> | ||
</table> | ||
</div> | ||
<!-- end header part --> | ||
<!-- Generated by Doxygen 1.10.0 --> | ||
<script type="text/javascript"> | ||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */ | ||
var searchBox = new SearchBox("searchBox", "search/",'.html'); | ||
/* @license-end */ | ||
</script> | ||
<script type="text/javascript" src="menudata.js"></script> | ||
<script type="text/javascript" src="menu.js"></script> | ||
<script type="text/javascript"> | ||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */ | ||
$(function() { | ||
initMenu('',true,false,'search.php','Search'); | ||
$(function() { init_search(); }); | ||
}); | ||
/* @license-end */ | ||
</script> | ||
<div id="main-nav"></div> | ||
<!-- window showing the filter options --> | ||
<div id="MSearchSelectWindow" | ||
onmouseover="return searchBox.OnSearchSelectShow()" | ||
onmouseout="return searchBox.OnSearchSelectHide()" | ||
onkeydown="return searchBox.OnSearchSelectKey(event)"> | ||
</div> | ||
|
||
<!-- iframe showing the search results (closed by default) --> | ||
<div id="MSearchResultsWindow"> | ||
<div id="MSearchResults"> | ||
<div class="SRPage"> | ||
<div id="SRIndex"> | ||
<div id="SRResults"></div> | ||
<div class="SRStatus" id="Loading">Loading...</div> | ||
<div class="SRStatus" id="Searching">Searching...</div> | ||
<div class="SRStatus" id="NoMatches">No Matches</div> | ||
</div> | ||
</div> | ||
</div> | ||
</div> | ||
|
||
</div><!-- top --> | ||
<div><div class="header"> | ||
<div class="headertitle"><div class="title">CDI Core (CDI-CORE) API Home Page</div></div> | ||
</div><!--header--> | ||
<div class="contents"> | ||
<div class="toc"><h3>Table of Contents</h3> | ||
<ul><li class="level1"><a href="#Core_arch">CDI-CORE Architecture</a></li> | ||
<li class="level1"><a href="#Core_main_api">CDI-CORE Application Programming Interface (API)</a></li> | ||
</ul> | ||
</div> | ||
<div class="textblock"><h1><a class="anchor" id="Core_arch"></a> | ||
CDI-CORE Architecture</h1> | ||
<p>The diagram shown below provides a overview of the CDI-CORE architecture.</p> | ||
<div class="image"> | ||
<img src="high_level_architecture.jpg" alt=""/> | ||
</div> | ||
<h1><a class="anchor" id="Core_main_api"></a> | ||
CDI-CORE Application Programming Interface (API)</h1> | ||
<p>The API is declared in: <a class="el" href="cdi__core__api_8h.html">cdi_core_api.h</a> </p> | ||
</div></div><!-- contents --> | ||
</div><!-- PageDoc --> | ||
<!-- HTML footer for doxygen 1.8.5--> | ||
<!-- start footer part --> | ||
<hr class="footer"/><address class="footer"><small> | ||
<div>Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.</div> | ||
</small></address> | ||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,92 @@ | ||
<!-- HTML header for doxygen 1.8.5--> | ||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | ||
<html xmlns="https://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.10.0"/> | ||
<title>CDI SDK: CDI Log (CDI-LOG) API Home Page</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> | ||
<script type="text/javascript" src="cookie.js"></script> | ||
<link href="search/search.css" rel="stylesheet" type="text/css"/> | ||
<script type="text/javascript" src="search/searchdata.js"></script> | ||
<script type="text/javascript" src="search/search.js"></script> | ||
<link href="doxygen.css" rel="stylesheet" type="text/css" /> | ||
<link href="image_left.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">CDI SDK | ||
</div> | ||
<div id="projectbrief">SDK for transporting chunks of data reliably and with low latency using a polled mode network driver.</div> | ||
</td> | ||
</tr> | ||
</tbody> | ||
</table> | ||
</div> | ||
<!-- end header part --> | ||
<!-- Generated by Doxygen 1.10.0 --> | ||
<script type="text/javascript"> | ||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */ | ||
var searchBox = new SearchBox("searchBox", "search/",'.html'); | ||
/* @license-end */ | ||
</script> | ||
<script type="text/javascript" src="menudata.js"></script> | ||
<script type="text/javascript" src="menu.js"></script> | ||
<script type="text/javascript"> | ||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */ | ||
$(function() { | ||
initMenu('',true,false,'search.php','Search'); | ||
$(function() { init_search(); }); | ||
}); | ||
/* @license-end */ | ||
</script> | ||
<div id="main-nav"></div> | ||
<!-- window showing the filter options --> | ||
<div id="MSearchSelectWindow" | ||
onmouseover="return searchBox.OnSearchSelectShow()" | ||
onmouseout="return searchBox.OnSearchSelectHide()" | ||
onkeydown="return searchBox.OnSearchSelectKey(event)"> | ||
</div> | ||
|
||
<!-- iframe showing the search results (closed by default) --> | ||
<div id="MSearchResultsWindow"> | ||
<div id="MSearchResults"> | ||
<div class="SRPage"> | ||
<div id="SRIndex"> | ||
<div id="SRResults"></div> | ||
<div class="SRStatus" id="Loading">Loading...</div> | ||
<div class="SRStatus" id="Searching">Searching...</div> | ||
<div class="SRStatus" id="NoMatches">No Matches</div> | ||
</div> | ||
</div> | ||
</div> | ||
</div> | ||
|
||
</div><!-- top --> | ||
<div><div class="header"> | ||
<div class="headertitle"><div class="title">CDI Log (CDI-LOG) API Home Page</div></div> | ||
</div><!--header--> | ||
<div class="contents"> | ||
<div class="toc"><h3>Table of Contents</h3> | ||
<ul><li class="level1"><a href="#Log_arch">CDI-LOG Architecture</a></li> | ||
</ul> | ||
</div> | ||
<div class="textblock"><h1><a class="anchor" id="Log_arch"></a> | ||
CDI-LOG Architecture</h1> | ||
</div></div><!-- contents --> | ||
</div><!-- PageDoc --> | ||
<!-- HTML footer for doxygen 1.8.5--> | ||
<!-- start footer part --> | ||
<hr class="footer"/><address class="footer"><small> | ||
<div>Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.</div> | ||
</small></address> | ||
</body> | ||
</html> |
Oops, something went wrong.