簡體   English   中英

iOS直播到Azure媒體服務

[英]iOS broadcasting live to Azure Media Services

我正在嘗試制作一個類似Periscope的應用程序(實際上並不實用,但是技術要求是一樣的),用戶可以從他們的iPhone快速開始向不明數量的用戶(無論是移動用戶)流式傳輸。 我正在嘗試使用Azure Media Services進行實時視頻流傳輸,但是即使閱讀了文檔頁面之后,我仍然無法使用。

我正在使用VideoCore( https://github.com/jgh-/VideoCore )從iOS設備發布到RTMP服務器。 在本地(使用Wowza)上,我可以使用設置的用戶名和密碼連接到本地服務器,如下所示:

vcSession = [[VCSimpleSession alloc] initWithVideoSize:CGSizeMake(1280, 720) frameRate:30 bitrate:1000000 useInterfaceOrientation:NO];
[self.view addSubview:vcSession.previewView];
vcSession.previewView.frame = self.view.bounds;
vcSession.delegate = self;
[vcSession startRtmpSessionWithURL:@"rtmp://172.20.10.2:1935/live?rtmpauth=test:test" andStreamKey:@"test"];

rtmpauth參數具有username:password格式,我將兩者都設置為在本地服務器上進行test 有用。 在Azure中,我創建了一個名為test的通道,並且具有以下Ingest URL:

rtmp://test-myappname.channel.mediaservices.windows.net:1935/live/some-long-hexadecimal-string

在Wirecast中,我可以通過在“輸出設置”中選擇“ Azure媒體服務”並鍵入該“接收URL”,以流式傳輸到URL(盡管速度極慢且連接經常丟失,不知道為什么)。 在iOS中,我不知道如何連接到Azure媒體服務。

startRtmpSessionWithURL:andStreamKey:方法中,我嘗試了URL和流鍵的所有可能組合,但是沒有運氣。 我不知道我的用戶名/密碼是什么(Azure端沒有給出),流密鑰是什么(我已經嘗試過testlive ,空字符串)以及那個長十六進制字符串是什么(有些消息來源說這是不過稱為定位器)。

連接到Azure Media Services進行流傳輸時,RTMP URL和流密鑰的正確格式是什么?

我會找人幫你的。 我認為您只是在URL中的長十六進制字符串之后缺少流名稱。

rtmp://test-myappname.channel.mediaservices.windows.net:1935 / live / some-long-hexadecimal-string / [您的自定義流名稱-真的!!

另外,您可以控制編碼設置嗎? 某些編碼設置可能不正確。 我們尚未使用該VideoCore庫進行過測試,因此RTMP協議也可能存在細微差異(因為該文檔的文獻記錄很差,並且那里缺少很多信息)。

我很好奇為什么您的Wirecast設置也會遇到問題。 一開始聽起來並不好。 網絡問題? 您是否將其設置為設置了H.264且未設置x264的正確編碼器?

在此處針對Cenk的博客文章中查看Wirecast中的設置: http ://azure.microsoft.com/blog/2014/09/18/azure-media-services-rtmp-support-and-live-encoders/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM