Agora RTC Objective-C API Reference  Refactor
Public Member Functions
IRtmpStreamingService Class Referenceabstract

Inherits RefCountInterface.

Public Member Functions

virtual int setLiveTranscoding (const LiveTranscoding &transcoding)=0
 
virtual int startRtmpStreamWithoutTranscoding (const char *url)=0
 
virtual int startRtmpStreamWithTranscoding (const char *url, const LiveTranscoding &transcoding)=0
 
virtual int updateRtmpTranscoding (const LiveTranscoding &transcoding)=0
 
virtual int stopRtmpStream (const char *url)=0
 
virtual int registerObserver (IRtmpStreamingObserver *observer)=0
 
virtual int unregisterObserver (IRtmpStreamingObserver *observer)=0
 

Detailed Description

The IRtmpStreamingService class, which enables the live stream service.

Constructor & Destructor Documentation

◆ ~IRtmpStreamingService()

~IRtmpStreamingService ( )
inlineprotected

Member Function Documentation

◆ setLiveTranscoding()

virtual int setLiveTranscoding ( const LiveTranscoding transcoding)
pure virtual

Sets the video layout and audio settings for CDN live.

The SDK triggers the onTranscodingUpdated callback when the LiveTranscoding class is updated using this method. If you call this method to set LiveTrancoding for the first time, the SDK does not trigger this callback.

Note
  • Ensure that you enable the RTMP Converter service before using this function.
  • This method applies to Live-Broadcast only.
  • Ensure that you call this method before calling addPublishStreamUrl().

◆ startRtmpStreamWithoutTranscoding()

virtual int startRtmpStreamWithoutTranscoding ( const char *  url)
pure virtual

Publishes the local stream without transcoding to a specified CDN live RTMP address. (CDN live only.)

The SDK returns the result of this method call in the onStreamPublished callback.

The startRtmpStreamWithoutTranscoding method call triggers the onRtmpStreamingStateChanged callback on the local client to report the state of adding a local stream to the CDN.

Note
  • Ensure that the user joins the channel before calling this method.
  • This method adds only one stream RTMP URL address each time it is called.
  • The RTMP URL address must not contain special characters, such as Chinese language characters.
  • This method applies to Live Broadcast only.
Parameters
urlThe CDN streaming URL in the RTMP format. The maximum length of this parameter is 1024 bytes.
Returns
  • 0: Success.
  • < 0: Failure.
  • ERR_INVALID_ARGUMENT (2): The RTMP URL address is NULL or has a string length of 0.
  • ERR_NOT_INITIALIZED (7): You have not initialized the RTC engine when publishing the stream.

◆ startRtmpStreamWithTranscoding()

virtual int startRtmpStreamWithTranscoding ( const char *  url,
const LiveTranscoding transcoding 
)
pure virtual

Publishes the local stream with transcoding to a specified CDN live RTMP address. (CDN live only.)

The SDK returns the result of this method call in the onStreamPublished callback.

The startRtmpStreamWithTranscoding method call triggers the onRtmpStreamingStateChanged callback on the local client to report the state of adding a local stream to the CDN.

Note
  • Ensure that the user joins the channel before calling this method.
  • This method adds only one stream RTMP URL address each time it is called.
  • The RTMP URL address must not contain special characters, such as Chinese language characters.
  • This method applies to Live Broadcast only.
Parameters
urlThe CDN streaming URL in the RTMP format. The maximum length of this parameter is 1024 bytes.
transcodingSets the CDN live audio/video transcoding settings. See LiveTranscoding.
Returns
  • 0: Success.
  • < 0: Failure.

◆ updateRtmpTranscoding()

virtual int updateRtmpTranscoding ( const LiveTranscoding transcoding)
pure virtual

Update the video layout and audio settings for CDN live. (CDN live only.)

Note
This method applies to Live Broadcast only.
Parameters
transcodingSets the CDN live audio/video transcoding settings. See LiveTranscoding.
Returns
  • 0: Success.
  • < 0: Failure.

◆ stopRtmpStream()

virtual int stopRtmpStream ( const char *  url)
pure virtual

Stop an RTMP stream with transcoding or without transcoding from the CDN. (CDN live only.)

This method removes the RTMP URL address (added by the startRtmpStreamWithoutTranscoding method or IRtcEngine::startRtmpStreamWithTranscoding "startRtmpStreamWithTranscoding" method) from a CDN live stream. The SDK returns the result of this method call in the onStreamUnpublished callback.

The stopRtmpStream method call triggers the onRtmpStreamingStateChanged callback on the local client to report the state of removing an RTMP stream from the CDN.

Note
  • This method removes only one RTMP URL address each time it is called.
  • The RTMP URL address must not contain special characters, such as Chinese language characters.
  • This method applies to Live Broadcast only.
Parameters
urlThe RTMP URL address to be removed. The maximum length of this parameter is 1024 bytes.
Returns
  • 0: Success.
  • < 0: Failure.

◆ registerObserver()

virtual int registerObserver ( IRtmpStreamingObserver observer)
pure virtual

Registers an RTMP streaming observer.

Parameters
observerThe pointer to an RTMP streaming observer. See IRtmpStreamingObserver.
Returns
  • 0: Success.
  • < 0: Failure.

◆ unregisterObserver()

virtual int unregisterObserver ( IRtmpStreamingObserver observer)
pure virtual

Releases the RTMP streaming observer created by registerObserver().

Parameters
observerThe pointer to the RTMP streaming observer that you want to release. See IRtmpStreamingObserver.
Returns
  • 0: Success.
  • < 0: Failure.

◆ AddRef()

virtual void AddRef ( ) const
pure virtualinherited

◆ Release()

virtual RefCountReleaseStatus Release ( ) const
pure virtualinherited

◆ HasOneRef()

virtual bool HasOneRef ( ) const
pure virtualinherited