Recherche avancée

Médias (0)

Mot : - Tags -/page unique

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (50)

Sur d’autres sites (9112)

  • Running multiple commands on FFMPEG Android Studio

    2 juin 2016, par Ali Asheer

    I have compiled https://github.com/WritingMinds/ffmpeg-android-java on my Android Studio and it’s working fine, i have successfully executed these 3 commands :

    Adding text :

    new String[]={"-i",file1.toString(), "-i", water,"-filter_complex","drawtext=fontsize=60:fontfile=/system/fonts/DroidSans.ttf:fontcolor=green:text=AAAA:x=(w-tw)/2:y=(50-th)/2", final_output}

    Adding Watermark :

    new String[]{"-i",inputVideoFilePath, "-i",overlayImagePath,"-preset", "ultrafast","-filter_complex", "overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2", "-codec:a", "copy", outputVideoFilePath

    Add Padding :

    new String[]{"-i",file1.toString(), "-i", water,"-filter_complex","[0:v]pad=iw:ih+100:0:(oh-ih)/2:color=white", final_output2};

    Now i want to combine these three how do i accomplish that ? So far i have tried padding with text :

    new String[]{"-i",file1.toString(), "-i", water,"-filter_complex","[0:v]pad=iw:ih+100:0:(oh-ih)/2:color=white","drawtext=fontsize=60:fontfile=/system/fonts/DroidSans.ttf:fontcolor=green:text=AAAA:x=(w-tw)/2:y=(50-th)/2", final_output2};

    But i get this error :

    Input #1, png_pipe, from '/storage/emulated/0/watermark.png':
    Duration: N/A, bitrate: N/A
    Stream #1:0: Video: png, rgb24(pc), 200x125, 25 tbr, 25 tbn, 25 tbc
    [NULL @ 0xb5c9fc00] Unable to find a suitable output format for
    'drawtext=fontsize=60:fontfile=/system/fonts/DroidSans.ttf:fontcolor=green:text AAAA:x=(w-tw)/2:y=(50-th)/2'
    drawtext=fontsize=60:fontfile=/system/fonts/DroidSans.ttf:fontcolor=green:text=AAAA:x=(w-tw)/2:y=(50-th)/2: Invalid argument

    Any kind of help would be great !

  • Using and building FFMPEG library in Android Studio(Cmake)

    8 septembre 2017, par y3k00000

    As title, I’m trying to use the ffmpeg source code as library in Android Studio on Ubuntu Linux, but meeting some trouble in compilation stage. I think I must be missing some compile option but having no idea what I miss, can somebody lend a hand ?

    My codes & settings are below :

    A simple auto-generated .cpp

    #include
    #include <string>
    #include "libavcodec/aacenc.h"

    extern "C"
    JNIEXPORT jstring JNICALL
    Java_y3k_testffmpegnative_MainActivity_stringFromJNI(
           JNIEnv *env,
           jobject /* this */) {
       std::string hello = "Hello from C++";
       return env->NewStringUTF(hello.c_str());
    }

    AACEncContext * aacEncContext; // Just trying by adding this.
    </string>

    I’ve tried these Gradle setting and it didn’t help :

    android {
       ....
       externalNativeBuild {
           cmake {
               arguments "-DANDROID_TOOLCHAIN=clang"
               cFlags "-std=c99"
               cppFlags "-frtti","-fexceptions"
           }
       }
    }
    ....

    CMakeLists.txt

    (Android Studio generated)
    ....
    include_directories( /home/y3k/ffmpeg )

    Error message while compiling :

    /home/y3k/ffmpeg/libavutil/float_dsp.h
    Error:(164, 50) error: expected ')'
    Information:(164, 30) to match this '('
    Error:(164, 50) error: expected ')'
    Information:(164, 30) note: to match this '('
    /home/y3k/ffmpeg/libavutil/fixed_dsp.h
    Error:(153, 44) error: expected ')'
    Information:(153, 30) to match this '('
    Error:(153, 44) error: expected ')'
    Information:(153, 30) note: to match this '('
    /home/y3k/ffmpeg/libavcodec/mpeg4audio.h
    Error:(44, 8) error: unknown type name 'av_export'
    Error:(44, 18) error: expected unqualified-id
    Error:(44, 8) error: unknown type name 'av_export'
    Error:(44, 18) error: expected unqualified-id
    /home/y3k/ffmpeg/libavcodec/aac.h
    Error:(294, 21) error: expected member name or ';' after declaration specifiers
    Error:(294, 21) error: expected member name or ';' after declaration specifiers

    FFMpeg config.h generated by this script :

    NDK=/home/y3k/Android/Sdk/ndk-bundle
    SYSROOT=$NDK/platforms/android-23/arch-arm/
    TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64
    function build_one
    {
    ./configure \
    --prefix=$PREFIX \
    --disable-shared \
    --enable-static \
    --disable-doc \
    --disable-ffmpeg \
    --disable-ffplay \
    --disable-ffprobe \
    --disable-ffserver \
    --disable-avdevice \
    --disable-doc \
    --disable-symver \
    --cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
    --target-os=linux \
    --arch=arm \
    --enable-cross-compile \
    --sysroot=$SYSROOT \
    --extra-cflags="-Os -fpic $ADDI_CFLAGS" \
    --extra-ldflags="$ADDI_LDFLAGS" \
    $ADDITIONAL_CONFIGURE_FLAG
    make clean
    make
    make install
    }
    CPU=arm
    PREFIX=$(pwd)/android/$CPU
    ADDI_CFLAGS="-marm"
    build_one

    By tracing the errors I found these lines :

    in float_dsp.h, fixed_dsp.h :

    void (*butterflies_float)(float *av_restrict v1, float *av_restrict v2, int len);

    av_restrict defined in config.h

    #define av_restrict restrict

    in aac.h :

    ....
    struct AACContext {
       AVClass        *class;
    ....

    in mpeg4audio.h :

    extern av_export const int avpriv_mpeg4audio_sample_rates[16];

    So I’m guessing it’s because the compiler misrecognized the C code as C++, I tried adding these :

    arguments "-DANDROID_TOOLCHAIN=clang"
    cFlags "-std=c99"

    to my build.gradle but didn’t help. Having no idea where to move on. :(

    I’m using the latest stable version of Android Studio on Ubuntu desktop. Please don’t be hesitate to ask if any extra information is required.

    Also I’ve been tried edit my native-lib.cpp into .c (Surely with the code contents changed), but wasn’t working either.

    Appreciate for any help.

  • How to display a progress bar while the Android ffmpeg command is executing in android studio ?

    23 juillet 2017, par Hemanth Kumar

    I’m having troubles displaying a progress bar that shows kb/s or a percentage like 1-100% when the ffmpeg command is executing.

    Here I’m doing video trimming using the ffmpeg command.
    I’m developing code in Android Studio.
    I want to display a progress bar to the user when the process is going on but I
    can’t do it.

    Please tell me how to extract process information from the ffmpeg command and display it using a progress bar.