Как транслировать онлайн-радио из SHOUTCast в моем приложении для iOS?
Я занимаюсь разработкой приложения для онлайн-радио iPhone Streamer. Я использовал класс AudioStreamer Мэтта Галлахера для потоковой онлайн-трансляции на станциях из SHOUTCast. Но проблема в том, что AudioStreamer API был заброшен и не может воспроизводить различные радиоканалы. Я гуглил и нашел различные альтернативы, включая: AVPlayer, MPMoviePlayer и т. Д.
Пожалуйста, порекомендуйте, какой игрок выполнит требование лучше всего.
2 ответа
Вы можете использовать MPMovieplayerviewcontroller. Это идеально подходит для потокового аудио / видео. Я тоже
используйте это для потокового аудио в одном из моих приложений, а также это выглядит как проигрыватель iPhone по умолчанию.
Хорошо, вот код для использования этого плеера, как я делаю в моем проекте:
NSString *geturl = [[radiotablearray objectAtIndex:btntag]objectForKey:@"iurl"];
NSLog(@"geturl..%@",geturl);
NSURL *fileURL=[NSURL URLWithString:geturl];
NSLog(@"fileURL..%@",fileURL);
moviePlayerController = [[MPMoviePlayerViewController alloc] initWithContentURL:fileURL];
[moviePlayerController.moviePlayer prepareToPlay];
moviePlayerController.moviePlayer.shouldAutoplay=YES;
moviePlayerController.view.frame = self.view.frame;
[self presentMoviePlayerViewControllerAnimated:moviePlayerController];
[moviePlayerController.moviePlayer play];
Также добавьте медиаплеер и инфраструктуру Avfoundation в App. Добавьте или импортируйте эти два файла в.h:
#import <MediaPlayer/MediaPlayer.h>
#import <AVFoundation/AVFoundation.h>
& Импортировать #import <MediaPlayer/MediaPlayer.h>
это в.m файле. также сделайте свойство игрока, как показано ниже в файле.h:
MPMoviePlayerViewController *moviePlayerController;
@property(strong,retain) MPMoviePlayerViewController *moviePlayerController;
И добавьте метод, где вы хотите, но также внесите изменения в код в соответствии с вашими потребностями. Я просто отправлю вам свой код реализации, вы просто измените его в соответствии со своими требованиями. Если у вас есть какие-либо проблемы, спросите меня. Удачи.
// viewcontroller.h
MPMoviePlayerViewController *moviePlayer;
//viewcontroller.m
Это реализовано в viewDidLoad
moviePlayer = [[MPMoviePlayerViewController alloc] initWithContentURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@",@"http://sample url"]]];
[moviePlayer.moviePlayer prepareToPlay];
moviePlayer.view.hidden = YES;
[self.view addSubview:moviePlayer.view];
[moviePlayer.moviePlayer play];