개념
2012.02.01 10:26

RTSP(Real Time Streaming Protocol)

조회 수 18501 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print
실시간 스트리밍 프로토콜

실시간 스트리밍 프로토콜(Real Time Streaming Protocol, RTSP)은 IETF가 1998년에 개발한 통신 규약이다. RFC 2326에 정의되어 있다. RTSP는 스트리밍 시스템에 사용되며, 미디어 서버를 원격으로 제어할 때 쓰인다. 명령어는 "PLAY", "PAUSE" 같이 VCR 동작하고 비슷하며 시간 정보를 바탕으로 서버에 접근을 한다.

실제 미디어 스트리밍 데이터를 전송하지는 않는다. 대부분의 RTSP 서버는 RTP 규약을 사용해서 전송 계층으로 실제 오디오/비디오 데이터를 전송한다.


RTSP 명령어

RTSP 규약은 HTTP 규약하고 비교해 볼 때, 문법이나 동작이 비슷하다. 하지만, HTTP 가 무상태형(stateless)인 반면에 RTSP는 상태형(stateful) 규약이다. 임의의 세션 ID는 세션 추적할 때마다 사용되는데, 이 방법은 영구 TCP 연결을 필요로 한다. RTSP 메시지는 클라이언트에서 서버로 간다. 만약, 서버에서 오류가 발생한다면 서버는 오류에 대한 응답 코드를 클라이언트로 보내준다. 기본적인 RTSP 요청 메시지는 아래와 같고, 기본 포트는 554번이다.

DESCRIBE
DESCRIBE 요청에는 URL (rtsp://...)이 포함된다. 기본 포트 554번은 UDP, TCP 둘 다에 사용된다. DESCRIBE에 대한 응답 메시지에는 요청한 것에 대한 설명도 포함되는데, 대개 SDP 형태를 갖추고 있다.
SETUP
SETUP 요청은 단일 미디어 스트림이 전송되어야 하는지 규정한다. 이 요청은 PLAY 요청 하기 전에 마쳐야한다. 그리고 요청할 때 미디어 스트림 URL과 전송점을 포함해야 한다. 전송점에는 RTP 데이터(오디오/비디오), RTCP 데이터(메타 정보)를 전송받기 위한 포트 번호도 포함된다.
PLAY
PLAY 요청은 하나 또는 모든 미디어 스트림을 재생시킨다. PLAY 명령은 다중 요청이 가능하다. 모든 미디어 스트림 재생을 위해서는 URL 집합체가 요청에 포함되어야 한다. 재생 범위를 구체적으로 지정할 수도 있다. 만약에 재생 범위를 지정하지 않으면, 미디어 처음부터 끝까지 재생한다. 또, 일시 정지 상태라면 일시 정지된 위치부터 재생 된다.
PAUSE
PAUSE 요청은 하나 또는 모든 미디어 스트림에 대해서 일지 중지를 명령한다. PLAY 요청으로 다시 재시작 할 수 있다. 이 요청 메시지에는 미디어 스트림 URL이 포함되어야 한다. 일시 정지를 할 때 범위를 구체적으로 지정할 수도 있다.
RECORD
RECORD 요청은 녹화를 위한 명령어이다.
TEARDOWN
TEARDOWN 요청은 세션을 종료하기 위한 명령어이고, 모든 미디어 스트림의 재생을 중단하고 서버에 있는 관련 데이터에 걸린 모든 세션도 해제한다.

출처 : http://ko.wikipedia.org/wiki/%EC%8B%A4%EC%8B%9C%EA%B0%84_%EC%8A%A4%ED%8A%B8%EB%A6%AC%EB%B0%8D_%ED%94%84%EB%A1%9C%ED%86%A0%EC%BD%9C



Dreamy의 코드 스크랩

내가 모으고 내가 보는

List of Articles
번호 분류 제목 날짜 조회 수 추천 수
341 LINUX UNIX COMMAND (5) : grep, sed, awk 등 2006.02.06 21098 66
340 Android Wifi을 이용한 adb 연결 2012.02.28 20828 0
339 C# Textbox에 숫자만 입력가능하게 설정하기 2013.04.22 20797 0
338 Android repo 명령어 (command) 설명 init sync diff prune forall upload download start status 2013.05.30 20530 0
337 일반 나사 규격 2016.10.19 20458 0
336 LINUX [util] tar 사용법 2006.05.01 20331 7
335 Android ADB 에서 cpu 사용률 보기 2013.04.29 20130 0
334 Android Android Packet Dump (tcpdump로 실시간 packet 잡기) 2015.05.06 20105 0
333 LINUX 우분투(Ubuntu) 설치된 패키지 목록 확인하기 2020.02.11 20054 0
332 일반 자주 사용하는 아주 유용한 파워포인트 단축키 [Useful Short-cut for PowerPoint] 2013.04.01 19947 0
331 Pi [Arduino] 아두이노 나노 Arduino Nano Spec 1 file 2016.09.07 19927 0
330 C# 공유데이터 잠금. Critical Section 사용, lock() 함수 2012.06.11 19924 0
329 C# Web URL로부터 파일 다운로드 하기 2015.08.20 19690 0
328 Android Kernel 로그 레벨 설명 2012.12.11 19624 0
327 Android [apk분석] 개발자가 아니더라도 쉽게 apk를 분석해보자 2014.05.08 18834 0
목록
Board Pagination ‹ Prev 1 ... 7 8 9 10 11 12 13 14 15 16 ... 34 Next ›
/ 34

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5