마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

HLS(Http Live Streaming) 와 관련한 M3U8 파일 재생시 seekTo 가 안먹히는 문제

0 추천
미더어플레이어의 seekTo()  가 일반적인 파일 재생 시는 적용이 되지만 m3u8 파일을 재생할 시에는 먹히질

않네요.... 이유를 알아내기 쉽지 않은듯 ...

미디어 라이브러리와 관련한 주제는 어려운 주제에 대해서는 구글링이 쉽지 않던데...

HLS 관련 주제는 구글링도 더욱 그런 듯 합니다.

혹시 경험이 있으신 분이 있으시면 조언을 부탁드려요~
cloudcat (120 포인트) 님이 2013년 6월 19일 질문

1개의 답변

0 추천

 m3u8를 살펴 보세요.

#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:1
#EXTINF:10
1.ts
#EXTINF:10
2.ts
#EXTINF:10
3.ts
#EXTINF:10
4.ts
 
이런 씩일 때에는  seekTo(20 * 1000)을 하면 20초로 seek을 시도하고,
단말에서는 3.ts를 받아 재생하면 되기 때문에 seek이 됩니다.
 
이 경운 EXTINF에 적어진 숫자들을  더 해 나온 값들로만  seek이 된다고 보시면 됩니다.(ex: 22초로 seek을 할 경우 20초 부터 재생 )
 
하지만 위와 같은 구조가 아니라 1.ts 같은거 한개만 있을 경우에는 1.ts의 비트레이트를 구해서 range-request 등으로 
해당 시간에 위치하는 데이터를 요청하여 재생을 해 주어야 하는데, 단말에 따라 지원되는게 있을진 몰라도,
대부분의 단말에선 거의  지원이 안되는 듯 했습니다. 
 
 
 
 
사악미소 (65,330 포인트) 님이 2013년 6월 19일 답변
사악미소님이 2013년 6월 20일 수정
...