Compile FFmpeg para la versión de Windows, éxito

  En realidad es muy simple. La razón por la que gasté tanto es que traté de compilar en la máquina virtual WIN7, por lo que hay varios errores inexplicables.

Referencia: https://www.jianshu.com/p/5f175dec9109 .

  • Preparación ambiental

WIN10, VS2015。

  • Descargar FFmpegInterop

https://github.com/microsoft/FFmpegInterop

  • Descargar ffmpeg

Descargue, descomprima, cambie el nombre de ffmpeg y colóquelo debajo de FFmpegInterop.

  • Descargue e instale MSYS2

https://www.msys2.org/

Descargar x86_64; instalar en c: \ msys64

  • Configuracion

c:\msys64\usr\bin目录下,把link.exe改名为link.bak,这样可以调用VS的link。

Editar C: \ msys64 \ msys2_shell.cmd:

rem set MSYS2_PATH_TYPE=inherit
改成
    set MSYS2_PATH_TYPE=inherit

Editar C: \ msys64 \ home \ XXXX \ .bashrc

export PATH=/C/'Program Files (x86)'/'Microsoft Visual Studio 14.0'/VC/bin/amd64:${PATH}
  • Inicie MSYS2
set MSYS2_BIN="C:\msys64\usr\bin\bash.exe"

cd  c:\msys64

msys2_shell.cmd -mingw64

Clic derecho, opciones, texto, juego de caracteres cambiado a UTF-8.

  • Software de instalación MSYS2

Como referencia, se recomienda el método MinGW-w64.

pacman -S mingw-w64-x86_64-toolchain
pacman -S nasm

# pacman -S make gcc diffutils pkg-config
  • Comprobar comandos de compilación
$ which cl
/C/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/cl

$ which link
/C/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/link

$ which yasm
/usr/bin/yasm

$ which cpp
/mingw64/bin/cpp
  • Compilar x264

Descargar, descomprimir y compilar.

./configure \
    --prefix=../lib-ffmpeg \
    --host=x86_64-w64-mingw32 \
    --enable-shared  --extra-ldflags=-Wl,--output-def=libx264.def

make

make install

Convierte a dll

#若要生成64位lib文件则输入如下命令:
lib /machine:X64  /def:libx264.def

#若要生成32位lib文件则输入如下命令:
lib /machine:i386 /def:libx264.def
  • configurar

Modificar FFmpegConfig.sh

--enable-gpl \
--enable-nonfree \
--enable-libx264 \
--extra-cflags="-I${BUILD_LIBS}/include" \
--extra-ldflags="-LIBPATH:${BUILD_LIBS}/lib"

Implementación

./FFmpegConfig.sh Win10 x64

Se dice que abre el archivo config.h recién generado y lo convierte al formato UTF-8. Esto evita muchas advertencias.

  • hacer
./BuildFFmpeg.bat win10 x64
  • Compruebe 32 bits o 64 bits:
查看32位还是64位:
dumpbin /headers libx264.dll

查看符号清单(导出函数)
dumpbin /exports libx264.dll > libx264-exports.txt

 

2654 artículos originales publicados · elogiados 352 · 2.1 millones de visitas

Supongo que te gusta

Origin blog.csdn.net/quantum7/article/details/105431904
Recomendado
Clasificación