코덱 분리 개념 정리 및 적용

개요 저번 회고에서 마지막에 언급했던 부분을 진행하려 합니다. 또한 현재는 원본 코덱과 관계없이 항상 transcode하도록 되어 있습니다. 이미 H.264/AAC인 영상은 -c copy로 패키징만 하도록 분기하면 인코딩 시간을 더 줄일 수 있으니 이 부분도 연구가 필요하죠 코덱을 기준으로 재인코딩 대신 기존 스트림을 그대로 쓰고 패키징만 하면 속도가 빨라지는 점은 쉽게 납득이 갔습니다. 다만 내부적으로 어떻게 다른지, 재인코딩 없이 패키징만 하면 되는 경우는 무엇이 다른지가 궁금했습니다. HLS 궁금증 HLS에서 H.264는 인코딩을 안 해도 되는 이유? H.264인지 아닌지는 크게 중요하지 않더군요. 실제 기준은 타깃 플레이어 지원 범위와 HLS authoring 조건을 원본이 이미 만족하는지가 인코딩 여부를 정합니다. 관련 사양은 Apple 문서와 RFC에서 정리해 두고 있습니다. ...

June 19, 2026 · 9 min · DSeung001

FFmpeg HLS 옵션 테스트

FFmpeg FFmpeg is the leading multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created FFmpeg는 인간과 기계가 만들어낸 거의 모든 것을 디코딩/인코딩, 트랜스코딩, 먹스/디먹스, 스트림, 필터링 및 재생할 수 있는 선도적인 멀티미디어 프레임워크입니다. FFmpeg about 동영상 편집에서 FFmpeg는 오픈소스로 이루어진 표준 프로그램입니다. 동영상 관련 프로그램을 만들면 꼭 FFmpeg가 끼게 되더군요. 이번에 만드는 사이트 최적화를 위해 테스트와 벤치마크를 진행했으며, 그 과정을 정리합니다. ...

June 13, 2026 · 6 min · DSeung001

RFC 8216 — HTTP Live Streaming

HLS and ABR HLS(HTTP Live Streaming)는 HTTP로 .m3u8, .m3u 플레이리스트와 짧은 미디어 세그먼트를 주고받으며 영상을 이어 재생하는 방식입니다. 네트워크나 기기 상황에 맞춰 ABR(Adaptive Bitrate, 적응형 비트레이트)로 화질(Variant)을 바꿔 끊김을 줄입니다. 애플에서 개발한 HTTP 기반 스트리밍 방식으로 애플 사이트에서 가이드라인을 참고할 수도 있습니다. 인코딩을 구분하면 다음과 같습니다. CBR(Constant Bit Rate): 구간마다 비트레이트가 거의 일정한 인코딩 VBR(Variable Bit Rate): 장면 복잡도에 따라 비트레이트가 달라지는 인코딩 ABR(Adaptive Bitrate): 서버가 여러 화질(Variant)을 제공하고, 클라이언트가 대역폭, 버퍼, CPU 등을 보고 그중 하나를 선택하고 전환하는 재생 방식 (HLS Master playlist와 연결) HLS는 ABR Streaming을 제공하는 프로토콜로 동영상 스트리밍에 가장 많이 쓰이는 방식 중 하나입니다. 이 문서(RFC 8216)는 HTTP 위에서 동작하는 미디어 전송 프로토콜(HLS)을 정의해 구현 간 상호 운용성을 맞춥니다. 이 프로토콜을 사용하면 클라이언트는 서버로부터 연속적인 미디어 스트림을 수신하여 표현할 수 있습니다. ...

May 26, 2026 · 9 min · DSeung001