5.0.0이 정리에 집중했다면, 5.1.0은 그 위에 ABR 판단 기준과 지원 플랫폼을 넓힌 릴리스입니다. 이 글에서는 체인지로그와 주요 PR을 근거로 5.1.0의 변화를 살펴봅니다.
5.1.0은 2026년 4월 15일에 배포되었습니다. 새 기능 41건, 버그 수정 81건, 성능 개선 23건이며 Breaking Change 표시는 없습니다.
체인지로그에 따로 드러나지 않지만 중요한 변경도 있습니다. 업그레이드 가이드는 언어, 역할, 코덱 등의 개별 선호 설정이 v5.1에서 deprecated 되었고 v6.0에서 제거된다고 안내합니다.
preferredText, preferredVideo도 같은 형식입니다. 지금 당장 깨지지는 않지만 v6 전에 옮겨야 합니다.
#9918 Monitor dropped frames to influence decisions (이슈 #745)
네트워크가 충분해도 기기가 해당 화질을 디코딩하지 못하면 프레임이 떨어집니다. SimpleAbrManager는 이제 드롭 프레임 비율을 주기적으로 확인하고, 임계값을 넘으면 현재 스트림을 비활성화한 뒤 다시 판단합니다.
| 설정 | 기본값(5.3.4) | 의미 |
|---|---|---|
abr.droppedFrames | true | 기능 활성화 |
abr.advanced.droppedFramesThreshold | 0.15 | 비활성화 임계 비율 |
abr.advanced.droppedFramesInterval | 2 | 확인 주기(초) |
abr.advanced.droppedFramesBanDuration | 30 | 비활성화 시간(초) |
저사양 기기에서 화질이 낮아지는 원인을 분석할 때 네트워크 외에 이 경로도 살펴봐야 합니다. 이 기능은 getVideoPlaybackQuality를 사용할 수 있어야 동작합니다.
#9882는 ABR에 스트림이 저지연인지 알려 줍니다. PR 설명대로 내장 ABR은 이 값을 쓰지 않으며 커스텀 ABR 구현을 위한 변경입니다.
스마트 TV 플랫폼으로 TiVo OS(#9758)와 Titan OS(#9696)의 기본 지원이 추가되었습니다. 두 PR 모두 lib/device/ 아래에 기기 정의를 추가하는 형태입니다. Titan OS는 HDR과 화면 크기 감지도 함께 추가되었습니다.
"basic support"라는 표현대로, TiVo OS PR에는 최대 해상도 탐지나 HDR 역량은 추후 맞춰 가야 한다고 적혀 있습니다.
#9764 Enable automatic XLink processing with fast detection and performance improvements
플래그에 의존하던 XLink 처리를 없애고, MPD에 XLink가 있을 때만 처리하도록 바꿨습니다. XLink가 없는 MPD는 processXlinks를 건너뜁니다. PR은 큰 MPD에서의 성능 개선을 목표로 밝히고 있습니다.
#9788은 JSON 형식의 MPD를 실험 빌드에 추가했습니다. PR 설명에 따르면 내부적으로 XML로 변환해 처리하므로 효율적이지 않고 테스트 용도입니다. 이 기능은 뒤에 5.3.0에서 제거됩니다.
textDisplayer.subtitleDelay(#9939): 자막 타이밍을 수동으로 조절합니다.ad-playing 이벤트(#9855, 이슈 #9850): 광고 재생이 실제로 시작되는 시점을 알려 줍니다.ad-interstitial-preloaded 이벤트와 ad-break-started의 startedAt 매개변수가 추가되었습니다.streaming.clampAppendWindowToDuration(#9699, 이슈 #9674): 기본값은 false입니다.MSF는 MoQT draft-16 지원과 auto, draft-14, draft-16 버전 설정이 추가되었습니다(#9966). 이 흐름은 5.3.0에서 구버전 제거로 이어집니다.
네트워크에서는 networking.commonAccessTokenHeaderName이 추가되었습니다(#9949, 이슈 #9948). CTA-5007의 기본 헤더 이름인 cta-common-access-token이 기본값입니다.
UI 변경은 다음과 같습니다.
showUIOnPaused, mediaSession.allowAutoPiP 설정seekOnTapsTrackLabelFormat의 LABEL_OR_LANGUAGE, LANGUAGE_OR_LABELshowMenusOnTheRight(#9838): 5.3.0에서 deprecated 됩니다.5.1.1부터 5.1.27까지 버그 수정 123건과 성능 개선 19건이 있습니다. 앞선 5.0.x와 공유되는 항목을 뺀 대표 수정입니다.
| 분류 | 주요 항목 | 버전 |
|---|---|---|
| ABR | 드롭 프레임 사용 시 재생 속도 계산 수정 | 5.1.2 |
| 자막 | preferredText를 외부 트랙에 적용 | 5.1.2 |
| 보안 | 광고 클릭 URI를 http(s) 스킴으로 제한 | 5.1.18 |
| MSE | append 에러는 스트림 비활성화 시에만 recoverable 표시 | 5.1.18 |
| 프리페치 | 프리페치 데이터의 제곱 시간 복사 제거 | 5.1.20 |
| 오프라인 | IndexedDB 연결 누수 수정 | 5.1.20 |
| 파서 | 64비트 largesize 0, 길이 0 WVTT 박스의 hang 방지 | 5.1.23 |
| 생명주기 | 재생이 멈춘 상태에서 destroy()가 끝나지 않던 문제 수정 | 5.1.25 |
| 라이브 | 재등장한 Period ID로 인한 프리즈 수정 | 5.1.26 |
#10412에서 지적한 것처럼 광고 클릭 URI는 매니페스트와 광고 응답에서 온 값이 window.open()으로 바로 전달되고 있었습니다. 광고 인터스티셜을 쓴다면 5.1.18 이상이어야 이 제한이 적용됩니다.
5.1 라인의 마지막 버전은 2026년 10월 16일의 5.1.27이며, 현재 유지보수 브랜치 목록에는 없습니다.
SimpleAbrManager는 이제 드롭 프레임을 근거로 화질을 내릴 수 있습니다.preferredAudio, preferredText, preferredVideo 배열로 옮겨야 하며, 기존 설정은 v6에서 제거됩니다.showMenusOnTheRight는 나중에 정리된 실험적 추가였습니다.