ラジオ ストリーミング アプリケーションを作成しています。私のアプリは完全に動作しています。画面には再生用と一時停止用の 2 つのボタンがあり、プレーヤーの状態を示すラベルもあります。このラベルに「再生中」または「一時停止」の状態を表示しても問題ありません。私の問題は、再生ボタンを押すと、バッファが情報を収集しているときに「」を表示する方法がわからないことです。プレーヤーがオーディオのストリーミングを開始する前に、「バッファリング...」というラベルが表示されます。
これは、ラジオ局のストリーミングに使用するコードです。
NSString *url = [NSString stringWithFormat:@"http://66.7.218:8816"];
player = [[MPMoviePlayerController alloc] initWithContentURL:[NSURL URLWithString:url]];
player.movieSourceType = MPMovieSourceTypeStreaming;
player.view.hidden = YES;
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];
[[AVAudioSession sharedInstance]setActive:YES error:nil];
[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
[player prepareToPlay];
[player play];
私が作成した changeStatus という関数を使用しています。この関数は、プレーヤーのステータスを識別するために毎秒呼び出されます。
-(void)changeStatus
{
if (player.loadState == MPMovieLoadStateUnknown) {
status.text = @"Buffering...";
}
if(player.playbackState == MPMoviePlaybackStatePlaying)
{
status.text = @"Playing.";
}
if(player.playbackState == MPMoviePlaybackStatePaused)
{
status.text = @"Paused";
}
}
私は本当にこの問題を解決する必要があり、私はそれを解決するためにできる限りのことを試みました. あなたが私を助けてくれることを願っています!前もって感謝します。