Opened 3 years ago
Last modified 3 years ago
#9470 open defect
m3u8 keepalive does not work between domains and DV + Atmos fails
Reported by: | Balling | Owned by: | |
---|---|---|---|
Priority: | normal | Component: | avformat |
Version: | git-master | Keywords: | hls |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | yes | |
Analyzed by developer: | no |
Description (last modified by )
Summary of the bug:
Apple TV+ has very good trailers in Dolby Vision profile 5 using IPTPQc2 and Dolby Atmos. Yet, since audio is supposed to be streaming from a different CDN than video (on both CDNs both video and audio is available though). Keepalive fails though between two domains vod-ap2-aoc.tv.apple.com:-1 != vod-ak-aoc.tv.apple.com:-1. Issue was here: https://github.com/yt-dlp/yt-dlp/issues/771#issuecomment-918152831
Now in practise it fails only after parsing all ~200 streams in 5 minutes but... So, why IS hls.js so much faster than ffmpeg??? See: https://tv.apple.com/us/show/the-morning-show/umc.cmc.25tn3v8ku4b39tr6ccgb8nl6m (yeah, m3u8 stream is from there). FFmpeg has all the same. I will also point out that you can extract eac3 audio and hevc Dolby Vision stream with -c copy -strict unofficial and it will work on my LG C9, triggering both atmos and vision.
How to reproduce:
% ffplay.exe "https://play.itunes.apple.com/WebObjects/MZPlay.woa/hls/subscription/playlist.m3u8?cc=US&svcId=tvs.vds.4105&a=1580273278&isExternal=true&brandId=tvs.sbd.4000&id=337246031&l=en-US&aec=UHD&xtrick=true&webbrowser=true" ffplay.exe "https://play.itunes.apple.com/WebObjects/MZPlay.woa/hls/subscription/playlist.m3u8?cc=US&svcId=tvs.vds.4105&a=1580273278&isExternal=true&brandId=tvs.sbd.4000&id=337246031&l=en-US&aec=UHD&xtrick=true&webbrowser=true" ffplay version N-104341-g933765aa0e-20211013 Copyright (c) 2003-2021 the FFmpeg developers built with gcc 10-win32 (GCC) 20210408 configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --enable-shared --disable-static --disable-w32threads --enable-pthreads --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma --enable-fontconfig --enable-libvorbis --enable-opencl --enable-libvmaf --enable-vulkan --disable-libxcb --disable-xlib --enable-amf --enable-libaom --enable-avisynth --enable-libdav1d --enable-libdavs2 --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r --enable-libglslang --enable-libgme --enable-libass --enable-libbluray --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2 --enable-libmfx --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librav1e --enable-librubberband --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --disable-libdrm --disable-vaapi --enable-libvidstab --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread --extra-ldexeflags= --extra-libs=-lgomp --extra-version=20211013 libavutil 57. 7.100 / 57. 7.100 libavcodec 59. 12.100 / 59. 12.100 libavformat 59. 6.100 / 59. 6.100 libavdevice 59. 0.101 / 59. 0.101 libavfilter 8. 14.100 / 8. 14.100 libswscale 6. 1.100 / 6. 1.100 libswresample 4. 0.100 / 4. 0.100 libpostproc 56. 0.100 / 56. 0.100 [hls @ 00000228e4d07600] Skip ('#EXT-X-VERSION:7')sq= 0B f=0/0 [hls @ 00000228e4d07600] Skip ('#EXT-X-INDEPENDENT-SEGMENTS') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.advisory-info.count",VALUE="0"') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.display-ratings-overlay",VALUE="true"') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.title",VALUE="Bombshell: Season 2",LANGUAGE="en-US"') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.poster",VALUE="https://is3-ssl.mzstatic.com/image/thumb/S4hvyopZQCav14Oag70Mhg/{w}x{h}bb.{f}",LANGUAGE="en-US"') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.genre",VALUE="Drama",LANGUAGE="en-US"') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.feature.adam-id",VALUE="1580273278"') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.feature.duration",VALUE="148.148"') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.pre-roll.count",VALUE="0"') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.pre-roll.duration",VALUE="0.000"') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.mid-roll.count",VALUE="0"') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.skip.count",VALUE="0"') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.post-roll.count",VALUE="0"') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.post-roll.duration",VALUE="0.000"') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.keys",VALUE="W10="') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.format",VALUE="HD,4K"') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.quality",VALUE="DV,HDR,Atmos"') [hls @ 00000228e4d07600] Skip ('#EXT-X-SESSION-DATA:DATA-ID="com.apple.hls.accessibility",VALUE="CC,SDH,AD"') [hls @ 00000228e4d07600] Can't support the subtitle(uri: https://vod-ap2-aoc.tv.apple.com/itunes-assets/VideoPreview125/v4/6f/37/47/6f374738-bd20-2673-6421-df03c3fdf6a8/P337246031_A1580273278_ar_subtitles_V1.m3u8) *** [https @ 00000228eba2c040] Cannot reuse HTTP connection for different host: vod-ap2-aoc.tv.apple.com:-1 != vod-ak-aoc.tv.apple.com:-1 [hls @ 00000228e4d07600] keepalive request failed for 'https://vod-ak-aoc.tv.apple.com/itunes-assets/VideoPreview125/v4/b7/a5/a6/b7a5a620-9977-e5f6-f242-7cb3939de3d3/P337246031_A1580273278_en_audio_gr32-.m3u8' with error: 'Invalid argument' when parsing playlist [hls @ 00000228e4d07600] Opening 'https://vod-ak-aoc.tv.apple.com/itunes-assets/VideoPreview125/v4/b7/a5/a6/b7a5a620-9977-e5f6-f242-7cb3939de3d3/P337246031_A1580273278_en_audio_gr32-.m3u8' for reading
Patches should be submitted to the ffmpeg-devel mailing list and not this bug tracker.
Change History (5)
comment:1 by , 3 years ago
Description: | modified (diff) |
---|
comment:2 by , 3 years ago
Description: | modified (diff) |
---|
comment:3 by , 3 years ago
Description: | modified (diff) |
---|
comment:4 by , 3 years ago
Description: | modified (diff) |
---|---|
Status: | new → open |
Related #9010 and bug in mpv https://github.com/mpv-player/mpv/issues/8500