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 D349B42ED3 for ; Sun, 12 Jun 2022 04:24:23 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0A45E68B3B5; Sun, 12 Jun 2022 07:24:20 +0300 (EEST) Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11olkn2101.outbound.protection.outlook.com [40.92.18.101]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B54D768B1FE for ; Sun, 12 Jun 2022 07:24:13 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Rdd2SsTl9jsPMKaBNWsPjDL/iielISOrN4R5Q4UcmswDAfBM/eW9GcEOkatN4rXyJ7IP7CUqQm+xSXJ9NyeP+6SRVEM/0SqkX6ZTHSExdyb5ey9MZJRIloyXxjZYQt8dVgyEGA6gTwq51t0xVPMmQSck6GjC6ESNNqkZpKC5vBvhSvqV9ha0G4qj4XiQYIXWCtvbX0/bphQDhjadMpfqkuoNa/ZulmTvOM0IbHOvZr9Dtzib0Y+iIwcUblnDxWP6/CU+1EnfD0REjU2ZCPRqlkas+7z7KU1QN/gk2EtSjxa7fBXLKquOJNrslKnYmKOhBM6UieTRWTHZst2KTFfNmQ== 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=oGXh4Rr/kEQLXl5y3lRAHkVyjvt7xsOYkz45PI/59qM=; b=VVlu6GuWcfWSFgst7ZdjbQ4OpGtYS2A63ncpMsnkn3qc9cDnm6EBY3tPzIrvT7vEHxU9pIiLwi9J+byNg82UuEFxWtE3XUTHIc5P7lErQegm9V34GJSIUMob7iqESg/2263jQFp4BJvP1lKMuSAUATp9c0L3gWX6YBKadtA0KH5vi7tnHW4k2uiN9C+XNn9BElzuJXpzXmHd1blwHsf0I937dHRR6GOUipKNODBswrhIcHmZU+NQzPOyNaK7N4nX5d+cQe0FmCblT2enNM27BQfM8VGEncMnZbWhgcbZmgMd4hE0gUAcLhdvINluUHFTgJ/rdEgTb/2SATx5AmUCtQ== 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=oGXh4Rr/kEQLXl5y3lRAHkVyjvt7xsOYkz45PI/59qM=; b=lWEhVVI5XUDgVHqAgwGhE/x9l4jGOaaevd500s8fsSk5ZTK21DK7Fl0KyejO/a9TZzmO2wn/wChyC7bcvHKNkx0FyP1AbRZl7F4ghqvTyG1edQOrFFkwednh2+NLGJinDhyekuAt8nCK5aPvZKa05sP/bf2kEIrE+kfUp8heyIKx1tdmYzadVnmsCYaAQAz54WrFCKLpa2NOpycd/2N0jy+YzBytZ77xVKxsp2p5JwefLAZ5V0C1E0GPp8Jh+8IeY34J4aU2FN7WZgrVbY+fhupsTNwroHU3ogCtRuDjvw1xBblRPPKnDdbtDjHbKLTrjg8f+KU6ClcDj1esI1G9qg== Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM (2603:10b6:8:b::20) by BN0P223MB0168.NAMP223.PROD.OUTLOOK.COM (2603:10b6:408:146::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5332.12; Sun, 12 Jun 2022 04:24:10 +0000 Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::f144:21f9:cdb1:5c8a]) by DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::f144:21f9:cdb1:5c8a%9]) with mapi id 15.20.5332.019; Sun, 12 Jun 2022 04:24:10 +0000 From: Soft Works To: FFmpeg development discussions and patches Thread-Topic: [FFmpeg-devel] [PATCH v13 2/4] libavformat/avisynth.c: Remove MAX_PATH limit Thread-Index: AQHYfDPNDNZNM/kNqUSEosurAKf6Gq1Ig2mwgAHt/YCAAJqqgIAACVgw Date: Sun, 12 Jun 2022 04:24:09 +0000 Message-ID: References: <47f70332-09d2-91a2-87f2-e2bea69275e3@gmail.com> In-Reply-To: <47f70332-09d2-91a2-87f2-e2bea69275e3@gmail.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-tmn: [KxK+h45FixcvlpCr1GvG7bf+V/LsOb8O] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: e93605dc-cba9-4d9b-5f6b-08da4c2b65c1 x-ms-traffictypediagnostic: BN0P223MB0168:EE_ x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: zrzfmE/HrD96aTZUUD4EwVatuoKtSPvo5nkDO0bxiyOh+AWGGyNN2gpejdz3Nq0jvKN4t/79URksWuQgqz8BGXw74yu7ZnFhMrr2spwCpRKkzVf/1mSOevcX1iNj+/DZtozd+Ceag29K3HZz4w7j5evfP++ADz5URHNXu+B3c9zEPgfe4kd8Pqp31s0E+4TB1Gi2SC2a756+sMudXs5XNzTmAfXIN3jwNMZ36kd+TjDcv6daDQVDCmrbGhObyOBudzw1lg//Y0lcFSmAgqHZPW/42/wNMq1eUiFr+hSv6ByoTQeixSGTjWlgaj3tDzqBiQlKmoraPmqDDhLsRUzZEvF6XjRot2xMi6amK/3TfjJG8iz6hFTzWoPPr3eHcK/q5ArMYRBnYed7N7NZRj7DLsn8z9lxd8HNLUvHIxRhjcjzOM6p7bg7TaU7ku6HE4P+JV8lEGbiw0A1tY3aCzkL03TPbl5TNexW3qZY/fd+eTryjTEEOzkb72+o3DWAlOjeprHFShO/MQ8qocpSh8Fc29Uys+qr/ntuKnvH62WaG/s3/KKcWmqq7KlukdC/VE9bU70EPzWwj2P/rl593DOex1E6mq60xa9n8OZv08EJf4dEu6M+M4vA/Z8wdC603FcocL1OdMDLKXkwO7L1yQdBuI6Ai/ohpMJipHHXSR4bpQI= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?RkhPb1FjR2hBSjhZTWpicnVadFViMEFqeVZwaGVjVWMxdU53OUJ6cmtPSlZx?= =?utf-8?B?VU1FeVRaQzNGWnp0MXVEeU9oU01xMmE3THFpV0FmVFN3eXQ1aEh2dTJ0TFpp?= =?utf-8?B?Tm5ldzBESFBwWDJlajJVQnkrL21RcXMzOW8vcDNrR2g3SzNySzYraDNQMkN2?= =?utf-8?B?b01sbXAyVDNZYWdYRGwrSVlmNkxRWjFVQnZkekxCN2ZRekErT2Vra3pvN2x3?= =?utf-8?B?bHdZY01pK3NYTkxrS0hseDl6YXQyaVNCZEhNNk5jVTRSa09IRi9Ca091ajhw?= =?utf-8?B?QjYzU2gzc1JINnFoRWJqRnc5N2tOaElYMlVhM3hhaFB2STNqOTBJUnBYa3py?= =?utf-8?B?MWI4UzFSYk50WEs2U0poeTNtQzhjRGtOZ3cycy90MDU2SWZVcmRGbGJMcyt5?= =?utf-8?B?SkRvRXdFU0V3S0xpRkZaeU13M0w5aDdTdWV2MUVqVG1Ic0FZSEVKVFdFV25Q?= =?utf-8?B?RGRlVUdybFFsd2k4cWloMk1qamU2WHlLWVhHWUNQMnFFTFBpc2FjUjNVRFpx?= =?utf-8?B?cVdWdC9NOVdkQlhwZWdicWpWcFRtNkU0dDdNMHBIWVU1SjRoYnc5MU1sdml1?= =?utf-8?B?R0ZxTVpSUStNUlR4MHQyalNaU28xS2pQWnI2NXF0RUdISStIOEhRdkxndGZS?= =?utf-8?B?UXMwZDdyOGQzN21NYlJoQnVzSGVFS0MvaHZyMGQ1L0wvbjF4bDFUVzdwN09T?= =?utf-8?B?aHhuMGQ5bnFkWGszckNhMlF4eGMxUXlrTCtOM0t6SmxncW9kTHZNRUs3TGts?= =?utf-8?B?TmVMME5nU3BIdHd5NHNxSVU1SnBLU1hEdGJlNVJIcWhYR0dUOUtvUnQ0WVNt?= =?utf-8?B?SU1YRFhoRmlRVGpTeFRBK0l0RndMZHZLZlZQNERtZHZaVk04UFNBaHhtWDEr?= =?utf-8?B?emZSeElqUW5ETHpDM0QzRUtsK3U5cWVJNXNIOXBTTC9zUGhOUWhrZmFPZXlK?= =?utf-8?B?eFJVVUJOSjlrWkx1QklPejMweFNvMmtrM0w2MkRrdnd1M0YrQjZUOHNqQ0Na?= =?utf-8?B?eUV4VDRvejAyU0tUcnVLK2NUVFp0SjJQcHg3MnVNWm1HU3AxU1hBcFQ0Wnlu?= =?utf-8?B?NTM1VmRobGFQZlA1TDZYc1lGU0tSR2ZYQ1Nla0VSWmMzMkFSSzJsZDhCMUs5?= =?utf-8?B?Y0l3TkNCaU5abVhzeEM5SDY3WnBCN3MyZEJIM2wyWkJ5cjJUZitzUjA3RTgw?= =?utf-8?B?ckRNZU9zRXdxRTcvRm5MbDB3YWtpcVF4SUJXbEk4VUVHWFNuU0V0SFNGWTlU?= =?utf-8?B?MjZ4NVdrN2g0YU9PNHhWZzhjOGJJVjd2MllGQXIxSGsyR2cvOFpBTTJNT0lt?= =?utf-8?B?dWpkOHhwcVRCaWZLYkRJejNWeS8yZ0toMHV1RjZTek0xY3hTQzc3clAwUC9t?= =?utf-8?B?M3E4RWVoUmI5K0NEZDFRaHQ4VzE5R2VsRVJEeCtNRXlCLzRuV2tLVlpoVmMw?= =?utf-8?B?akR2RDNYZ1JoWXVPRVBBbm5vTUJsNy9jTlJMbC94ZDd3YzNNb0ExUzRYM0R4?= =?utf-8?B?ODBzU0JBTTFwR0QrMVdNY25ycmxhVld0OHF4eTVqUW4wWFh5bjdvVnNLWjdL?= =?utf-8?B?d1MvNU9vMitJQk5mNXVaVmFNNUJLQjlLdmlFRmFzcjVCdmd6MWpSc05DbS9m?= =?utf-8?B?V1o1eHdOOUZRdXpQam5hWHFKOFFuUEg1cmQvTUtWTENJOXZZMEJJallGV3Rz?= =?utf-8?B?NFZLMUpVb0NRK3A0RDdwT3JBTlk4cS9PcVdjanVSenA4Zysrb2JSdTNnakNE?= =?utf-8?B?Q3NjdTRaNU9vRXFZRjNwQUljVEZlWHVYSitYVkw4TW5xN1VLT0FpNXpuVmoz?= =?utf-8?B?TlEreTJtS3ZId3NPMnZScCsvSHJNbER6K3dMaGlYZVhuQmVmbGRUZTlVbmp4?= =?utf-8?B?UXZBeXA0d2dKOEhHK2JsZS9kdUpIdGlOaTdPdTUwd1p0Qm82NlpIRk9PUHBW?= =?utf-8?Q?f6/Qhf3jkJs=3D?= 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: e93605dc-cba9-4d9b-5f6b-08da4c2b65c1 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Jun 2022 04:24:10.0198 (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: BN0P223MB0168 Subject: Re: [FFmpeg-devel] [PATCH v13 2/4] libavformat/avisynth.c: Remove MAX_PATH limit 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 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: ffmpeg-devel On Behalf Of > Stephen Hutchinson > Sent: Sunday, June 12, 2022 4:15 AM > To: ffmpeg-devel@ffmpeg.org > Subject: Re: [FFmpeg-devel] [PATCH v13 2/4] libavformat/avisynth.c: > Remove MAX_PATH limit > > On 6/11/22 1:01 PM, nil-admirari@mailo.com wrote: > >> Why not use the AviSynth mechanism that allows to supply a UTF-8 > string? > >> > >> > https://github.com/AviSynth/AviSynthPlus/blob/c377916aa4146d2f4386852 > d91dc177d49103c16/avs_core/core/parser/script.cpp#L477-L481 > > > > Was not aware such a mechanism exists. > > > > Commit dates back to 10 April 2017, first release supporting it is, > apparently, Avisynth+ r2487-MT: > https://github.com/pinterf/AviSynthPlus/releases/tag/r2489-MT. > > > > A remark in > https://github.com/FFmpeg/FFmpeg/blob/master/libavformat/avisynth.c#L > 844 says: > > > > /* On Windows, FFmpeg supports AviSynth interface version 6 or > higher. > > * This includes AviSynth 2.6 RC1 or higher, and AviSynth+ r1718 > or higher, > > * and excludes 2.5 and the 2.6 alphas. */ > > > > Support for plain AviSynth will have to be dropped. > > Presumably, the original manifest idea, parsed down to only using it > to > force FFmpeg into UTF-8, would be sufficient for this, right? As This is a change that would affect ffmpeg behavior at a global level, just for the sake of accommodating for a single 3rd party library (and even: only some ancient versions of it). > as AviSynth inherits that from FFmpeg, UTF-8 strings would be > pervasive > and both A) the utf8 parameter would not need to be used and B) 2.6 > would work just fine with it, transparently. > The Windows API does have a SetConsoleCP function. If that > accomplishes > the same effect as the manifest idea, that would be simpler, but it > probably would need to be located somewhere *other* than the AviSynth > demuxer. ffmpeg does not interact with AviSynth via console interface. AFAIU, it uses AviSynth in-process loading it via an API instead: val = avs_library.avs_invoke(avs->env, "Import", arg, 0); Those functions like SetConsoleCP and SetConsoleOutputCP, have no effect on the current process, it's only about console pipe communication with child (cli) processes. The manifest approach is too invasive IMO, as laid out before. At least with regards to AviSynthPlus versions since two years ago, we're not talking about long paths anymore. AviSynthPlus is using the same prefixing approach for long paths that we have employed in ffmpeg as well, now. The only question is whether we supply the script/path argument to AviSynthPlus as Ansi or UTF-8 string. It will handle long paths in both cases. The only difference is that when we're converting a UTF-8 path to an Ansi codepage, it might become an invalid path when the projection would be ambiguous. It's been like that all the time before - nothing new about it. There are functions available to check the version: avs_get_version, avs_check_version, So - in case that requiring AviSynthPlus from 2020 as a minimum would be undesirable, it should be possible to find out at runtime whether the loaded AviSynth supports the UTF8 parameter or not and set the invoke parameters accordingly. Best regards, 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".