Professional Documents
Culture Documents
2022년 가을 학기
가톨릭대학교 정보통신전자공학부
정윤찬 교수
4.1 multimedia networking applications
Multimedia: audio
❖ analog audio signal sa
mpled at constant rate
quantization
▪ telephone: 8,000 sa
quantized
error value of
mples/sec analog value
mples/sec signal
e represented by bit
s, e.g., 8 bits for 256
values
example rates
❖ CD: 1.411 Mbps time
frame i+1
Multimedia Networking 4-5
Multimedia: video
spatial coding example: instead
of sending N values of same
color (all purple), send only two
❖ CBR: (constant bit rate): v values: color value (purple) and
number of repeated values (N)
ideo encoding rate fixed
……………………...…
❖ VBR: (variable bit rate): v ……………………...…
ideo encoding rate chang
es as amount of spatial, t
emporal coding changes
❖ examples:
▪ MPEG 1 (CD-ROM) 1.5
Mbps
frame i
▪ MPEG2 (DVD) 3-6 Mb
ps
▪ MPEG4 (often used in temporal coding example:
Internet, < 1 Mbps) instead of sending
complete frame at i+1,
▪ MP4는 MPEG-4 Part.14 규 send only differences from
격을 토대로 발표된 확장자 frame i
이자 컨테이너
frame i+1
Multimedia Networking 4-6
Multimedia networking: 3 application types
❖streaming, stored audio, video
▪ streaming: can begin playout before downloading ent
ire file
▪ stored (at server): can transmit faster than audio/vide
o will be rendered (implies storing/buffering at client)
▪ e.g., YouTube
• conversational voice/video over IP
▪ interactive nature of human-to-human conversation li
mits delay tolerance
▪ e.g., Skype
❖streaming live audio, video
▪ e.g., live sporting event
MJPEG 비디오 압축 방식
(본 과제에서 사용하는 방식)
2. video
sent
1. video 3. video received,
recorded (e.g. network delay played out at client
, 30 frames/se (fixed in this e (30 frames/sec) time
c) xample)
2. RTSP 특징
ㅇ 클라이언트/서버 형태로 동작
- 구조,문법,동작방식이 HTTP 와 매우 유사
ㅇ 세션 관리
- 다지점 다수개의 멀티미디어 세션의 설정과 제어가 RTSP에 의하여 제어됨
- RTSP의 자원 관리 셋업 및 예약은 RSVP를 가지고 사용 가능
ㅇ 여러 프로토콜들이 관련됨
- 실제 멀티미디어 정보의 실시간 전송 매커니즘은 RTP (Real Time Protocol)/RTCP (Real
Time Control Protocol)에 기본을 두고 있음
. RTP/RTCP : 오디오,비디오 등에서 시간 동기화된 스트림을 생성 및 제어함
본 과제에서 구현
할 부분
RTP 구조
RTP 구조 ㅇ 제어비트 : 9 비트
- Ver (버젼) : 2 비트
. 현재 RTP 버젼은, 2 (RFC 3550)
- P (padding) : 1 비트
. 1 이면 실제 유료부하 끝에 덧붙여진 패딩 데이터 있음
. 응용프로그램이 32 비트 같은 정수배 단위로 RTP 패킷 페이로드 구성을 위함
- X (extension) : 1 비트
. 1 이면 가변길이 헤더 확장(Extension Header)이 있음을 나타냄
- CC (CSRC Count) : 4 비트
. 기본 헤더 바로 뒤에 나타나는 CSRC(Countributing SouRCe) ID의 갯수
. 여러 미디어가 합성되는 경우에, 그 개수를 CC로써 나타내고,
모두의 기준 동기를 맞추려면 SRRC ID로써 이를 나타냄
- M (Marker) : 1 비트
. 이벤트 발생이 시작되었음을 알림
클라이언트
2. video
Sent every 100 milli seconds
3. video received,
played out at client
1. video (10 frames/sec) time
recorded (10 frames/sec)
서버
streaming: at this time, client
playing out
실
S의 IP 주소 표시 실
서버 클라이언트 S의 IP 주소 입
SETUP 버 클
시그 링용 TCP 연결 설정
데이터그램 UDP
S SETUP 1 (request_type || 요청 VideoFileName || " RTSP/1.0" ) 생성
PLAY 버 클
S PLAY 1 (request_type || 요청 VideoFileName || " RTSP/1.0" )
S PLAY 2 ("CSeq: " || RTSPSeqNb)
...
S PAUSE 1 (request_type || 요청 VideoFileName || " RTSP/1.0" ) PAUSE 버 클
TimerPlay 멈춤
...
TimerPlay
S 응 3( "Session: " || RTSP_IDT) 멈춤
PLAY 버 클
S 1 (request_type || 요청 VideoFileName || " RTSP/1.0"
...
PLAY )
100 리초 간격으로 하나의 프레임을 받아 디스플레이하는 클라이언트
Timerplay 동작
일련의 프레임이 도 하면 타이 를
작동하여 100 리초 간격으로 UDP
을 통하여 하나의 프레임에
해 하는 데이터그램을 어 Image Bit
Map으로 변 한 에 디스플레이
Lab3: Video Stream
1. Client
실
S의 IP 주소 표시 실
서버 클라이언트 S의 IP 주소 입
SETUP 버 클
시그 링용 TCP 연결 설정
데이터그램 UDP
S SETUP 1 (request_type || 요청 VideoFileName || " RTSP/1.0" ) 생성
PLAY 버 클
S PLAY 1 (request_type || 요청 VideoFileName || " RTSP/1.0" )
S PLAY 2 ("CSeq: " || RTSPSeqNb)
...
S PAUSE 1 (request_type || 요청 VideoFileName || " RTSP/1.0" ) PAUSE 버 클
TimerPlay 멈춤
...
TimerPlay
S 응 3( "Session: " || RTSP_IDT) 멈춤
PLAY 버 클
S 1 (request_type || 요청 VideoFileName || " RTSP/1.0"
...
PLAY )
Manifest.xml 만들기
화면 설계 목표
1. Server
실
S의 IP 주소 표시 실
서버 클라이언트 S의 IP 주소 입
SETUP 버 클
시그 링용 TCP 연결 설정
데이터그램 UDP
S SETUP 1 (request_type || 요청 VideoFileName || " RTSP/1.0" ) 생성
PLAY 버 클
S PLAY 1 (request_type || 요청 VideoFileName || " RTSP/1.0" )
S PLAY 2 ("CSeq: " || RTSPSeqNb)
...
S PAUSE 1 (request_type || 요청 VideoFileName || " RTSP/1.0" ) PAUSE 버 클
TimerPlay 멈춤
...
TimerPlay
S 응 3( "Session: " || RTSP_IDT) 멈춤
PLAY 버 클
S 1 (request_type || 요청 VideoFileName || " RTSP/1.0"
...
PLAY )
Manifest.xml 만들기
제공한 소스를 복사
하여 붙여 놓기 한
ACTIVITY_MAIN.XML
모습
⚫ dimens.xml (Should be place under res -> values folder…. To
create right click values > New > Values Resource File > type
“dimens.xml” )
Video Server 설계 완성 확인
서버쪽 안드로이드 장
치에 movie.Mjpeg 저
장 및 파일관리자로
경로 확인
S의 IP 주소 표시 실
서버 클라이언트 S의 IP 주소 입
SETUP 버 클
시그 링용 TCP 연결 설정
데이터그램 UDP
S SETUP 1 (request_type || 요청 VideoFileName || " RTSP/1.0" ) 생성
PLAY 버 클
S PLAY 1 (request_type || 요청 VideoFileName || " RTSP/1.0" )
S PLAY 2 ("CSeq: " || RTSPSeqNb)
...
S PAUSE 1 (request_type || 요청 VideoFileName || " RTSP/1.0" ) PAUSE 버 클
TimerPlay 멈춤
...
TimerPlay
S 응 3( "Session: " || RTSP_IDT) 멈춤
PLAY 버 클
S 1 (request_type || 요청 VideoFileName || " RTSP/1.0"
...
PLAY )
Video Client 프로그램 해석
실
S의 IP 주소 표시 실
서버 클라이언트 S의 IP 주소 입
SETUP 버 클
시그 링용 TCP 연결 설정
데이터그램 UDP
S SETUP 1 (request_type || 요청 VideoFileName || " RTSP/1.0" ) 생성
PLAY 버 클
S PLAY 1 (request_type || 요청 VideoFileName || " RTSP/1.0" )
S PLAY 2 ("CSeq: " || RTSPSeqNb)
...
S PAUSE 1 (request_type || 요청 VideoFileName || " RTSP/1.0" ) PAUSE 버 클
TimerPlay 멈춤
...
TimerPlay
S 응 3( "Session: " || RTSP_IDT) 멈춤
PLAY 버 클
S 1 (request_type || 요청 VideoFileName || " RTSP/1.0"
...
PLAY )
VIDEO Server 프로그램 해석
모바일정보통신 종합설계
4, 5 주차 과제 지도를
마칩니다.
감사합니다.