ffmpeg으로 미디어 플레이어를 만들기 전에 기본적인 미디어의 만들어지는 과정을 좀 대충 공부를 해야된다.
일단
Video Source -> Video Encoder -> Video Element
-> Muxer(Muxing)먹싱 작업 -> Media
Audio Source -> Audio Encoder -> Audio Element
Muxing -> MultiPlexing의 약자
1. 가공되지 않은 원본소리 (Video/Audio Source) -> Encoding 과정 -> 결과물(Video / Audio Elements)
* Encoder -> Encoder + Decoder = Codec(H.264, H.265 HEVC)
가공되지 않은 원본의 크기가 너무 크기 때문에 인코딩 과정을 거쳐야 한다.
결과물이 나왔을 시에 (Elements) 결과물을 담기 위한 상자가 필요하다 = Container(.avi , .mkv, .ts 등등)
컨테이너 포맷과 코덱은 다른것이다. mp4에는 h.264를 권장 (컨테이너 = mp4 코덱 = h.264)
그럼 여기서 플레이어가 해주는일은 뭔가
-> Video Element -> Video Decoder -> Video Source
Media -> Demuxer(Demuxing)
-> Audio Element -> Audio Decoder -> Audio Source
1. 디먹싱 과정의 각각의 Elements들을 하나씩 꺼냄
2. 컨테이너(.mp4, avi 드에서 꺼낸) Elements을 디코더에 의해 디코딩 진행 -> 각각 원본 영상 및 소리로 변환
3. 이 단계에서 후처리 가능 (소리 보정 왜곡)
4. 영상과 소리를 시간에 맞게 잘 동기화하여서 화면 혹은 스피커로 출력 -> 소리시간에 맞추어 영상을 출력해주는 동기화 방법이 가장 많이 사용 된다.
이중 ffmpeeg 의 역할은 출력을 제외한 모든 과정
을 뜻하게 된다.
'개발일지(Platform & Library) > ffmpeg' 카테고리의 다른 글
ffmpeg의 시작 (파일 분석) (0) | 2016.06.14 |
---|---|
ffmpeg 준비 및 환경 설정(Windows) (0) | 2016.06.14 |