Мне удалось получить доступ к файлу списка воспроизведения (.m3u8) с подписанным URL. Но проблема в том, что для доступа к потоковым файлам (.ts) в списке воспроизведения необходимо также подписать URL каждого файла.
Например:
Я могу получить доступ к playlist.m3u8 с подписанным URL-адресом http://abcdefg.cloudfront.net/media/playlist.m3u8?Expires=xxxxxxxx&Policy=yyyyyyyyyyyyy&Signature=zzzzzzzzzzzzzz&Key-Pair-Id=kkkkkkkkkkkkkkkkk
#EXTM3U #EXT-X-TARGETDURATION:10 #EXTINF:13 playlist-00000.ts #EXTINF:12, playlist-00001.ts #EXTINF:12, playlist-00002.ts
Но к каждому ts-файлу внутри него также следует обращаться, как
http://abcdefg.cloudfront.net/media/playlist-00000.ts?Expires=xxxxxxxx&Policy=yyyyyyyyyyyyy&Signature=zzzzzzzzzzzzzz&Key-Pair-Id=kkkkkkkkkkkkkkkkk
Я должен подписать каждый URL-адрес для каждого файла .ts в списке воспроизведения.
К сожалению, я не вижу ни одного медиаплеера, который мог бы обрабатывать добавление параметров для URL-адреса до того, как он получит ts files.
Если возможно, мне нужен обратный звонок от плеера, например:
public String onStreamFileReadyForPlaying(String pathToTsFile) { //I could append the parameters here return pathToTsFile + "?Expires=xxxxxxxx&Policy=yyyyyyyyyyyyy&Signature=zzzzzzzzzzzzzz&Key-Pair-Id=kkkkkkkkkkkkkkkkk" }
Просто подпишите URL-адреса в списке воспроизведения.
Это все, что нужно сделать.