Recherche avancée

Médias (1)

Mot : - Tags -/censure

Autres articles (69)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

  • Keeping control of your media in your hands

    13 avril 2011, par

    The vocabulary used on this site and around MediaSPIP in general, aims to avoid reference to Web 2.0 and the companies that profit from media-sharing.
    While using MediaSPIP, you are invited to avoid using words like "Brand", "Cloud" and "Market".
    MediaSPIP is designed to facilitate the sharing of creative media online, while allowing authors to retain complete control of their work.
    MediaSPIP aims to be accessible to as many people as possible and development is based on expanding the (...)

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

Sur d’autres sites (9797)

  • Build FFmpeg for All Android architecture correctly

    22 octobre 2017, par fthopkins

    I built ffmpeg libraries for all android architecture. But some details are confusing my mind. First of all let me explain step by step how i built.

    • I downloaded latest version of libx264 from
      https://www.videolan.org/developers/x264.html
    • Created and run build_all.sh script (in x264 folder) for creating libs for (almost) all android platforms. Then i got android folder in x264 folder. e.g android/arm android/arm64 android/x86 android/x86_64 in x264 folder.
    • I download the ffmpeg3.3.4 from https://ffmpeg.org/download.html
    • I created 4 copies of ffmpeg3.3.4 folder. Named them with android architectures names.
      Like ffmpeg3.3.4-arm64 ffmpeg3.3.4-arm ffmpeg3.3.4-x86 ffmpeg3.3.4-x86_64
    • Created build_(architecture-name).sh for each platforms of android. Than move each one of 'named'.sh files to the named ffmpeg folders according to their architecture names.
      E.g build_android_x86.sh => ffmpeg3.3.4-x86

    build_android_arm64.sh example

    #!/bin/bash
    #Change NDK to your Android NDK location
    NDK=$HOME/Android/Sdk/ndk-bundle
    PLATFORM=$NDK/platforms/android-21/arch-arm64/
    PREBUILT=$NDK/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64

    GENERAL="\
    --enable-small \
    --enable-cross-compile \
    --extra-libs="-lgcc" \
    --arch=aarch64 \
    --cc=$PREBUILT/bin/aarch64-linux-android-gcc \
    --cross-prefix=$PREBUILT/bin/aarch64-linux-android- \
    --nm=$PREBUILT/bin/aarch64-linux-android-nm \
    --extra-cflags="-I../x264/android/arm64/include" \
    --extra-ldflags="-L../x264/android/arm64/lib" "

    MODULES="\
    --enable-gpl \
    --enable-libx264"



    function build_arm64
    {
     ./configure \
     --logfile=conflog.txt \
     --target-os=linux \
     --prefix=./android/arm64-v8a \
     ${GENERAL} \
     --sysroot=$PLATFORM \
     --extra-cflags="" \
     --extra-ldflags="-lx264 -Wl,-rpath-link=$PLATFORM/usr/lib -L$PLATFORM/usr/lib -nostdlib -lc -lm -ldl -llog" \
     --enable-shared \
     --disable-static \
     --disable-doc \
     --enable-zlib \
     ${MODULES}

     make clean
     make
     make install
    }

    build_arm64


    echo Android ARM64 builds finished
    • Moved all ffmpeg3.3.4-arm64 ffmpeg3.3.4-arm ffmpeg3.3.4-x86 ffmpeg3.3.4-x86_64 folders to the NDK_PATH (C:\Users\MyName\AppData\Local\Android\sdk\ndk-bundle)
    • Put x264 folder at same level of hierarchy with ffmpeg folders
      in (C:\Users\MyName\AppData\Local\Android\sdk\ndk-bundle)
    • Run each of build_android_x86.sh, build_android_x86_64.sh.. scripts one by one in their own ffmpeg folder. Then i got android folders in ffmpeg folders. (created android folders have library folders)
      e.g ffmpeg3.3.4-x86/android/x86/(bin,inlude,lib,share)
    • Created Android.mk files for all created android folders and moved each one of them to android/armName folder. e.g Android.mk => ffmpeg3.3.4-x86/android/x86/

      LOCAL_PATH:= $(call my-dir)

      include $(CLEAR_VARS)
      LOCAL_MODULE:= libavcodec
      LOCAL_SRC_FILES:= lib/libavcodec-57.so
      LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
      include $(PREBUILT_SHARED_LIBRARY)

      include $(CLEAR_VARS)
      LOCAL_MODULE:= libavformat
      LOCAL_SRC_FILES:= lib/libavformat-57.so
      LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
      include $(PREBUILT_SHARED_LIBRARY)

      include $(CLEAR_VARS)
      LOCAL_MODULE:= libswscale
      LOCAL_SRC_FILES:= lib/libswscale-4.so
      LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
      include $(PREBUILT_SHARED_LIBRARY)

      include $(CLEAR_VARS)
      LOCAL_MODULE:= libavutil
      LOCAL_SRC_FILES:= lib/libavutil-55.so
      LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
      include $(PREBUILT_SHARED_LIBRARY)

      include $(CLEAR_VARS)
      LOCAL_MODULE:= libavfilter
      LOCAL_SRC_FILES:= lib/libavfilter-6.so
      LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
      include $(PREBUILT_SHARED_LIBRARY)

      include $(CLEAR_VARS)
      LOCAL_MODULE:= libswresample
      LOCAL_SRC_FILES:= lib/libswresample-2.so
      LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
      include $(PREBUILT_SHARED_LIBRARY)

      include $(CLEAR_VARS)
      LOCAL_MODULE := postproc
      LOCAL_SRC_FILES := lib/libpostproc-54.so
      LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
      include $(PREBUILT_SHARED_LIBRARY)

      include $(CLEAR_VARS)
      LOCAL_MODULE := avdevice
      LOCAL_SRC_FILES := lib/libavdevice-57.so
      LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
      include $(PREBUILT_SHARED_LIBRARY)
    • Create "arm named" folders e.g x86 x86_4 arm64 arm7 in jni folder of my project (myproject/app/jni/x86, myproject/app/jni/x86_64).

    • Go to ndk path open named ffmpeg folders one by one and copy ffmpeg.c ffmpeg_filter.c ffmpeg_opt.c cmdutils.c files from ffmpeg folders to the "arm named" folders. e.g ffmpeg.c => myproject/app/jni/x86

    • Created Android.mk file in my project.

      LOCAL_PATH := $(call my-dir)
      #$(warning $(LOCAL_PATH))

      include $(CLEAR_VARS)
      LOCAL_MODULE    := videoEdit
      LOCAL_LDLIBS := -llog -ljnigraphics -lz -landroid
      LOCAL_CFLAGS := -Wdeprecated-declarations
      ANDROID_LIB := -landroid

      $(info $(TARGET_ARCH_ABI))

      ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
         LOCAL_C_INCLUDES:=/Users/MyName/AppData/Local/Android/sdk/ndk-bundle/sources/ffmpeg-3.3.4-armeabi
         LOCAL_SRC_FILES :=  videoEdit.c arm7/ffmpeg.c arm7/ffmpeg_filter.c arm7/ffmpeg_opt.c arm7/cmdutils.c
         LOCAL_CFLAGS += -lx264 -Wl,--no-merge-exidx-entries
      else

         ifeq ($(TARGET_ARCH_ABI),arm64-v8a)
                 LOCAL_C_INCLUDES:=/Users/MyName/AppData/Local/Android/sdk/ndk-bundle/sources/ffmpeg-3.3.4-arm64-v8a
                 LOCAL_SRC_FILES :=  videoEdit.c arm64/ffmpeg.c arm64/ffmpeg_filter.c arm64/ffmpeg_opt.c arm64/cmdutils.c
                 LOCAL_CFLAGS += -funwind-tables -Wl,--no-merge-exidx-entries
         else

             ifeq ($(TARGET_ARCH_ABI),x86_64)
                    LOCAL_C_INCLUDES:=/Users/MyName/AppData/Local/Android/sdk/ndk-bundle/sources/ffmpeg3.3.4-x86_64
                    LOCAL_SRC_FILES :=  videoEdit.c x86_64/ffmpeg.c x86_64/ffmpeg_filter.c x86_64/ffmpeg_opt.c x86_64/cmdutils.c
             else
                     LOCAL_C_INCLUDES:=/Users/MyName/AppData/Local/Android/sdk/ndk-bundle/sources/ffmpeg3.3.4-x86
                     LOCAL_SRC_FILES :=  videoEdit.c x86/ffmpeg.c x86/ffmpeg_filter.c x86/ffmpeg_opt.c x86/cmdutils.c
             endif

         endif

      endif

      LOCAL_SHARED_LIBRARIES := libavformat libavcodec libswscale libavutil libswresample libavfilter libavdevice libpostproc

      include $(BUILD_SHARED_LIBRARY)

      ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)

         $(call import-module,ffmpeg-3.3.4-armeabi/android/armeabi-v7a)

      else

         ifeq ($(TARGET_ARCH_ABI),arm64-v8a)
                 $(call import-module,ffmpeg-3.3.4-arm64-v8a/android/arm64-v8a)
         else

             ifeq ($(TARGET_ARCH_ABI),x86_64)
                    $(call import-module,ffmpeg3.3.4-x86_64/android/x86_64)
             else
                 $(call import-module,ffmpeg3.3.4-x86/android/i686-diasm)
             endif

         endif

      endif
    • Created Application.mk file in my project.

      APP_ABI := armeabi-v7a, arm64-v8a, x86_64, x86
      APP_PLATFORM := android-14
    • Created videoEdit.c than run ndk-build build command.

    Built with no error. I can run ffmpeg commands but it takes too much time i think. E.g when i try to run hflip it flips the video with 15 seconds.

    Code example :

    JNIEXPORT jint JNICALL Java_com_name_app_library_VideoEditer_natives_VideoEditer_flipHorizontally
    (JNIEnv *env, jclass someclass, jstring inputFile, jstring outFile) {

       int numberOfArgs = 14;

       char** arguments = calloc(numberOfArgs, sizeof(char*));
       const char *in, *out;

       in = (*env)->GetStringUTFChars(env, inputFile, 0);
       out = (*env)->GetStringUTFChars(env, outFile, 0);

       arguments[0] = "ffmpeg";
       arguments[1] = "-i";
       arguments[2] = in;
       arguments[3] = "-c:v";
       arguments[4] = "libx264";
       arguments[5] = "-preset";
       arguments[6] = "ultrafast";
       arguments[7] = "-threads";
       arguments[8] = "5";
       arguments[9] = "-c:a";
       arguments[10] = "copy";
       arguments[11] = "-vf";
       arguments[12] = "hflip";
       arguments[13] = out;

       int i;
       for (i = 0; i < numberOfArgs; i++) {
           log_message(arguments[i]);
       }
       log_message("Printed all");

       main(numberOfArgs, arguments);
       free(arguments);
       (*env)->ReleaseStringUTFChars(env, inputFile, in);
       (*env)->ReleaseStringUTFChars(env, outFile, out);

       return 0;
    }

    Also another thing to confusing my mind is output of ./configure command.
    When i open the (e.g) ffmpeg-3.3.4-arm64-v8a folder and run ./configure command in terminal. Output says ARCH   x86 (generic). For all platform output is the same ARCH   x86 (generic). Commands run on emaulator very fast but very slow on real device.

    Output of ./configure command in ffmpeg-3.3.4-arm64-v8a folder

    install prefix            /usr/local
    source path               .
    C compiler                gcc
    C library                 glibc
    ARCH                      x86 (generic)
    big-endian                no
    runtime cpu detection     yes
    yasm                      yes
    MMX enabled               yes
    MMXEXT enabled            yes
    3DNow! enabled            yes
    3DNow! extended enabled   yes
    SSE enabled               yes
    SSSE3 enabled             yes
    AESNI enabled             yes
    AVX enabled               yes
    XOP enabled               yes
    FMA3 enabled              yes
    FMA4 enabled              yes
    i686 features enabled     yes
    CMOV is fast              yes
    EBX available             yes
    EBP available             yes
    debug symbols             yes
    strip symbols             yes
    optimize for size         no
    optimizations             yes
    static                    yes
    shared                    no
    postprocessing support    no
    network support           yes
    threading support         pthreads
    safe bitstream reader     yes
    texi2html enabled         no
    perl enabled              yes
    pod2man enabled           yes
    makeinfo enabled          no
    makeinfo supports HTML    no

    External libraries:
    iconv            xlib

    EDIT all of these steps made on ubuntu then moved all folders to the windows. So dont be confuse about paths.

    With all of these steps i want to ask is, is there anything wrong on my steps. Should i follow any other way or not ? Why the ffmpeg is running slower on real device. I guess building ffmpeg for android is bit messy and making wrong things is very easy. If you look my steps, questions and give me an advice, i will be much appreciated.

  • Build FFmpeg for All Android architecture correctly

    26 octobre 2017, par fthopkins

    I built ffmpeg libraries for all android architecture. But some details are confusing my mind. First of all let me explain step by step how i built.

    • I downloaded latest version of libx264 from
      https://www.videolan.org/developers/x264.html
    • Created and run build_all.sh script (in x264 folder) for creating libs for (almost) all android platforms. Then i got android folder in x264 folder. e.g android/arm android/arm64 android/x86 android/x86_64 in x264 folder.
    • I download the ffmpeg3.3.4 from https://ffmpeg.org/download.html
    • I created 4 copies of ffmpeg3.3.4 folder. Named them with android architectures names.
      Like ffmpeg3.3.4-arm64 ffmpeg3.3.4-arm ffmpeg3.3.4-x86 ffmpeg3.3.4-x86_64
    • Created build_(architecture-name).sh for each platforms of android. Than move each one of 'named'.sh files to the named ffmpeg folders according to their architecture names.
      E.g build_android_x86.sh => ffmpeg3.3.4-x86

    build_android_arm64.sh example

    #!/bin/bash
    #Change NDK to your Android NDK location
    NDK=$HOME/Android/Sdk/ndk-bundle
    PLATFORM=$NDK/platforms/android-21/arch-arm64/
    PREBUILT=$NDK/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64

    GENERAL="\
    --enable-small \
    --enable-cross-compile \
    --extra-libs="-lgcc" \
    --arch=aarch64 \
    --cc=$PREBUILT/bin/aarch64-linux-android-gcc \
    --cross-prefix=$PREBUILT/bin/aarch64-linux-android- \
    --nm=$PREBUILT/bin/aarch64-linux-android-nm \
    --extra-cflags="-I../x264/android/arm64/include" \
    --extra-ldflags="-L../x264/android/arm64/lib" "

    MODULES="\
    --enable-gpl \
    --enable-libx264"



    function build_arm64
    {
     ./configure \
     --logfile=conflog.txt \
     --target-os=linux \
     --prefix=./android/arm64-v8a \
     ${GENERAL} \
     --sysroot=$PLATFORM \
     --extra-cflags="" \
     --extra-ldflags="-lx264 -Wl,-rpath-link=$PLATFORM/usr/lib -L$PLATFORM/usr/lib -nostdlib -lc -lm -ldl -llog" \
     --enable-shared \
     --disable-static \
     --disable-doc \
     --enable-zlib \
     ${MODULES}

     make clean
     make
     make install
    }

    build_arm64


    echo Android ARM64 builds finished
    • Moved all ffmpeg3.3.4-arm64 ffmpeg3.3.4-arm ffmpeg3.3.4-x86 ffmpeg3.3.4-x86_64 folders to the NDK_PATH (C:\Users\MyName\AppData\Local\Android\sdk\ndk-bundle)
    • Put x264 folder at same level of hierarchy with ffmpeg folders
      in (C:\Users\MyName\AppData\Local\Android\sdk\ndk-bundle)
    • Run each of build_android_x86.sh, build_android_x86_64.sh.. scripts one by one in their own ffmpeg folder. Then i got android folders in ffmpeg folders. (created android folders have library folders)
      e.g ffmpeg3.3.4-x86/android/x86/(bin,inlude,lib,share)
    • Created Android.mk files for all created android folders and moved each one of them to android/armName folder. e.g Android.mk => ffmpeg3.3.4-x86/android/x86/

      LOCAL_PATH:= $(call my-dir)

      include $(CLEAR_VARS)
      LOCAL_MODULE:= libavcodec
      LOCAL_SRC_FILES:= lib/libavcodec-57.so
      LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
      include $(PREBUILT_SHARED_LIBRARY)

      include $(CLEAR_VARS)
      LOCAL_MODULE:= libavformat
      LOCAL_SRC_FILES:= lib/libavformat-57.so
      LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
      include $(PREBUILT_SHARED_LIBRARY)

      include $(CLEAR_VARS)
      LOCAL_MODULE:= libswscale
      LOCAL_SRC_FILES:= lib/libswscale-4.so
      LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
      include $(PREBUILT_SHARED_LIBRARY)

      include $(CLEAR_VARS)
      LOCAL_MODULE:= libavutil
      LOCAL_SRC_FILES:= lib/libavutil-55.so
      LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
      include $(PREBUILT_SHARED_LIBRARY)

      include $(CLEAR_VARS)
      LOCAL_MODULE:= libavfilter
      LOCAL_SRC_FILES:= lib/libavfilter-6.so
      LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
      include $(PREBUILT_SHARED_LIBRARY)

      include $(CLEAR_VARS)
      LOCAL_MODULE:= libswresample
      LOCAL_SRC_FILES:= lib/libswresample-2.so
      LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
      include $(PREBUILT_SHARED_LIBRARY)

      include $(CLEAR_VARS)
      LOCAL_MODULE := postproc
      LOCAL_SRC_FILES := lib/libpostproc-54.so
      LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
      include $(PREBUILT_SHARED_LIBRARY)

      include $(CLEAR_VARS)
      LOCAL_MODULE := avdevice
      LOCAL_SRC_FILES := lib/libavdevice-57.so
      LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
      include $(PREBUILT_SHARED_LIBRARY)
    • Create "arm named" folders e.g x86 x86_4 arm64 arm7 in jni folder of my project (myproject/app/jni/x86, myproject/app/jni/x86_64).

    • Go to ndk path open named ffmpeg folders one by one and copy ffmpeg.c ffmpeg_filter.c ffmpeg_opt.c cmdutils.c files from ffmpeg folders to the "arm named" folders. e.g ffmpeg.c => myproject/app/jni/x86

    • Created Android.mk file in my project.

      LOCAL_PATH := $(call my-dir)
      #$(warning $(LOCAL_PATH))

      include $(CLEAR_VARS)
      LOCAL_MODULE    := videoEdit
      LOCAL_LDLIBS := -llog -ljnigraphics -lz -landroid
      LOCAL_CFLAGS := -Wdeprecated-declarations
      ANDROID_LIB := -landroid

      $(info $(TARGET_ARCH_ABI))

      ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
         LOCAL_C_INCLUDES:=/Users/MyName/AppData/Local/Android/sdk/ndk-bundle/sources/ffmpeg-3.3.4-armeabi
         LOCAL_SRC_FILES :=  videoEdit.c arm7/ffmpeg.c arm7/ffmpeg_filter.c arm7/ffmpeg_opt.c arm7/cmdutils.c
         LOCAL_CFLAGS += -lx264 -Wl,--no-merge-exidx-entries
      else

         ifeq ($(TARGET_ARCH_ABI),arm64-v8a)
                 LOCAL_C_INCLUDES:=/Users/MyName/AppData/Local/Android/sdk/ndk-bundle/sources/ffmpeg-3.3.4-arm64-v8a
                 LOCAL_SRC_FILES :=  videoEdit.c arm64/ffmpeg.c arm64/ffmpeg_filter.c arm64/ffmpeg_opt.c arm64/cmdutils.c
                 LOCAL_CFLAGS += -funwind-tables -Wl,--no-merge-exidx-entries
         else

             ifeq ($(TARGET_ARCH_ABI),x86_64)
                    LOCAL_C_INCLUDES:=/Users/MyName/AppData/Local/Android/sdk/ndk-bundle/sources/ffmpeg3.3.4-x86_64
                    LOCAL_SRC_FILES :=  videoEdit.c x86_64/ffmpeg.c x86_64/ffmpeg_filter.c x86_64/ffmpeg_opt.c x86_64/cmdutils.c
             else
                     LOCAL_C_INCLUDES:=/Users/MyName/AppData/Local/Android/sdk/ndk-bundle/sources/ffmpeg3.3.4-x86
                     LOCAL_SRC_FILES :=  videoEdit.c x86/ffmpeg.c x86/ffmpeg_filter.c x86/ffmpeg_opt.c x86/cmdutils.c
             endif

         endif

      endif

      LOCAL_SHARED_LIBRARIES := libavformat libavcodec libswscale libavutil libswresample libavfilter libavdevice libpostproc

      include $(BUILD_SHARED_LIBRARY)

      ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)

         $(call import-module,ffmpeg-3.3.4-armeabi/android/armeabi-v7a)

      else

         ifeq ($(TARGET_ARCH_ABI),arm64-v8a)
                 $(call import-module,ffmpeg-3.3.4-arm64-v8a/android/arm64-v8a)
         else

             ifeq ($(TARGET_ARCH_ABI),x86_64)
                    $(call import-module,ffmpeg3.3.4-x86_64/android/x86_64)
             else
                 $(call import-module,ffmpeg3.3.4-x86/android/i686-diasm)
             endif

         endif

      endif
    • Created Application.mk file in my project.

      APP_ABI := armeabi-v7a, arm64-v8a, x86_64, x86
      APP_PLATFORM := android-14
    • Created videoEdit.c than run ndk-build build command.

    Built with no error. I can run ffmpeg commands but it takes too much time i think. E.g when i try to run hflip it flips the video with 15 seconds.

    Code example :

    JNIEXPORT jint JNICALL Java_com_name_app_library_VideoEditer_natives_VideoEditer_flipHorizontally
    (JNIEnv *env, jclass someclass, jstring inputFile, jstring outFile) {

       int numberOfArgs = 14;

       char** arguments = calloc(numberOfArgs, sizeof(char*));
       const char *in, *out;

       in = (*env)->GetStringUTFChars(env, inputFile, 0);
       out = (*env)->GetStringUTFChars(env, outFile, 0);

       arguments[0] = "ffmpeg";
       arguments[1] = "-i";
       arguments[2] = in;
       arguments[3] = "-c:v";
       arguments[4] = "libx264";
       arguments[5] = "-preset";
       arguments[6] = "ultrafast";
       arguments[7] = "-threads";
       arguments[8] = "5";
       arguments[9] = "-c:a";
       arguments[10] = "copy";
       arguments[11] = "-vf";
       arguments[12] = "hflip";
       arguments[13] = out;

       int i;
       for (i = 0; i < numberOfArgs; i++) {
           log_message(arguments[i]);
       }
       log_message("Printed all");

       main(numberOfArgs, arguments);
       free(arguments);
       (*env)->ReleaseStringUTFChars(env, inputFile, in);
       (*env)->ReleaseStringUTFChars(env, outFile, out);

       return 0;
    }

    FFmpeg Commands that runs on android, working very fast on emaulator but very slow on real device.

    Also another thing to confusing my mind is output of ./configure command.
    When i open the (e.g) ffmpeg-3.3.4-arm64-v8a folder and run ./configure command in terminal. Output says ARCH   x86 (generic). For all platform output is the same ARCH   x86 (generic).

    Output of ./configure command in ffmpeg-3.3.4-arm64-v8a folder

    install prefix            /usr/local
    source path               .
    C compiler                gcc
    C library                 glibc
    ARCH                      x86 (generic)
    big-endian                no
    runtime cpu detection     yes
    yasm                      yes
    MMX enabled               yes
    MMXEXT enabled            yes
    3DNow! enabled            yes
    3DNow! extended enabled   yes
    SSE enabled               yes
    SSSE3 enabled             yes
    AESNI enabled             yes
    AVX enabled               yes
    XOP enabled               yes
    FMA3 enabled              yes
    FMA4 enabled              yes
    i686 features enabled     yes
    CMOV is fast              yes
    EBX available             yes
    EBP available             yes
    debug symbols             yes
    strip symbols             yes
    optimize for size         no
    optimizations             yes
    static                    yes
    shared                    no
    postprocessing support    no
    network support           yes
    threading support         pthreads
    safe bitstream reader     yes
    texi2html enabled         no
    perl enabled              yes
    pod2man enabled           yes
    makeinfo enabled          no
    makeinfo supports HTML    no

    External libraries:
    iconv            xlib

    EDIT all of these steps made on ubuntu then moved all folders to the windows. So dont be confuse about paths.

    With all of these steps i want to ask is, is there anything wrong on my steps. Should i follow any other way or not ? Why the ffmpeg is running slower on real device. I am wondering one thing badly, how retrica, snapchat, instagram recording video as mirrored flipping ? Are they flipping after recorded (if they are how are they doing this in a second) or are they recording a video as flipped in run time ? I guess building ffmpeg for android is bit messy and making wrong things is very easy. If you look my steps, questions and give me an advice, i will be much appreciated.

  • merge 4 videos and put audio in different tracks/channels

    4 septembre 2013, par Gijserman

    I'm pretty new to ffmpeg, so I'm having a bit of a struggle.

    I have found a way to merge 4 videos into one side-by-side video grid (2x2) with following code :

    ffmpeg -y -i vid1.mp4 -i vid2.mp4 -i vid3.mp4 -i vid4.mp4 -filter_complex "[0:0]pad=iw*2:ih*2[a];[1:0]null[b];[2:0]null[c];[3:0]null[d];[a][b]overlay=w[x];[x][c]overlay=0:h[y];[y][d]overlay=w:h" multiple_input_grid.mp4

    What I would like to do is distribute the audio of each video as follows

    • Audio from vid1 to audiotrack 1 -> left channel
    • Audio from vid2 to audiotrack 1 -> right channel
    • Audio from vid3 to audiotrack 2 -> left channel
    • Audio from vid4 to audiotrack 2 -> right channel

    So multiple_input_grid.mp4 will have 2 audio tracks with different left/right audio

    Is there a way of doing this in ffmpeg ?

    Thanks

    The command I'm using (this should have 4 different sources, but has 4x the same) :

    C:\Users\Gijs\Documents\ffmpeg-20130820-git-68b63a3-win64-static\bin>ffmpeg -y -
    i VIDEO0050.mp4 -i VIDEO0050.mp4 -i VIDEO0050.mp4 -i VIDEO0050.mp4 -filter_compl
    ex "[0:0]pad=iw*2:ih*2[a];[1:0]null[b];[2:0]null[c];[3:0]null[d];[a][b]overlay=w
    [x];[x][c]overlay=0:h[y];[y][d]overlay=w:h" multiple_input_grid.mp4

    Output :

    ffmpeg version N-55644-g68b63a3 Copyright (c) 2000-2013 the FFmpeg developers
     built on Aug 19 2013 20:32:00 with gcc 4.7.3 (GCC)
     configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-av
    isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enab
    le-iconv --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetyp
    e --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --ena
    ble-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-l
    ibopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libsp
    eex --enable-libtheora --enable-libtwolame --enable-libvo-aacenc --enable-libvo-
    amrwbenc --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxavs --
    enable-libxvid --enable-zlib
     libavutil      52. 42.100 / 52. 42.100
     libavcodec     55. 28.100 / 55. 28.100
     libavformat    55. 13.103 / 55. 13.103
     libavdevice    55.  3.100 / 55.  3.100
     libavfilter     3. 82.100 /  3. 82.100
     libswscale      2.  5.100 /  2.  5.100
     libswresample   0. 17.103 /  0. 17.103
     libpostproc    52.  3.100 / 52.  3.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'VIDEO0050.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 0
       compatible_brands: isom3gp4
       creation_time   : 2013-08-13 13:32:27
     Duration: 00:00:28.35, start: 0.000000, bitrate: 5298 kb/s
       Stream #0:0(eng): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yu
    v420p, 720x1280, 5001 kb/s, SAR 65536:65536 DAR 9:16, 29.40 fps, 30.17 tbr, 90k
    tbn, 180k tbc
       Metadata:
         creation_time   : 2013-08-13 13:32:27
         handler_name    : VideoHandle
       Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 95 k
    b/s
       Metadata:
         creation_time   : 2013-08-13 13:32:27
         handler_name    : SoundHandle
    Input #1, mov,mp4,m4a,3gp,3g2,mj2, from 'VIDEO0050.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 0
       compatible_brands: isom3gp4
       creation_time   : 2013-08-13 13:32:27
     Duration: 00:00:28.35, start: 0.000000, bitrate: 5298 kb/s
       Stream #1:0(eng): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yu
    v420p, 720x1280, 5001 kb/s, SAR 65536:65536 DAR 9:16, 29.40 fps, 30.17 tbr, 90k
    tbn, 180k tbc
       Metadata:
         creation_time   : 2013-08-13 13:32:27
         handler_name    : VideoHandle
       Stream #1:1(eng): Audio: aac (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 95 k
    b/s
       Metadata:
         creation_time   : 2013-08-13 13:32:27
         handler_name    : SoundHandle
    Input #2, mov,mp4,m4a,3gp,3g2,mj2, from 'VIDEO0050.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 0
       compatible_brands: isom3gp4
       creation_time   : 2013-08-13 13:32:27
     Duration: 00:00:28.35, start: 0.000000, bitrate: 5298 kb/s
       Stream #2:0(eng): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yu
    v420p, 720x1280, 5001 kb/s, SAR 65536:65536 DAR 9:16, 29.40 fps, 30.17 tbr, 90k
    tbn, 180k tbc
       Metadata:
         creation_time   : 2013-08-13 13:32:27
         handler_name    : VideoHandle
       Stream #2:1(eng): Audio: aac (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 95 k
    b/s
       Metadata:
         creation_time   : 2013-08-13 13:32:27
         handler_name    : SoundHandle
    Input #3, mov,mp4,m4a,3gp,3g2,mj2, from 'VIDEO0050.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 0
       compatible_brands: isom3gp4
       creation_time   : 2013-08-13 13:32:27
     Duration: 00:00:28.35, start: 0.000000, bitrate: 5298 kb/s
       Stream #3:0(eng): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yu
    v420p, 720x1280, 5001 kb/s, SAR 65536:65536 DAR 9:16, 29.40 fps, 30.17 tbr, 90k
    tbn, 180k tbc
       Metadata:
         creation_time   : 2013-08-13 13:32:27
         handler_name    : VideoHandle
       Stream #3:1(eng): Audio: aac (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 95 k
    b/s
       Metadata:
         creation_time   : 2013-08-13 13:32:27
         handler_name    : SoundHandle
    [libx264 @ 0000000002788fc0] using SAR=1/1
    [libx264 @ 0000000002788fc0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2
    AVX
    [libx264 @ 0000000002788fc0] profile High, level 5.0
    [libx264 @ 0000000002788fc0] 264 - core 135 r2345 f0c1c53 - H.264/MPEG-4 AVC cod
    ec - Copyleft 2003-2013 - http://www.videolan.org/x264.html - options: cabac=1 r
    ef=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed
    _ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pski
    p=1 chroma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 deci
    mate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_
    adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=2
    5 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.6
    0 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
    Output #0, mp4, to 'multiple_input_grid.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 0
       compatible_brands: isom3gp4
       encoder         : Lavf55.13.103
       Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 1440x2
    560 [SAR 1:1 DAR 9:16], q=-1--1, 11584 tbn, 30.17 tbc
       Stream #0:1(eng): Audio: aac (libvo_aacenc) ([64][0][0][0] / 0x0040), 44100
    Hz, mono, s16, 128 kb/s
       Metadata:
         creation_time   : 2013-08-13 13:32:27
         handler_name    : SoundHandle
    Stream mapping:
     Stream #0:0 (h264) -> pad (graph 0)
     Stream #1:0 (h264) -> null (graph 0)
     Stream #2:0 (h264) -> null (graph 0)
     Stream #3:0 (h264) -> null (graph 0)
     overlay (graph 0) -> Stream #0:0 (libx264)
     Stream #0:1 -> #0:1 (aac -> libvo_aacenc)
    Press [q] to stop, [?] for help
    frame=   19 fps=0.0 q=0.0 size=       0kB time=00:00:00.94 bitrate=   0.4kbits/s
    frame=   42 fps= 41 q=0.0 size=       0kB time=00:00:01.64 bitrate=   0.2kbits/s
    frame=   46 fps= 23 q=0.0 size=       0kB time=00:00:01.76 bitrate=   0.2kbits/s
    frame=   54 fps= 21 q=29.0 size=     179kB time=00:00:01.99 bitrate= 735.9kbits/
    frame=   58 fps= 19 q=29.0 size=     338kB time=00:00:02.22 bitrate=1245.2kbits/
    frame=   65 fps= 17 q=29.0 size=     546kB time=00:00:02.34 bitrate=1908.9kbits/
    frame=   73 fps= 16 q=29.0 size=     778kB time=00:00:02.57 bitrate=2476.6kbits/
    frame=   80 fps= 16 q=29.0 size=     927kB time=00:00:02.92 bitrate=2599.0kbits/
    frame=   85 fps= 15 q=29.0 size=    1089kB time=00:00:02.92 bitrate=3053.5kbits/
    frame=   91 fps= 14 q=29.0 size=    1268kB time=00:00:03.15 bitrate=3293.1kbits/
    frame=   99 fps= 14 q=29.0 size=    1481kB time=00:00:03.50 bitrate=3462.3kbits/
    frame=  107 fps= 14 q=29.0 size=    1666kB time=00:00:03.73 bitrate=3653.1kbits/
    frame=  115 fps= 14 q=29.0 size=    1898kB time=00:00:03.96 bitrate=3919.8kbits/
    frame=  123 fps= 13 q=29.0 size=    2121kB time=00:00:04.19 bitrate=4137.0kbits/
    frame=  130 fps= 13 q=29.0 size=    2267kB time=00:00:04.43 bitrate=4190.3kbits/
    frame=  135 fps= 13 q=29.0 size=    2428kB time=00:00:04.66 bitrate=4265.3kbits/
    frame=  143 fps= 13 q=29.0 size=    2625kB time=00:00:04.89 bitrate=4392.4kbits/
    frame=  149 fps= 13 q=29.0 size=    2783kB time=00:00:05.01 bitrate=4548.5kbits/
    frame=  155 fps= 13 q=29.0 size=    2984kB time=00:00:05.36 bitrate=4560.0kbits/
    frame=  163 fps= 13 q=29.0 size=    3195kB time=00:00:05.59 bitrate=4680.1kbits/
    frame=  171 fps= 13 q=29.0 size=    3396kB time=00:00:05.82 bitrate=4776.1kbits/
    frame=  179 fps= 13 q=29.0 size=    3573kB time=00:00:06.05 bitrate=4832.0kbits/
    frame=  186 fps= 13 q=29.0 size=    3785kB time=00:00:06.28 bitrate=4929.5kbits/
    frame=  192 fps= 13 q=29.0 size=    3949kB time=00:00:06.52 bitrate=4960.0kbits/
    frame=  200 fps= 13 q=29.0 size=    4150kB time=00:00:06.75 bitrate=5033.0kbits/
    frame=  206 fps= 13 q=29.0 size=    4306kB time=00:00:06.87 bitrate=5134.7kbits/
    frame=  212 fps= 12 q=29.0 size=    4513kB time=00:00:07.21 bitrate=5121.3kbits/
    frame=  220 fps= 12 q=29.0 size=    4707kB time=00:00:07.45 bitrate=5175.1kbits/
    frame=  228 fps= 12 q=29.0 size=    4918kB time=00:00:07.68 bitrate=5244.0kbits/
    frame=  235 fps= 12 q=29.0 size=    5068kB time=00:00:07.91 bitrate=5245.4kbits/
    frame=  241 fps= 12 q=29.0 size=    5249kB time=00:00:08.14 bitrate=5277.5kbits/
    frame=  248 fps= 12 q=29.0 size=    5444kB time=00:00:08.37 bitrate=5321.9kbits/
    frame=  256 fps= 12 q=29.0 size=    5666kB time=00:00:08.61 bitrate=5390.4kbits/
    frame=  264 fps= 12 q=29.0 size=    5869kB time=00:00:08.84 bitrate=5436.2kbits/
    frame=  268 fps= 12 q=29.0 size=    5976kB time=00:00:09.07 bitrate=5393.6kbits/
    frame=  276 fps= 12 q=29.0 size=    6201kB time=00:00:09.30 bitrate=5457.8kbits/
    frame=  284 fps= 12 q=29.0 size=    6416kB time=00:00:09.54 bitrate=5509.1kbits/
    frame=  292 fps= 12 q=29.0 size=    6622kB time=00:00:09.77 bitrate=5551.1kbits/
    frame=  297 fps= 12 q=29.0 size=    6744kB time=00:00:10.00 bitrate=5521.7kbits/
    frame=  306 fps= 12 q=29.0 size=    7125kB time=00:00:10.23 bitrate=5701.5kbits/
    frame=  314 fps= 12 q=29.0 size=    7364kB time=00:00:10.46 bitrate=5762.2kbits/
    frame=  321 fps= 12 q=29.0 size=    7540kB time=00:00:10.70 bitrate=5771.5kbits/
    frame=  327 fps= 12 q=29.0 size=    7732kB time=00:00:11.04 bitrate=5732.3kbits/
    frame=  331 fps= 12 q=29.0 size=    7834kB time=00:00:11.16 bitrate=5747.2kbits/
    frame=  337 fps= 12 q=29.0 size=    8025kB time=00:00:11.28 bitrate=5827.0kbits/
    frame=  342 fps= 12 q=29.0 size=    8191kB time=00:00:11.39 bitrate=5887.2kbits/
    frame=  349 fps= 12 q=29.0 size=    8395kB time=00:00:11.63 bitrate=5912.9kbits/
    frame=  357 fps= 12 q=29.0 size=    8648kB time=00:00:11.97 bitrate=5914.6kbits/
    frame=  365 fps= 12 q=29.0 size=    8908kB time=00:00:12.21 bitrate=5976.1kbits/
    frame=  372 fps= 12 q=29.0 size=    9100kB time=00:00:12.44 bitrate=5991.4kbits/
    frame=  377 fps= 12 q=29.0 size=    9281kB time=00:00:12.55 bitrate=6054.1kbits/
    frame=  382 fps= 12 q=29.0 size=    9435kB time=00:00:12.79 bitrate=6042.7kbits/
    frame=  389 fps= 12 q=29.0 size=    9633kB time=00:00:13.02 bitrate=6059.2kbits/
    frame=  397 fps= 12 q=29.0 size=    9864kB time=00:00:13.25 bitrate=6096.3kbits/
    frame=  405 fps= 12 q=29.0 size=   10104kB time=00:00:13.48 bitrate=6137.0kbits/
    frame=  412 fps= 12 q=29.0 size=   10289kB time=00:00:13.83 bitrate=6091.8kbits/
    frame=  417 fps= 12 q=29.0 size=   10465kB time=00:00:13.95 bitrate=6144.6kbits/
    frame=  424 fps= 12 q=29.0 size=   10691kB time=00:00:14.18 bitrate=6174.5kbits/
    frame=  429 fps= 12 q=29.0 size=   10895kB time=00:00:14.30 bitrate=6241.0kbits/
    frame=  434 fps= 12 q=29.0 size=   11068kB time=00:00:14.41 bitrate=6289.4kbits/
    frame=  441 fps= 12 q=29.0 size=   11281kB time=00:00:14.76 bitrate=6258.8kbits/
    frame=  448 fps= 12 q=29.0 size=   11507kB time=00:00:14.99 bitrate=6285.4kbits/
    frame=  453 fps= 12 q=29.0 size=   11713kB time=00:00:15.11 bitrate=6348.8kbits/
    frame=  460 fps= 12 q=29.0 size=   11936kB time=00:00:15.34 bitrate=6372.2kbits/
    frame=  464 fps= 12 q=29.0 size=   12124kB time=00:00:15.57 bitrate=6375.6kbits/
    frame=  471 fps= 12 q=29.0 size=   12394kB time=00:00:15.80 bitrate=6422.1kbits/
    frame=  474 fps= 12 q=29.0 size=   12519kB time=00:00:15.80 bitrate=6486.8kbits/
    frame=  481 fps= 12 q=29.0 size=   12790kB time=00:00:16.04 bitrate=6531.2kbits/
    frame=  488 fps= 12 q=29.0 size=   13020kB time=00:00:16.27 bitrate=6553.7kbits/
    frame=  493 fps= 11 q=29.0 size=   13261kB time=00:00:16.50 bitrate=6581.2kbits/
    frame=  499 fps= 11 q=29.0 size=   13430kB time=00:00:16.73 bitrate=6572.9kbits/
    frame=  504 fps= 11 q=29.0 size=   13643kB time=00:00:16.85 bitrate=6631.1kbits/
    frame=  508 fps= 11 q=29.0 size=   13788kB time=00:00:16.97 bitrate=6655.8kbits/
    frame=  514 fps= 11 q=29.0 size=   13995kB time=00:00:17.08 bitrate=6709.5kbits/
    frame=  519 fps= 11 q=29.0 size=   14187kB time=00:00:17.43 bitrate=6665.6kbits/
    frame=  525 fps= 11 q=29.0 size=   14402kB time=00:00:17.55 bitrate=6722.0kbits/
    frame=  531 fps= 11 q=29.0 size=   14653kB time=00:00:17.78 bitrate=6750.1kbits/
    frame=  537 fps= 11 q=29.0 size=   14909kB time=00:00:17.89 bitrate=6823.4kbits/
    frame=  544 fps= 11 q=29.0 size=   15172kB time=00:00:18.13 bitrate=6854.6kbits/
    frame=  553 fps= 11 q=29.0 size=   15667kB time=00:00:18.48 bitrate=6945.0kbits/
    frame=  558 fps= 11 q=29.0 size=   15829kB time=00:00:18.59 bitrate=6972.8kbits/
    frame=  564 fps= 11 q=29.0 size=   16067kB time=00:00:18.82 bitrate=6990.6kbits/
    frame=  570 fps= 11 q=29.0 size=   16264kB time=00:00:18.94 bitrate=7033.1kbits/
    frame=  576 fps= 11 q=29.0 size=   16530kB time=00:00:19.29 bitrate=7019.1kbits/
    frame=  582 fps= 11 q=29.0 size=   16754kB time=00:00:19.40 bitrate=7071.5kbits/
    frame=  588 fps= 11 q=29.0 size=   17015kB time=00:00:19.64 bitrate=7096.9kbits/
    frame=  595 fps= 11 q=29.0 size=   17255kB time=00:00:19.87 bitrate=7112.8kbits/
    frame=  601 fps= 11 q=29.0 size=   17491kB time=00:00:19.98 bitrate=7168.3kbits/
    frame=  606 fps= 11 q=29.0 size=   17659kB time=00:00:20.22 bitrate=7153.8kbits/
    frame=  611 fps= 11 q=29.0 size=   17835kB time=00:00:20.45 bitrate=7143.0kbits/
    frame=  618 fps= 11 q=29.0 size=   18125kB time=00:00:20.56 bitrate=7218.1kbits/
    frame=  624 fps= 11 q=29.0 size=   18306kB time=00:00:20.80 bitrate=7208.9kbits/
    frame=  631 fps= 11 q=29.0 size=   18510kB time=00:00:21.15 bitrate=7169.4kbits/
    frame=  638 fps= 11 q=29.0 size=   18771kB time=00:00:21.26 bitrate=7230.6kbits/
    frame=  644 fps= 11 q=29.0 size=   18953kB time=00:00:21.49 bitrate=7221.9kbits/
    frame=  647 fps= 11 q=29.0 size=   19065kB time=00:00:21.61 bitrate=7225.8kbits/
    frame=  653 fps= 11 q=29.0 size=   19312kB time=00:00:21.73 bitrate=7280.0kbits/
    frame=  660 fps= 11 q=29.0 size=   19499kB time=00:00:22.07 bitrate=7234.8kbits/
    frame=  666 fps= 11 q=29.0 size=   19717kB time=00:00:22.19 bitrate=7277.2kbits/
    frame=  673 fps= 11 q=29.0 size=   19897kB time=00:00:22.42 bitrate=7267.7kbits/
    frame=  679 fps= 11 q=29.0 size=   20081kB time=00:00:22.54 bitrate=7297.2kbits/
    frame=  685 fps= 11 q=29.0 size=   20324kB time=00:00:22.89 bitrate=7273.1kbits/
    frame=  692 fps= 11 q=29.0 size=   20536kB time=00:00:23.12 bitrate=7275.0kbits/
    frame=  700 fps= 11 q=29.0 size=   20776kB time=00:00:23.47 bitrate=7251.0kbits/
    frame=  707 fps= 11 q=29.0 size=   20948kB time=00:00:23.58 bitrate=7275.1kbits/
    frame=  711 fps= 11 q=29.0 size=   21160kB time=00:00:23.70 bitrate=7312.5kbits/
    frame=  716 fps= 11 q=29.0 size=   21299kB time=00:00:23.82 bitrate=7324.8kbits/
    frame=  722 fps= 11 q=29.0 size=   21472kB time=00:00:24.16 bitrate=7277.8kbits/
    frame=  728 fps= 11 q=29.0 size=   21674kB time=00:00:24.28 bitrate=7311.2kbits/
    frame=  736 fps= 11 q=29.0 size=   21912kB time=00:00:24.63 bitrate=7287.1kbits/
    frame=  744 fps= 11 q=29.0 size=   22163kB time=00:00:24.86 bitrate=7301.6kbits/
    frame=  749 fps= 11 q=29.0 size=   22354kB time=00:00:24.98 bitrate=7330.2kbits/
    frame=  755 fps= 11 q=29.0 size=   22555kB time=00:00:25.09 bitrate=7362.0kbits/
    frame=  761 fps= 11 q=29.0 size=   22739kB time=00:00:25.33 bitrate=7354.2kbits/
    frame=  767 fps= 11 q=29.0 size=   23006kB time=00:00:25.56 bitrate=7372.7kbits/
    frame=  774 fps= 11 q=29.0 size=   23232kB time=00:00:25.79 bitrate=7378.2kbits/
    frame=  781 fps= 11 q=29.0 size=   23464kB time=00:00:26.02 bitrate=7385.5kbits/
    frame=  788 fps= 11 q=29.0 size=   23711kB time=00:00:26.14 bitrate=7430.0kbits/
    frame=  792 fps= 11 q=29.0 size=   23853kB time=00:00:26.25 bitrate=7441.6kbits/
    frame=  799 fps= 11 q=29.0 size=   24083kB time=00:00:26.60 bitrate=7414.9kbits/
    frame=  806 fps= 11 q=29.0 size=   24519kB time=00:00:26.83 bitrate=7483.7kbits/
    frame=  813 fps= 11 q=29.0 size=   24713kB time=00:00:27.07 bitrate=7478.3kbits/
    frame=  818 fps= 11 q=29.0 size=   24926kB time=00:00:27.18 bitrate=7510.7kbits/
    frame=  823 fps= 11 q=29.0 size=   25074kB time=00:00:27.41 bitrate=7491.2kbits/
    frame=  830 fps= 11 q=29.0 size=   25314kB time=00:00:27.65 bitrate=7499.2kbits/
    frame=  836 fps= 11 q=29.0 size=   25541kB time=00:00:27.76 bitrate=7535.0kbits/
    frame=  841 fps= 11 q=29.0 size=   25669kB time=00:00:28.00 bitrate=7510.0kbits/
    frame=  850 fps= 11 q=29.0 size=   25971kB time=-577014:-32:-22.-77 bitrate=N/A
    frame=  850 fps= 10 q=-1.0 Lsize=   27415kB time=00:00:28.37 bitrate=7915.7kbits
    /s dup=21 drop=0
    video:26940kB audio:444kB subtitle:0 global headers:0kB muxing overhead 0.113344
    %
    [libx264 @ 0000000002788fc0] frame I:4     Avg QP:20.92  size:166382
    [libx264 @ 0000000002788fc0] frame P:246   Avg QP:23.11  size: 60370
    [libx264 @ 0000000002788fc0] frame B:600   Avg QP:26.45  size: 20116
    [libx264 @ 0000000002788fc0] consecutive B-frames:  4.2%  1.9%  9.2% 84.7%
    [libx264 @ 0000000002788fc0] mb I  I16..4: 12.5% 73.1% 14.4%
    [libx264 @ 0000000002788fc0] mb P  I16..4:  1.9%  3.4%  0.5%  P16..4: 55.6% 14.5
    %  7.5%  0.0%  0.0%    skip:16.6%
    [libx264 @ 0000000002788fc0] mb B  I16..4:  0.2%  0.3%  0.1%  B16..8: 43.8%  3.9
    %  0.8%  direct: 2.9%  skip:48.0%  L0:50.7% L1:46.7% BI: 2.6%
    [libx264 @ 0000000002788fc0] 8x8 transform intra:60.5% inter:79.4%
    [libx264 @ 0000000002788fc0] coded y,uvDC,uvAC intra: 50.1% 56.3% 11.6% inter: 1
    4.5% 16.6% 0.1%
    [libx264 @ 0000000002788fc0] i16 v,h,dc,p: 35% 23% 12% 31%
    [libx264 @ 0000000002788fc0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 28% 15% 25%  6%  4%
    5%  4%  9%  5%
    [libx264 @ 0000000002788fc0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 37% 14% 13%  6%  6%
    7%  4%  8%  4%
    [libx264 @ 0000000002788fc0] i8c dc,h,v,p: 61% 14% 21%  3%
    [libx264 @ 0000000002788fc0] Weighted P-Frames: Y:2.8% UV:2.0%
    [libx264 @ 0000000002788fc0] ref P L0: 58.0%  6.9% 26.5%  8.4%  0.1%
    [libx264 @ 0000000002788fc0] ref B L0: 86.3% 10.7%  3.0%
    [libx264 @ 0000000002788fc0] ref B L1: 93.4%  6.6%
    [libx264 @ 0000000002788fc0] kb/s:7832.26