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 ESMTP id 186844550F for ; Tue, 31 Jan 2023 15:33:41 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 194C068BDE5; Tue, 31 Jan 2023 17:33:38 +0200 (EET) Received: from mail-vk1-f175.google.com (mail-vk1-f175.google.com [209.85.221.175]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id CA53168B6A0 for ; Tue, 31 Jan 2023 17:33:31 +0200 (EET) Received: by mail-vk1-f175.google.com with SMTP id bs10so7561150vkb.3 for ; Tue, 31 Jan 2023 07:33:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=to:subject:message-id:date:from:references:in-reply-to:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=LOm1TIeLVnmV+uWoRmv/HZEQHL6EutEt0kwgOaFqYbc=; b=Pe78IUoSBVTr9cCgQbEjX8h4JuqJRvgQu7qwfeYJwnZoh8CSYftspijgLgdAl7Nn7M iR5uoAIoAyxXuSyPJMTYuDFTVMAYK4UbpVwSk/SfkqU/8HIH4Jrf+tV1sVjhl+nnJYEQ EWnIIti4zqWI7wHfsCq0UnX9GDxGqy+7LLqttWSfAh/D+qi1FQZdq+4han2RaxIXfvAP 9I+TUCu1Gvtr/4/EpDTQVa/4FXZFaaFYB/Gl7XjEzZ8bTKNl8oFgE8g7R5EPDXadf1Rl y86+8ODwq3aCwmXtSCed1NuQc/Y9ts+f8ZK1A3gUAA3kIebk4/19rAZEYyZW/5No18nb m7fw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:subject:message-id:date:from:references:in-reply-to:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=LOm1TIeLVnmV+uWoRmv/HZEQHL6EutEt0kwgOaFqYbc=; b=dmwnHSV2gooC029fAYbw4fyugAMfLvEsnIh9nmq9Fnf9vtY5hhnYw/9haXcEXjXaT6 uCsjlQK+e3gIXYmHo7etu/9i2UNkuTJ58W5wHCYWZaX9l/YwkXdUnErX8mwKagGc1SSd vC8mZM3dYomLr9nOFnD+X75x1U66h6MPkis5+QVDLQNHAh+oA4/kQr5wcul2iAmzLap3 3+vqEwtlaOi/iPF166bQjBHUBNDS43u3688SPh+mVbY/Dimk7nJXYLDJpxNa0ho70Pj0 RJ8BBKlyqwfL2V7EP41sW8LRzLHFn35F3fqPWGwoz/JtwOvdnCW6iQWq8k5H9NHvaI6J xr4Q== X-Gm-Message-State: AO0yUKX8serKy7ld1EIYri9wwJey76sHoKaxAZnqwJ0k3eQ20IuUXeXn mtt8rQdE0TAZUhWkVmdMYdJlvSkcRYrYtF3JPQlJMpzS X-Google-Smtp-Source: AK7set+p/h3AFANQPbHZ32twr9S3ziv4OksBsi7K1/q3GJ8b5RkosXUWyjaqDvo88/55ewUTjjVDhnX51V6jHVLDdNE= X-Received: by 2002:a05:6122:c49:b0:3ea:78fc:6dd8 with SMTP id i9-20020a0561220c4900b003ea78fc6dd8mr206684vkr.21.1675179210219; Tue, 31 Jan 2023 07:33:30 -0800 (PST) MIME-Version: 1.0 Received: by 2002:a05:612c:2428:b0:32a:5eaa:92e4 with HTTP; Tue, 31 Jan 2023 07:33:28 -0800 (PST) In-Reply-To: References: From: Paul B Mahol Date: Tue, 31 Jan 2023 16:33:28 +0100 Message-ID: To: FFmpeg development discussions and patches Content-Type: multipart/mixed; boundary="000000000000c2b7d405f3910dd8" Subject: Re: [FFmpeg-devel] [PATCH] add media100 bsf and use it 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: --000000000000c2b7d405f3910dd8 Content-Type: text/plain; charset="UTF-8" Improved patch attached. --000000000000c2b7d405f3910dd8 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-avcodec-add-media100_to_mjpegb-bitstream-filter-and-.patch" Content-Disposition: attachment; filename="0001-avcodec-add-media100_to_mjpegb-bitstream-filter-and-.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: file0 RnJvbSBlZjc0MzY1ODBjZTQwMTkxN2FiYWI1MTE0ZmYyZmY4YTFmZGQ5ZDYxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEIgTWFob2wgPG9uZW1kYUBnbWFpbC5jb20+CkRhdGU6 IFR1ZSwgMzEgSmFuIDIwMjMgMTA6MTg6MTcgKzAxMDAKU3ViamVjdDogW1BBVENIXSBhdmNvZGVj OiBhZGQgbWVkaWExMDBfdG9fbWpwZWdiIGJpdHN0cmVhbSBmaWx0ZXIgYW5kIHVzZSBpdAoKU2ln bmVkLW9mZi1ieTogUGF1bCBCIE1haG9sIDxvbmVtZGFAZ21haWwuY29tPgotLS0KIGNvbmZpZ3Vy ZSAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxICsKIGxpYmF2Y29kZWMvTWFrZWZpbGUg ICAgICAgICAgICAgICAgIHwgICAzICstCiBsaWJhdmNvZGVjL2JpdHN0cmVhbV9maWx0ZXJzLmMg ICAgICB8ICAgMSArCiBsaWJhdmNvZGVjL21lZGlhMTAwLmMgICAgICAgICAgICAgICB8IDIyNCAt LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBsaWJhdmNvZGVjL21lZGlhMTAwX3RvX21qcGVn Yl9ic2YuYyB8IDE3MCArKysrKysrKysrKysrKysrKysrKysKIGxpYmF2Y29kZWMvbWpwZWdiZGVj LmMgICAgICAgICAgICAgIHwgIDE1ICsrCiA2IGZpbGVzIGNoYW5nZWQsIDE4OSBpbnNlcnRpb25z KCspLCAyMjUgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgbGliYXZjb2RlYy9tZWRp YTEwMC5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGliYXZjb2RlYy9tZWRpYTEwMF90b19tanBlZ2Jf YnNmLmMKCmRpZmYgLS1naXQgYS9jb25maWd1cmUgYi9jb25maWd1cmUKaW5kZXggNDc3OTBkMTBm NS4uMTc0YWU1Yzg5NCAxMDA3NTUKLS0tIGEvY29uZmlndXJlCisrKyBiL2NvbmZpZ3VyZQpAQCAt Mjg1MCw2ICsyODUwLDcgQEAgbHNjcl9kZWNvZGVyX3NlbGVjdD0iaW5mbGF0ZV93cmFwcGVyIgog bWFnaWN5dXZfZGVjb2Rlcl9zZWxlY3Q9ImxsdmlkZHNwIgogbWFnaWN5dXZfZW5jb2Rlcl9zZWxl Y3Q9ImxsdmlkZW5jZHNwIgogbWRlY19kZWNvZGVyX3NlbGVjdD0iYmxvY2tkc3AgYnN3YXBkc3Ag aWRjdGRzcCIKK21lZGlhMTAwX2RlY29kZXJfc2VsZWN0PSJtZWRpYTEwMF90b19tanBlZ2JfYnNm IgogbWV0YXNvdW5kX2RlY29kZXJfc2VsZWN0PSJsc3Agc2luZXdpbiIKIG1pbWljX2RlY29kZXJf c2VsZWN0PSJibG9ja2RzcCBic3dhcGRzcCBocGVsZHNwIGlkY3Rkc3AiCiBtanBlZ19kZWNvZGVy X3NlbGVjdD0iYmxvY2tkc3AgaHBlbGRzcCBleGlmIGlkY3Rkc3AganBlZ3RhYmxlcyIKZGlmZiAt LWdpdCBhL2xpYmF2Y29kZWMvTWFrZWZpbGUgYi9saWJhdmNvZGVjL01ha2VmaWxlCmluZGV4IGRm NzZkMzc1OTguLjQ5NzE4MzJmZjQgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvTWFrZWZpbGUKKysr IGIvbGliYXZjb2RlYy9NYWtlZmlsZQpAQCAtNDg1LDcgKzQ4NSw3IEBAIE9CSlMtJChDT05GSUdf TUFDRTZfREVDT0RFUikgICAgICAgICAgICs9IG1hY2UubwogT0JKUy0kKENPTkZJR19NQUdJQ1lV Vl9ERUNPREVSKSAgICAgICAgKz0gbWFnaWN5dXYubwogT0JKUy0kKENPTkZJR19NQUdJQ1lVVl9F TkNPREVSKSAgICAgICAgKz0gbWFnaWN5dXZlbmMubwogT0JKUy0kKENPTkZJR19NREVDX0RFQ09E RVIpICAgICAgICAgICAgKz0gbWRlYy5vIG1wZWcxMi5vIG1wZWcxMmRhdGEubwotT0JKUy0kKENP TkZJR19NRURJQTEwMF9ERUNPREVSKSAgICAgICAgKz0gbWVkaWExMDAubworT0JKUy0kKENPTkZJ R19NRURJQTEwMF9ERUNPREVSKSAgICAgICAgKz0gbWpwZWdiZGVjLm8KIE9CSlMtJChDT05GSUdf TUVUQVNPVU5EX0RFQ09ERVIpICAgICAgICs9IG1ldGFzb3VuZC5vIHR3aW52cS5vCiBPQkpTLSQo Q09ORklHX01JQ1JPRFZEX0RFQ09ERVIpICAgICAgICArPSBtaWNyb2R2ZGRlYy5vIGFzcy5vCiBP QkpTLSQoQ09ORklHX01JTUlDX0RFQ09ERVIpICAgICAgICAgICArPSBtaW1pYy5vCkBAIC0xMjIx LDYgKzEyMjEsNyBAQCBPQkpTLSQoQ09ORklHX0hFVkNfTUVUQURBVEFfQlNGKSAgICAgICAgICAr PSBoMjY1X21ldGFkYXRhX2JzZi5vIGgyNjVfcHJvZmlsZV9sZQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgaDI2NDVkYXRhLm8KIE9CSlMtJChDT05GSUdfSEVW Q19NUDRUT0FOTkVYQl9CU0YpICAgICAgICs9IGhldmNfbXA0dG9hbm5leGJfYnNmLm8KIE9CSlMt JChDT05GSUdfSU1YX0RVTVBfSEVBREVSX0JTRikgICAgICAgICs9IGlteF9kdW1wX2hlYWRlcl9i c2YubworT0JKUy0kKENPTkZJR19NRURJQTEwMF9UT19NSlBFR0JfQlNGKSAgICAgKz0gbWVkaWEx MDBfdG9fbWpwZWdiX2JzZi5vCiBPQkpTLSQoQ09ORklHX01KUEVHMkpQRUdfQlNGKSAgICAgICAg ICAgICArPSBtanBlZzJqcGVnX2JzZi5vCiBPQkpTLSQoQ09ORklHX01KUEVHQV9EVU1QX0hFQURF Ul9CU0YpICAgICArPSBtanBlZ2FfZHVtcF9oZWFkZXJfYnNmLm8KIE9CSlMtJChDT05GSUdfTVBF RzRfVU5QQUNLX0JGUkFNRVNfQlNGKSAgICs9IG1wZWc0X3VucGFja19iZnJhbWVzX2JzZi5vCmRp ZmYgLS1naXQgYS9saWJhdmNvZGVjL2JpdHN0cmVhbV9maWx0ZXJzLmMgYi9saWJhdmNvZGVjL2Jp dHN0cmVhbV9maWx0ZXJzLmMKaW5kZXggYTNiZWJlZmU1Zi4uZTgyMTY4MTljYSAxMDA2NDQKLS0t IGEvbGliYXZjb2RlYy9iaXRzdHJlYW1fZmlsdGVycy5jCisrKyBiL2xpYmF2Y29kZWMvYml0c3Ry ZWFtX2ZpbHRlcnMuYwpAQCAtNDMsNiArNDMsNyBAQCBleHRlcm4gY29uc3QgRkZCaXRTdHJlYW1G aWx0ZXIgZmZfaGFwcWFfZXh0cmFjdF9ic2Y7CiBleHRlcm4gY29uc3QgRkZCaXRTdHJlYW1GaWx0 ZXIgZmZfaGV2Y19tZXRhZGF0YV9ic2Y7CiBleHRlcm4gY29uc3QgRkZCaXRTdHJlYW1GaWx0ZXIg ZmZfaGV2Y19tcDR0b2FubmV4Yl9ic2Y7CiBleHRlcm4gY29uc3QgRkZCaXRTdHJlYW1GaWx0ZXIg ZmZfaW14X2R1bXBfaGVhZGVyX2JzZjsKK2V4dGVybiBjb25zdCBGRkJpdFN0cmVhbUZpbHRlciBm Zl9tZWRpYTEwMF90b19tanBlZ2JfYnNmOwogZXh0ZXJuIGNvbnN0IEZGQml0U3RyZWFtRmlsdGVy IGZmX21qcGVnMmpwZWdfYnNmOwogZXh0ZXJuIGNvbnN0IEZGQml0U3RyZWFtRmlsdGVyIGZmX21q cGVnYV9kdW1wX2hlYWRlcl9ic2Y7CiBleHRlcm4gY29uc3QgRkZCaXRTdHJlYW1GaWx0ZXIgZmZf bXAzX2hlYWRlcl9kZWNvbXByZXNzX2JzZjsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbWVkaWEx MDAuYyBiL2xpYmF2Y29kZWMvbWVkaWExMDAuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggZmRmY2UyY2FjMS4uMDAwMDAwMDAwMAotLS0gYS9saWJhdmNvZGVjL21lZGlhMTAwLmMKKysr IC9kZXYvbnVsbApAQCAtMSwyMjQgKzAsMCBAQAotLyoKLSAqIE1lZGlhIDEwMCBkZWNvZGVyCi0g KiBDb3B5cmlnaHQgKGMpIDIwMjIgUGF1bCBCIE1haG9sCi0gKgotICogVGhpcyBmaWxlIGlzIHBh cnQgb2YgRkZtcGVnLgotICoKLSAqIEZGbXBlZyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJl ZGlzdHJpYnV0ZSBpdCBhbmQvb3IKLSAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhl IEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKLSAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRo ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgotICogdmVyc2lvbiAyLjEgb2YgdGhl IExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi0gKgotICog RkZtcGVnIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWws Ci0gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3 YXJyYW50eSBvZgotICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB UiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKLSAqIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl IGZvciBtb3JlIGRldGFpbHMuCi0gKgotICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29w eSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwotICogTGljZW5zZSBhbG9uZyB3aXRo IEZGbXBlZzsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQotICogRm91bmRhdGlv biwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjEx MC0xMzAxIFVTQQotICovCi0KLS8qKgotICogQGZpbGUKLSAqIE1lZGlhIDEwMCBkZWNvZGVyLgot ICovCi0KLSNpbmNsdWRlIDxpbnR0eXBlcy5oPgotCi0jaW5jbHVkZSAibGliYXZ1dGlsL2ludHJl YWR3cml0ZS5oIgotI2luY2x1ZGUgImF2Y29kZWMuaCIKLSNpbmNsdWRlICJieXRlc3RyZWFtLmgi Ci0jaW5jbHVkZSAiY29kZWNfaW50ZXJuYWwuaCIKLQotdHlwZWRlZiBzdHJ1Y3QgTWVkaWExMDBD b250ZXh0IHsKLSAgICBBVkNvZGVjQ29udGV4dCAqYXZjdHg7ICAgLy8gd3JhcHBlciBjb250ZXh0 IGZvciBtanBlZ2IKLSAgICBBVlBhY2tldCAqcGt0OwotfSBNZWRpYTEwMENvbnRleHQ7Ci0KLXN0 YXRpYyBhdl9jb2xkIGludCBtZWRpYTEwMF9kZWNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZj dHgpCi17Ci0gICAgTWVkaWExMDBDb250ZXh0ICpjdHggPSBhdmN0eC0+cHJpdl9kYXRhOwotICAg IGNvbnN0IEFWQ29kZWMgKmNvZGVjOwotICAgIGludCByZXQ7Ci0KLSAgICBjb2RlYyA9IGF2Y29k ZWNfZmluZF9kZWNvZGVyKEFWX0NPREVDX0lEX01KUEVHQik7Ci0gICAgaWYgKCFjb2RlYykKLSAg ICAgICAgcmV0dXJuIEFWRVJST1JfQlVHOwotICAgIGN0eC0+YXZjdHggPSBhdmNvZGVjX2FsbG9j X2NvbnRleHQzKGNvZGVjKTsKLSAgICBpZiAoIWN0eC0+YXZjdHgpCi0gICAgICAgIHJldHVybiBB VkVSUk9SKEVOT01FTSk7Ci0gICAgY3R4LT5hdmN0eC0+dGhyZWFkX2NvdW50ID0gMTsKLSAgICBj dHgtPmF2Y3R4LT5mbGFncyAgPSBhdmN0eC0+ZmxhZ3M7Ci0gICAgY3R4LT5hdmN0eC0+ZmxhZ3My ID0gYXZjdHgtPmZsYWdzMjsKLSAgICBjdHgtPmF2Y3R4LT53aWR0aCAgPSBjdHgtPmF2Y3R4LT5j b2RlZF93aWR0aCAgPSBhdmN0eC0+d2lkdGg7Ci0gICAgY3R4LT5hdmN0eC0+aGVpZ2h0ID0gY3R4 LT5hdmN0eC0+Y29kZWRfaGVpZ2h0ID0gYXZjdHgtPmhlaWdodDsKLQotICAgIHJldCA9IGF2Y29k ZWNfb3BlbjIoY3R4LT5hdmN0eCwgY29kZWMsIE5VTEwpOwotICAgIGlmIChyZXQgPCAwKQotICAg ICAgICByZXR1cm4gcmV0OwotCi0gICAgY3R4LT5wa3QgPSBhdl9wYWNrZXRfYWxsb2MoKTsKLSAg ICBpZiAoIWN0eC0+cGt0KQotICAgICAgICByZXR1cm4gQVZFUlJPUihFTk9NRU0pOwotCi0gICAg cmV0dXJuIDA7Ci19Ci0KLXN0YXRpYyBpbnQgbWVkaWExMDBfZGVjb2RlX2ZyYW1lKEFWQ29kZWND b250ZXh0ICphdmN0eCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFWRnJhbWUg KmZyYW1lLCBpbnQgKmdvdF9mcmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IEFWUGFja2V0ICphdnBrdCkKLXsKLSAgICBNZWRpYTEwMENvbnRleHQgKmN0eCA9IGF2Y3R4LT5w cml2X2RhdGE7Ci0gICAgdW5zaWduZWQgc2Vjb25kX2ZpZWxkX29mZnNldCA9IDA7Ci0gICAgdW5z aWduZWQgbmV4dF9maWVsZCA9IDA7Ci0gICAgdW5zaWduZWQgZGh0X29mZnNldFsyXTsKLSAgICB1 bnNpZ25lZCBkcXRfb2Zmc2V0WzJdOwotICAgIHVuc2lnbmVkIHNvZF9vZmZzZXRbMl07Ci0gICAg dW5zaWduZWQgc29mX29mZnNldFsyXTsKLSAgICB1bnNpZ25lZCBzb3Nfb2Zmc2V0WzJdOwotICAg IHVuc2lnbmVkIGZpZWxkID0gMDsKLSAgICBHZXRCeXRlQ29udGV4dCBnYjsKLSAgICBQdXRCeXRl Q29udGV4dCBwYjsKLSAgICBBVlBhY2tldCAqcGt0OwotICAgIGludCByZXQ7Ci0KLSAgICBpZiAo YXZwa3QtPnNpemUgKyAxMDI0ID4gY3R4LT5wa3QtPnNpemUpIHsKLSAgICAgICAgcmV0ID0gYXZf Z3Jvd19wYWNrZXQoY3R4LT5wa3QsIGF2cGt0LT5zaXplICsgMTAyNCAtIGN0eC0+cGt0LT5zaXpl KTsKLSAgICAgICAgaWYgKHJldCA8IDApCi0gICAgICAgICAgICByZXR1cm4gcmV0OwotICAgIH0K LQotICAgIHJldCA9IGF2X3BhY2tldF9tYWtlX3dyaXRhYmxlKGN0eC0+cGt0KTsKLSAgICBpZiAo cmV0IDwgMCkKLSAgICAgICAgcmV0dXJuIHJldDsKLQotICAgIGJ5dGVzdHJlYW0yX2luaXQoJmdi LCBhdnBrdC0+ZGF0YSwgYXZwa3QtPnNpemUpOwotICAgIGJ5dGVzdHJlYW0yX2luaXRfd3JpdGVy KCZwYiwgY3R4LT5wa3QtPmRhdGEsIGN0eC0+cGt0LT5zaXplKTsKLQotc2Vjb25kX2ZpZWxkOgot ICAgIGJ5dGVzdHJlYW0yX3B1dF9iZTMyKCZwYiwgMCk7Ci0gICAgYnl0ZXN0cmVhbTJfcHV0X2Jl MzIoJnBiLCBBVl9SQjMyKCJtanBnIikpOwotICAgIGJ5dGVzdHJlYW0yX3B1dF9iZTMyKCZwYiwg MCk7Ci0gICAgYnl0ZXN0cmVhbTJfcHV0X2JlMzIoJnBiLCAwKTsKLSAgICBmb3IgKGludCBpID0g MDsgaSA8IDY7IGkrKykKLSAgICAgICAgYnl0ZXN0cmVhbTJfcHV0X2JlMzIoJnBiLCAwKTsKLQot ICAgIHNvZl9vZmZzZXRbZmllbGRdID0gYnl0ZXN0cmVhbTJfdGVsbF9wKCZwYik7Ci0gICAgYnl0 ZXN0cmVhbTJfcHV0X2JlMTYoJnBiLCAxNyk7Ci0gICAgYnl0ZXN0cmVhbTJfcHV0X2J5dGUoJnBi LCA4KTsKLSAgICBieXRlc3RyZWFtMl9wdXRfYmUxNigmcGIsIGF2Y3R4LT5oZWlnaHQgLyAyKTsK LSAgICBieXRlc3RyZWFtMl9wdXRfYmUxNigmcGIsIGF2Y3R4LT53aWR0aCk7Ci0gICAgYnl0ZXN0 cmVhbTJfcHV0X2J5dGUoJnBiLCAzKTsKLSAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIsIDEp OwotICAgIGJ5dGVzdHJlYW0yX3B1dF9ieXRlKCZwYiwgMHgyMSk7Ci0gICAgYnl0ZXN0cmVhbTJf cHV0X2J5dGUoJnBiLCAwKTsKLSAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIsIDIpOwotICAg IGJ5dGVzdHJlYW0yX3B1dF9ieXRlKCZwYiwgMHgxMSk7Ci0gICAgYnl0ZXN0cmVhbTJfcHV0X2J5 dGUoJnBiLCAxKTsKLSAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIsIDMpOwotICAgIGJ5dGVz dHJlYW0yX3B1dF9ieXRlKCZwYiwgMHgxMSk7Ci0gICAgYnl0ZXN0cmVhbTJfcHV0X2J5dGUoJnBi LCAxKTsKLQotICAgIHNvc19vZmZzZXRbZmllbGRdID0gYnl0ZXN0cmVhbTJfdGVsbF9wKCZwYik7 Ci0gICAgYnl0ZXN0cmVhbTJfcHV0X2JlMTYoJnBiLCAxMik7Ci0gICAgYnl0ZXN0cmVhbTJfcHV0 X2J5dGUoJnBiLCAzKTsKLSAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIsIDEpOwotICAgIGJ5 dGVzdHJlYW0yX3B1dF9ieXRlKCZwYiwgMCk7Ci0gICAgYnl0ZXN0cmVhbTJfcHV0X2J5dGUoJnBi LCAyKTsKLSAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIsIDB4MTEpOwotICAgIGJ5dGVzdHJl YW0yX3B1dF9ieXRlKCZwYiwgMyk7Ci0gICAgYnl0ZXN0cmVhbTJfcHV0X2J5dGUoJnBiLCAweDEx KTsKLSAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIsIDApOwotICAgIGJ5dGVzdHJlYW0yX3B1 dF9ieXRlKCZwYiwgMCk7Ci0gICAgYnl0ZXN0cmVhbTJfcHV0X2J5dGUoJnBiLCAwKTsKLQotICAg IGRxdF9vZmZzZXRbZmllbGRdID0gYnl0ZXN0cmVhbTJfdGVsbF9wKCZwYik7Ci0gICAgYnl0ZXN0 cmVhbTJfcHV0X2JlMTYoJnBiLCAxMzIpOwotICAgIGJ5dGVzdHJlYW0yX3B1dF9ieXRlKCZwYiwg MCk7Ci0gICAgYnl0ZXN0cmVhbTJfc2tpcCgmZ2IsIDQpOwotICAgIGZvciAoaW50IGkgPSAwOyBp IDwgNjQ7IGkrKykKLSAgICAgICAgYnl0ZXN0cmVhbTJfcHV0X2J5dGUoJnBiLCBieXRlc3RyZWFt Ml9nZXRfYmUzMigmZ2IpKTsKLSAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIsIDEpOwotICAg IGZvciAoaW50IGkgPSAwOyBpIDwgNjQ7IGkrKykKLSAgICAgICAgYnl0ZXN0cmVhbTJfcHV0X2J5 dGUoJnBiLCBieXRlc3RyZWFtMl9nZXRfYmUzMigmZ2IpKTsKLQotICAgIGRodF9vZmZzZXRbZmll bGRdID0gMDsKLSAgICBzb2Rfb2Zmc2V0W2ZpZWxkXSA9IGJ5dGVzdHJlYW0yX3RlbGxfcCgmcGIp OwotCi0gICAgZm9yIChpbnQgaSA9IGJ5dGVzdHJlYW0yX3RlbGwoJmdiKSArIDg7IG5leHRfZmll bGQgPT0gMCAmJiBpIDwgYXZwa3QtPnNpemUgLSA0OyBpKyspIHsKLSAgICAgICAgaWYgKEFWX1JC MzIoYXZwa3QtPmRhdGEgKyBpKSA9PSAweDAwMDAwMDAxKSB7Ci0gICAgICAgICAgICBuZXh0X2Zp ZWxkID0gaTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgYnl0 ZXN0cmVhbTJfc2tpcCgmZ2IsIDgpOwotICAgIGJ5dGVzdHJlYW0yX2NvcHlfYnVmZmVyKCZwYiwg JmdiLCBuZXh0X2ZpZWxkIC0gYnl0ZXN0cmVhbTJfdGVsbCgmZ2IpKTsKLSAgICBieXRlc3RyZWFt Ml9wdXRfYmU2NCgmcGIsIDApOwotCi0gICAgaWYgKGZpZWxkID09IDApIHsKLSAgICAgICAgZmll bGQgPSAxOwotICAgICAgICBzZWNvbmRfZmllbGRfb2Zmc2V0ID0gYnl0ZXN0cmVhbTJfdGVsbF9w KCZwYik7Ci0gICAgICAgIG5leHRfZmllbGQgPSBhdnBrdC0+c2l6ZTsKLSAgICAgICAgZ290byBz ZWNvbmRfZmllbGQ7Ci0gICAgfQotCi0gICAgcGt0ID0gY3R4LT5wa3Q7Ci0KLSAgICBBVl9XQjMy KHBrdC0+ZGF0YSArICA4LCBzZWNvbmRfZmllbGRfb2Zmc2V0KTsKLSAgICBBVl9XQjMyKHBrdC0+ ZGF0YSArIDEyLCBzZWNvbmRfZmllbGRfb2Zmc2V0KTsKLSAgICBBVl9XQjMyKHBrdC0+ZGF0YSAr IDE2LCBzZWNvbmRfZmllbGRfb2Zmc2V0KTsKLSAgICBBVl9XQjMyKHBrdC0+ZGF0YSArIDIwLCBk cXRfb2Zmc2V0WzBdKTsKLSAgICBBVl9XQjMyKHBrdC0+ZGF0YSArIDI0LCBkaHRfb2Zmc2V0WzBd KTsKLSAgICBBVl9XQjMyKHBrdC0+ZGF0YSArIDI4LCBzb2Zfb2Zmc2V0WzBdKTsKLSAgICBBVl9X QjMyKHBrdC0+ZGF0YSArIDMyLCBzb3Nfb2Zmc2V0WzBdKTsKLSAgICBBVl9XQjMyKHBrdC0+ZGF0 YSArIDM2LCBzb2Rfb2Zmc2V0WzBdKTsKLQotICAgIEFWX1dCMzIocGt0LT5kYXRhICsgc2Vjb25k X2ZpZWxkX29mZnNldCArICA4LCBieXRlc3RyZWFtMl90ZWxsX3AoJnBiKSAtIHNlY29uZF9maWVs ZF9vZmZzZXQpOwotICAgIEFWX1dCMzIocGt0LT5kYXRhICsgc2Vjb25kX2ZpZWxkX29mZnNldCAr IDEyLCBieXRlc3RyZWFtMl90ZWxsX3AoJnBiKSAtIHNlY29uZF9maWVsZF9vZmZzZXQpOwotICAg IEFWX1dCMzIocGt0LT5kYXRhICsgc2Vjb25kX2ZpZWxkX29mZnNldCArIDE2LCAwKTsKLSAgICBB Vl9XQjMyKHBrdC0+ZGF0YSArIHNlY29uZF9maWVsZF9vZmZzZXQgKyAyMCwgZHF0X29mZnNldFsx XSAtIHNlY29uZF9maWVsZF9vZmZzZXQpOwotICAgIEFWX1dCMzIocGt0LT5kYXRhICsgc2Vjb25k X2ZpZWxkX29mZnNldCArIDI0LCBkaHRfb2Zmc2V0WzFdKTsKLSAgICBBVl9XQjMyKHBrdC0+ZGF0 YSArIHNlY29uZF9maWVsZF9vZmZzZXQgKyAyOCwgc29mX29mZnNldFsxXSAtIHNlY29uZF9maWVs ZF9vZmZzZXQpOwotICAgIEFWX1dCMzIocGt0LT5kYXRhICsgc2Vjb25kX2ZpZWxkX29mZnNldCAr IDMyLCBzb3Nfb2Zmc2V0WzFdIC0gc2Vjb25kX2ZpZWxkX29mZnNldCk7Ci0gICAgQVZfV0IzMihw a3QtPmRhdGEgKyBzZWNvbmRfZmllbGRfb2Zmc2V0ICsgMzYsIHNvZF9vZmZzZXRbMV0gLSBzZWNv bmRfZmllbGRfb2Zmc2V0KTsKLQotICAgIHBrdC0+c2l6ZSA9IGJ5dGVzdHJlYW0yX3RlbGxfcCgm cGIpOwotCi0gICAgcmV0ID0gYXZjb2RlY19zZW5kX3BhY2tldChjdHgtPmF2Y3R4LCBwa3QpOwot ICAgIGlmIChyZXQgPCAwKSB7Ci0gICAgICAgIGF2X2xvZyhhdmN0eCwgQVZfTE9HX0VSUk9SLCAi RXJyb3Igc3VibWl0dGluZyBhIHBhY2tldCBmb3IgZGVjb2RpbmdcbiIpOwotICAgICAgICByZXR1 cm4gcmV0OwotICAgIH0KLQotICAgIHJldCA9IGF2Y29kZWNfcmVjZWl2ZV9mcmFtZShjdHgtPmF2 Y3R4LCBmcmFtZSk7Ci0gICAgaWYgKHJldCA8IDApCi0gICAgICAgIHJldHVybiByZXQ7Ci0KLSAg ICAqZ290X2ZyYW1lID0gMTsKLQotICAgIHJldHVybiBhdnBrdC0+c2l6ZTsKLX0KLQotc3RhdGlj IGF2X2NvbGQgaW50IG1lZGlhMTAwX2RlY29kZV9lbmQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQot ewotICAgIE1lZGlhMTAwQ29udGV4dCAqY3R4ID0gYXZjdHgtPnByaXZfZGF0YTsKLQotICAgIGF2 Y29kZWNfZnJlZV9jb250ZXh0KCZjdHgtPmF2Y3R4KTsKLSAgICBhdl9wYWNrZXRfZnJlZSgmY3R4 LT5wa3QpOwotCi0gICAgcmV0dXJuIDA7Ci19Ci0KLWNvbnN0IEZGQ29kZWMgZmZfbWVkaWExMDBf ZGVjb2RlciA9IHsKLSAgICAucC5uYW1lICAgICAgICAgICA9ICJtZWRpYTEwMCIsCi0gICAgQ09E RUNfTE9OR19OQU1FKCJNZWRpYSAxMDAiKSwKLSAgICAucC50eXBlICAgICAgICAgICA9IEFWTUVE SUFfVFlQRV9WSURFTywKLSAgICAucC5pZCAgICAgICAgICAgICA9IEFWX0NPREVDX0lEX01FRElB MTAwLAotICAgIC5wcml2X2RhdGFfc2l6ZSAgID0gc2l6ZW9mKE1lZGlhMTAwQ29udGV4dCksCi0g ICAgLmluaXQgICAgICAgICAgICAgPSBtZWRpYTEwMF9kZWNvZGVfaW5pdCwKLSAgICAuY2xvc2Ug ICAgICAgICAgICA9IG1lZGlhMTAwX2RlY29kZV9lbmQsCi0gICAgRkZfQ09ERUNfREVDT0RFX0NC KG1lZGlhMTAwX2RlY29kZV9mcmFtZSksCi0gICAgLmNhcHNfaW50ZXJuYWwgICAgPSBGRl9DT0RF Q19DQVBfSU5JVF9DTEVBTlVQLAotfTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbWVkaWExMDBf dG9fbWpwZWdiX2JzZi5jIGIvbGliYXZjb2RlYy9tZWRpYTEwMF90b19tanBlZ2JfYnNmLmMKbmV3 IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uYzI2MmY0NDU1ZgotLS0gL2Rldi9u dWxsCisrKyBiL2xpYmF2Y29kZWMvbWVkaWExMDBfdG9fbWpwZWdiX2JzZi5jCkBAIC0wLDAgKzEs MTcwIEBACisvKgorICogTWVkaWEgMTAwIHRvIE1KUEVHQiBiaXRzdHJlYW0gZmlsdGVyCisgKiBD b3B5cmlnaHQgKGMpIDIwMjMgUGF1bCBCIE1haG9sCisgKgorICogVGhpcyBmaWxlIGlzIHBhcnQg b2YgRkZtcGVnLgorICoKKyAqIEZGbXBlZyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlz dHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdO VSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyLjEgb2YgdGhlIExp Y2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogRkZt cGVnIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisg KiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy YW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ VVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZv ciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBv ZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhbG9uZyB3aXRoIEZG bXBlZzsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQorICogRm91bmRhdGlvbiwg SW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjExMC0x MzAxIFVTQQorICovCisKKy8qKgorICogQGZpbGUKKyAqIE1lZGlhIDEwMCB0byBNSlBFR0IgYml0 c3RyZWFtIGZpbHRlci4KKyAqLworCisjaW5jbHVkZSA8aW50dHlwZXMuaD4KKworI2luY2x1ZGUg ImJzZi5oIgorI2luY2x1ZGUgImJzZl9pbnRlcm5hbC5oIgorI2luY2x1ZGUgImxpYmF2dXRpbC9p bnRyZWFkd3JpdGUuaCIKKyNpbmNsdWRlICJieXRlc3RyZWFtLmgiCisKK3N0YXRpYyBhdl9jb2xk IGludCBpbml0KEFWQlNGQ29udGV4dCAqY3R4KQoreworICAgIGN0eC0+cGFyX291dC0+Y29kZWNf aWQgPSBBVl9DT0RFQ19JRF9NSlBFR0I7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQg ZmlsdGVyKEFWQlNGQ29udGV4dCAqY3R4LCBBVlBhY2tldCAqb3V0KQoreworICAgIHVuc2lnbmVk IHNlY29uZF9maWVsZF9vZmZzZXQgPSAwOworICAgIHVuc2lnbmVkIG5leHRfZmllbGQgPSAwOwor ICAgIHVuc2lnbmVkIGRodF9vZmZzZXRbMl07CisgICAgdW5zaWduZWQgZHF0X29mZnNldFsyXTsK KyAgICB1bnNpZ25lZCBzb2Rfb2Zmc2V0WzJdOworICAgIHVuc2lnbmVkIHNvZl9vZmZzZXRbMl07 CisgICAgdW5zaWduZWQgc29zX29mZnNldFsyXTsKKyAgICB1bnNpZ25lZCBmaWVsZCA9IDA7Cisg ICAgR2V0Qnl0ZUNvbnRleHQgZ2I7CisgICAgUHV0Qnl0ZUNvbnRleHQgcGI7CisgICAgQVZQYWNr ZXQgKmluOworICAgIGludCByZXQ7CisKKyAgICByZXQgPSBmZl9ic2ZfZ2V0X3BhY2tldChjdHgs ICZpbik7CisgICAgaWYgKHJldCA8IDApCisgICAgICAgIHJldHVybiByZXQ7CisKKyAgICByZXQg PSBhdl9uZXdfcGFja2V0KG91dCwgaW4tPnNpemUgKyAxMDI0KTsKKyAgICBpZiAocmV0IDwgMCkK KyAgICAgICAgcmV0dXJuIHJldDsKKworICAgIGJ5dGVzdHJlYW0yX2luaXQoJmdiLCBpbi0+ZGF0 YSwgaW4tPnNpemUpOworICAgIGJ5dGVzdHJlYW0yX2luaXRfd3JpdGVyKCZwYiwgb3V0LT5kYXRh LCBvdXQtPnNpemUpOworCitzZWNvbmRfZmllbGQ6CisgICAgYnl0ZXN0cmVhbTJfcHV0X2JlMzIo JnBiLCAwKTsKKyAgICBieXRlc3RyZWFtMl9wdXRfYmUzMigmcGIsIEFWX1JCMzIoIm1qcGciKSk7 CisgICAgYnl0ZXN0cmVhbTJfcHV0X2JlMzIoJnBiLCAwKTsKKyAgICBieXRlc3RyZWFtMl9wdXRf YmUzMigmcGIsIDApOworICAgIGZvciAoaW50IGkgPSAwOyBpIDwgNjsgaSsrKQorICAgICAgICBi eXRlc3RyZWFtMl9wdXRfYmUzMigmcGIsIDApOworCisgICAgc29mX29mZnNldFtmaWVsZF0gPSBi eXRlc3RyZWFtMl90ZWxsX3AoJnBiKTsKKyAgICBieXRlc3RyZWFtMl9wdXRfYmUxNigmcGIsIDE3 KTsKKyAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIsIDgpOworICAgIGJ5dGVzdHJlYW0yX3B1 dF9iZTE2KCZwYiwgY3R4LT5wYXJfaW4tPmhlaWdodCAvIDIpOworICAgIGJ5dGVzdHJlYW0yX3B1 dF9iZTE2KCZwYiwgY3R4LT5wYXJfaW4tPndpZHRoKTsKKyAgICBieXRlc3RyZWFtMl9wdXRfYnl0 ZSgmcGIsIDMpOworICAgIGJ5dGVzdHJlYW0yX3B1dF9ieXRlKCZwYiwgMSk7CisgICAgYnl0ZXN0 cmVhbTJfcHV0X2J5dGUoJnBiLCAweDIxKTsKKyAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIs IDApOworICAgIGJ5dGVzdHJlYW0yX3B1dF9ieXRlKCZwYiwgMik7CisgICAgYnl0ZXN0cmVhbTJf cHV0X2J5dGUoJnBiLCAweDExKTsKKyAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIsIDEpOwor ICAgIGJ5dGVzdHJlYW0yX3B1dF9ieXRlKCZwYiwgMyk7CisgICAgYnl0ZXN0cmVhbTJfcHV0X2J5 dGUoJnBiLCAweDExKTsKKyAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIsIDEpOworCisgICAg c29zX29mZnNldFtmaWVsZF0gPSBieXRlc3RyZWFtMl90ZWxsX3AoJnBiKTsKKyAgICBieXRlc3Ry ZWFtMl9wdXRfYmUxNigmcGIsIDEyKTsKKyAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIsIDMp OworICAgIGJ5dGVzdHJlYW0yX3B1dF9ieXRlKCZwYiwgMSk7CisgICAgYnl0ZXN0cmVhbTJfcHV0 X2J5dGUoJnBiLCAwKTsKKyAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIsIDIpOworICAgIGJ5 dGVzdHJlYW0yX3B1dF9ieXRlKCZwYiwgMHgxMSk7CisgICAgYnl0ZXN0cmVhbTJfcHV0X2J5dGUo JnBiLCAzKTsKKyAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIsIDB4MTEpOworICAgIGJ5dGVz dHJlYW0yX3B1dF9ieXRlKCZwYiwgMCk7CisgICAgYnl0ZXN0cmVhbTJfcHV0X2J5dGUoJnBiLCAw KTsKKyAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIsIDApOworCisgICAgZHF0X29mZnNldFtm aWVsZF0gPSBieXRlc3RyZWFtMl90ZWxsX3AoJnBiKTsKKyAgICBieXRlc3RyZWFtMl9wdXRfYmUx NigmcGIsIDEzMik7CisgICAgYnl0ZXN0cmVhbTJfcHV0X2J5dGUoJnBiLCAwKTsKKyAgICBieXRl c3RyZWFtMl9za2lwKCZnYiwgNCk7CisgICAgZm9yIChpbnQgaSA9IDA7IGkgPCA2NDsgaSsrKQor ICAgICAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIsIGJ5dGVzdHJlYW0yX2dldF9iZTMyKCZn YikpOworICAgIGJ5dGVzdHJlYW0yX3B1dF9ieXRlKCZwYiwgMSk7CisgICAgZm9yIChpbnQgaSA9 IDA7IGkgPCA2NDsgaSsrKQorICAgICAgICBieXRlc3RyZWFtMl9wdXRfYnl0ZSgmcGIsIGJ5dGVz dHJlYW0yX2dldF9iZTMyKCZnYikpOworCisgICAgZGh0X29mZnNldFtmaWVsZF0gPSAwOworICAg IHNvZF9vZmZzZXRbZmllbGRdID0gYnl0ZXN0cmVhbTJfdGVsbF9wKCZwYik7CisKKyAgICBmb3Ig KGludCBpID0gYnl0ZXN0cmVhbTJfdGVsbCgmZ2IpICsgODsgbmV4dF9maWVsZCA9PSAwICYmIGkg PCBpbi0+c2l6ZSAtIDQ7IGkrKykgeworICAgICAgICBpZiAoQVZfUkIzMihpbi0+ZGF0YSArIGkp ID09IDB4MDAwMDAwMDEpIHsKKyAgICAgICAgICAgIG5leHRfZmllbGQgPSBpOworICAgICAgICAg ICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBieXRlc3RyZWFtMl9za2lwKCZnYiwg OCk7CisgICAgYnl0ZXN0cmVhbTJfY29weV9idWZmZXIoJnBiLCAmZ2IsIG5leHRfZmllbGQgLSBi eXRlc3RyZWFtMl90ZWxsKCZnYikpOworICAgIGJ5dGVzdHJlYW0yX3B1dF9iZTY0KCZwYiwgMCk7 CisKKyAgICBpZiAoZmllbGQgPT0gMCkgeworICAgICAgICBmaWVsZCA9IDE7CisgICAgICAgIHNl Y29uZF9maWVsZF9vZmZzZXQgPSBieXRlc3RyZWFtMl90ZWxsX3AoJnBiKTsKKyAgICAgICAgbmV4 dF9maWVsZCA9IGluLT5zaXplOworICAgICAgICBnb3RvIHNlY29uZF9maWVsZDsKKyAgICB9CisK KyAgICBBVl9XQjMyKG91dC0+ZGF0YSArICA4LCBzZWNvbmRfZmllbGRfb2Zmc2V0KTsKKyAgICBB Vl9XQjMyKG91dC0+ZGF0YSArIDEyLCBzZWNvbmRfZmllbGRfb2Zmc2V0KTsKKyAgICBBVl9XQjMy KG91dC0+ZGF0YSArIDE2LCBzZWNvbmRfZmllbGRfb2Zmc2V0KTsKKyAgICBBVl9XQjMyKG91dC0+ ZGF0YSArIDIwLCBkcXRfb2Zmc2V0WzBdKTsKKyAgICBBVl9XQjMyKG91dC0+ZGF0YSArIDI0LCBk aHRfb2Zmc2V0WzBdKTsKKyAgICBBVl9XQjMyKG91dC0+ZGF0YSArIDI4LCBzb2Zfb2Zmc2V0WzBd KTsKKyAgICBBVl9XQjMyKG91dC0+ZGF0YSArIDMyLCBzb3Nfb2Zmc2V0WzBdKTsKKyAgICBBVl9X QjMyKG91dC0+ZGF0YSArIDM2LCBzb2Rfb2Zmc2V0WzBdKTsKKworICAgIEFWX1dCMzIob3V0LT5k YXRhICsgc2Vjb25kX2ZpZWxkX29mZnNldCArICA4LCBieXRlc3RyZWFtMl90ZWxsX3AoJnBiKSAt IHNlY29uZF9maWVsZF9vZmZzZXQpOworICAgIEFWX1dCMzIob3V0LT5kYXRhICsgc2Vjb25kX2Zp ZWxkX29mZnNldCArIDEyLCBieXRlc3RyZWFtMl90ZWxsX3AoJnBiKSAtIHNlY29uZF9maWVsZF9v ZmZzZXQpOworICAgIEFWX1dCMzIob3V0LT5kYXRhICsgc2Vjb25kX2ZpZWxkX29mZnNldCArIDE2 LCAwKTsKKyAgICBBVl9XQjMyKG91dC0+ZGF0YSArIHNlY29uZF9maWVsZF9vZmZzZXQgKyAyMCwg ZHF0X29mZnNldFsxXSAtIHNlY29uZF9maWVsZF9vZmZzZXQpOworICAgIEFWX1dCMzIob3V0LT5k YXRhICsgc2Vjb25kX2ZpZWxkX29mZnNldCArIDI0LCBkaHRfb2Zmc2V0WzFdKTsKKyAgICBBVl9X QjMyKG91dC0+ZGF0YSArIHNlY29uZF9maWVsZF9vZmZzZXQgKyAyOCwgc29mX29mZnNldFsxXSAt IHNlY29uZF9maWVsZF9vZmZzZXQpOworICAgIEFWX1dCMzIob3V0LT5kYXRhICsgc2Vjb25kX2Zp ZWxkX29mZnNldCArIDMyLCBzb3Nfb2Zmc2V0WzFdIC0gc2Vjb25kX2ZpZWxkX29mZnNldCk7Cisg ICAgQVZfV0IzMihvdXQtPmRhdGEgKyBzZWNvbmRfZmllbGRfb2Zmc2V0ICsgMzYsIHNvZF9vZmZz ZXRbMV0gLSBzZWNvbmRfZmllbGRfb2Zmc2V0KTsKKworICAgIG91dC0+c2l6ZSA9IGJ5dGVzdHJl YW0yX3RlbGxfcCgmcGIpOworCisgICAgcmV0ID0gYXZfcGFja2V0X2NvcHlfcHJvcHMob3V0LCBp bik7CisgICAgaWYgKHJldCA8IDApCisgICAgICAgIGdvdG8gZmFpbDsKKworZmFpbDoKKyAgICBp ZiAocmV0IDwgMCkKKyAgICAgICAgYXZfcGFja2V0X3VucmVmKG91dCk7CisgICAgYXZfcGFja2V0 X2ZyZWUoJmluKTsKKyAgICByZXR1cm4gcmV0OworfQorCitjb25zdCBGRkJpdFN0cmVhbUZpbHRl ciBmZl9tZWRpYTEwMF90b19tanBlZ2JfYnNmID0geworICAgIC5wLm5hbWUgICAgICAgICA9ICJt ZWRpYTEwMF90b19tanBlZ2IiLAorICAgIC5wLmNvZGVjX2lkcyAgICA9IChjb25zdCBlbnVtIEFW Q29kZWNJRCBbXSl7IEFWX0NPREVDX0lEX01FRElBMTAwLCBBVl9DT0RFQ19JRF9OT05FIH0sCisg ICAgLmluaXQgICAgICAgICAgID0gaW5pdCwKKyAgICAuZmlsdGVyICAgICAgICAgPSBmaWx0ZXIs Cit9OwpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tanBlZ2JkZWMuYyBiL2xpYmF2Y29kZWMvbWpw ZWdiZGVjLmMKaW5kZXggNmQ0MjJlN2EyOS4uNGRiMWQ5YTg5ZCAxMDA2NDQKLS0tIGEvbGliYXZj b2RlYy9tanBlZ2JkZWMuYworKysgYi9saWJhdmNvZGVjL21qcGVnYmRlYy5jCkBAIC0xNjgsMyAr MTY4LDE4IEBAIGNvbnN0IEZGQ29kZWMgZmZfbWpwZWdiX2RlY29kZXIgPSB7CiAgICAgLnAubWF4 X2xvd3JlcyAgID0gMywKICAgICAuY2Fwc19pbnRlcm5hbCAgPSBGRl9DT0RFQ19DQVBfSU5JVF9D TEVBTlVQLAogfTsKKworY29uc3QgRkZDb2RlYyBmZl9tZWRpYTEwMF9kZWNvZGVyID0geworICAg IC5wLm5hbWUgICAgICAgICA9ICJtZWRpYTEwMCIsCisgICAgQ09ERUNfTE9OR19OQU1FKCJNZWRp YSAxMDAiKSwKKyAgICAucC50eXBlICAgICAgICAgPSBBVk1FRElBX1RZUEVfVklERU8sCisgICAg LnAuaWQgICAgICAgICAgID0gQVZfQ09ERUNfSURfTUVESUExMDAsCisgICAgLnByaXZfZGF0YV9z aXplID0gc2l6ZW9mKE1KcGVnRGVjb2RlQ29udGV4dCksCisgICAgLmluaXQgICAgICAgICAgID0g ZmZfbWpwZWdfZGVjb2RlX2luaXQsCisgICAgLmNsb3NlICAgICAgICAgID0gZmZfbWpwZWdfZGVj b2RlX2VuZCwKKyAgICBGRl9DT0RFQ19ERUNPREVfQ0IobWpwZWdiX2RlY29kZV9mcmFtZSksCisg ICAgLnAuY2FwYWJpbGl0aWVzID0gQVZfQ09ERUNfQ0FQX0RSMSwKKyAgICAucC5tYXhfbG93cmVz ICAgPSAzLAorICAgIC5jYXBzX2ludGVybmFsICA9IEZGX0NPREVDX0NBUF9JTklUX0NMRUFOVVAs CisgICAgLmJzZnMgICAgICAgICAgID0gIm1lZGlhMTAwX3RvX21qcGVnYiIsCit9OwotLSAKMi4z OS4xCgo= --000000000000c2b7d405f3910dd8 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". --000000000000c2b7d405f3910dd8--