2017-02-03 11 views
0

Azure Media Services에서 호스팅되는 비디오가 있습니다. H264 Multiple Bitrate 1080p 인코딩 사전 설정 (다른 것들도 시도해 봤습니다)을 사용하여 비디오를 인코딩했습니다. 스트리밍을 위해 게시 한 후 다음 끝점을 얻습니다.iOS (Xamarin)의 Azure Media Services에서 호스팅되는 스트리밍 비디오

Smooth Streaming 
http://mysite.streaming.mediaservices.windows.net/eaaa9f34-e39a-4393-a93b-14a7609ebd27/sampleVid.ism/manifest 

MPEG-DASH 
http://mysite.streaming.mediaservices.windows.net/eaaa9f34-e39a-4393-a93b-14a7609ebd27/sampleVid.ism/manifest(format=mpd-time-csf) 

HLS(v3) 
http://mysite.streaming.mediaservices.windows.net/eaaa9f34-e39a-4393-a93b-14a7609ebd27/sampleVid.ism/manifest(format=m3u8-aapl-v3) 

HLS(v4) 
http://mysite.streaming.mediaservices.windows.net/eaaa9f34-e39a-4393-a93b-14a7609ebd27/sampleVid.ism/manifest(format=m3u8-aapl) 

(내가 내 사이트 아래 내 실제 사이트 이름을 대체) 나는 성공적으로 HLS (V4) URL을 사용하여 안드로이드에 대한 비디오를 스트리밍, 그래서 나는 비디오 작품을 알고있다.

ios의 경우이 자습서를 따라갔습니다. https://developer.xamarin.com/recipes/ios/media/video_and_photos/play_a_video_using_avplayer/

로컬 비디오를 성공적으로 재생할 수 있습니다. 나는 또한이 사과 튜토리얼을 따라 원격 비디오를 재생할 수있었습니다. https://developer.apple.com/library/prerelease/content/documentation/AudioVideo/Conceptual/AVFoundationPG/Articles/02_Playback.html

내가 사용하고있는 URL에 문제가있을 수 있지만 그게 무엇인지 알 수는 없습니다. 내 ViewDidLoad 메서드의 코드는 다음과 같습니다.

 var myUrl = NSUrl.FromString("http://myurl.streaming.mediaservices.windows.net/eaaa9f34-e39a-4393-a93b-14a7609ebd27/sampleVid.ism/manifest(format=m3u8-aapl)");   
     var appleUrl = NSUrl.FromString("http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8"); 

     _playerItem = new AVPlayerItem(myUrl); 

     _player = new AVPlayer(_playerItem); 

     _playerLayer = AVPlayerLayer.FromPlayer(_player); 
     _playerLayer.Frame = ProfileVideoContainerView.Frame; 
     ProfileVideoContainerView.Layer.AddSublayer(_playerLayer); 
     _player.Play(); 

myUrl은 작동하지만 appleUrl은 작동하지 않습니다.

답변

1

http가 아니라 https를 사용해야했습니다. 나는 이것을 시도했지만, 분명히 생각하지는 않았다. 또한 appleUrl이 http와 함께 작동하는 이유를 모르겠습니다.

1

끝점이 정보 보호 목록에 허용되지 않는 보안 연결로 나열되어 있지 않으면 HTTP 끝점에 대한 연결을 허용하지 않는 "기능"이 있습니다. 나는 이것을 잊어 버렸고 며칠/몇 주 전에 그것에 붙 잡혔다. 이 기능은 iOS9로 구현되었지만 100 % 확실하지는 않습니다. 그 전에 구현되었을 수 있습니다.