Recherche avancée

Médias (1)

Mot : - Tags -/publicité

Autres articles (48)

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

  • 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

  • Support audio et vidéo HTML5

    10 avril 2011

    MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
    Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
    Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
    Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)

Sur d’autres sites (7224)

  • 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

    


  • 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

    


  • 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