// Google API public void OnConnected(Bundle connectionHint) { Console.WriteLine("Google API: Connected"); CastClass.CastApi.LaunchApplication(googleApiClient, APP_ID) .SetResultCallback <CastClass.IApplicationConnectionResult> (result => { Console.WriteLine("Launch Application Result: " + result.ApplicationStatus); mediaPlayer = new RemoteMediaPlayer(); mediaPlayer.MetadataUpdated += (sender, e) => { Console.WriteLine("MediaPlayer: Metadata Updated"); }; mediaPlayer.StatusUpdated += (sender, e) => { Console.WriteLine("MediaPlayer: Status Updated"); var s = mediaPlayer.MediaStatus; Console.WriteLine(""); }; CastClass.CastApi.SetMessageReceivedCallbacks( googleApiClient, mediaPlayer.Namespace, mediaPlayer); SetSongUri(); }); }
private void Conn_OnAddStream(MediaStreamEvent __param0) { var stream = __param0.Stream; var videotracks = stream.GetVideoTracks(); //var media = Media.CreateMedia(); //var apd = media.GetAudioPlayoutDevices(); //if (apd.Count > 0) //{ // media.SelectAudioPlayoutDevice(apd[0]); //} var source = LocalMedia.CreateMediaSource(videotracks.FirstOrDefault(), stream.Id); RemoteMediaPlayer.SetMediaStreamSource(source); RemoteMediaPlayer.Play(); }
public async Task CreateReceiver(MediaStream mediaStream, long fromUid) { var conn = new RTCPeerConnection(RtcConfig); CurrentRoom.Recvs.Add(fromUid, conn); CurrentRoom.Recvs[fromUid].AddStream(mediaStream); CurrentRoom.Recvs[fromUid].OnIceCandidate += async(p) => { var Candidate = p.Candidate; var m = new SendCadidatModel(); m.candidate = new CandidateModel { candidate = Candidate.Candidate, sdpMlineindex = Candidate.SdpMLineIndex, sdpMid = Candidate.SdpMid, }; m.uid = Uid; m.fromUid = fromUid; Candidates.Add(m); await SendCandidate(m); }; CurrentRoom.Recvs[fromUid].OnAddStream += (p) => { var stream = p.Stream; var videotracks = stream.GetVideoTracks(); var source = LocalMedia.CreateMediaSource(videotracks.FirstOrDefault(), stream.Id); RemoteMediaPlayer.SetMediaStreamSource(source); RemoteMediaPlayer.Play(); }; await CreatOffer(Uid, fromUid); }
// Google API public void OnConnected (Bundle connectionHint) { Console.WriteLine ("Google API: Connected"); CastClass.CastApi.LaunchApplication (googleApiClient, APP_ID) .SetResultCallback<CastClass.IApplicationConnectionResult> (result => { Console.WriteLine ("Launch Application Result: " + result.ApplicationStatus); mediaPlayer = new RemoteMediaPlayer (); mediaPlayer.MetadataUpdated += (sender, e) => { Console.WriteLine ("MediaPlayer: Metadata Updated"); }; mediaPlayer.StatusUpdated += (sender, e) => { Console.WriteLine ("MediaPlayer: Status Updated"); var s = mediaPlayer.MediaStatus; Console.WriteLine (""); }; CastClass.CastApi.SetMessageReceivedCallbacks ( googleApiClient, mediaPlayer.Namespace, mediaPlayer); SetSongUri (); }); }