Recherche avancée

Médias (39)

Mot : - Tags -/audio

Autres articles (62)

  • Submit bugs and patches

    13 avril 2011

    Unfortunately a software is never perfect.
    If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
    If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
    You may also (...)

  • 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

  • Emballe médias : à quoi cela sert ?

    4 février 2011, par

    Ce plugin vise à gérer des sites de mise en ligne de documents de tous types.
    Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ;

Sur d’autres sites (9466)

  • Building a shared library from static libraries for ffmpeg 2.5.2

    7 janvier 2015, par abijinx

    I am currently building a shared library for ffmpeg as myffmpeg.so using ffmpeg 0.8.6. I am achieving by combining static libs of individual modules of ffmpeg, along with a few additional static libraries. The main makefile used is as follows :

    LOCAL_PATH := $(call my-dir)

    include $(LOCAL_PATH)/Android_Files.mk

    include $(CLEAR_VARS)
    LOCAL_MODULE:= libavcodec
    LOCAL_SRC_FILES:= $(MY_AVCODEC_FILES)
    include $(LOCAL_PATH)/Android_Common.mk
    include $(BUILD_STATIC_LIBRARY)

    include $(CLEAR_VARS)
    LOCAL_MODULE:= libavfilter
    LOCAL_SRC_FILES:= $(MY_AVFILTER_FILES)
    include $(LOCAL_PATH)/Android_Common.mk
    include $(BUILD_STATIC_LIBRARY)

    include $(CLEAR_VARS)
    LOCAL_MODULE:= libavformat
    LOCAL_SRC_FILES:= $(MY_AVFORMAT_FILES)
    include $(LOCAL_PATH)/Android_Common.mk
    include $(BUILD_STATIC_LIBRARY)

    include $(CLEAR_VARS)
    LOCAL_MODULE:= libavutil
    LOCAL_SRC_FILES:= $(MY_AVUTIL_FILES)
    include $(LOCAL_PATH)/Android_Common.mk
    include $(BUILD_STATIC_LIBRARY)

    include $(CLEAR_VARS)
    LOCAL_MODULE:= libswscale
    LOCAL_SRC_FILES:= $(MY_SWSCALE_FILES)
    include $(LOCAL_PATH)/Android_Common.mk
    include $(BUILD_STATIC_LIBRARY)

    include $(CLEAR_VARS)
    LOCAL_MODULE:= ffmpeg_myc
    LOCAL_SRC_FILES:= ffmpeg.c cmdutils.c
    include $(LOCAL_PATH)/Android_Common.mk
    include $(BUILD_STATIC_LIBRARY)

    include $(CLEAR_VARS)
    LOCAL_MODULE := myffmpeg
    LOCAL_WHOLE_STATIC_LIBRARIES := libavcodec libavfilter libavformat libavutil libswscale ffmpeg_c
    LOCAL_LDFLAGS += -lz -lm -llog
    ifeq ($(FF_ENABLE_AMR),yes)
    LOCAL_WHOLE_STATIC_LIBRARIES += opencore-amrnb opencore-amrwb
    endif
    ifeq ($(FF_ENABLE_AAC),yes)
    LOCAL_WHOLE_STATIC_LIBRARIES += vo-aacenc
    endif

    include $(BUILD_SHARED_LIBRARY)

    The above makefile uses only few selected source files to get the individual static libs as mentioned in the FF_SOURCE_FILES parameter.Then combines all of those with the additional libs to create a shared library myffmpeg.so.

    Now I am trying to get a similar output with ffmpeg 2.5.2 for 64-bit arm architecture. This time I have built the latest ffmpeg using the following configure script and generated the static libraries of different ffmpeg modules like libavcodec.a, libavfilter.a, etc

    #!/bin/bash
    ABI=aarch64-linux-android
    NDK=
    SYSROOT=$NDK/platforms/android-21/arch-arm64/
    TOOLCHAIN=$NDK/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64
    CPU=arm64
    PREFIX=$(pwd)/android/$CPU
    ./configure \
    --prefix=$PREFIX \
    --cc=$TOOLCHAIN/bin/$ABI-gcc \
    --enable-static \
    --disable-doc \
    --disable-ffmpeg \
    --disable-ffplay \
    --disable-ffprobe \
    --disable-network \
    --disable-ffserver \
    --disable-devices \
    --disable-avdevice \
    --disable-swscale-alpha \
    --disable-doc \
    --disable-symver \
    --disable-neon \
    --enable-optimizations \
    --cross-prefix=$TOOLCHAIN/bin/aarch64-linux-android- \
    --target-os=linux \
    --arch=arm64 \
    --enable-cross-compile \
    --sysroot=$SYSROOT

       --enable-libopencore-amrnb \
       --enable-libopencore-amrwb \
       --enable-libvo-aacenc \
       $ADDITIONAL_CONFIGURE_FLAG
    make clean
    make
    make install

    Now I am trying to combine the generated static libraries i.e

    • libavcodec.a
      libavfilter.a
      libavformat.a
      libavutil.a
      libswresample.a
      libswscale.a
      with

    • ffmpeg_myc opencore-amrnb opencore-amrwb

    and generate a myffmpeg.so shared library by giving ndk-build.

    I tried to paste the generated ffmpeg static libraries from ffmpeg/android folder to obj/local/arm64-v8a (path where are all the static libs were previously created in 0.8.6 according the makefile). I also made changes to the makefile thinking that it will use the already generated ffmpeg libraries. But I found that the size of the generated shared library was too low and that it has not included the generated ffmpeg libs.

    LOCAL_PATH := $(call my-dir)
    include $(CLEAR_VARS)
    LOCAL_MODULE := myffmpeg
    LOCAL_WHOLE_STATIC_LIBRARIES := libavcodec libavfilter libavformat libavutil libswscale ffmpeg_c
    LOCAL_LDFLAGS += -lz -lm -llog
    ifeq ($(FF_ENABLE_AMR),yes)
    LOCAL_WHOLE_STATIC_LIBRARIES += opencore-amrnb opencore-amrwb
    endif
    ifeq ($(FF_ENABLE_AAC),yes)
    LOCAL_WHOLE_STATIC_LIBRARIES += vo-aacenc
    endif

    include $(BUILD_SHARED_LIBRARY)

    I would like to know whether I am going in a right way and have to do some minor changes. Or if I should start with an entirely different approach to achieve this. Any suggestions would be helpful.

    Thanks in advance

  • FFmpeg corrupted output from concatenation

    25 juillet 2021, par Manumit

    EDIT/UPDATE : current solution is to run this code on all files ffmpeg -i up.mp4 -vf scale=1920:1080 -crf 22 reUP.mp4 so resolution, but also frames per second match.

    


    enter image description here

    


    I used to be able to open CMD, type CD C:\Users\... and then ffmpeg -f concat -safe 0 -i xmylist.txt -crf 22 -c copy x1.mp4

    


    xmylist

    


    The recording are from same phone, some from front cam, some from back cam. I understand this could cause non-identical problems ? but it worked fine until recently.

    


    Now the output is corrupted with this log : enter image description here
The individual video files play just fine, so does most of the concatted output, but some sections become like this and freeze : enter image description here

    


  • Fastest way to extract moving dynamic crop from video using ffmpeg

    5 avril 2024, par NateW

    I'm working on an AI project that involves object detection and action recognition on roughly 30 minute videos.

    


    My pipeline is the following :

    


      

    • determine crops using object detection model
    • 


    • extract crops using Python and write them to disk as individual images for each frame.
    • 


    • use action recognition model by inputting a series of the crops.
    • 


    


    The models are fast but actual writing of the crops to disk is slow. Sure, using an SSD would speed it up but I'm sure ffmpeg would greatly speed it up.

    


    Some of the challenges with the crops :

    


      

    • the output size is always 128x128
    • 


    • the input size is variable
    • 


    • the crop moves on every frame
    • 


    


    My process for extracting crops is simple using cv2.imwrite(output_crop_path, crop) in a for loop.

    


    I've done experiments trying to use sndcommand and filter_complex. I tried this https://stackoverflow.com/a/67508233/4447761 but it outputs an image with black below the crop and the image gets wrapped around on the x axis.

    


    enter image description here