스트리밍이란?
위키 에서는 스트리밍은 주로 소리(음악)이나 동영상 등의 멀티 미디어 파일을 전송하고 재생하는 방식이다. 라고 말하고 있다.
스트리밍의 역사
1970년대
1. 컴퓨터 스트리밍의 기본 개념과 이용성이 증명되었다.
- 스트리밍을 위해서는 필요한 데이터 속도를 뒷 받쳐 줄 충분한 CPU 전력과, 버스 대역폭을 가지고 있어야 하고
- 클라이언트에서 낮은 레이턴시를 만들어서 버퍼가 생기는 것을 막아야 한다.
1990년 말
1. 네트워크의 대역폭 증가
2. 인터넷 보급 및 상업화
3. TCP/IP, HTTP, HTML과 같은 표준 프로토콜 포맷을 사용
이러한 상황이 맞물려서 인터넷에서 다운로드 받는 형식의 스트리밍인 Progressive Download 형태로 동영상이 많이 보급되었다.
1995년
1. 리얼 네트워크사 - 리얼 오디오에서 최초의 다운로드가 없는 스트리밍이 실현 되었다.
스트리밍의 방식
1. Progressive Download
기본
- 웹 서버에서 비디오를 다운로드 받아서 재생하는 방식.
- 이러한 방식은 충분한 데이터가 있을 때 까지 다운로드를 진행하고, 이후에 동영상 재생을 시작한다.
- 전체를 다운로드 할 때 까지 계속 다운로드를 진행한다.
지원 기기
- Flash
- Html5
- ios
- android
단점
- 다운로드를 진행 할 때, 사용자의 사용성 고려를 하지 않는다.
ex) 10분 길이의 동영상을 시청하는데, 1분만 보고 페이지를 종료 한다고 해도, 나머지 9분에 대한 모든 동영상을 다운로드함.
- 비디오 품질의 변경 불가
- 다운로드시 비디오 품질은 고정된다.
- 전체화면으로 시정하게 되면, 동영상 끊김을 방지하기 위해서 낮은 해상도를 제공하기에, 흐린 화면 감상한다.
- 사용자가 시청한 동영상은 캐쉬 형태로 저장되기 떄문에 동영상 보안에 문제가 생길 수 있다.
2. Streaming
기본
- 사이트의 버튼을 클릭하면 즉시 재생이 시작되고, 동영상이 끝까지 부드럽게 계속 재생된다.
- 미리 인코딩된 데이터가, 전반적인 사용자의 인터넷 대역폭 용량보다 작아야 한다.
- 비디오의 품질이 변경 가능하다.
종류
- RTMP
- RTSP
- RTP
단점
- 지속적으로 필요한 부분만 다운로드 하기에, 인터넷 환경이 안 좋으면 계속 끊기게 된다.
3. Adaptive Streaming
기본
- 실시간으로 스트림을 인코딩하고, 변화화는 사용자의 인터넷 환경 및 전송 컨디션에 따라서 동영상의 화질을 조절 한다.
- 이는 사용자의 인터넷 환경이 좋다면 고품질의 동영상을, 안 좋다면 저품질의 동영상을 제공해, 끊기지 않는 것을 최선으로 한다.
종류
- HLS (Http Live Streaming )
- MPEG-DASH
- HDS
- MSS
- WebRTC