etc.

[FFmpeg] cannot execute binary file (failed with 126)

인쥭 2023. 8. 3. 14:02
반응형

AWS Lambda 등에 FFmpeg 바이너리를 업로드한 후에 이를 활용하고자 하는 경우, cannot execute binary file 과 같은 오류 메시지가 발생하는 경우가 있다.

그러나 로컬 환경에서는 정상적으로 동작하고 있는 경우, Lambda에 업로드한 바이너리 파일이 macOS 등 적절하지 않은 환경에 맞게 빌드된 것일 수 있다.

그러니 아래 링크에서 적절한 CPU 아키텍쳐에 맞게 빌드된 바이너리를 다운받아 교체하여 사용하도록 하자.

 

John Van Sickle - FFmpeg Static Builds

Welcome! Here you'll find the latest versions of FFmpeg for Linux kernels 3.2.0 and up. For installation instructions please read the FAQ. Note: it's highly recommended to use git master builds, because bug fixes and other improvements are added daily. All

johnvansickle.com

내 경우, AWS Lambda는 Node.js 16.x 런타임에 x86_64 아키텍쳐로 구성되어 있었으므로 상술한 링크로부터 ffmpeg-release-amd64-static.tar.xz를 다운받아 교체하는 것으로 문제를 해결할 수 있었다.

참고

 

Lambda 런타임 - AWS Lambda

Lambda 런타임 Lambda는 런타임을 사용하여 여러 언어를 지원합니다. 런타임은 Lambda와 함수 간에 호출 이벤트, 컨텍스트 정보 및 응답을 릴레이하는 언어별 환경을 제공합니다. Lambda에서 제공하는

docs.aws.amazon.com