API QuickTime не работает с ошибкой 2048 - PullRequest
10 голосов
/ 06 февраля 2012

У меня проблемы с QuickTime API на MacOS 10.7.2 (b.11C74).

Вот фрагмент кода openFrameworks , который открывает дескриптор фильма:

// ofQuickTimePlayer.cpp
bool createMovieFromURL(string urlIn,  Movie &movie){
    char * url = (char *)urlIn.c_str();
    Handle urlDataRef;
    OSErr err;
    urlDataRef = NewHandle(strlen(url) + 1);
    // ...
    BlockMoveData(url, *urlDataRef, strlen(url) + 1);
    err = NewMovieFromDataRef(
        &movie, 
        newMovieActive, 
        nil, 
        urlDataRef, 
        URLDataHandlerSubType);
    // ...
    if ( err != noErr ) {
       ofLog(OF_LOG_ERROR,"createMovieFromURL: error loading url");
       return false;
    } else {
       return true;
    }
}

Все, что мне нужно, это просто открыть видеопоток HLS.

Тестирование потока Apple HLS не перестает загружаться, но видео не отображается. Вот оно: http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8

Мой тестовый поток HLS не загружается, и в этом случае ошибка равна -2048.

Все отлично работает с .mp4, передаваемым по HTTP, и с протоколом RTSP.

Те же потоки отлично воспроизводятся в QuickTime Player 10.1 (501.5).

Подробности моего крошечного исследования здесь: https://github.com/openframeworks/openFrameworks/issues/897

Итак, мои вопросы:

  1. В чем причина этого странного поведения?
  2. Как это исправить?
...