Forum Discussion

chaochichen's avatar
12 years ago

Issues with HLS segment URLs

Hi,

I am having issues using Roku video player to play video content hosted on Amazon S3 servers:

1). My Roku app requested an HLS playlist from an HLS server hosted on Amazon:
GET /v1/media_info/3f24f472edf2498fb8cb9cf8ecfde887/url?delivery_type=hls&max_bitrate=2500&start_bitrate=1500

The initial m3u8 playlist was retrieved successfully with required query parameters string: http: //someserver.amazonaws.com/GUID1/GUID2/profiles/hls_ts_500/playlist.m3u8?user_guid=GUID3&AWSAccessKeyId=SomeKEY&Expires=1374657914&signature=someSignature

2). The Roku video player requested the m3u8 playlist from the HLS server hosted on Amazon and received the playlist successfully:
GET /GUID1/GUID2/profiles/hls_ts_500/playlist.m3u8?user_guid=GUID3&AWSAccessKeyId=SomeKEY&Expires=1374657914&signature=someSignature

The retrieved playlist looks like:
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-ALLOW-CACHE:YES
#EXT-X-TARGETDURATION:11
#EXTINF:10.030967,
title0000.ts
#EXTINF:10.002411,
title0001.ts
#EXTINF:10.010300,
title0002.ts
#EXTINF:10.018100,
title0003.ts
#EXTINF:10.002656,
title0004.ts
#EXTINF:2.960000,
title0005.ts
#EXT-X-ENDLIST

3). Then, Roku video player used the playlist and requested for TS segments for HLS playback, but this step failed. Here is the request line:
GET /GUID1/GUID2/profiles/hls_ts_500/title0000.ts?user_guid=GUID3&AWSAccessKeyId=SomeKEY&Expires=1374657914&signature=someSignature

It turns out that the Amazon S3 server rejected the segment request due to the extra query parameters appended by the Roku video player. If I hand create a request line without the query parameters like GET /GUID1/GUID2/profiles/hls_ts_500/title0000.ts, the Amazon S3 server will accept the request and the TS file will be downloaded.

So, is there a way to instruct the Roku video player not to append the query parameters appeared in the m3u8 playlist URL line to the segment URL's?

Thanks,
Charles
No RepliesBe the first to reply