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 258FF436A1 for ; Thu, 21 Jul 2022 21:06:28 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 487B368B6B1; Fri, 22 Jul 2022 00:06:27 +0300 (EEST) Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12olkn2106.outbound.protection.outlook.com [40.92.22.106]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id AA12D68B6AC for ; Fri, 22 Jul 2022 00:06:15 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZIEq5t+Q+lHb+qmHNd9shA1ou6IY07NGwECk0H7maKt8sHSNQr6TTRIskY2BdhKXVO8FeODmo/DJ7WgbevL5cxUh1RvLOxf2lAXvz+xIp2d5SBIr75uqtnFiKz35OmZPviNpvP8uV24IubTk2rXkdzcTGwGJxbZFqNzmDxj+oYAPusufVpXXVcyHN9xecuWDZSTAoaJswXZnyrY01l4lAp1RcRithhpgYy4eAs/D3tEGX5OjiNjGBrR68N2IFSV5AI8J7HEeKRe8mvzgEXoXePpr+LxK1gmja6HtwWoV88Yc9200BVV2fL5yghPAG507UIqcaageKE3BQs4Q0pPlNw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=5MbQuDBvJLqskIwAzLa0cHpc3ZlMIoHfx03mWIMLmAI=; b=cU3tbSgq5slNsOjM9SBqfljrf5zFYCA0Fks2PUoUX4Gf3Vkt3WcQScD7kBOpM1Flnt0YCUo4Yly/AIYEQ48mbFr0IGlVj58fmSRRnBmqAzkjzpdoAKod49ttcFP0IBVeGOj64dzPhTWMJRVXd6lXkP0DbWEzttlAbY3yZxIXp/nn2oWF5taUVsBonpRpjwawAOt0bBFxm2YCyifd6nvyk+GUCFNFcLwmxFWEuiYR4nqmKAPXX34Uxv47T1V+QSa6/Lj0z2UEfuf1WE8qSpnsPkYhwZjS0jertQPbPFFS2mRrLL5oJMvpGHm7wjTs/BC9cOU/w9YfxQM5cXOAOXR9gg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5MbQuDBvJLqskIwAzLa0cHpc3ZlMIoHfx03mWIMLmAI=; b=dYCPeiFv5EpxqI2ox3AYINklZoPAVa/fqNHIXVZ3ojjEZsvCMyLsGsLF0GIEIhVBFnC9UNizfrFXiTgUf413M+7dYvX0D4as28cdOPieDA0rxsu5HlTeTL2/WJABxeRCzrIlqG4S+HgI2BqaftoCR//YiNDbzHfFsFnJp7KnrX2zco09Y17Ths2xHXHMZfWc+1IGLqSpipI9PgK4+cnoQKelmXx+GuOLmbGAAjrfoyhZfFT1M3Y6ohMld8cP1H6jJhHfDpTP0eJTkgnEw3THhG98h/xTCjC7yJj5jh83bPE/HXiMsf0snc/HJC2uaoUh2bmjdNbtqMzsB0lRDQoWyg== Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM (2603:10b6:8:b::20) by CH0P223MB0002.NAMP223.PROD.OUTLOOK.COM (2603:10b6:610:f9::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5438.19; Thu, 21 Jul 2022 21:06:12 +0000 Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::d9e4:ced6:ab31:c231]) by DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::d9e4:ced6:ab31:c231%2]) with mapi id 15.20.5458.019; Thu, 21 Jul 2022 21:06:12 +0000 From: Soft Works To: "Xiang, Haihao" , "ffmpeg-devel@ffmpeg.org" Thread-Topic: [FFmpeg-devel] [PATCH v5 0/6] Implement SEI parsing for QSV decoders Thread-Index: AQHYjYv91+b3D1Tr2UWOflh6ddwYuq2FXfIAgAQQdlA= Date: Thu, 21 Jul 2022 21:06:12 +0000 Message-ID: References: <57cda049766225c291fae75c31d651fdff57f7a2.camel@intel.com> In-Reply-To: <57cda049766225c291fae75c31d651fdff57f7a2.camel@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-tmn: [3jbxTJNvN922lunjva40Aq/y8XZu1u24] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 7dcf188d-1f1e-4c18-36f1-08da6b5cd794 x-ms-exchange-slblob-mailprops: sTyj/kSftouUDeQSU0VwS5e1KBpgIExW4lgRM5g4XGSD+C0tDUynlmtLp4tAdXWahuzBzwcu4Vtk9S6lgh/yMR2P5RHHUr0PpjhVHMCrKuofK5/zCgd+qMRd/1uFh0pxMhBLeAk0s1gqp+0VCNUucRhVN4OSzHfI9GC2lNGvGzoodwAo0OlL5xcWnvVe7jQEhRRlL0Nipa7IIo7Z4ym6OXVJyZXz4AHtZu78ii74/pmYYGB+memSxu1awGkBNwnUZJ/Kbn9W9+X3OOfn6gNeSr8/V4E6yNNimlY+zw9BPm9572C/wYW9+aU60zr+GvLjAONQXnNt17q8CwybMM2FcdXpsNPqsd8Ml5FLkpRB7M31MSOissuaMOWtdmNIPhouiKmJWZGEL866FrRd8fWr9bZw7IKeTZBVmZzZKtVJtI4sWudmM1AHXfR+whk7PA/+REFENuqpcXJdMeaBaAlyCJLrgDH6bzMwVVqeyLGy/0cDL7Ga6d9M0HtsxFg2Cq2i+gWbBkfxN7f3qPYwypdWupRMnoMFceHbbDo418+ioJUdp+4nL8W/Q2hrG3WZZUjzsBYwo7K5zg0Wc247UYXVPnMdBtfSMXHVRqsuJzg1cuWl3+q7IkMUhgS2OOB9lVwtr3yG5le2Du5l1Jhv7C9wEn6nkRbHRVrKexEhNO5DrnWVa0EE1cRoQH6nOram57fAIJesABceOwH+AueG6/6DoTlj3GxJpgpkapOwjaNKfFQqUIn0NxxE/DKNQFvagsrfV/xTok1QtIAXB+qxcnFuYIK3Kr5Ni0KvRKj4L88PJLPH1DgqjhzUeTr8PTTLjbG5wHYbPMLQC3Ou47LV56hp0Q== x-ms-traffictypediagnostic: CH0P223MB0002:EE_ x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: TAaqs0G7nsFcU1f5TB/BYv9SYFIssu4/YVkT44IKmk60v5e6wXiT4Jf0ZGhRn1E6ouexhdUH1IsCAbags1dtnzCBIxFVqppWna5zT3G4wmDt9T68Y8WKz89jFQjVPy4S1B/+MhFRAqQpNnCjnohrgrDs7KNZG88ZzvSIKT1YUyRlnwyjx94RtNuJ3X8vZn2bIPffcAxSAaEy9TiDGa3UTZeJqjeftyx9wlWovPQwi/sNs2CFI0AVgiIxOrbzsYOnX/Mi9HQY4+p6l52oE1H/l5+Pf2tkm5JuIwG8SHClN4YK2EakdKlKOld6vnSvAPjk+2kPyjlSlh/3AHGxHbwqwi9F+I2LcvRdguf98cgs/qdyMUv3EhOrVSC+3zH/7OkyVg0OwRfqMz8e1FV+NIvOFdEC5YqflYNuvm5CzEvOh6/BajF0iGq3nWzW563rHLYeyAKWKep0jtJTdEaapyBT8x5DFJXRDmH3Ewl3mGH3BbJTmVusOYRoce4TZStSXdS8BSmb0zCYP4p51TJvZWSYVk0x0Gc9o2GnOm1o1GsnzO0WwinmmZCPyNbpwVXLSfvkDQGSeWwGxnVlHeqYlIki9j6EAsinkng2NskJiRb8V4ADppWtNa6CY9PESMxbUJsRYC7e1iU6Dk+ATXz9ibNkbzg/BL7rRk7TRLJyaoZN4vV+2nWisEVrg2x4CpJ6/8mD8VNa859YkBRvsMa7aIsTQQ== x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Y0lFQzVNUHhRRVUzWnJmcHJ2OUdkNTh6RGpYbUV1NWtuTW1ZUFViOHNHUkxP?= =?utf-8?B?ajdmUHpzb25BcVJBbGE4K1VxekZUV01Lb0JiVTB1T283cmtnR1NwVytOdDdT?= =?utf-8?B?c0ZzVFRIaWJ0eUN1d0dDNFV0cDRwcUJPM1AvYWROQWRzbjRwUGlucGhiUEV6?= =?utf-8?B?a2czWXNUN0p0eFZieUtLMHV5aFB2bDhBM3N4eDZSNU81K2hXZ3ZqRGw4R3VK?= =?utf-8?B?QVFNdTlJcVVXU1h4Y2FaWXZjMmNXTnFLSjYrR1VPNVJwZG1MMmErZXVyc1ZF?= =?utf-8?B?cVRRRWJLeXZEWExTb05ZSnNjZzhzRWVJNGVjd3B0VnNTQkFOcGZ2eEJxVFBy?= =?utf-8?B?UHNzdkwvNk8xVDRCUUVsaGltbWg1WVVZUTllVnJRVzBxS0pkdVVJTUhjNmFM?= =?utf-8?B?RGRSSXhrQm41aExrcFcrajJSRjBvTE5vdTU5d1J2M1NyS3hUKzlRWHV4ekpW?= =?utf-8?B?ck10L0NxOEFhQzBoNmF6aVBkb2d5S1JjZGJBc0I1WExkcHFFT3ZnazYrRG5x?= =?utf-8?B?dUhZSEJUYXF0aWdSWk5JUmNOWmRvSTZ0ZTJaL3RGWXdmblVOVDgyUGtQSitG?= =?utf-8?B?MjlrZ1dPL1V6VTZKTjdrRTZIL21JdENWWEtEOXR0TThibUhlb1lwMlNOSzJB?= =?utf-8?B?NUQ1Vk0rSUhPZXZrdUlrbG1PNko1Q2p6N1VnUFU0WVdYNlh0NmhDMzhpYVYr?= =?utf-8?B?SmV6LytXemRxZFRjMGJXSytBK2htb3J5WXE3Q3hkejFwS3h6bzE4LzB0a3Jr?= =?utf-8?B?TGIxWEpyOHgvVGt6c2Fzelpia2I5ZWhvYjZqL0s4amdibkFaSEhCbFVqZzBQ?= =?utf-8?B?aC9DTEdmb1NwZXpOcU0vcUxndlFmcjdtbzNtOGRwZ082UWI2OEFUVXZFUnV1?= =?utf-8?B?Y1VFMHZadDBqRDkvd2hSd0wvajEyMWZQeVpleTd4YkRVMHZBd0szOVBKQ2FY?= =?utf-8?B?dzk1Rkppa1J4WjF3UTBKbUEyRWhEWUkvaXZheDJOVlp3WGdpN1h0VTRQUkZY?= =?utf-8?B?K3BzV2kwT0VQdStDNHprQ0txQWNXdXZRT2lLUGhaK1ByZ04vVU5QbFlQYXV1?= =?utf-8?B?RnBGYWczb09RcE9PMW84ZTRNQVU5MStpekRpUXhyWSt6VGwwK3VwZjJ3RVBm?= =?utf-8?B?OHJMeG13VFpieVBQbVF6KzQraVFBVDEvTjhGTTIrbDNkK3duSTZnVDRPSFJz?= =?utf-8?B?TmJXN1Y0U3Yvc2VzSUFqZ055R0E2Y2p4SFVRYjRNT1RtclpuYVl2S1Bnd0dG?= =?utf-8?B?czNWZHFLVHJNWmRGZjR3Q0FHOXVXeWFxUDNxYkkxVXhSM0R1ek1nK3J1OWFY?= =?utf-8?B?Y1pUNFR6SXAzMU5LQlNJaUcwc0ZCc3dDVlZoVjYyODhvQnVaenEyVmNOYkJ1?= =?utf-8?B?TkYyM2QyUFRqQmFNZEJDNmw3cjUrbFF6NDFRZ05ucUUxS0JTYUc3eW5zWDNF?= =?utf-8?B?QmYvdGZFaUx3N09scmdnYU9LY2hscTNFTWFEN2E2U1BSSWtzUDN6cnRGOTI2?= =?utf-8?B?NDcvZHp6UDVuQ3c5NlVaL0lxb3EvQUpsRWxOYi9rQmd1MDh2RUFHSC82RmZo?= =?utf-8?B?cXpiSzFoQitrNG8vQk02cUhVUkZSdlJDS1BSMzZhQ2hVMUFlU1dMbnB6WGhE?= =?utf-8?B?czRuWFBjS2gzNHJEK0IrN3N2NFJFdUVvclB4TFQyOFVTVVBDWFd3K0RhMGZI?= =?utf-8?Q?oUcACgkOHN0pcWYapqo0?= MIME-Version: 1.0 X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-1ff67.templateTenant X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 7dcf188d-1f1e-4c18-36f1-08da6b5cd794 X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Jul 2022 21:06:12.3855 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0P223MB0002 Subject: Re: [FFmpeg-devel] [PATCH v5 0/6] Implement SEI parsing for QSV decoders 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 Cc: "kierank@obe.tv" , "haihao.xiang-at-intel.com@ffmpeg.org" , "andreas.rheinhardt@outlook.com" Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: > -----Original Message----- > From: Xiang, Haihao > Sent: Tuesday, July 19, 2022 8:55 AM > To: ffmpeg-devel@ffmpeg.org > Cc: andreas.rheinhardt@outlook.com; kierank@obe.tv; haihao.xiang-at- > intel.com@ffmpeg.org; softworkz@hotmail.com > Subject: Re: [FFmpeg-devel] [PATCH v5 0/6] Implement SEI parsing for > QSV decoders > > On Fri, 2022-07-01 at 20:48 +0000, ffmpegagent wrote: > > Missing SEI information has always been a major drawback when using > the QSV > > decoders. I used to think that there's no chance to get at the data > without > > explicit implementation from the MSDK side (or doing something > weird like > > parsing in parallel). It turned out that there's a hardly known api > method > > that provides access to all SEI (h264/hevc) or user data > (mpeg2video). > > > > This allows to get things like closed captions, frame packing, > display > > orientation, HDR data (mastering display, content light level, > etc.) without > > having to rely on those data being provided by the MSDK as extended > buffers. > > > > The commit "Implement SEI parsing for QSV decoders" includes some > hard-coded > > workarounds for MSDK bugs which I reported: > > > https://github.com/Intel-Media-SDK/MediaSDK/issues/2597#issuecomment- > 1072795311 > > > > But that doesn't help. Those bugs exist and I'm sharing my > workarounds, > > which are empirically determined by testing a range of files. If > someone is > > interested, I can provide private access to a repository where we > have been > > testing this. Alternatively, I could also leave those workarounds > out, and > > just skip those SEI types. > > > > In a previous version of this patchset, there was a concern that > payload > > data might need to be re-ordered. Meanwhile I have researched this > carefully > > and the conclusion is that this is not required. > > > > My detailed analysis can be found here: > > https://gist.github.com/softworkz/36c49586a8610813a32270ee3947a932 > > > > v4 > > > > * add new dependencies in makefile Now, build still works when > someone uses > > configure --disable-decoder=h264 --disable-decoder=hevc > > --disable-decoder=mpegvideo --disable-decoder=mpeg1video > > --disable-decoder=mpeg2video --enable-libmfx > > > > v3 > > > > * frame.h: clarify doc text for av_frame_copy_side_data() > > > > v2 > > > > * qsvdec: make error handling consistent and clear > > * qsvdec: remove AV_CODEC_ID_MPEG1VIDEO constants > > * hevcdec: rename function to ff_hevc_set_side_data(), add doc > text > > > > v3 > > > > * qsvdec: fix c/p error > > > > softworkz (6): > > avutil/frame: Add av_frame_copy_side_data() and > > av_frame_remove_all_side_data() > > avcodec/vpp_qsv: Copy side data from input to output frame > > avcodec/mpeg12dec: make mpeg_decode_user_data() accessible > > avcodec/hevcdec: make set_side_data() accessible > > avcodec/h264dec: make h264_export_frame_props() accessible > > avcodec/qsvdec: Implement SEI parsing for QSV decoders > > > > doc/APIchanges | 4 + > > libavcodec/Makefile | 6 +- > > libavcodec/h264_slice.c | 98 ++++++++------- > > libavcodec/h264dec.h | 2 + > > libavcodec/hevcdec.c | 117 +++++++++--------- > > libavcodec/hevcdec.h | 9 ++ > > libavcodec/hevcdsp.c | 4 + > > libavcodec/mpeg12.h | 28 +++++ > > libavcodec/mpeg12dec.c | 40 +----- > > libavcodec/qsvdec.c | 234 > +++++++++++++++++++++++++++++++++++ > > libavfilter/qsvvpp.c | 6 + > > libavfilter/vf_overlay_qsv.c | 19 ++- > > libavutil/frame.c | 67 ++++++---- > > libavutil/frame.h | 32 +++++ > > libavutil/version.h | 2 +- > > 15 files changed, 494 insertions(+), 174 deletions(-) > > > > > > base-commit: 6a82412bf33108111eb3f63076fd5a51349ae114 > > Published-As: > > https://github.com/ffstaging/FFmpeg/releases/tag/pr-ffstaging- > 31%2Fsoftworkz%2Fsubmit_qsv_sei-v5 > > Fetch-It-Via: git fetch https://github.com/ffstaging/FFmpeg pr- > ffstaging- > > 31/softworkz/submit_qsv_sei-v5 > > Pull-Request: https://github.com/ffstaging/FFmpeg/pull/31 > > > > Range-diff vs v4: > > > > 1: 7656477360 = 1: 7656477360 avutil/frame: Add > av_frame_copy_side_data() > > and av_frame_remove_all_side_data() > > 2: 06976606c5 = 2: 06976606c5 avcodec/vpp_qsv: Copy side data > from input to > > output frame > > 3: 320a8a535c = 3: 320a8a535c avcodec/mpeg12dec: make > > mpeg_decode_user_data() accessible > > 4: e58ad6564f = 4: e58ad6564f avcodec/hevcdec: make > set_side_data() > > accessible > > 5: a57bfaebb9 = 5: 4c0b6eb4cb avcodec/h264dec: make > > h264_export_frame_props() accessible > > 6: 3f2588563e ! 6: 19bc00be4d avcodec/qsvdec: Implement SEI > parsing for QSV > > decoders > > @@ Commit message > > > > Signed-off-by: softworkz > > > > + ## libavcodec/Makefile ## > > +@@ libavcodec/Makefile: OBJS-$(CONFIG_MSS34DSP) > += > > mss34dsp.o > > + OBJS-$(CONFIG_PIXBLOCKDSP) += pixblockdsp.o > > + OBJS-$(CONFIG_QPELDSP) += qpeldsp.o > > + OBJS-$(CONFIG_QSV) += qsv.o > > +-OBJS-$(CONFIG_QSVDEC) += qsvdec.o > > ++OBJS-$(CONFIG_QSVDEC) += qsvdec.o > h264_slice.o > > h264_cabac.o h264_cavlc.o \ > > ++ h264_direct.o > h264_mb.o > > h264_picture.o h264_loopfilter.o \ > > ++ h264dec.o > h264_refs.o cabac.o > > hevcdec.o hevc_refs.o \ > > ++ > > > hevc_filter.o hevc_cabac.o hevc_mvs.o hevcpred.o hevcdsp.o \ > > ++ > > > h274.o dovi_rpu.o mpeg12dec.o > > + OBJS-$(CONFIG_QSVENC) += qsvenc.o > > + OBJS-$(CONFIG_RANGECODER) += rangecoder.o > > + OBJS-$(CONFIG_RDFT) += rdft.o > > + > > + ## libavcodec/hevcdsp.c ## > > +@@ > > + * Foundation, Inc., 51 Franklin Street, Fifth Floor, > Boston, MA 02110- > > 1301 USA > > + */ > > + > > ++#include "config_components.h" > > ++ > > + #include "hevcdsp.h" > > + > > + static const int8_t transform[32][32] = { > > +@@ libavcodec/hevcdsp.c: int i = 0; > > + break; > > + } > > + > > ++#if CONFIG_HEVC_DECODER > > + #if ARCH_AARCH64 > > + ff_hevc_dsp_init_aarch64(hevcdsp, bit_depth); > > + #elif ARCH_ARM > > +@@ libavcodec/hevcdsp.c: int i = 0; > > + #elif ARCH_LOONGARCH > > + ff_hevc_dsp_init_loongarch(hevcdsp, bit_depth); > > + #endif > > ++#endif > > + } > > + > > ## libavcodec/qsvdec.c ## > > @@ > > #include "hwconfig.h" > > > Is there any comment on this patchset ? If not, I'd like to merge it > to make QSV > decoders works with SEI info. > > Thanks > Haihao There's a conflicting (but reasonable and useful) patchset from Andreas: https://patchwork.ffmpeg.org/project/ffmpeg/list/?series=6959 Even though this is open for so long already, it think it makes more sense to merge Andreas' first and adapt mine to be applied on top of it. @Andreas - any news on that patchset of yours? Thanks, softworkz _______________________________________________ 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".