2P by GN⁺ 16시간전 | ★ favorite | 댓글 1개
  • 오디오와 비디오를 녹화·변환·스트리밍할 수 있는 크로스플랫폼 멀티미디어 프레임워크로, 최신 버전 8.1 “Hoare”가 공개됨
  • 이번 버전은 xHE-AAC Mps212 및 MPEG-H 디코딩, EXIF 메타데이터 파싱, LCEVC 메타데이터 처리를 지원
  • Vulkan 기반 ProRes 인코딩/디코딩, D3D12 H.264·AV1 인코딩, Rockchip H.264/HEVC 하드웨어 인코딩 등 GPU 가속 기능이 강화됨
  • IAMF 앰비소닉 오디오 요소, hxvs 디먹서, drawvg·vpp_amf 필터 등 새로운 포맷과 필터가 추가됨
  • 내부 구조 개선과 버그 수정이 포함되었으며, swscale 재작성 준비GLSL 런타임 의존성 제거로 초기화 속도 향상이 이루어짐

FFmpeg 8.1 "Hoare" 주요 업데이트

  • 새 버전은 소규모 릴리스(minor release) 로, 다운로드가 가능함
  • 디코더: xHE-AAC Mps212(실험적), MPEG-H(libmpeghdec 사용) 지원
  • 메타데이터: EXIF 파싱 기능 추가
  • LCEVC: 메타데이터 파싱 및 전달 기능 지원
  • Vulkan 기반 코덱: ProRes 인코딩·디코딩, DPX 디코딩 지원
  • D3D12 가속: H.264/AV1 인코딩, scale_d3d12, mestimate_d3d12, deinterlace_d3d12 필터 추가
  • Rockchip 하드웨어 인코딩: H.264 및 HEVC 지원
  • IAMF: Projection 모드 Ambisonic Audio Elements의 멀티플렉싱·디멀티플렉싱 지원
  • 포맷 및 필터: hxvs 디먹서, drawvg 및 vpp_amf 필터 추가

내부 개선 및 성능 향상

  • 다수의 내부 코드 변경과 버그 수정 포함
  • swscale 재작성을 위한 기반 작업이 진행 중임
  • Vulkan 기반 코덱과 일부 필터가 런타임 GLSL 컴파일 의존성을 제거, 초기화 속도가 빨라짐

Vulkan Compute 기반 코덱 관련

  • Vulkan Compute 기반 코덱 구현에 대한 기술적 세부 내용과 향후 계획Khronos 블로그에 게재됨

업그레이드 권장

  • 사용자, 배포자, 시스템 통합자에게 최신 버전으로의 업그레이드를 권장함
  • 단, 현재 git master 버전을 사용하는 경우는 제외됨
Hacker News 의견들
  • 내가 자주 쓰는 오픈소스 툴 중 최고라고 생각함
    Plex, Jellyfin, Tunarr, 로컬 음악 파일 등과 함께 매주 사용해서 자막 추출, 영상 자르기, 음악 포맷 변환, 오디오 트랙 제거 등을 함
    문득 생각해보니 한 번도 기부한 적이 없어서 이제는 바꿔야겠다고 느낌

    • 이 툴은 우리가 인식하지 못하는 수많은 소프트웨어의 하위 구성요소로 들어가 있음
  • “새 버전의 ffmpeg가 나왔네, 바로 빌드해야지… 아냐 기다릴 수 없어, 그냥 바이너리 받자”라는 밈 같은 상황을 봤음
    관련 영상

    • 나는 보통 소스에서 직접 빌드함. 패키지 매니저에는 특허 코덱 지원이 빠져 있는 경우가 많기 때문임
    • ffmpeg 빌드는 설정에 따라 간단할 수도 복잡할 수도 있음. 현재는 GitHub Actions에서 크로스 플랫폼 빌더를 만들고 있는데, Mac과 Windows 빌드가 너무 많은 시간을 잡아먹음
      ffmpeg-builder 프로젝트를 참고 중이며, 영상 엔지니어용 앱의 일부로 사용 중임
    • 최근 CVE 때문에 직접 빌드해야 했는데 실패해서, 그냥 ffmpeg를 래핑하고 버전 명령어를 주입해서 스캐너를 통과시킴
    • ffmpeg에 익숙한 사람이라면 위 영상 꼭 보길 추천함. yadif, mkvtoolnix, 파일명에 아포스트로피가 들어가면 터지는 문제 등 현실적인 내용이 많음
    • ffmpeg를 소스에서 빌드하는 건 사실 꽤 쉬움. 어려운 건 필요한 코덱 설정
      오디오·비디오 코덱을 명확히 알고 설치만 잘 하면 빌드는 단순함
      10년 넘게 이렇게 해왔고, mpv를 쓰기 위해 다양한 코덱을 지원하도록 설정함. 개인적으로는 mpv가 vlc보다 더 마음에 듦
  • 이번 릴리스의 Changelog 요약임
    ffprobe -codec 옵션, EXIF 메타데이터 파싱, Windows.Graphics.Capture 기반 캡처, MPEG-H 3D 오디오 디코딩, D3D12 기반 H.264/AV1 인코더, Vulkan 하드웨어 가속(ProRes, DPX 등), JPEG-XS 지원, LCEVC 메타데이터 필터 등 다양한 기능이 추가됨

    • 오늘 처음 알게 된 건 JPEG XS라는 코덱임. 낮은 지연으로 시각적·수학적으로 무손실 품질을 제공함
      Wikipedia 설명
    • Windows.Graphics.Capture 기반 캡처는 저지연 윈도우 캡처를 가능하게 함
      이 기능 덕분에 브라우저 기반이 아닌 네이티브 데스크톱 앱으로 Discord 대안을 만드는 게 더 매력적으로 보임
    • “혹시 gyan.dev의 ffmpeg 빌드 운영자냐”고 묻는 사람도 있었음
    • 이런 방대한 기능들이 AI 도구로 얼마나 작성·디버깅되었는지 궁금함. 어떤 워크플로우를 썼는지도 알고 싶음. (참고로 나는 Claude Code 구독 중임)
  • Khronos가 FFmpeg의 Vulkan compute codec에 대해 포스팅을 올림
    공식 블로그 글

    • 관련된 이전 HN 스레드도 있음
    • Vulkan compute codec의 성능 가이드가 있는지 궁금함
  • 나는 지금 양방향 텍스트를 비트맵 자막으로 변환하는 기능을 Claude Code로 추가 중임
    프로젝트 링크
    정말 재미있는 작업임

  • FFmpeg 릴리스마다 수학·컴퓨터 과학 관련 이름으로 태그를 다는 걸 이제야 알았음. 꽤 멋짐

  • Rockchip 하드웨어 인코딩은 rkmpp 기반이라 업스트림 솔루션은 아님. Rockchip 커널이 필요할 듯함

    • 그래도 예전엔 직접 빌드해야 했으니, 이 정도면 큰 진전
  • 이번 릴리스의 코드 중 얼마나 대기업 직원이 작성했는지 궁금함

    • 정확히는 모르지만, 거의 모든 대형 기술 기업이 미디어 트랜스코딩에 ffmpeg를 사용함
  • FFmpeg은 훌륭하지만, 사용법이 너무 복잡
    예전 avisynth처럼 간단한 스크립트 기반 인터페이스가 있었으면 좋겠음
    지금은 명령어를 외우는 게 너무 힘들고, 개발팀이 단순화에 관심이 없어 보여 아쉬움

    • 나도 처음엔 -filter_complex가 무서웠지만, 필터 체인 개념으로 접근하니 괜찮았음
      명령어가 길어질수록 디버깅이 어려워지지만, 익숙해지면 오류 패턴이 눈에 들어옴
      자주 쓰는 명령은 셸 스크립트로 저장해두면 훨씬 편함
    • LLM을 이용해 ffmpeg 명령어 옵션을 찾는 게 가장 유용한 활용법 중 하나라고 생각함
    • 단순한 인코딩만 필요하다면 Handbrake가 좋은 대안임
    • 나는 ffmpeg 명령줄 작성은 전적으로 AI에게 맡김