tanersener / flutter-ffmpeg

FFmpeg plugin for Flutter. Not maintained anymore. Superseded by FFmpegKit.
GNU Lesser General Public License v3.0
645 stars 132 forks source link

Compressing video using (libx265 -crf) #169

Closed chinu999 closed 4 years ago

chinu999 commented 4 years ago

Description

i am using this ffmpeg -i input.mp4 -vcodec libx265 -crf 28 output.mp4 it works on pc terminal fine but when i try in flutter

compress(){ _flutterFFmpeg.execute("-i $compVideoFile -vcodec libx265 -crf 28 $saveVideoFile"); }

I am trying compress video but i am getting this error.

Current behavior D/EGL_emulation(15473): eglCreateContext: 0xe4f856c0: maj 3 min 0 rcv 3 D/EGL_emulation(15473): eglMakeCurrent: 0xe4f856c0: ver 3 0 (tinfo 0xe4f83850) D/EGL_emulation(15473): eglMakeCurrent: 0xeaee0460: ver 3 0 (tinfo 0xe31ec620) D/EGL_emulation(15473): eglMakeCurrent: 0xe4f856c0: ver 3 0 (tinfo 0xe4f83850) D/flutter-ffmpeg(15473): Running FFmpeg with arguments: [-i, /storage/emulated/0/Download/out.mkv, -vcodec, libx265, -crf, 28, /storage/emulated/0/Download/out.mkv]. I/mobile-ffmpeg(15473): ffmpeg version git-2020-01-25-fd11dd500 I/mobile-ffmpeg(15473): Copyright (c) 2000-2020 the FFmpeg developers I/mobile-ffmpeg(15473): I/mobile-ffmpeg(15473): built with Android (5220042 based on r346389c) clang version 8.0.7 (https://android.googlesource.com/toolchain/clang b55f2d4ebfd35bf643d27dbca1bb228957008617) (https://android.googlesource.com/toolchain/llvm 3c393fe7a7e13b0fba4ac75a01aa683d7a5b11cd) (based on LLVM 8.0.7svn) I/mobile-ffmpeg(15473): configuration: --cross-prefix=i686-linux-android- --sysroot=/files/android-sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/sysroot --prefix=/home/taner/Projects/mobile-ffmpeg/prebuilt/android-x86/ffmpeg --pkg-config=/usr/bin/pkg-config --enable-version3 --arch=i686 --cpu=i686 --cc=i686-linux-android24-clang --cxx=i686-linux-android24-clang++ --target-os=android --disable-neon --disable-asm --disable-inline-asm --enable-cross-compile --enable-pic --enable-jni --enable-optimizations --enable-swscale --enable-shared --disable-v4l2-m2m --disable-outdev=v4l2 --disable-outdev=fbdev --disable-indev=v4l2 --disable-indev=fbdev --enable-small --disable-openssl --disable-xmm-clobber-test --disable-debug --enable-lto --disable-neon-clobber-test --disable-programs --disable-postproc --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --disable-sndio --disable-schannel --disable-securetransport --disable-xlib --disable-cuda --disable-cuvid --disable-nvenc --di I/mobile-ffmpeg(15473): libavutil 56. 38.100 / 56. 38.100 I/mobile-ffmpeg(15473): libavcodec 58. 65.102 / 58. 65.102 I/mobile-ffmpeg(15473): libavformat 58. 35.101 / 58. 35.101 I/mobile-ffmpeg(15473): libavdevice 58. 9.103 / 58. 9.103 I/mobile-ffmpeg(15473): libavfilter 7. 70.101 / 7. 70.101 I/mobile-ffmpeg(15473): libswscale 5. 6.100 / 5. 6.100 I/mobile-ffmpeg(15473): libswresample 3. 6.100 / 3. 6.100 D/flutter-ffmpeg(15473): FFmpeg exited with rc: 1 E/mobile-ffmpeg(15473): Unrecognized option 'crf'. E/mobile-ffmpeg(15473): Error splitting the argument list: E/mobile-ffmpeg(15473): Option not found.

tanersener commented 4 years ago

Which flutter_ffmpeg package do you use? Are you aware that x265 is only available in GPL licensed flutter_ffmpeg packages?

chinu999 commented 4 years ago

I am using the least flutter ffmpeg plugin (flutter_ffmpeg: ^0.2.10). And in flutter documentation it says it is using:- License LGPL 3.0 (LICENSE) GPL 3.0 (LICENSE.GPLv3)

tanersener commented 4 years ago

There are 8 different packages coming with flutter_ffmpeg. You're using the default one. Can you install one of the GPL licensed packages? 1. Features section in README lists them and 2.1 Packages section explains how you can install a package.