일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 버전별 관리
- notifications
- setDefaults(NotificationCompat.DEFAULT_ALL)
- NotificationCompat.Builder
- 펜딩인텐트
- notification manager
- 알림 우선순위
- 안드로이드 알림
- setContentIntent
- 알림 인텐트
- 안드로이드 알림 예제
- setPriority(NotificationCompat.PRIORITY_HIGH)
- 안드로이드 알림채널
- android notification 예제
- Pending Intent
- notification channel
- Today
- Total
공부용 블로그
protocol_2주차(2) HLS(apple) 본문
1. HTTP Streaming 작동 방식
- inputs 은 실시간 영상이나 녹화된 영상을 말한다.
- inputs 은 MPEG-4(H.264 Video and ACC Audio)로서 인코딩된다.
# MPEG-4 : 영상, 음성을 디지털 데이터로 전송, 저장하기 위한 하나의 규약
2. MPEG-2와 MPEG-4의 차이점이 뭐길래 MPEG-4로 영상, 음성을 먼저 인코딩하고, MPEG-2 전송 스트림으로 감싸지?
- 1995년 개발된 MPEG-2 인코딩 포맷은 TV, DVD, VCD와 이와 유사한 디스크에 적용된다.
오디오, 비디오 손실 압축기술을 사용해서 파일크기를 줄인다.
- 1998년 만들어진 MPEG-4 인코딩 포맷은 이전 MPEG-2와 비교하여 더 하이 퀄리티의 오디오, 이미지를 제공하면서 높은 압축률, 낮은 대역폭을 제공하기 위해 개발되었다.
Differences between MPEG2 and MPEG4
MPEG2 vs MPEG4 – Application
MPEG2 is the encoding method used for television broadcast and DVDs, while MPEG4 coding standard is primarily applied to portable devices and Internet streaming.
=> MPEG2는 TV방송, DVD에 사용, MPEG4는 휴대용기기, 인터넷 스트리밍에 사용
## 헷갈린 부분 ##
=> HLS 구조에서 말하는 MPEG-2 trasport stream과 MPEG-2는 다름(애플 공식문서 참고). transport stream은 패키징 포맷으로 다양한 압축포맷과 함께 사용될 수 있음. 오디오-비디오 컨텐츠의 경우 현재 H.264 video 및 AAC audio가 포함된 MPEG-2 전송 스트림만 지원됨.
MPEG-2 transport streams should not be confused with MPEG-2 video compression.The transport stream is a packaging format that can be used with a number of different compression formats. Only MPEG-2 transport streams with H.264 video and AAC audio are supported at this time for audio-video content. Audio-only content can be either MPEG-2 transport or MPEG elementary audio streams, either in AAC format with ADTS headers or in MP3 format.
A. 영상은 휴대용 기기이므로 그에 맞는 포맷인 MPEG-4로 먼저 인코딩하고, MPEG-2 전송 스트림으로 패키징 포맷을 만든다..?(추측임)
3. stream segmenter가 하는 일은?
stream segmenter는 로컬 네트워크에서 전송 스트림을 읽고 동일한 시간의 일련의 소형 미디어 파일로 분할하는 프로세스 (일반적으로 소프트웨어)입니다.
각 세그먼트가 별도의 파일에 있더라도 비디오 파일은 끊김없이 재구성 할 수있는 연속 스트림으로 만들어집니다.
또한 segmenter는 개별 미디어 파일에 대한 참조를 포함하는 index 파일을 만듭니다.
segmenter가 새 미디어 파일을 완료 할 때마다 index 파일이 업데이트됩니다.
index는 미디어 파일의 가용성 및 위치를 추적하는 데 사용됩니다. segment는 각 미디어 세그먼트를 암호화하고 프로세스의 일부로 키 파일을 만들 수도 있습니다.
미디어 세그먼트는 .ts 파일 (MPEG-2 전송 스트림 파일)로 저장됩니다. index 파일은 .M3U8 재생 목록으로 저장됩니다.
'설계 > Protocol' 카테고리의 다른 글
protocol_3주차_TCP와 UDP (0) | 2018.06.11 |
---|---|
protocol_2주차(3) RTMP&RTSP (0) | 2018.06.09 |
protocol_2주차(1) WebRTC (0) | 2018.06.08 |
What is latency? (0) | 2018.06.02 |
Protocol_1주차(3) (0) | 2018.06.01 |