스트리밍(Streaming) 용어 – Progressive Download / Pseudo Streaming

Progressive Download

프로그레시브 다운로드는 지금까지 가장 광범위하게 사용되었던 동영상 전송 방법이다. 이 방식에 가장 크게 기여하는 사이트는 유튜브, ESPN, CNN 등 이다. 단어에서 알 수 있듯이 점진적(Progressive) 으로 내 컴퓨터에 다운로드하여 플레이 되는 방식이며, 미디어 서버가 아닌 웹 서버에 비디오를 올려놓고 플레이어에게 URL을 알려주면 되므로, 가장 구현이 쉽고 비용 절감적인 방법이다. 미디어 재생에 필요한 정보를 웹 서버를 사용하므로  HTTP 프로토콜을 이용한다.

클라이언트가 비디오를 클릭하면 웹 서버로부터 즉시 다운로드가 시작된다.  다운로드 즉시 플레이가 될 수도 있고, 좀 더 시간이 지난 후 플레이 될 수도 있다. (전체 파일이 다운로드 될 필요는 없다.) 클라이언트의 인터넷 다운로드 속도가 어느 정도 확보되어 있는가에  달려있다. 중간 부분을 보려 해도 그 부분까지 아직 다운로드가 되지 않았으면 시청이 불가능하다. 즉, 기다려야 한다. 하지만 비디오를 웹에서 다루기에는 가장 쉽다.

프로그레시브 다운로드 방식으로 동영상이 꾸준히 재생되기 위해서는 서버로부터 클라이언트에 전달되는 네트워크 속도가 동영상이 가진 데이터 레이트 보다 높아야 한다. 만약 512Kbps의 동영상이라면 적어도 512Kbps의 네트워크 속도가 제공되어야만 동영상이 끊김 없이 제공된다. 만약 1Mbps의 네트워크 속도에서 512Kbps의 동영상을 프로그레시브 다운로드 방식으로 보게 되면 1Mbps의 속도를 이용하여 동영상을 다운로드하게 됩니다. 동영상의 크기가 5MB이고 길이가 2분이면 파일 다운로드에 40초가 걸리지만 재생은 즉시 시작된다.

Progressive Download

* Progressive Download (출처 http://www.jwplayer.com/blog/what-is-video-streaming/)

프로그레시브 다운로드의 단점은 내 컴퓨터에 파일을 다운로드하여 가져오는 방식이기 때문에 보안에 문제가 있으며, 유료 비디오 서비스를 위한 사이트에서는 이용할 수 없다. (다만 시청이 끝나면 다운로드 된 비디오는 삭제된다)
이런 이유로 유튜브 비디오를 내 컴퓨터로 통채로 다운로드 할 수 있는 무료 프로그램도 무수히 많다. 또한 이 방식은 라이브 스트리밍을 지원하지 않으므로 라이브 서비스는 가능하지 않는다.
또 다른 단점은 bandwidth traffic 의 소모가 시청한 만큼이 아닌, 다운로드 한 만큼 소모된다는 점이다. 예를 들어, 1GB 사이즈의 동영상을 본다고 할 때, 사용자가 300MB 만 시청하고 나갔을 경우, 나머지 700MB 의 동영상도 이미 다운로드 완료되는데, 이것은 실제 시청한 데이터에 비해 전송 비용이 들었다는 것이며, 큰 규모에서는 고비용을 의미한다.
그리고 한번 다운로드가 시작되면 그 비디오의 품질은 고정된다.  플레이 중간에 동영상 품질을 바꿀 수가 없다. 중간에 Fullscreen을 클릭하면 화면 사이즈가 커져도 화질은 자동으로 변경되지 않는다는 의미이다. 미리 정해진 화질을 다운로드 하기 때문이다.  종합해보면, 작은 동영상의 비디오 클립은 문제가 없으나 긴 비디오의 경우 단점이 많이 드러나게 되는 것이다.

– Live 가 아닌 VOD 시장에서 각광

– 점진적으로 사용자 PC에 다운하여 재생. Seeking 불가 (Vimeo)

Pseudo Streaming

앞서 말한 프로그레시브 방식으로 운영하던 유튜브와 같은 사이트가 점점 커지다 보니 많은 고민이 있었을 것이다. Bandwidth 사용이 너무 비효율적인 것이다. 그리고 라이브 서비스도 안되고, 고화질 비디오 제공이 어렵다는 점이다. 이런 일부 단점을 보완하기 위해 HTTP Pseudo Streaming 기술이 나왔다. Pseudo- 는 ‘가짜’ 라는 말 그대로 정상적인 스트리밍 기술이 아닌 유사한 가짜 스트리밍 기술이다. 이 방식은 아직 다운로드 되지 않은 부분을 클릭하더라도 메타 프레임 정보를 가지고 있어서 그 부분의 메타 프레임부터 다시 다운로드를 시작하여 플레이 되므로 중간 지점에서도 볼 수 있도록 해주는 기술이다. 웹 서버에 특별한 모듈을 설치하여야 작동하며,  Flash player와 HTML5 player에서  지원된다. 또한 비디오 화질을 클라이언트가 선택하게끔 제공한다. 유튜브를 보면 360p, 480p, 720p 등을 클라이언트 스스로가 본인의 가용 다운로드 bandwidth 한도에서 스스로 선택하게끔 되어있다.  고객 편의를 위해 미리 몇 가지 형태로 인코딩하여 올려놓은 것을 선택하게끔 만든 것이다. ABS(Adaptive Bitrate Streaming) 을 사용하지 않고 단순한 형태의 HTTP 스트리밍을 사용하고자 한다면 HTTP Pseudo Streaming을 이용할 수 있다.

– Progressive 다운로드의 단점을 보완 – 라이브 중계가 어렵다. 보안상 문제가 있다. (RTMP 프로토콜 보다 훔치기 쉽다.) – Seeking 이 가능. bandwidth 조절 – 여전히 bandwidth 효율성은 떨어진다. (장시간 비디오 사용이 불가)

———————————————————————————————————–

Posted by 주현성@ 카테노이드 서비스팀

RTSP, RTMP / Adaptive streaming / Http dynamic streaming 관련 포스팅이 계속될 예정입니다.^^

* 출처 http://en.wikipedia.org/wiki/Adaptive_bitrate_streaming http://helloworld.naver.com/helloworld/7122 http://www.adobe.com/kr/products/hds-dynamic-streaming.html http://www.thekuroko.com/what-is-http-dynamic-streaming/ http://www.jwplayer.com/blog/what-is-video-streaming/ http://blog.edgecast.com/post/55198896476/hds-hls-hss-adaptive-http-streaming-demystified http://unipro.tistory.com/121 http://blog.naver.com/makerslee?Redirect=Log&logNo=30148808093 http://blog.naver.com/pyoyr?Redirect=Log&logNo=50037791019 정보통신산업진흥원, 주간기술동향(2013. 5. 8) – 멀티미디어 서비스 확산 동인(動因)과 스트리밍 기술 현황

One Comment

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다