AvPlayer загружает mp3 вместо потоковой передачи - PullRequest
1 голос
/ 24 сентября 2019

Я создаю приложение, когда хочу транслировать mp3 файлы.Я использую класс AvPlayer.Когда я создаю экземпляр avplayer, я помещаю файл uri в конструктор, например:

_player = AVPlayer.FromUrl(NSUrl.FromString("Url");
_player.Play();

Это код на C #, но я думаю, что он очень похож на swift.Когда я вызываю метод воспроизведения, mp3-файл загружается вместо потокового воспроизведения.Я пытаюсь воспроизвести длинный mp3-файл (что-то около 50 минут), и загрузка занимает много времени.Когда загрузка заканчивается, проигрывается mp3, но когда я отключаю интернет-соединение и ищу конец, воспроизведение продолжается.

Как я могу сказать avplayer, что он должен транслироваться.Я нашел SO вопрос Почему AVPlayer сначала загружает вместо прямой трансляции? , но нет решения.

Android MediaPlayer транслирует этот mp3 без проблем.

1 Ответ

2 голосов
/ 24 сентября 2019

Начните с iOS 10, установите AutomaticallyWaitsToMinimizeStalling на false или задайте время задержки:

public override void ViewDidLoad ()
{
    base.ViewDidLoad ();
    // Perform any additional setup after loading the view, typically from a nib.

    AVPlayerItem item = new AVPlayerItem(new NSUrl("https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp3"));
    AVPlayer _player = new AVPlayer(item);
    _player.AutomaticallyWaitsToMinimizeStalling = false;
    _player.Play();
}

См .: avplayer-останавливает воспроизведение видео после буферизации

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...