Запрос Fairplay SPC возвращает ноль

Я пытаюсь использовать [AVAssetResourceLoadingRequest streamingContentKeyRequestDataForApp:contentIdentifier:options:error:]; метод для получения ключа SPC, но я получаю nil вместо предполагаемого значения SPC. В основном я ссылаюсь на предоставленный пример приложения Fairplay. Я использую закодированную строку хоста URL-адреса запроса в качестве идентификатора контента и сертификат .DER, полученный с сервера SPC, в качестве данных приложения. Кто-нибудь еще сталкивался с этой проблемой?

NSString *hostString = [URL host];  
NSData *assetId        = [NSData dataWithBytes:[hostString cStringUsingEncoding:NSUTF8StringEncoding] length:[hostString lengthOfBytesUsingEncoding:NSUTF8StringEncoding]];  
NSData *certificate = (obtained via Key Server).  

NSError *error;  
NSData *SPC = [loadingRequest streamingContentKeyRequestDataForApp:certificate contentIdentifier:assetId options:nil error:&error]  

Результат SPC здесь нулевой. Полное описание ошибки выглядит следующим образом:

Error Domain=AVFoundationErrorDomain  
Code=-11800 "The operation could not be completed"   
UserInfo=0x170461980  
{NSUnderlyingError=0x1740548e0 "The operation couldn’t be completed. (OSStatus error -12640.)",  
NSLocalizedFailureReason=An unknown error occurred (-12640),  
NSLocalizedDescription=The operation could not be completed}  

person jfuellert    schedule 06.07.2015    source источник


Ответы (1)


Оказывается, тестовый поток был неправильно зашифрован с помощью шифрования SAMPLE-AES.

person jfuellert    schedule 16.07.2015