Я работаю над приложением, которое предназначено для воспроизведения радио с использованием URL-адресов TuneIn. В TuneIn в API есть HTTP-запрос на получение, который предоставляет JSON со всеми URL-адресами и их битрейтами.
Итак, http://opml.radiotime.com/Tune.ashx?id=s150147&formats=aac,mp3&render=json
вернется
{ "head": { "status": "200"}, "body": [
{ "element" : "audio",
"url": "http://player.absoluteradio.co.uk/tunein.php?i=a664.aac",
"reliability": 95,
"bitrate": 64,
"media_type": "aac",
"position": 0,
"player_width": 529,
"player_height": 716,
"guide_id": "e89279187",
"is_direct": false }, { "element" : "audio",
"url": "http://player.absoluteradio.co.uk/tunein.php?i=a6low.mp3",
"reliability": 78,
"bitrate": 48,
"media_type": "mp3",
"position": 0,
"player_width": 529,
"player_height": 716,
"guide_id": "e89279188",
"is_direct": false }, { "element" : "audio",
"url": "http://player.absoluteradio.co.uk/tunein.php?i=a624.aac",
"reliability": 29,
"bitrate": 24,
"media_type": "aac",
"position": 0,
"player_width": 529,
"player_height": 716,
"guide_id": "e89279186",
"is_direct": false }] }
Мой первый подход состоял в том, чтобы настроить AVPlayer с одним из указанных URL-адресов, но он не воспроизводился.
Кроме того, если вы скопируете и вставите URL-адрес в браузер Chrome, он начнет загрузку файла, который будет длиться вечно.
Проверив с помощью wireshark, я, наконец, обнаружил, что потоковый URL-адрес отличается, и он предоставляется с заголовком при первом запросе файла.
Я знаю, что это было сделано на Android путем перехвата заголовков, но возможно ли сделать то же самое на iOS?
Я искал некоторые библиотеки, и MobileVLCKit кажется кандидатом, но не уверен, как я рискую, что мое приложение может быть отклонено.
Поскольку в настоящее время потоковое вещание очень популярно, могу ли я добиться этого «путем Apple»?
Спасибо