From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 181D14EEC2 for ; Wed, 14 May 2025 13:49:26 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 49EC768CA1C; Wed, 14 May 2025 16:49:23 +0300 (EEST) Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E503D68C1D1 for ; Wed, 14 May 2025 16:49:16 +0300 (EEST) Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-22c33677183so60828285ad.2 for ; Wed, 14 May 2025 06:49:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1747230555; x=1747835355; darn=ffmpeg.org; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=IC7dmwa0EpndiopH5fsan7gV0YBxIz9mFbf+Vu+Fu0k=; b=Qt7Jwum0LfRAysC4/NujIg4+x2L0RtThv5rnAYYVV2/cR+IeXUtFIw2O0EP3XRUBFi 00+ZUmiaV7F3cp1wC4tcp3rHaaWOJ1sIUinSKfeMm/Jr3a3O7fAOcW4LD6sGlqkIson8 G64XL/TbUD9LGxoRI1Y78UvZeKRUlCCUSGNaz8KY1VdrYMnluLXPJ4NZSYGqgTKe86N2 Mcwlpgw8VsKdPZtiYtQXYr7MStmLryHGoXwQ74/m/1aqzSNnOaIejeg8g/spGHXoVNQV aYC6bQCUVM1ZzXhbbjn7CrAKkDvp+4cPlFTCRowoVVajOS48xtIO67LNzg/pZW3rVd+v uXvg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747230555; x=1747835355; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=IC7dmwa0EpndiopH5fsan7gV0YBxIz9mFbf+Vu+Fu0k=; b=BE5DC2TaoxMapK8XKYxwJuxom1WN8bqge9OLYMLsBAZri8QnT/VrHEe2cTgfRjjJCE hR4GY6DeXOM9SeF23iBTx6dKGqGfXo/SW/jjt/hO9RsiNtUMo19C9wPHjO1Mrixy6VIm r6SZxs9x3ACEXjEAIHHdvHUQueIhDXEpsvAmmB8+6TSvMb5W2o40tyxRLRrxqcPW/sz0 N+BfQRb1T3+xwfTYJ6XOzIT0tjk0y9ylYv6GvmUE7BrrBDsFEkQbnsgiKrLCdc6vyz8/ KEFqFot3dkSJEIhlJYPMa95PGPpqd+ORh+GZkjhpTWLB9Yh7hhZiBbdlkHMx82pYntLQ C0zg== X-Gm-Message-State: AOJu0YxJMZx6zzLl9kVvhvCn4kVKTNQlA76OGvv3iqoqzTWUcnTpdw/X 9WK5zU2q2j51iMBk/NBUXjxfJQLp5SRu8O8K5EhzGvUt8vmI74PEb6toBYAYODlp3QwdHXiCYdc qiCneFzLHIQ9BbGPzR7K+jYi9sYwoDxXz X-Gm-Gg: ASbGncvH3dMV1gh87Y1ydWR666782bi6qzBTeegdnm3LpND2QDzQVyJ6K8yA12DQ5TH 2q0oezpmUmRd73KmxtJo3ZXfSJgCVWr9uOd+hxtQrNRRVftvWP13+d6ww45gpqM3ky05lDScrVN 1vkRsg24q3ssxJvPzXFdBGFDTa5gEzJrTaCUo= X-Google-Smtp-Source: AGHT+IEQsv4ggWKp9JhUkBVd1gP4BTazMkBmczFsp6DeeKpzWqoSXbJ8XsXfmHPNOCySgAhWGg2jnDrna/F0trXsW+g= X-Received: by 2002:a17:902:da91:b0:22e:7e19:565e with SMTP id d9443c01a7336-23198114542mr41862655ad.3.1747230554777; Wed, 14 May 2025 06:49:14 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Andrew Randrianasulu Date: Wed, 14 May 2025 13:49:06 +0300 X-Gm-Features: AX0GCFt-68yi43l1j0HD9p8Z3ut1T7s62au8ayNjVIetDJzxaGNShMnpLK8bvjM Message-ID: To: FFmpeg development discussions and patches , "Cinelerra.GG" , Phyllis Smith Content-Type: multipart/mixed; boundary="0000000000008efed7063518d0d6" Subject: Re: [FFmpeg-devel] Vulkan hevc hdr decode regression on ffmpeg master? X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: --0000000000008efed7063518d0d6 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, May 14, 2025 at 1:31=E2=80=AFPM Andrew Randrianasulu wrote: > > So I was experimenting with Vulkan decoding in cinelerra-gg. > > After some fight I get build using ffmpeg git > > commit 038314bc6be2f35a82e9fba2228bcac2e4fee648 for ffmpeg > > here is bunch of errors like this: > > [hevc @ 0x6f7465c0] Could not find ref with POC 296 > [hevc @ 0x6f7465c0] Error constructing the frame RPS. > [hevc @ 0x6f7465c0] Skipping invalid undecodable NALU: 9 > [hevc @ 0x6f72ad00] Could not find ref with POC 296 > [hevc @ 0x6f72ad00] Error constructing the frame RPS. > [hevc @ 0x6f72ad00] Skipping invalid undecodable NALU: 8 > [hevc @ 0x6f77b3c0] Could not find ref with POC 298 > [hevc @ 0x6f77b3c0] Error constructing the frame RPS. > [hevc @ 0x6f77b3c0] Skipping invalid undecodable NALU: 8 > [hevc @ 0x6f789480] Could not find ref with POC 300 > [hevc @ 0x6f789480] Error constructing the frame RPS. > [hevc @ 0x6f789480] Skipping invalid undecodable NALU: 1 > [hevc @ 0x6f7465c0] Could not find ref with POC 300 > [hevc @ 0x6f7465c0] Error constructing the frame RPS. > [hevc @ 0x6f7465c0] Skipping invalid undecodable NALU: 3 > [hevc @ 0x6f72ad00] Could not find ref with POC 300 > [hevc @ 0x6f72ad00] Error constructing the frame RPS. > [hevc @ 0x6f72ad00] Skipping invalid undecodable NALU: 2 > [hevc @ 0x6f77b3c0] Could not find ref with POC 302 > [hevc @ 0x6f77b3c0] Error constructing the frame RPS. > [hevc @ 0x6f77b3c0] Skipping invalid undecodable NALU: 2 > [hevc @ 0x6f789480] Could not find ref with POC 304 > [hevc @ 0x6f789480] Error constructing the frame RPS. > [hevc @ 0x6f789480] Skipping invalid undecodable NALU: 1 > [hevc @ 0x6f7465c0] Could not find ref with POC 304 > [hevc @ 0x6f7465c0] Error constructing the frame RPS. > [hevc @ 0x6f7465c0] Skipping invalid undecodable NALU: 3 > [hevc @ 0x6f72ad00] Could not find ref with POC 304 > [hevc @ 0x6f72ad00] Error constructing the frame RPS. > [hevc @ 0x6f72ad00] Skipping invalid undecodable NALU: 2 > [hevc @ 0x6f77b3c0] Could not find ref with POC 306 > [hevc @ 0x6f77b3c0] Error constructing the frame RPS. > [hevc @ 0x6f77b3c0] Skipping invalid undecodable NALU: 2 > [hevc @ 0x6f789480] Could not find ref with POC 308 > [hevc @ 0x6f789480] Error constructing the frame RPS. > [hevc @ 0x6f789480] Skipping invalid undecodable NALU: 1 > [hevc @ 0x6f7465c0] Could not find ref with POC 308 > [hevc @ 0x6f7465c0] Error constructing the frame RPS. > [hevc @ 0x6f7465c0] Skipping invalid undecodable NALU: 3 > [hevc @ 0x6f72ad00] Could not find ref with POC 308 > [hevc @ 0x6f72ad00] Error constructing the frame RPS. > [hevc @ 0x6f72ad00] Skipping invalid undecodable NALU: 2 > [hevc @ 0x6f77b3c0] Could not find ref with POC 310 > [hevc @ 0x6f77b3c0] Error constructing the frame RPS. > [hevc @ 0x6f77b3c0] Skipping invalid undecodable NALU: 2 > [hevc @ 0x6f789480] Could not find ref with POC 312 > [hevc @ 0x6f789480] Error constructing the frame RPS. > [hevc @ 0x6f789480] Skipping invalid undecodable NALU: 1 > [hevc @ 0x6f7465c0] Could not find ref with POC 312 > [hevc @ 0x6f7465c0] Error constructing the frame RPS. > [hevc @ 0x6f7465c0] Skipping invalid undecodable NALU: 3 > [hevc @ 0x6f72ad00] Could not find ref with POC 312 > [hevc @ 0x6f72ad00] Error constructing the frame RPS. > [hevc @ 0x6f72ad00] Skipping invalid undecodable NALU: 2 > [hevc @ 0x6f77b3c0] Could not find ref with POC 314 > [hevc @ 0x6f77b3c0] Error constructing the frame RPS. > [hevc @ 0x6f77b3c0] Skipping invalid undecodable NALU: 2 > [hevc @ 0x6f789480] Could not find ref with POC 316 > [hevc @ 0x6f789480] Error constructing the frame RPS. > [hevc @ 0x6f789480] Skipping invalid undecodable NALU: 1 > [hevc @ 0x6f7465c0] Could not find ref with POC 316 > [hevc @ 0x6f7465c0] Error constructing the frame RPS. > [hevc @ 0x6f7465c0] Skipping invalid undecodable NALU: 3 > [hevc @ 0x6f72ad00] Could not find ref with POC 316 > [hevc @ 0x6f72ad00] Error constructing the frame RPS. > [hevc @ 0x6f72ad00] Skipping invalid undecodable NALU: 2 > [hevc @ 0x6f77b3c0] Could not find ref with POC 318 > [hevc @ 0x6f77b3c0] Error constructing the frame RPS. > [hevc @ 0x6f77b3c0] Skipping invalid undecodable NALU: 2 > [hevc @ 0x6f789480] Could not find ref with POC 320 > [hevc @ 0x6f789480] Error constructing the frame RPS. > [hevc @ 0x6f789480] Skipping invalid undecodable NALU: 1 > [hevc @ 0x6f7465c0] Could not find ref with POC 320 > [hevc @ 0x6f7465c0] Error constructing the frame RPS. > [hevc @ 0x6f7465c0] Skipping invalid undecodable NALU: 3 > [hevc @ 0x6f72ad00] Could not find ref with POC 320 > [hevc @ 0x6f72ad00] Error constructing the frame RPS. > [hevc @ 0x6f72ad00] Skipping invalid undecodable NALU: 2 > [hevc @ 0x6f77b3c0] Could not find ref with POC 322 > [hevc @ 0x6f77b3c0] Error constructing the frame RPS. > [hevc @ 0x6f77b3c0] Skipping invalid undecodable NALU: 2 > [hevc @ 0x6f789480] Could not find ref with POC 324 > [hevc @ 0x6f789480] Error constructing the frame RPS. > [hevc @ 0x6f789480] Skipping invalid undecodable NALU: 1 > [hevc @ 0x6f7465c0] Could not find ref with POC 324 > [hevc @ 0x6f7465c0] Error constructing the frame RPS. > [hevc @ 0x6f7465c0] Skipping invalid undecodable NALU: 3 > [hevc @ 0x6f72ad00] Could not find ref with POC 324 > [hevc @ 0x6f72ad00] Error constructing the frame RPS. > [hevc @ 0x6f72ad00] Skipping invalid undecodable NALU: 2 > [hevc @ 0x6f77b3c0] Could not find ref with POC 326 > [hevc @ 0x6f77b3c0] Error constructing the frame RPS. > [hevc @ 0x6f77b3c0] Skipping invalid undecodable NALU: 2 > [hevc @ 0x6f789480] Could not find ref with POC 328 > [hevc @ 0x6f789480] Error constructing the frame RPS. > [hevc @ 0x6f789480] Skipping invalid undecodable NALU: 1 > [hevc @ 0x6f7465c0] Could not find ref with POC 328 > [hevc @ 0x6f7465c0] Error constructing the frame RPS. > [hevc @ 0x6f7465c0] Skipping invalid undecodable NALU: 3 > [hevc @ 0x6f72ad00] Could not find ref with POC 328 > [hevc @ 0x6f72ad00] Error constructing the frame RPS. > [hevc @ 0x6f72ad00] Skipping invalid undecodable NALU: 2 > [hevc @ 0x6f77b3c0] Could not find ref with POC 330 > [hevc @ 0x6f77b3c0] Error constructing the frame RPS. > [hevc @ 0x6f77b3c0] Skipping invalid undecodable NALU: 2 > [hevc @ 0x6f789480] Could not find ref with POC 332 > [hevc @ 0x6f789480] Error constructing the frame RPS. > [hevc @ 0x6f789480] Skipping invalid undecodable NALU: 1 > [hevc @ 0x6f7465c0] Could not find ref with POC 332 > [hevc @ 0x6f7465c0] Error constructing the frame RPS. > [hevc @ 0x6f7465c0] Skipping invalid undecodable NALU: 3 > > file itself: > https://drive.google.com/file/d/1Ic9DZXMSo07EJMqCFaQRKSSrSw6y1mYv/view > > But I see some kind of first frame corruption I never saw on 7.0 build > > https://paste.pics/860707666060d195485e07ea7b057ce8 > > and speed kinda down from 58 fps to just 50-51 relative to ffmpeg libs 7= .0? > > hw: > 01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. > [AMD/ATI] Lexa PRO [Radeon 540/540X/550/550X / RX 540X/550/550X] (rev > c7) > > mesa: > > OpenGL renderer string: AMD Radeon RX 550 / 550 Series (radeonsi, > polaris12, ACO, DRM 3.61, 6.12.26-x64) > OpenGL core profile version string: 4.6 (Core Profile) Mesa > 25.2.0-devel (git-ef63e3e4d2) > > cingg home git: > git://git.cinelerra-gg.org/goodguy/cinelerra.git > > I set two evn. variables specific to my system, but mostly I wanted to > get libplacebo and libzimg for HDR->SDR conversion > > EXTRA_LIBS :=3D -lOpenCL -lSvtAv1Enc -lvpl -ldav1d -lxvidcore -lass > -lbluray -lsnappy -lzimg -lplacebo -lshaderc_shared -lnuma -lva > -lva-x11 `pkg-config --libs x11` -lva-drm -ldl > FFMPEG_EXTRA_CFG :=3D --enable-libvpl --disable-doc --enable-opencl > --enable-libsvtav1 --enable-frei0r --enable-libdav1d --enable-libzimg > --enable-libxvid --enable-libass --enable-libbluray --enable-libsnappy > --enable-libshaderc --enable-libplacebo --enable-vulkan > --disable-debug --extra-cflags=3D-I/usr/local/include/vpl > --extra-cflags=3D-I/usr/include/svt-av1 --extra-ldflags=3D" -lva > `pkg-config --libs libva` -lva-x11 -lva-drm -ldl" > > > cingg configure: > > ./configure --with-git-ffmpeg=3Dhttps://git.ffmpeg.org/ffmpeg.git > --with-single-user --enable-libsvtav1 --disable-dav1d > > I used bunch of patches (attached, done by Phyllis and me) and > manually removed posprocess.a ref. from our configure.ac for now One more patch/hack just for making building easier attached (on top of 0001-3 patches for cingg) ffmpeg.git patches go into thirdparty/src, and you probably want to move away ffmpeg.git.patch8 out of this directory so it will not fail patching > > there is still some problem with attaching ffmpeg filters > per-input-file, but main Vulkan decode problem still visible without > any filters > > I run just-compiled cin binary like this: > > RADV_PERFTEST=3Dvideo_decode bin/cin > ~/K38_sdcard1/Documents/iPhone11_4K-recorder_59.940HDR10.mov > > and got corruption as visible on screenshot at the start of this email > > Playing image forward cleans up this corruption, but returning to > timeline beginning bring it back. --0000000000008efed7063518d0d6 Content-Type: text/x-patch; charset="US-ASCII"; name="0004-HACK-ffmpeg-8.0-build.patch" Content-Disposition: attachment; filename="0004-HACK-ffmpeg-8.0-build.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mantinqr0 RnJvbSBhNWE5MzViNzg0NzY5MDA4OGM1OTRkNzc4NWUxMGFiZWZkZjMwM2M2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXcgUmFuZHJpYW5hc3VsdSA8cmFuZHJpYW5hc3VsdUBn bWFpbC5jb20+CkRhdGU6IFdlZCwgMTQgTWF5IDIwMjUgMTM6NDI6MzQgKzAzMDAKU3ViamVjdDog W1BBVENIIDQvNF0gSEFDSyBmZm1wZWcgOC4wIGJ1aWxkCgotLS0KIGNpbmVsZXJyYS01LjEvY2lu ZWxlcnJhL2Jkd3JpdGUuQyB8ICA2ICsrKysKIGNpbmVsZXJyYS01LjEvY2luZWxlcnJhL2ZmbXBl Zy5DICB8IDUzICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0KIGNpbmVsZXJyYS01LjEv Y2luZWxlcnJhL2ZpbGVhYzMuQyB8ICAyICsrCiBjaW5lbGVycmEtNS4xL2NvbmZpZ3VyZS5hYyAg ICAgICAgfCAgMSAtCiA0IGZpbGVzIGNoYW5nZWQsIDU2IGluc2VydGlvbnMoKyksIDYgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvY2luZWxlcnJhLTUuMS9jaW5lbGVycmEvYmR3cml0ZS5DIGIv Y2luZWxlcnJhLTUuMS9jaW5lbGVycmEvYmR3cml0ZS5DCmluZGV4IDFmN2YwMjdlLi4xYjAyN2E3 ZiAxMDA2NDQKLS0tIGEvY2luZWxlcnJhLTUuMS9jaW5lbGVycmEvYmR3cml0ZS5DCisrKyBiL2Np bmVsZXJyYS01LjEvY2luZWxlcnJhL2Jkd3JpdGUuQwpAQCAtMjU4Niw3ICsyNTg2LDExIEBAIHN0 YXRpYyBpbnQgZmllbGRfcHJvYmUoQVZGb3JtYXRDb250ZXh0ICpmbXRfY3R4LCBBVlN0cmVhbSAq c3QpCiAgICAgfQogICAgIHJldCA9IGF2Y29kZWNfcmVjZWl2ZV9mcmFtZShjdHgsIGlwaWMpOwog ICAgIGlmKCByZXQgPj0gMCApIHsKKyNpZiBMSUJBVkNPREVDX1ZFUlNJT05fSU5UIDw9IEFWX1ZF UlNJT05fSU5UKDU5LDE2LDEwMCkKICAgICAgIGlsYWNlZCA9IGlwaWMtPmludGVybGFjZWRfZnJh bWUgPyAxIDogMDsKKyNlbHNlCisgICAgaWxhY2VkID0gaXBpYy0+ZmxhZ3MgJiBBVl9GUkFNRV9G TEFHX0lOVEVSTEFDRUQgID8gMSA6IDA7CisjZW5kaWYKICAgICAgIGJyZWFrOwogICAgIH0KICAg ICBpZiggcmV0ICE9IEFWRVJST1IoRUFHQUlOKSApCkBAIC0yNzY5LDcgKzI3NzMsOSBAQCBpbnQg bWVkaWFfaW5mbzo6c2NhbigpCiAgICAgcmV0ID0gc2NhbihmbXRfY3R4KTsKIAogICBmb3IoIGlu dCBpPTA7IGk8KGludClzdHJlYW1zLnNpemUoKTsgKytpICkKKyNpZiBMSUJBVkNPREVDX1ZFUlNJ T05fSU5UIDw9IEFWX1ZFUlNJT05fSU5UKDU5LDE2LDEwMCkKICAgICBhdmNvZGVjX2Nsb3NlKHN0 cmVhbXNbaV0tPmN0eCk7CisjZW5kaWYKICAgYXZmb3JtYXRfY2xvc2VfaW5wdXQoJmZtdF9jdHgp OwogCiAgIHJldHVybiByZXQ7CmRpZmYgLS1naXQgYS9jaW5lbGVycmEtNS4xL2NpbmVsZXJyYS9m Zm1wZWcuQyBiL2NpbmVsZXJyYS01LjEvY2luZWxlcnJhL2ZmbXBlZy5DCmluZGV4IDAwYjAyNzkx Li42ODNiZmY5NCAxMDA2NDQKLS0tIGEvY2luZWxlcnJhLTUuMS9jaW5lbGVycmEvZmZtcGVnLkMK KysrIGIvY2luZWxlcnJhLTUuMS9jaW5lbGVycmEvZmZtcGVnLkMKQEAgLTMxMCw3ICszMTAsOSBA QCBGRlN0cmVhbTo6RkZTdHJlYW0oRkZNUEVHICpmZm1wZWcsIEFWU3RyZWFtICpzdCwgaW50IGZp ZHgpCiBGRlN0cmVhbTo6fkZGU3RyZWFtKCkKIHsKIAlmcm1fbG9jay0+bG9jaygiRkZTdHJlYW06 On5GRlN0cmVhbSIpOworI2lmIExJQkFWQ09ERUNfVkVSU0lPTl9JTlQgPD0gQVZfVkVSU0lPTl9J TlQoNTksMTYsMTAwKQogCWlmKCByZWFkaW5nID4gMCB8fCB3cml0aW5nID4gMCApIGF2Y29kZWNf Y2xvc2UoYXZjdHgpOworI2VuZGlmCQogCWlmKCBhdmN0eCApIGF2Y29kZWNfZnJlZV9jb250ZXh0 KCZhdmN0eCk7CiAJaWYoIGZtdF9jdHggKSBhdmZvcm1hdF9jbG9zZV9pbnB1dCgmZm10X2N0eCk7 CiAJaWYoIGh3X2RldmljZV9jdHggKSBhdl9idWZmZXJfdW5yZWYoJmh3X2RldmljZV9jdHgpOwpA QCAtNDc1LDcgKzQ3Nyw5IEBAIGludCBGRlN0cmVhbTo6ZGVjb2RlX2FjdGl2YXRlKCkKIAkJCWlm KCByZXQgPCAwICYmIGh3X3R5cGUgIT0gQVZfSFdERVZJQ0VfVFlQRV9OT05FICkgewogCQkJCWZm X2VycihyZXQsICJIVyBkZXZpY2UgaW5pdCBmYWlsZWQsIHVzaW5nIFNXIGRlY29kZS5cbmZpbGU6 JXNcbiIsCiAJCQkJCWZmbXBlZy0+Zm10X2N0eC0+dXJsKTsKKyNpZiBMSUJBVkNPREVDX1ZFUlNJ T05fSU5UIDw9IEFWX1ZFUlNJT05fSU5UKDU5LDE2LDEwMCkKIAkJCQlhdmNvZGVjX2Nsb3NlKGF2 Y3R4KTsKKyNlbmRpZgogCQkJCWF2Y29kZWNfZnJlZV9jb250ZXh0KCZhdmN0eCk7CiAJCQkJYXZf YnVmZmVyX3VucmVmKCZod19kZXZpY2VfY3R4KTsKIAkJCQlod19kZXZpY2VfY3R4ID0gMDsKQEAg LTEzMDUsNyArMTMwOSw3IEBAIGludCBGRlZpZGVvU3RyZWFtOjpwcm9iZShpbnQ2NF90IHBvcykK IAkJaWYoIHJldCA+IDAgKSB7CiAJCQkvL3ByaW50ZigiY29kZWMgaW50ZXJsYWNlOiAlaSBcbiIs ZnJhbWUtPmludGVybGFjZWRfZnJhbWUpOwogCQkJLy9wcmludGYoImNvZGVjIHRmZjogJWkgXG4i LGZyYW1lLT50b3BfZmllbGRfZmlyc3QpOwotCisjaWYgTElCQVZDT0RFQ19WRVJTSU9OX0lOVCA8 PSBBVl9WRVJTSU9OX0lOVCg1OSwxNiwxMDApCiAJCQlpZiAoIWZyYW1lLT5pbnRlcmxhY2VkX2Zy YW1lKQogCQkJCWZmbXBlZy0+aW50ZXJsYWNlX2Zyb21fY29kZWMgPSBBVl9GSUVMRF9QUk9HUkVT U0lWRTsKIAkJCWlmICgoZnJhbWUtPmludGVybGFjZWRfZnJhbWUpICYmIChmcmFtZS0+dG9wX2Zp ZWxkX2ZpcnN0KSkKQEAgLTEzMTMsNyArMTMxNywxNCBAQCBpbnQgRkZWaWRlb1N0cmVhbTo6cHJv YmUoaW50NjRfdCBwb3MpCiAJCQlpZiAoKGZyYW1lLT5pbnRlcmxhY2VkX2ZyYW1lKSAmJiAoIWZy YW1lLT50b3BfZmllbGRfZmlyc3QpKQogCQkJCWZmbXBlZy0+aW50ZXJsYWNlX2Zyb21fY29kZWMg PSBBVl9GSUVMRF9CQjsKIAkJCS8vcHJpbnRmKCJJbnRlcmxhY2UgbW9kZSBmcm9tIGNvZGVjOiAl aVxuIiwgZmZtcGVnLT5pbnRlcmxhY2VfZnJvbV9jb2RlYyk7Ci0KKyNlc2xlCisJCQlpZiAoIWZy YW1lLT5mbGFncyAmIEFWX0ZSQU1FX0ZMQUdfVE9QX0ZJRUxEX0ZJUlNUKQorCQkJCWZmbXBlZy0+ aW50ZXJsYWNlX2Zyb21fY29kZWMgPSBBVl9GSUVMRF9QUk9HUkVTU0lWRTsKKwkJCWlmICgoZnJh bWUtPmZsYWdzICYgQVZfRlJBTUVfRkxBR19JTlRFUkxBQ0VEKSAmJiAoZnJhbWUtPmZsYWdzICYg QVZfRlJBTUVfRkxBR19UT1BfRklFTERfRklSU1QpKQorCQkJCWZmbXBlZy0+aW50ZXJsYWNlX2Zy b21fY29kZWMgPSBBVl9GSUVMRF9UVDsKKwkJCWlmICgoZnJhbWUtPmZsYWdzICYgQVZfRlJBTUVf RkxBR19JTlRFUkxBQ0VEICkgJiYgKCFmcmFtZS0+ZmxhZ3MgJiBBVl9GUkFNRV9GTEFHX1RPUF9G SUVMRF9GSVJTVCkpCisJCQkJZmZtcGVnLT5pbnRlcmxhY2VfZnJvbV9jb2RlYyA9IEFWX0ZJRUxE X0JCOworI2VuZGlmCiAJfQogCiAJaWYoIGZyYW1lLT5mb3JtYXQgPT0gQVZfUElYX0ZNVF9OT05F IHx8IGZyYW1lLT53aWR0aCA8PSAwIHx8IGZyYW1lLT5oZWlnaHQgPD0gMCApCkBAIC0xMzM5LDcg KzEzNTAsMTEgQEAgaW50IEZGVmlkZW9TdHJlYW06OmxvYWQoVkZyYW1lICp2ZnJhbWUsIGludDY0 X3QgcG9zKQogCXdoaWxlKCByZXQ+PTAgJiYgIWZsdXNoZWQgJiYgY3Vycl9wb3M8PXBvcyAmJiAt LWk+PTAgKSB7CiAJCXJldCA9IHJlYWRfZnJhbWUoZnJhbWUpOwogCQlpZiggcmV0ID4gMCApIHsK KyNpZiBMSUJBVkNPREVDX1ZFUlNJT05fSU5UIDw9IEFWX1ZFUlNJT05fSU5UKDU5LDE2LDEwMCkK IAkJCWlmKCBmcmFtZS0+a2V5X2ZyYW1lICYmIHNlZWtpbmcgPCAwICkgeworI2Vsc2UKKwkJCWlm KCAoZnJhbWUtPmZsYWdzICYgQVZfRlJBTUVfRkxBR19LRVkpICYmIHNlZWtpbmcgPCAwICkgewor I2VuZGlmCiAJCQkJaW50IHVzZV9jYWNoZSA9IGZmbXBlZy0+Z2V0X3VzZV9jYWNoZSgpOwogCQkJ CWlmKCB1c2VfY2FjaGUgPCAwICkgewogLy8gZm9yIHJldmVyc2UgcmVhZCwgcmVsb2FkIGZpbGUg ZnJhbWVfY2FjaGUgZnJvbSBrZXlmcmFtZSB0byBwb3MKQEAgLTE1MTEsOCArMTUyNiwxNSBAQCBp bnQgRkZWaWRlb1N0cmVhbTo6ZHJhaW4oKQogaW50IEZGVmlkZW9TdHJlYW06OmVuY29kZV9mcmFt ZShBVkZyYW1lICpmcmFtZSkKIHsKIAlpZiggZnJhbWUgKSB7CisjaWYgTElCQVZDT0RFQ19WRVJT SU9OX0lOVCA8PSBBVl9WRVJTSU9OX0lOVCg1OSwxNiwxMDApCiAJCWZyYW1lLT5pbnRlcmxhY2Vk X2ZyYW1lID0gaW50ZXJsYWNlZDsKIAkJZnJhbWUtPnRvcF9maWVsZF9maXJzdCA9IHRvcF9maWVs ZF9maXJzdDsKKyNlbHNlCisJCWlmKHRvcF9maWVsZF9maXJzdCkKKwkJZnJhbWUtPmZsYWdzIHw9 IEFWX0ZSQU1FX0ZMQUdfVE9QX0ZJRUxEX0ZJUlNUOworCQlpZihpbnRlcmxhY2VkKQorCQlmcmFt ZS0+ZmxhZ3MgfD0gQVZfRlJBTUVfRkxBR19JTlRFUkxBQ0VEOworI2VuZGlmCiAJfQogCWlmKCBm cmFtZSAmJiBmcmFtZS0+Zm9ybWF0ID09IEFWX1BJWF9GTVRfVkFBUEkgKSB7IC8vIHVnbHkKIAkJ aW50IHJldCA9IGF2Y29kZWNfc2VuZF9mcmFtZShhdmN0eCwgZnJhbWUpOwpAQCAtMzg0Niw3ICsz ODY4LDIwIEBAIGRvdWJsZSBGRlZpZGVvU3RyZWFtOjpnZXRfcm90YXRpb25fYW5nbGUoKQogI2Vs c2UKIAlpbnQgc2l6ZSA9IDA7CiAjZW5kaWYKKworI2lmIExJQkFWQ09ERUNfVkVSU0lPTl9JTlQg PD0gQVZfVkVSU0lPTl9JTlQoNTksMTYsMTAwKQogCWludCAqbWF0cml4ID0gKGludCopYXZfc3Ry ZWFtX2dldF9zaWRlX2RhdGEoc3QsIEFWX1BLVF9EQVRBX0RJU1BMQVlNQVRSSVgsICZzaXplKTsK KyNlbHNlCisJaW50MzJfdCAqbWF0cml4ID0gTlVMTDsKKyAgICAgICAgaWYgKCFtYXRyaXgpIHsK KyAgICAgICAgICAgIGNvbnN0IEFWUGFja2V0U2lkZURhdGEgKnBzZCA9IGF2X3BhY2tldF9zaWRl X2RhdGFfZ2V0KHN0LT5jb2RlY3Bhci0+Y29kZWRfc2lkZV9kYXRhLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3QtPmNv ZGVjcGFyLT5uYl9jb2RlZF9zaWRlX2RhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBVl9QS1RfREFUQV9ESVNQTEFZ TUFUUklYKTsKKyAgICAgICAgICAgIGlmIChwc2QpCisgICAgICAgICAgICAgICAgbWF0cml4ID0g KGludDMyX3QgKilwc2QtPmRhdGE7CisgICAgICAgIH0KKwkKKyNlbmRpZgogCWludCBsZW4gPSBz aXplL3NpemVvZigqbWF0cml4KTsKIAlpZiggIW1hdHJpeCB8fCBsZW4gPCA1ICkgcmV0dXJuIDA7 CiAJY29uc3QgZG91YmxlIHMgPSAxLzY1NTM2LjsKQEAgLTM5MDQsNyArMzkzOSw3IEBAIGludCBG RlZpZGVvU3RyZWFtOjpjcmVhdGVfZmlsdGVyKGNvbnN0IGNoYXIgKmZpbHRlcl9zcGVjKQogCQkq bnAgPSAwOwogCQljb25zdCBBVkZpbHRlciAqZmlsdGVyID0gIWZpbHRlcl9uYW1lWzBdID8gMCA6 IGF2ZmlsdGVyX2dldF9ieV9uYW1lKGZpbHRlcl9uYW1lKTsKIAkJLy9BVkZpbHRlckNvbnRleHQg KmN0eCA9IGZpbHRlci0+Y3R4OwotCQlpbnQgICAgICAgbmJfcGFkcyA9IGZpbHRlci0+bmJfaW5w dXRzOworCQlpbnQgICAgICAgbmJfcGFkcyA9IGF2ZmlsdGVyX2ZpbHRlcl9wYWRfY291bnQoZmls dGVyLDApOwogCQlpZiggIWZpbHRlciB8fCAobmJfcGFkcz4xICYmIGF2ZmlsdGVyX3BhZF9nZXRf dHlwZShmaWx0ZXItPmlucHV0cywwKSkgIT0gQVZNRURJQV9UWVBFX1ZJREVPICkgewogCQkJZmZf ZXJyKEFWRVJST1IoRUlOVkFMKSwgIkZGVmlkZW9TdHJlYW06OmNyZWF0ZV9maWx0ZXI6ICVzXG4i LCBmaWx0ZXJfc3BlYyk7CiAJCQlyZXR1cm4gLTE7CkBAIC0zOTIwLDcgKzM5NTUsNyBAQCBpbnQg RkZWaWRlb1N0cmVhbTo6Y3JlYXRlX2ZpbHRlcihjb25zdCBjaGFyICpmaWx0ZXJfc3BlYykKIAlB VlBpeGVsRm9ybWF0IHBpeF9mbXQgPSAoQVZQaXhlbEZvcm1hdClhdnBhci0+Zm9ybWF0OwogCXNu cHJpbnRmKGFyZ3MsIHNpemVvZihhcmdzKSwKIAkJInZpZGVvX3NpemU9JWR4JWQ6cGl4X2ZtdD0l ZDp0aW1lX2Jhc2U9JWQvJWQ6cGl4ZWxfYXNwZWN0PSVkLyVkIiwKLQkJYXZwYXItPndpZHRoLCBh dnBhci0+aGVpZ2h0LCAoaW50KXBpeF9mbXQsCisJCWF2cGFyLT53aWR0aCwgYXZwYXItPmhlaWdo dCwoaW50KXBpeF9mbXQsCiAJCXN0LT50aW1lX2Jhc2UubnVtLCBzdC0+dGltZV9iYXNlLmRlbiwg c2FfbnVtLCBzYV9kZW4pOwogCWlmKCByZXQgPj0gMCApIHsKIAkJZmlsdF9jdHggPSAwOwpAQCAt MzkzNSwxMSArMzk3MCwxOSBAQCBpbnQgRkZWaWRlb1N0cmVhbTo6Y3JlYXRlX2ZpbHRlcihjb25z dCBjaGFyICpmaWx0ZXJfc3BlYykKIAkJcmV0ID0gaW5zZXJ0X2ZpbHRlcigiYnVmZmVyc2luayIs IDAsICJvdXQiKTsKIAkJYnVmZmVyc2lua19jdHggPSBmaWx0X2N0eDsKIAl9CisJLyoKKwlpZigg cmV0ID49IDAgKSB7CisJcmV0ID0gYXZfb3B0X3NldChidWZmZXJzaW5rX2N0eCwgInBpeGVsX2Zv cm1hdHMiLCBhdl9nZXRfcGl4X2ZtdF9uYW1lKHBpeF9mbXQpLAorICAgICAgICAgICAgICAgICAg ICAgQVZfT1BUX1NFQVJDSF9DSElMRFJFTik7CisJfQorCQogCWlmKCByZXQgPj0gMCApIHsKIAkJ cmV0ID0gYXZfb3B0X3NldF9iaW4oYnVmZmVyc2lua19jdHgsICJwaXhfZm10cyIsCiAJCQkodWlu dDhfdCopJnBpeF9mbXQsIHNpemVvZihwaXhfZm10KSwKIAkJCUFWX09QVF9TRUFSQ0hfQ0hJTERS RU4pOwogCX0KKwkqLworCQogCWlmKCByZXQgPj0gMCApCiAJCXJldCA9IGNvbmZpZ19maWx0ZXJz KGZpbHRlcl9zcGVjLCBmc3JjKTsKIAllbHNlCkBAIC0zOTU5LDcgKzQwMDIsNyBAQCBpbnQgRkZB dWRpb1N0cmVhbTo6Y3JlYXRlX2ZpbHRlcihjb25zdCBjaGFyICpmaWx0ZXJfc3BlYykKIAkJd2hp bGUoIC0taT49MCAmJiAqc3AhPTAgJiYgIXN0cmNocigiIFx0Oj0sIiwqc3ApICkgKm5wKysgPSAq c3ArKzsKIAkJKm5wID0gMDsKIAkJY29uc3QgQVZGaWx0ZXIgKmZpbHRlciA9ICFmaWx0ZXJfbmFt ZVswXSA/IDAgOiBhdmZpbHRlcl9nZXRfYnlfbmFtZShmaWx0ZXJfbmFtZSk7Ci0JCWludCAgICAg ICBuYl9wYWRzID0gZmlsdGVyLT5uYl9pbnB1dHM7CisJCWludCAgICAgICBuYl9wYWRzID0gYXZm aWx0ZXJfZmlsdGVyX3BhZF9jb3VudChmaWx0ZXIsMCk7CiAJCWlmKCAhZmlsdGVyIHx8IChuYl9w YWRzID4xICYmICBhdmZpbHRlcl9wYWRfZ2V0X3R5cGUoZmlsdGVyLT5pbnB1dHMsMCkpICE9IEFW TUVESUFfVFlQRV9BVURJTyApIHsKIAkJCWZmX2VycihBVkVSUk9SKEVJTlZBTCksICJGRkF1ZGlv U3RyZWFtOjpjcmVhdGVfZmlsdGVyOiAlc1xuIiwgZmlsdGVyX3NwZWMpOwogCQkJcmV0dXJuIC0x OwpkaWZmIC0tZ2l0IGEvY2luZWxlcnJhLTUuMS9jaW5lbGVycmEvZmlsZWFjMy5DIGIvY2luZWxl cnJhLTUuMS9jaW5lbGVycmEvZmlsZWFjMy5DCmluZGV4IDYzNjU0ZjMyLi4zNDQ2OWFlZiAxMDA2 NDQKLS0tIGEvY2luZWxlcnJhLTUuMS9jaW5lbGVycmEvZmlsZWFjMy5DCisrKyBiL2NpbmVsZXJy YS01LjEvY2luZWxlcnJhL2ZpbGVhYzMuQwpAQCAtMTkxLDcgKzE5MSw5IEBAIGludCBGaWxlQUMz OjpjbG9zZV9maWxlKCkKIAlpZihjb2RlY19jb250ZXh0KQogCXsKIAkJZW5jb2RlX2ZsdXNoKCk7 CisjaWYgTElCQVZDT0RFQ19WRVJTSU9OX0lOVCA8PSBBVl9WRVJTSU9OX0lOVCg1OSwxNiwxMDAp CiAJCWF2Y29kZWNfY2xvc2UoY29kZWNfY29udGV4dCk7CisjZW5kaWYKIAkJYXZjb2RlY19mcmVl X2NvbnRleHQoJmNvZGVjX2NvbnRleHQpOwogCQljb2RlYyA9IDA7CiAJfQpkaWZmIC0tZ2l0IGEv Y2luZWxlcnJhLTUuMS9jb25maWd1cmUuYWMgYi9jaW5lbGVycmEtNS4xL2NvbmZpZ3VyZS5hYwpp bmRleCBmNTEzNGE3OC4uZWEyZGU4ZjIgMTAwNjQ0Ci0tLSBhL2NpbmVsZXJyYS01LjEvY29uZmln dXJlLmFjCisrKyBiL2NpbmVsZXJyYS01LjEvY29uZmlndXJlLmFjCkBAIC0yMjcsNyArMjI3LDYg QEAgUEtHXzNSRChbZmZtcGVnXSxbeWVzXSwKICAgW2ZmbXBlZy03LjBdLAogICBbIGxpYmF2dXRp bC9saWJhdnV0aWwuYSBcCiAgICAgbGliYXZjb2RlYy9saWJhdmNvZGVjLmEgXAotICAgIGxpYnBv c3Rwcm9jL2xpYnBvc3Rwcm9jLmEgXAogICAgIGxpYmF2Zm9ybWF0L2xpYmF2Zm9ybWF0LmEgXAog ICAgIGxpYnN3c2NhbGUvbGlic3dzY2FsZS5hIFwKICAgICBsaWJhdmZpbHRlci9saWJhdmZpbHRl ci5hIFwKLS0gCjIuNDYuMwoK --0000000000008efed7063518d0d6 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". --0000000000008efed7063518d0d6--