AntManager - DreamTeamMobile/Xamarin.AntMedia.Samples GitHub Wiki
string DefaultServer { get; set; }
string DefaultToken { get; set; }
Values for all AntWebRTCView, if set here - no need to set it in every AntWebRTCView
IEnumerable Services { get; }
all active WebRTC peer connections
void ConfigureRecording(string streamId, int fps, int bitrate, int width, int height);
for streamId set fps, bitrate, witdth, height if mode is Publish. need to call Init() on AntFrame or AntManager for that streamId after that
void ChangeMode(string streamId, AntWebRTCMode mode);
for streamId set new mode, need to call Init() on AntFrame or AntManager for that streamId after that
void Init(string streamId, AntWebRTCMode mode, bool dataEnabled);
re-init of AntView and connection for streamId
void Start(string streamId);
start of rendering/publishing for AntView and connection for streamId
void Stop(string streamId);
stop of rendering/publishing for AntView and connection for streamId
void ToggleVideo(string streamId);
toggle video for AntView and connection for streamId
void ToggleAudio(string streamId);
toggle for AntView and connection for streamId
void SwitchCamera(string streamId);
switch camera for AntView and connection for streamId
void SendMessage(string streamId, string message);
send message from streamId
void SendBinaryMessage(string streamId, byte[] message);
send binary message from streamId
AntWebRTCMode GetMode(string streamId);
get current WebRTC mode of connection with streamId
AntWebRTCView GetView(string streamId, AntP2PViewMode mode = AntP2PViewMode.Fullscreen);
get current P2P mode only view, works only in P2P WebRTC mode
void Android_ConfigureAsSharing(string streamId, int permissionId);
void Android_SharingStart(string streamId, int requestCode, int resultCode, object dataIntent);
makes sharing instead of camera on Publish mode, only on Android.
use in pair, ConfigureAsSharing then SharingStart permissionId - MediaProjection intent code,
also you need to run projection manager private void startScreenCapture() { MediaProjectionManager mediaProjectionManager = (MediaProjectionManager) getApplication().getSystemService( Context.MEDIA_PROJECTION_SERVICE); startActivityForResult( mediaProjectionManager.createScreenCaptureIntent(), permissionId); }
public override void onActivityResult(int requestCode, int resultCode, Intent data)
{
if (requestCode != permissionId)
return;
IAntManager.Android_SharingStart("stream1", requestCode, resultCode, data);
}
Events, Global
###event EventHandler OnMessage; for any platform - on receiving message
Events, native
from AntManager you can receive all native events from Android and iOS, all parameters equals to native one
Android IWebRTCListener
event EventHandler Android_IWebRTCListener_NoStreamExistsToPlay; event EventHandler Android_IWebRTCListener_OnBitrateMeasurement; event EventHandler Android_IWebRTCListener_OnDisconnected; event EventHandler Android_IWebRTCListener_OnError; event EventHandler Android_IWebRTCListener_OnIceConnected; event EventHandler Android_IWebRTCListener_OnIceDisconnected; event EventHandler Android_IWebRTCListener_OnPlayFinished; event EventHandler Android_IWebRTCListener_OnPlayStarted; event EventHandler Android_IWebRTCListener_OnPublishFinished; event EventHandler Android_IWebRTCListener_OnPublishStarted; event EventHandler Android_IWebRTCListener_OnSignalChannelClosed; event EventHandler Android_IWebRTCListener_OnTrackList;
Android IDataChannelObserver
event EventHandler Android_IDataChannelObserver_OnBufferedAmountChange; event EventHandler Android_IDataChannelObserver_OnMessage; event EventHandler Android_IDataChannelObserver_OnMessageSent; event EventHandler Android_IDataChannelObserver_OnStateChange;
Ios IAntMediaClientDelegate
event EventHandler Ios_IAntMediaClientDelegate_ClientDidConnect; event EventHandler Ios_IAntMediaClientDelegate_ClientDidDisconnect; event EventHandler Ios_IAntMediaClientDelegate_ClientHasError; event EventHandler Ios_IAntMediaClientDelegate_RemoteStreamStarted; event EventHandler Ios_IAntMediaClientDelegate_RemoteStreamRemoved; event EventHandler Ios_IAntMediaClientDelegate_LocalStreamStarted; event EventHandler Ios_IAntMediaClientDelegate_PlayStarted; event EventHandler Ios_IAntMediaClientDelegate_PlayFinished; event EventHandler Ios_IAntMediaClientDelegate_PublishStarted; event EventHandler Ios_IAntMediaClientDelegate_PublishFinished; event EventHandler Ios_IAntMediaClientDelegate_Disconnected; event EventHandler Ios_IAntMediaClientDelegate_DataReceivedFromDataChannelWithStreamId; event EventHandler Ios_IAntMediaClientDelegate_AudioSessionDidStartPlayOrRecord;