diff options
Diffstat (limited to 'docs/Classes/SDLStreamingMediaManager.html')
-rw-r--r-- | docs/Classes/SDLStreamingMediaManager.html | 335 |
1 files changed, 182 insertions, 153 deletions
diff --git a/docs/Classes/SDLStreamingMediaManager.html b/docs/Classes/SDLStreamingMediaManager.html index 2ebb4b0b2..879455738 100644 --- a/docs/Classes/SDLStreamingMediaManager.html +++ b/docs/Classes/SDLStreamingMediaManager.html @@ -3,25 +3,25 @@ <h3>Section Contents</h3> <ul> - <li><a href="#section-videoSessionConnected">videoSessionConnected</a></li> - <li><a href="#section-audioSessionConnected">audioSessionConnected</a></li> - <li><a href="#section-videoSessionEncrypted">videoSessionEncrypted</a></li> - <li><a href="#section-audioSessionEncrypted">audioSessionEncrypted</a></li> <li><a href="#section-touchManager">touchManager</a></li> - <li><a href="#section-videoEncoderSettings">videoEncoderSettings</a></li> - <li><a href="#section-displayCapabilties">displayCapabilties</a></li> - <li><a href="#section-defaultVideoEncoderSettings">defaultVideoEncoderSettings</a></li> + <li><a href="#section-focusableItemManager">focusableItemManager</a></li> + <li><a href="#section-streamingSupported">streamingSupported</a></li> + <li><a href="#section-videoConnected">videoConnected</a></li> + <li><a href="#section-videoEncrypted">videoEncrypted</a></li> + <li><a href="#section-audioConnected">audioConnected</a></li> + <li><a href="#section-audioEncrypted">audioEncrypted</a></li> + <li><a href="#section-videoStreamingPaused">videoStreamingPaused</a></li> <li><a href="#section-screenSize">screenSize</a></li> + <li><a href="#section-videoFormat">videoFormat</a></li> + <li><a href="#section-supportedFormats">supportedFormats</a></li> <li><a href="#section-pixelBufferPool">pixelBufferPool</a></li> - <li><a href="#section--initWithProtocol:">-initWithProtocol:</a></li> - <li><a href="#section--initWithProtocol:displayCapabilities:">-initWithProtocol:displayCapabilities:</a></li> - <li><a href="#section--startVideoSessionWithStartBlock:">-startVideoSessionWithStartBlock:</a></li> - <li><a href="#section--startVideoSessionWithTLS:startBlock:">-startVideoSessionWithTLS:startBlock:</a></li> - <li><a href="#section--stopVideoSession">-stopVideoSession</a></li> + <li><a href="#section-requestedEncryptionType">requestedEncryptionType</a></li> + <li><a href="#section--init">-init</a></li> + <li><a href="#section--initWithConnectionManager:configuration:">-initWithConnectionManager:configuration:</a></li> + <li><a href="#section--startWithProtocol:">-startWithProtocol:</a></li> + <li><a href="#section--stop">-stop</a></li> <li><a href="#section--sendVideoData:">-sendVideoData:</a></li> - <li><a href="#section--startAudioSessionWithStartBlock:">-startAudioSessionWithStartBlock:</a></li> - <li><a href="#section--startAudioSessionWithTLS:startBlock:">-startAudioSessionWithTLS:startBlock:</a></li> - <li><a href="#section--stopAudioSession">-stopAudioSession</a></li> + <li><a href="#section--sendVideoData:presentationTimestamp:">-sendVideoData:presentationTimestamp:</a></li> <li><a href="#section--sendAudioData:">-sendAudioData:</a></li> </ul> @@ -31,133 +31,155 @@ <section class="section task-group-section"> - <h3 id="section-videoSessionConnected"> - videoSessionConnected + <h3 id="section-touchManager"> + touchManager </h3> - <p>Undocumented</p> + <p>Touch Manager responsible for providing touch event notifications.</p> + <h4>Objective-C</h4> + <pre class="highlight"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">)</span> <span class="n"><a href="../Classes/SDLTouchManager.html">SDLTouchManager</a></span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">touchManager</span><span class="p">;</span></code></pre> + + + <h4>Swift</h4> + <pre class="highlight"><code><span class="k">var</span> <span class="nv">touchManager</span><span class="p">:</span> <span class="kt"><a href="../Classes/SDLTouchManager.html">SDLTouchManager</a></span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre> + - <h3 id="section-audioSessionConnected"> - audioSessionConnected + <h3 id="section-focusableItemManager"> + focusableItemManager </h3> - <p>Undocumented</p> + <p>A haptic interface that can be updated to reparse views within the window you’ve provided. Send a <code><a href="../Constants.html#/c:@SDLDidUpdateProjectionView">SDLDidUpdateProjectionView</a></code> notification or call the <code>updateInterfaceLayout</code> method to reparse. The <q>output</q> of this haptic interface occurs in the <code><a href="../Classes/SDLStreamingMediaManager.html#/c:objc(cs)SDLStreamingMediaManager(py)touchManager">touchManager</a></code> property where it will call the delegate.</p> + <h4>Objective-C</h4> + <pre class="highlight"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">id</span><span class="o"><</span><span class="n">SDLFocusableItemLocatorType</span><span class="o">></span> + <span class="n">focusableItemManager</span><span class="p">;</span></code></pre> + - <h3 id="section-videoSessionEncrypted"> - videoSessionEncrypted + + <h3 id="section-streamingSupported"> + streamingSupported </h3> - <p>Undocumented</p> + <p>Whether or not video streaming is supported</p> +<div class="aside aside-see"> + <p class="aside-title">See</p> + SDLRegisterAppInterface SDLDisplayCapabilities + +</div> + <h4>Objective-C</h4> + <pre class="highlight"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">,</span> <span class="n">getter</span><span class="o">=</span><span class="n">isStreamingSupported</span><span class="p">,</span> <span class="n">assign</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">)</span> + <span class="n">BOOL</span> <span class="n">streamingSupported</span><span class="p">;</span></code></pre> + + + <h4>Swift</h4> + <pre class="highlight"><code><span class="k">var</span> <span class="nv">isStreamingSupported</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre> + - <h3 id="section-audioSessionEncrypted"> - audioSessionEncrypted + <h3 id="section-videoConnected"> + videoConnected </h3> - <p>Undocumented</p> + <p>Whether or not the video session is connected.</p> + <h4>Objective-C</h4> + <pre class="highlight"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">,</span> <span class="n">getter</span><span class="o">=</span><span class="n">isVideoConnected</span><span class="p">,</span> <span class="n">assign</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">)</span> + <span class="n">BOOL</span> <span class="n">videoConnected</span><span class="p">;</span></code></pre> + + <h4>Swift</h4> + <pre class="highlight"><code><span class="k">var</span> <span class="nv">isVideoConnected</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre> + - <h3 id="section-touchManager"> - touchManager + + <h3 id="section-videoEncrypted"> + videoEncrypted </h3> - <p>Touch Manager responsible for providing touch event notifications.</p> + <p>Whether or not the video session is encrypted. This may be different than the requestedEncryptionType.</p> <h4>Objective-C</h4> - <pre class="highlight"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">)</span> <span class="n"><a href="../Classes/SDLTouchManager.html">SDLTouchManager</a></span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">touchManager</span><span class="p">;</span></code></pre> + <pre class="highlight"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">,</span> <span class="n">getter</span><span class="o">=</span><span class="n">isVideoEncrypted</span><span class="p">,</span> <span class="n">assign</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">)</span> + <span class="n">BOOL</span> <span class="n">videoEncrypted</span><span class="p">;</span></code></pre> <h4>Swift</h4> - <pre class="highlight"><code><span class="k">var</span> <span class="nv">touchManager</span><span class="p">:</span> <span class="kt"><a href="../Classes/SDLTouchManager.html">SDLTouchManager</a></span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre> + <pre class="highlight"><code><span class="k">var</span> <span class="nv">isVideoEncrypted</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre> - <h3 id="section-videoEncoderSettings"> - videoEncoderSettings + <h3 id="section-audioConnected"> + audioConnected </h3> - <p>The settings used in a VTCompressionSessionRef encoder. These will be verified when the video stream is started. Acceptable properties for this are located in VTCompressionProperties. If set to nil, the defaultVideoEncoderSettings will be used.</p> - -<div class="aside aside-warning"> - <p class="aside-title">Warning</p> - Video streaming must not be connected to update the encoder properties. If it is running, issue a stopVideoSession before updating. - -</div> + <p>Whether or not the audio session is connected.</p> <h4>Objective-C</h4> - <pre class="highlight"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readwrite</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">,</span> <span class="n">null_resettable</span><span class="p">)</span> - <span class="n">NSDictionary</span> <span class="o">*</span><span class="n">videoEncoderSettings</span><span class="p">;</span></code></pre> + <pre class="highlight"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">,</span> <span class="n">getter</span><span class="o">=</span><span class="n">isAudioConnected</span><span class="p">,</span> <span class="n">assign</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">)</span> + <span class="n">BOOL</span> <span class="n">audioConnected</span><span class="p">;</span></code></pre> <h4>Swift</h4> - <pre class="highlight"><code><span class="k">var</span> <span class="nv">videoEncoderSettings</span><span class="p">:</span> <span class="p">[</span><span class="kt">AnyHashable</span> <span class="p">:</span> <span class="kt">Any</span><span class="p">]</span><span class="o">!</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre> + <pre class="highlight"><code><span class="k">var</span> <span class="nv">isAudioConnected</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre> - <h3 id="section-displayCapabilties"> - displayCapabilties + <h3 id="section-audioEncrypted"> + audioEncrypted </h3> - <p>Display capabilties that will set the screenSize property. If set to nil, the SDLDefaultScreenSize will be used.</p> - -<div class="aside aside-warning"> - <p class="aside-title">Warning</p> - Video streaming must not be connected to update the encoder properties. If it is running, issue a stopVideoSession before updating. - -</div> + <p>Whether or not the audio session is encrypted. This may be different than the requestedEncryptionType.</p> <h4>Objective-C</h4> - <pre class="highlight"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readwrite</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">,</span> <span class="n">null_resettable</span><span class="p">)</span> - <span class="n"><a href="../Classes/SDLDisplayCapabilities.html">SDLDisplayCapabilities</a></span> <span class="o">*</span><span class="n">displayCapabilties</span><span class="p">;</span></code></pre> + <pre class="highlight"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">,</span> <span class="n">getter</span><span class="o">=</span><span class="n">isAudioEncrypted</span><span class="p">,</span> <span class="n">assign</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">)</span> + <span class="n">BOOL</span> <span class="n">audioEncrypted</span><span class="p">;</span></code></pre> <h4>Swift</h4> - <pre class="highlight"><code><span class="k">var</span> <span class="nv">displayCapabilties</span><span class="p">:</span> <span class="kt"><a href="../Classes/SDLDisplayCapabilities.html">SDLDisplayCapabilities</a></span><span class="o">!</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre> + <pre class="highlight"><code><span class="k">var</span> <span class="nv">isAudioEncrypted</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre> - <h3 id="section-defaultVideoEncoderSettings"> - defaultVideoEncoderSettings + <h3 id="section-videoStreamingPaused"> + videoStreamingPaused </h3> - <p>Provides default video encoder settings used.</p> + <p>Whether or not the video stream is paused due to either the application being backgrounded, the HMI state being either NONE or BACKGROUND, or the video stream not being ready.</p> <h4>Objective-C</h4> - <pre class="highlight"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">)</span> - <span class="n">NSDictionary</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">defaultVideoEncoderSettings</span><span class="p">;</span></code></pre> + <pre class="highlight"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">,</span> <span class="n">getter</span><span class="o">=</span><span class="n">isVideoStreamingPaused</span><span class="p">,</span> <span class="n">assign</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">)</span> + <span class="n">BOOL</span> <span class="n">videoStreamingPaused</span><span class="p">;</span></code></pre> <h4>Swift</h4> - <pre class="highlight"><code><span class="k">var</span> <span class="nv">defaultVideoEncoderSettings</span><span class="p">:</span> <span class="p">[</span><span class="kt">AnyHashable</span> <span class="p">:</span> <span class="kt">Any</span><span class="p">]</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre> + <pre class="highlight"><code><span class="k">var</span> <span class="nv">isVideoStreamingPaused</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre> @@ -180,12 +202,49 @@ + <h3 id="section-videoFormat"> + videoFormat + </h3> + + <p>This is the agreed upon format of video encoder that is in use, or nil if not currently connected.</p> + + + + <h4>Objective-C</h4> + <pre class="highlight"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> + <span class="n"><a href="../Classes/SDLVideoStreamingFormat.html">SDLVideoStreamingFormat</a></span> <span class="o">*</span><span class="n">videoFormat</span><span class="p">;</span></code></pre> + + + <h4>Swift</h4> + <pre class="highlight"><code><span class="k">var</span> <span class="nv">videoFormat</span><span class="p">:</span> <span class="kt"><a href="../Classes/SDLVideoStreamingFormat.html">SDLVideoStreamingFormat</a></span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre> + + + + + <h3 id="section-supportedFormats"> + supportedFormats + </h3> + + <p>A list of all supported video formats by this manager</p> + + + + <h4>Objective-C</h4> + <pre class="highlight"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">)</span> + <span class="n">NSArray</span><span class="o"><</span><span class="n"><a href="../Classes/SDLVideoStreamingFormat.html">SDLVideoStreamingFormat</a></span> <span class="o">*></span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">supportedFormats</span><span class="p">;</span></code></pre> + + + <h4>Swift</h4> + <pre class="highlight"><code><span class="k">var</span> <span class="nv">supportedFormats</span><span class="p">:</span> <span class="p">[</span><span class="kt"><a href="../Classes/SDLVideoStreamingFormat.html">SDLVideoStreamingFormat</a></span><span class="p">]</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre> + + + + <h3 id="section-pixelBufferPool"> pixelBufferPool </h3> <p>The pixel buffer pool reference returned back from an active VTCompressionSessionRef encoder.</p> - <div class="aside aside-warning"> <p class="aside-title">Warning</p> This will only return a valid pixel buffer pool after the encoder has been initialized (when the video session has started). @@ -206,19 +265,29 @@ - <h3 id="section--initWithProtocol:"> - -initWithProtocol: + <h3 id="section-requestedEncryptionType"> + requestedEncryptionType </h3> - <p>Undocumented</p> + <p>The requested encryption type when a session attempts to connect. This setting applies to both video and audio sessions.</p> + +<p>DEFAULT: SDLStreamingEncryptionFlagAuthenticateAndEncrypt</p> + <h4>Objective-C</h4> + <pre class="highlight"><code><span class="k">@property</span> <span class="p">(</span><span class="n">assign</span><span class="p">,</span> <span class="n">readwrite</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">)</span> + <span class="n"><a href="../Enums/SDLStreamingEncryptionFlag.html">SDLStreamingEncryptionFlag</a></span> <span class="n">requestedEncryptionType</span><span class="p">;</span></code></pre> + + + <h4>Swift</h4> + <pre class="highlight"><code><span class="k">var</span> <span class="nv">requestedEncryptionType</span><span class="p">:</span> <span class="kt"><a href="../Enums/SDLStreamingEncryptionFlag.html">SDLStreamingEncryptionFlag</a></span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre> + - <h3 id="section--initWithProtocol:displayCapabilities:"> - -initWithProtocol:displayCapabilities: + <h3 id="section--init"> + -init </h3> <p>Undocumented</p> @@ -228,80 +297,68 @@ - <h3 id="section--startVideoSessionWithStartBlock:"> - -startVideoSessionWithStartBlock: + <h3 id="section--initWithConnectionManager:configuration:"> + -initWithConnectionManager:configuration: </h3> - <p>This method will attempt to start a streaming video session. It will set up iOS’s video encoder, and call out to the head unit asking if it will start a video session. This will not use encryption.</p> - -<div class="aside aside-warning"> - <p class="aside-title">Warning</p> - <p>If this method is called on an 8.0 device, it will assert (in debug), or return a failure immediately to your block (in release).</p> - -</div> + <p>Create a new streaming media manager for navigation and VPM apps with a specified configuration</p> <h4>Objective-C</h4> - <pre class="highlight"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">startVideoSessionWithStartBlock</span><span class="p">:</span> - <span class="p">(</span><span class="n">nonnull</span> <span class="n"><a href="../Type Definitions.html#/c:SDLStreamingMediaManager.h@T@SDLStreamingStartBlock">SDLStreamingStartBlock</a></span><span class="p">)</span><span class="nv">startBlock</span><span class="p">;</span></code></pre> + <pre class="highlight"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span> +<span class="nf">initWithConnectionManager</span><span class="p">:</span> + <span class="p">(</span><span class="n">nonnull</span> <span class="n">id</span><span class="o"><</span><span class="n">SDLConnectionManagerType</span><span class="o">></span><span class="p">)</span><span class="nv">connectionManager</span> + <span class="nf">configuration</span><span class="p">:</span> + <span class="p">(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/SDLStreamingMediaConfiguration.html">SDLStreamingMediaConfiguration</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">configuration</span><span class="p">;</span></code></pre> - <h4>Swift</h4> - <pre class="highlight"><code><span class="kd">func</span> <span class="nf">startVideoSession</span><span class="p">(</span><span class="n">start</span> <span class="nv">startBlock</span><span class="p">:</span> <span class="kd">@escaping</span> <span class="kt"><a href="../Type Definitions.html#/c:SDLStreamingMediaManager.h@T@SDLStreamingStartBlock">SDLStreamingStartBlock</a></span><span class="p">)</span></code></pre> - <h4>Parameters</h4> <dl> - <dt>startBlock</dt> - <dd><p>A block that will be called with the result of attempting to start a video session</p> -</dd> + <dt>connectionManager</dt> + <dd><p>The pass-through for RPCs</p></dd> + <dt>configuration</dt> + <dd><p>The configuration of this streaming media session</p></dd> </dl> + <div> + <h4>Return Value</h4> + <p>A new streaming manager</p> + </div> - <h3 id="section--startVideoSessionWithTLS:startBlock:"> - -startVideoSessionWithTLS:startBlock: + <h3 id="section--startWithProtocol:"> + -startWithProtocol: </h3> - <p>Start a video session either with with no encryption (the default), with authentication but no encryption (this will attempt a TLS authentication with the other side, but will not physically encrypt the data after that), or authentication and encryption, which will encrypt all video data being sent.</p> + <p>Start the manager with a completion block that will be called when startup completes. This is used internally. To use an SDLStreamingMediaManager, you should use the manager found on <code><a href="../Classes/SDLManager.html">SDLManager</a></code>.</p> <h4>Objective-C</h4> - <pre class="highlight"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">startVideoSessionWithTLS</span><span class="p">:(</span><span class="n"><a href="../Enums/SDLEncryptionFlag.html">SDLEncryptionFlag</a></span><span class="p">)</span><span class="nv">encryptionFlag</span> - <span class="nf">startBlock</span><span class="p">:</span> - <span class="p">(</span><span class="n">nonnull</span> <span class="n"><a href="../Type Definitions.html#/c:SDLStreamingMediaManager.h@T@SDLStreamingEncryptionStartBlock">SDLStreamingEncryptionStartBlock</a></span><span class="p">)</span><span class="nv">startBlock</span><span class="p">;</span></code></pre> + <pre class="highlight"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">startWithProtocol</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/SDLAbstractProtocol.html">SDLAbstractProtocol</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">protocol</span><span class="p">;</span></code></pre> <h4>Swift</h4> - <pre class="highlight"><code><span class="kd">func</span> <span class="nf">startVideoSession</span><span class="p">(</span><span class="n">withTLS</span> <span class="nv">encryptionFlag</span><span class="p">:</span> <span class="kt"><a href="../Enums/SDLEncryptionFlag.html">SDLEncryptionFlag</a></span><span class="p">,</span> <span class="n">start</span> <span class="nv">startBlock</span><span class="p">:</span> <span class="kd">@escaping</span> <span class="kt"><a href="../Type Definitions.html#/c:SDLStreamingMediaManager.h@T@SDLStreamingEncryptionStartBlock">SDLStreamingEncryptionStartBlock</a></span><span class="p">)</span></code></pre> + <pre class="highlight"><code><span class="kd">func</span> <span class="nf">start</span><span class="p">(</span><span class="n">with</span> <span class="nv">protocol</span><span class="p">:</span> <span class="kt"><a href="../Classes/SDLAbstractProtocol.html">SDLAbstractProtocol</a></span><span class="p">)</span></code></pre> - <h4>Parameters</h4> - <dl> - <dt>encryptionFlag</dt> - <dd><p>Whether and how much security to apply to the video session.</p> -</dd> - <dt>startBlock</dt> - <dd><p>A block that will be called with the result of attempting to start a video session</p> -</dd> - </dl> - <h3 id="section--stopVideoSession"> - -stopVideoSession + <h3 id="section--stop"> + -stop </h3> - <p>This method will stop a running video session if there is one running.</p> + <p>Stop the manager. This method is used internally.</p> <h4>Objective-C</h4> - <pre class="highlight"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">stopVideoSession</span><span class="p">;</span></code></pre> + <pre class="highlight"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">stop</span><span class="p">;</span></code></pre> <h4>Swift</h4> - <pre class="highlight"><code><span class="kd">func</span> <span class="nf">stopVideoSession</span><span class="p">()</span></code></pre> + <pre class="highlight"><code><span class="kd">func</span> <span class="nf">stop</span><span class="p">()</span></code></pre> @@ -326,68 +383,42 @@ <h4>Parameters</h4> <dl> <dt>imageBuffer</dt> - <dd><p>A CVImageBufferRef to be encoded by Video Toolbox</p> -</dd> + <dd><p>A CVImageBufferRef to be encoded by Video Toolbox</p></dd> </dl> <div> <h4>Return Value</h4> <p>Whether or not the data was successfully encoded and sent.</p> - </div> - <h3 id="section--startAudioSessionWithStartBlock:"> - -startAudioSessionWithStartBlock: + <h3 id="section--sendVideoData:presentationTimestamp:"> + -sendVideoData:presentationTimestamp: </h3> - <p>This method will attempt to start an audio session</p> + <p>This method receives raw image data and will run iOS8+’s hardware video encoder to turn the data into a video stream, which will then be passed to the connected head unit.</p> <h4>Objective-C</h4> - <pre class="highlight"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">startAudioSessionWithStartBlock</span><span class="p">:</span> - <span class="p">(</span><span class="n">nonnull</span> <span class="n"><a href="../Type Definitions.html#/c:SDLStreamingMediaManager.h@T@SDLStreamingStartBlock">SDLStreamingStartBlock</a></span><span class="p">)</span><span class="nv">startBlock</span><span class="p">;</span></code></pre> + <pre class="highlight"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">sendVideoData</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">CVImageBufferRef</span><span class="p">)</span><span class="nv">imageBuffer</span> + <span class="nf">presentationTimestamp</span><span class="p">:(</span><span class="n">CMTime</span><span class="p">)</span><span class="nv">presentationTimestamp</span><span class="p">;</span></code></pre> <h4>Swift</h4> - <pre class="highlight"><code><span class="kd">func</span> <span class="nf">startAudioSession</span><span class="p">(</span><span class="n">start</span> <span class="nv">startBlock</span><span class="p">:</span> <span class="kd">@escaping</span> <span class="kt"><a href="../Type Definitions.html#/c:SDLStreamingMediaManager.h@T@SDLStreamingStartBlock">SDLStreamingStartBlock</a></span><span class="p">)</span></code></pre> + <pre class="highlight"><code><span class="kd">func</span> <span class="nf">sendVideoData</span><span class="p">(</span><span class="n">_</span> <span class="nv">imageBuffer</span><span class="p">:</span> <span class="kt">CVImageBuffer</span><span class="p">,</span> <span class="nv">presentationTimestamp</span><span class="p">:</span> <span class="kt">CMTime</span><span class="p">)</span> <span class="o">-></span> <span class="kt">Bool</span></code></pre> <h4>Parameters</h4> <dl> - <dt>startBlock</dt> - <dd><p>A block that will be called with the result of attempting to start an audio session</p> -</dd> + <dt>imageBuffer</dt> + <dd><p>A CVImageBufferRef to be encoded by Video Toolbox</p></dd> + <dt>presentationTimestamp</dt> + <dd><p>A presentation timestamp for the frame, or kCMTimeInvalid if timestamp is unknown. If it’s valid, it must be greater than the previous one.</p></dd> </dl> - - <h3 id="section--startAudioSessionWithTLS:startBlock:"> - -startAudioSessionWithTLS:startBlock: - </h3> - - <p>Undocumented</p> - - - - - - - <h3 id="section--stopAudioSession"> - -stopAudioSession - </h3> - - <p>This method will stop a running audio session if there is one running.</p> - - - - <h4>Objective-C</h4> - <pre class="highlight"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">stopAudioSession</span><span class="p">;</span></code></pre> - - - <h4>Swift</h4> - <pre class="highlight"><code><span class="kd">func</span> <span class="nf">stopAudioSession</span><span class="p">()</span></code></pre> - - - + <div> + <h4>Return Value</h4> + <p>Whether or not the data was successfully encoded and sent.</p> + </div> <h3 id="section--sendAudioData:"> -sendAudioData: @@ -398,24 +429,22 @@ <h4>Objective-C</h4> - <pre class="highlight"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">sendAudioData</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSData</span> <span class="o">*</span><span class="p">)</span><span class="nv">pcmAudioData</span><span class="p">;</span></code></pre> + <pre class="highlight"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">sendAudioData</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSData</span> <span class="o">*</span><span class="p">)</span><span class="nv">audioData</span><span class="p">;</span></code></pre> <h4>Swift</h4> - <pre class="highlight"><code><span class="kd">func</span> <span class="nf">sendAudioData</span><span class="p">(</span><span class="n">_</span> <span class="nv">pcmAudioData</span><span class="p">:</span> <span class="kt">Data</span><span class="p">)</span> <span class="o">-></span> <span class="kt">Bool</span></code></pre> + <pre class="highlight"><code><span class="kd">func</span> <span class="nf">sendAudioData</span><span class="p">(</span><span class="n">_</span> <span class="nv">audioData</span><span class="p">:</span> <span class="kt">Data</span><span class="p">)</span> <span class="o">-></span> <span class="kt">Bool</span></code></pre> <h4>Parameters</h4> <dl> - <dt>pcmAudioData</dt> - <dd><p>The data in PCM audio format, to be played</p> -</dd> + <dt>audioData</dt> + <dd><p>The data in PCM audio format, to be played</p></dd> </dl> <div> <h4>Return Value</h4> <p>Whether or not the data was successfully sent.</p> - </div> </section> |