MIME-тип аудио / MPEG не потоковое? - PullRequest
1 голос
/ 10 января 2012

Я использую потоковую передачу Мэтта Галлахера здесь.

Я пытаюсь воспроизвести возвращенные URL-адреса SHOUTCast API.Но медиа с MIME-типом audio / mpeg не воспроизводятся без каких-либо ошибок.

Но MIME-тип audio / aacp воспроизводится нормально.

Почему так?Нужно ли мне использовать что-то кроме этого?

В учебном пособии Мэтта он заявил, что для mp3-файлов мне нужно добавить fileTypeHint, но это уже есть, а для MediaType = audio/mpeg это не входит ни в один из случаевв функции ниже.

Что нужно изменить?

+ (AudioFileTypeID)hintForFileExtension:(NSString *)fileExtension
{
    AudioFileTypeID fileTypeHint = kAudioFileAAC_ADTSType;
    if ([fileExtension isEqual:@"mp3"])
    {
        fileTypeHint = kAudioFileMP3Type;
    }
    else if ([fileExtension isEqual:@"wav"])
    {
        fileTypeHint = kAudioFileWAVEType;
    }
    else if ([fileExtension isEqual:@"aifc"])
    {
        fileTypeHint = kAudioFileAIFCType;
    }
    else if ([fileExtension isEqual:@"aiff"])
    {
        fileTypeHint = kAudioFileAIFFType;
    }
    else if ([fileExtension isEqual:@"m4a"])
    {
        fileTypeHint = kAudioFileM4AType;
    }
    else if ([fileExtension isEqual:@"mp4"])
    {
        fileTypeHint = kAudioFileMPEG4Type;
    }
    else if ([fileExtension isEqual:@"caf"])
    {
        fileTypeHint = kAudioFileCAFType;
    }
    else if ([fileExtension isEqual:@"aac"])
    {
        fileTypeHint = kAudioFileAAC_ADTSType;
    }
    return fileTypeHint;
}

И с этим стримером, как мне работать в условиях, когда я играю на топ-5 станциях, и для этого я получил все URL из PLSфайл и сохранить их в массиве.

Теперь, как я могу непрерывно воспроизводить их, как это радио

1 Ответ

3 голосов
/ 24 июля 2012

Я тоже сталкивался с такой же проблемой. Похоже, что если нет fileExtension, то по умолчанию fileTypeHint равно kAudioFileAAC_ADTSType (как первая строка функции).

Изменение значения на AudioFileTypeID fileTypeHint = kAudioFileMP2Type решит проблему MediaType = audio/mpeg.

...