High-bitrate HEVC episodes showed smeared frames and green flashes for the first 10-15 seconds of playback on the Fire TV Stick 4K Max 2nd gen with the mpv backend, while ExoPlayer played the same file cleanly (#2227). The reporter's clip failed at exactly two timestamps on every run: the two IDR frames larger than 1 MiB. The FFmpeg mediacodec decoder never set "max-input-size" on the codec format, so OMX.MTK.VIDEO.DECODER.HEVC allocated 1,052,672-byte input buffers and FFmpeg split any larger packet across several queueInputBuffer calls. The MediaTek VPU treats each buffer as a complete access unit, rejects the remainder ("invalid u4BufferAccumulated"), fails the slice and conceals with lost-picture references until the next IDR. ExoPlayer is unaffected because media3 sizes HEVC input buffers at max(2 MiB, w*h*3/4) and never splits a sample. Move the native pin to edde746/mpv-build@83879375c9, which sizes the buffers the same way ExoPlayer does for H.264, HEVC, MPEG-4, VP8, VP9 and AV1 and logs a warning if a packet still does not fit. Verified on the AFTKRT with the reporter's clip: zero VPU errors and no lost pictures across repeated runs, and an H.264 file with ~1 MB keyframes still plays on the MediaTek AVC decoder; both files also play on a Pixel 7 (Exynos C2). Apple, Linux and Windows assets are unchanged (their content keys did not move). close #2227
58 lines
2.1 KiB
JSON
58 lines
2.1 KiB
JSON
{
|
|
"artifacts": {
|
|
"android": {
|
|
"assetBase": "https://github.com/edde746/mpv-build/releases/download/binaries-android",
|
|
"assets": {
|
|
"arm64-v8a": {
|
|
"asset": "libmpv-android-5422b405c8ef-arm64-v8a.tar.gz",
|
|
"checksum": "55c4dc9a00de36a39bfdaa524c45e23bdda837c55629199bef236e63d060b4cc"
|
|
},
|
|
"armeabi-v7a": {
|
|
"asset": "libmpv-android-5422b405c8ef-armeabi-v7a.tar.gz",
|
|
"checksum": "90f9de1d3814dd57a297975fe727674f81fe5d3226430298ed1e7be44aabea79"
|
|
},
|
|
"x86": {
|
|
"asset": "libmpv-android-5422b405c8ef-x86.tar.gz",
|
|
"checksum": "319833636a0691ae584f8f070fa0d24026b86a8343a289b1c9779205072aab60"
|
|
},
|
|
"x86_64": {
|
|
"asset": "libmpv-android-5422b405c8ef-x86_64.tar.gz",
|
|
"checksum": "8f1382b5b08ba873010578633db7d46f52078ff68717109b0ac9f36e32b7e7d4"
|
|
}
|
|
},
|
|
"key": "5422b405c8ef"
|
|
},
|
|
"linux": {
|
|
"assetBase": "https://github.com/edde746/mpv-build/releases/download/binaries-linux",
|
|
"assets": {
|
|
"aarch64": {
|
|
"asset": "libmpv-linux-d499fef77f4d-aarch64.tar.zst",
|
|
"checksum": "fdfb547570f34f984360959f6baf31acabecabc904552c7806f670f26320c759"
|
|
},
|
|
"x86_64": {
|
|
"asset": "libmpv-linux-d499fef77f4d-x86_64.tar.zst",
|
|
"checksum": "ad2144ad1fe32e80037017ef1d8898d6143021275b313121f741ffe8a297d8ac"
|
|
}
|
|
},
|
|
"key": "d499fef77f4d"
|
|
},
|
|
"windows": {
|
|
"assetBase": "https://github.com/edde746/mpv-build/releases/download/binaries-windows",
|
|
"assets": {
|
|
"aarch64": {
|
|
"asset": "libmpv-windows-1da76841036d-aarch64.zip",
|
|
"checksum": "94c0e4d27794fb3bb754b0c62409c6b0cf17161fbafa16c3213d0239821a6836"
|
|
},
|
|
"x86_64": {
|
|
"asset": "libmpv-windows-1da76841036d-x86_64.zip",
|
|
"checksum": "6a927cbbb7d44ecbefa3643ef0b435e3fa521b6a1123bb8c5d6349441ed3a760"
|
|
}
|
|
},
|
|
"key": "1da76841036d"
|
|
}
|
|
},
|
|
"commit": "83879375c9e96b46b5711c038bed08690a9e8773",
|
|
"formatVersion": 1,
|
|
"repo": "edde746/mpv-build"
|
|
}
|