[FFmpeg-devel] [PATCH v3 5/5] fftools: Enable long path support on Windows (fixes #8885)

Marton Balint cus at passwd.hu
Thu Feb 17 22:05:30 EET 2022



On Wed, 16 Feb 2022, nihil-admirari wrote:

> ---
> fftools/Makefile                 |  5 +++++
> fftools/long_paths_utf8.manifest | 12 ++++++++++++
> fftools/long_paths_utf8.rc       |  3 +++
> 3 files changed, 20 insertions(+)
> create mode 100644 fftools/long_paths_utf8.manifest
> create mode 100644 fftools/long_paths_utf8.rc
>
> diff --git a/fftools/Makefile b/fftools/Makefile
> index da42078..53438b6 100644
> --- a/fftools/Makefile
> +++ b/fftools/Makefile
> @@ -11,6 +11,11 @@ ALLAVPROGS_G = $(AVBASENAMES:%=%$(PROGSSUF)_g$(EXESUF))
>
> OBJS-ffmpeg                        += fftools/ffmpeg_opt.o fftools/ffmpeg_filter.o fftools/ffmpeg_hw.o
>
> +# Windows resource files
> +OBJS-ffmpeg-$(HAVE_GNU_WINDRES) += fftools/long_paths_utf8.o
> +OBJS-ffplay-$(HAVE_GNU_WINDRES) += fftools/long_paths_utf8.o
> +OBJS-ffprobe-$(HAVE_GNU_WINDRES) += fftools/long_paths_utf8.o
> +
> define DOFFTOOL
> OBJS-$(1) += fftools/cmdutils.o fftools/$(1).o $(OBJS-$(1)-yes)
> $(1)$(PROGSSUF)_g$(EXESUF): $$(OBJS-$(1))
> diff --git a/fftools/long_paths_utf8.manifest b/fftools/long_paths_utf8.manifest
> new file mode 100644
> index 0000000..d1ac1e4
> --- /dev/null
> +++ b/fftools/long_paths_utf8.manifest
> @@ -0,0 +1,12 @@
> +<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
> +
> +<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
> +  <assemblyIdentity type="win32" name="FFmpeg" version="1.0.0.0"/>
> +  <application xmlns="urn:schemas-microsoft-com:asm.v3">
> +    <windowsSettings xmlns:ws2016="http://schemas.microsoft.com/SMI/2016/WindowsSettings"
> +                     xmlns:ws2019="http://schemas.microsoft.com/SMI/2019/WindowsSettings">
> +      <ws2016:longPathAware>true</ws2016:longPathAware>
> +      <ws2019:activeCodePage>UTF-8</ws2019:activeCodePage>

Generally UTF-8 codepage should not be needed, because unicode windows 
functions should be used everywhere, right?

I'd perfer if you enable UTF8 codepage in a separate patch. And use simple 
fftools/fftools.manifest and fftools/manifest.rc as filenames, because 
later other things might be put there, not only utf8/longpath support.

Thanks,
Marton

> +    </windowsSettings>
> +  </application>
> +</assembly>
> diff --git a/fftools/long_paths_utf8.rc b/fftools/long_paths_utf8.rc
> new file mode 100644
> index 0000000..f33de76
> --- /dev/null
> +++ b/fftools/long_paths_utf8.rc
> @@ -0,0 +1,3 @@
> +#include <windows.h>
> +
> +CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "long_paths_utf8.manifest"
> -- 
> 2.32.0
>
>
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
>


More information about the ffmpeg-devel mailing list