Recherche avancée

Médias (91)

Autres articles (48)

  • Participer à sa traduction

    10 avril 2011

    Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
    Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
    Actuellement MediaSPIP n’est disponible qu’en français et (...)

  • La file d’attente de SPIPmotion

    28 novembre 2010, par

    Une file d’attente stockée dans la base de donnée
    Lors de son installation, SPIPmotion crée une nouvelle table dans la base de donnée intitulée spip_spipmotion_attentes.
    Cette nouvelle table est constituée des champs suivants : id_spipmotion_attente, l’identifiant numérique unique de la tâche à traiter ; id_document, l’identifiant numérique du document original à encoder ; id_objet l’identifiant unique de l’objet auquel le document encodé devra être attaché automatiquement ; objet, le type d’objet auquel (...)

  • Pas question de marché, de cloud etc...

    10 avril 2011

    Le vocabulaire utilisé sur ce site essaie d’éviter toute référence à la mode qui fleurit allègrement
    sur le web 2.0 et dans les entreprises qui en vivent.
    Vous êtes donc invité à bannir l’utilisation des termes "Brand", "Cloud", "Marché" etc...
    Notre motivation est avant tout de créer un outil simple, accessible à pour tout le monde, favorisant
    le partage de créations sur Internet et permettant aux auteurs de garder une autonomie optimale.
    Aucun "contrat Gold ou Premium" n’est donc prévu, aucun (...)

Sur d’autres sites (5898)

  • How to fix "Unable to find a suitable output format for '/'" error in ffmpeg running with PHP [on hold]

    4 avril 2019, par C.Pietro

    I want to compress video on the server after the upload.
    I installed correctly ffmpeg and when i run from the command line

    ffmpeg -i input.mp4 -vcodec libx265 -crf 28 -vcodec h264 -acodec aac -strict -2 output.mp4

    it works !

    But if i run the same command from PHP with exec,

    class VideoCompress {
       function compress($path, $name){
           if (`which ffmpeg`) {
               exec("cd \"$path\";ffmpeg -i \"$name\" -vcodec libx265 -crf 28 -vcodec h264 -acodec aac -strict -2 \"bk_$name\" / 2>&1", $o);
               print_r8($o);
           }
       }
    }

    it fails and return this error

    Array
    (
       [0] => ffmpeg version N-48518-g27c94c57dc-static https://johnvansickle.com/ffmpeg/  Copyright (c) 2000-2019 the FFmpeg developers
       [1] =>   built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516
       [2] =>   configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --cc=gcc-6 --enable-fontconfig --enable-frei0r --enable-gnutls --enable-gmp --enable-gray --enable-libaom --enable-libfribidi --enable-libass --enable-libvmaf --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librubberband --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libdav1d --enable-libxvid --enable-libzvbi --enable-libzimg
       [3] =>   libavutil      56. 26.100 / 56. 26.100
       [4] =>   libavcodec     58. 48.100 / 58. 48.100
       [5] =>   libavformat    58. 26.101 / 58. 26.101
       [6] =>   libavdevice    58.  7.100 / 58.  7.100
       [7] =>   libavfilter     7. 48.100 /  7. 48.100
       [8] =>   libswscale      5.  4.100 /  5.  4.100
       [9] =>   libswresample   3.  4.100 /  3.  4.100
       [10] =>   libpostproc    55.  4.100 / 55.  4.100
       [11] => Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'WebHD_720p.mp4':
       [12] =>   Metadata:
       [13] =>     major_brand     : isom
       [14] =>     minor_version   : 512
       [15] =>     compatible_brands: isomiso2avc1mp41
       [16] =>     encoder         : Lavf57.71.100
       [17] =>   Duration: 00:03:23.22, start: 0.000000, bitrate: 1890 kb/s
       [18] =>     Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 9:10 DAR 8:5], 1754 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
       [19] =>     Metadata:
       [20] =>       handler_name    : VideoHandler
       [21] =>     Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)
       [22] =>     Metadata:
       [23] =>       handler_name    : SoundHandler
       [24] => [NULL @ 0x59fb100] Unable to find a suitable output format for '/'
       [25] => /: Invalid argument
    )

    Any idea on how can i fix it ?

  • need help on solving my ffmpeg command line

    3 avril 2019, par DRMTV

    i create a small bash script to encode 1080p video , the video will be added with watermark at bottom left and i need to add a black padding on top and bottom

    i tried several way but still no luck , i tried -vf and yes it worked but cant use padding and watermark together , and suggest use filter_complex

    if i use this code directly without bash script it work

    time ffmpeg -hide_banner -i transformers.mp4 -i transformers.ass -loop 1 -i watermark.png -loop 1 -i logo.png -map 0:0 -map 0:1 -filter_complex "[0:0]scale=(iw*sar)*min(1920/(iw*sar)\,800/ih):ih*min(1920/(iw*sar)\,800/ih), pad=1920:800:(1920-iw*min(1920/iw\,800/ih))/2:(800-ih*min(1920/iw\,800/ih))/2;ass=transformers.ass[FID1];[FID1][2:v]overlay=10:${WATERMARKPOSITION}:repeatlast=0:enable='between(t,300,600)'[FID3];[3:v]fade=in:st=1200:d=1.6:alpha=1,fade=out:st=107998:d=1.6:alpha=1[FID6];[FID3][FID6]overlay=10:5:repeatlast=0:enable='between(t,1200,187922)'" -c:v libx264 -minrate 1800k -maxrate 1800k -bufsize 3600k -profile:v high -c:a aac -b:a 128k -profile:a aac_main -movflags faststart -strict -2 -f mp4 -y "transformers.mp4"

    but when i include it with my bash script i got this error ,

    [libx264 @ 0x2a063e0] height not divisible by 2 (300x39)
    Output #0, mp4, to '/movie/Paddy/output/Transformers.Age.of.Extinction.2014.1080p.BluRay.H264.AAC-RARBG.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       comment         : Transformers.Age.of.Extinction.2014.1080p.BluRay.H264.AAC-RARBG
       encoder         : Lavf57.71.100
       title           : Transformers Age of Extinction 2014 1080p BluRay H264 AAC-RARBG - Visit us @ Juraganfilm.COM
       Stream #0:0: Video: h264 (libx264), yuv420p, 1920x800 [SAR 1:1 DAR 12:5], q=-1--1, max. 2300 kb/s, 23.98 fps, 23.98 tbn, 23.98 tbc
       Metadata:
         encoder         : Lavc56.60.100 libx264
       Stream #0:1: Video: h264, none, q=2-31, 128 kb/s, SAR 1:1 DAR 0:0, 25 fps
       Metadata:
         encoder         : Lavc56.60.100 libx264
       Stream #0:2(eng): Audio: aac, 0 channels, 128 kb/s (default)
       Metadata:
         creation_time   : 2017-12-19 07:58:39
         handler_name    : SoundHandler
         encoder         : Lavc56.60.100 aac
    Stream mapping:
     Stream #0:0 (h264) -> scale (graph 0)
     Stream #0:0 (h264) -> overlay:overlay (graph 0)
     Stream #2:0 (png) -> ass (graph 0)
     Stream #3:0 (png) -> fade (graph 0)
     pad (graph 0) -> Stream #0:0 (libx264)
     overlay (graph 0) -> Stream #0:1 (libx264)
     Stream #0:1 -> #0:2 (aac (native) -> aac (native))
    Error while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height

    and below is the script i have been working on

    output="/movie/output"

    FILESDIR=`find $PWD -type f -regex ".*\.\(mp4\|mkv\|avi\)" | sed 's@.*/@@' | sort -n`
    for video in $FILESDIR
    do

    MOVIETITLE=${video%.*}
    INFOVID=${MOVIETITLE//./ }
    BITRATE="${HEIGHT}"
    WIDTH=$(ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of csv=s=x:p=0 ${video} 2>&1 | sed -e 's|\[.*||g' | sed ':a;N;$!ba;s/\n//g' | sed -e 's|x.*||g')
    HEIGHT=$(ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of csv=s=x:p=0 ${video} | sed -e 's/.*x//')
    WATERMARKPOSITION=$(expr $HEIGHT - 50)
    VIDEOMAP=$(ffmpeg -i $video 2>&1 | grep "Stream #" | grep Video | sed -e "s|.*\#||g" | sed -e "s|: Video.*||g" | sed -e "s|(.*||g")
    AUDIOMAP=$(ffmpeg -i $video 2>&1 | grep "Stream #" | grep Audio | sed -e "s|.*\#||g" | sed -e "s|: Audio.*||g" | sed -e "s|(.*||g")
    MAXRATE=$(expr $BITRATE + 500)
    BUFFSIZE=$(expr $MAXRATE \* 2)

    time ffmpeg -hide_banner -i $video -i $MOVIETITLE.ass -loop 1 -i $WATERMARK -loop 1 -i $LOGO -map ${VIDEOMAP} -map ${AUDIOMAP} -filter_complex "[${VIDEOMAP}]scale=(iw*sar)*min(${WIDTH}/(iw*sar)\,${HEIGHT}/ih):ih*min(${WIDTH}/(iw*sar)\,${HEIGHT}/ih), pad=${WIDTH}:${HEIGHT}:(${WIDTH}-iw*min(${WIDTH}/iw\,${HEIGHT}/ih))/2:(${HEIGHT}-ih*min(${WIDTH}/iw\,${HEIGHT}/ih))/2;ass=$MOVIETITLE.ass[FID1];[FID1][2:v]overlay=10:${WATERMARKPOSITION}:repeatlast=0:enable='between(t,300,600)'[FID3];[3:v]fade=in:st=1200:d=1.6:alpha=1,fade=out:st=107998:d=1.6:alpha=1[FID6];[FID3][FID6]overlay=10:5:repeatlast=0:enable='between(t,1200,187922)'" -c:v libx264 -minrate ${BITRATE}k -maxrate ${MAXRATE}k -bufsize ${BUFFSIZE}k -profile:v high -c:a aac -b:a 128k -profile:a aac_main -movflags faststart -strict -2 -f mp4 -y "${output}/$MOVIETITLE.mp4"
    done

    has been working all day and still i cant make it to work.

    can someone guide me which part is wrong ?

  • FFMpeg on Android, undefined references to libavcodec functions, although it is listed on command line

    24 mars 2019, par dimsuz

    I have a problem with unresolved references to ffmpeg’s libavcodec functions, so far failed to find the answer in other places (including my mind) :)

    Let me describe my setup - it takes space, but is really basic, it might be that I’m failing to see some error...

    I built an FFMPeg with ndk r5 toolchain, ffmpeg port I got from http://bambuser.com/opensource (as recommended in other questions here). It built fine, so I put several static libraries in my project like this :

    <project>/jni/bambuser_ffmpeg/libavcodec.a
    <project>/jni/bambuser_ffmpeg/libavformat.a
    <project>/jni/bambuser_ffmpeg/libavcore.a
    <project>/jni/bambuser_ffmpeg/libavutil.a
    </project></project></project></project>

    Next, I created an Android.mk in bambuser_ffmpeg folder to list these libs as a prebuilt ones :

    LOCAL_PATH := $(call my-dir)

    include $(CLEAR_VARS)
    LOCAL_MODULE := bambuser-libavcore
    LOCAL_SRC_FILES := libavcore.a
    include $(PREBUILT_STATIC_LIBRARY)

    include $(CLEAR_VARS)
    LOCAL_MODULE := bambuser-libavformat
    LOCAL_SRC_FILES := libavformat.a
    include $(PREBUILT_STATIC_LIBRARY)

    (same for other two libs)

    Next, I have another module which references these libs in its Android.mk, sets up include paths, etc :

    LOCAL_PATH := $(call my-dir)

    include $(CLEAR_VARS)

    LOCAL_MODULE := ffmpegtest
    LOCAL_STATIC_LIBRARIES := bambuser-libavcodec bambuser-libavcore bambuser-libavformat bambuser-libavutil
    LOCAL_SRC_FILES := ffmpeg_test.cpp
    LOCAL_C_INCLUDES := $(LOCAL_PATH)/../bambuser_ffmpeg/include
    LOCAL_LDLIBS    := -llog -lz

    include $(BUILD_SHARED_LIBRARY)

    And finally I have my ffmpeg_test.cpp which is really basic, like this :

    #include

    extern "C" {
    #include <libavcodec></libavcodec>avcodec.h>
    #include <libavformat></libavformat>avformat.h>
    }

    extern "C" {
       JNIEXPORT jint JNICALL Java_com_the7art_ffmpegtest_PaintThread_testFFMpeg(JNIEnv* env, jobject obj, jstring fileName);
    }

    JNIEXPORT jint JNICALL Java_com_the7art_ffmpegtest_PaintThread_testFFMpeg(JNIEnv* env, jobject obj, jstring fileName)
    {
       av_register_all();
       return 0;
    }

    When I run ndk-build, it compiles fine, but when linking it prints an unresolved reference to almost every function in libavcodec. Looks like only this lib’s functions are failing to be located :

    /home/dimka/src/mobile/android/ffmpegtest/obj/local/armeabi/libavformat.a(allformats.o): In function `av_register_all':
    /home/dimka/work/suzy/tmp/ffmpeg-android/ffmpeg/libavformat/allformats.c:47: undefined reference to `avcodec_register_all'
    /home/dimka/src/mobile/android/ffmpegtest/obj/local/armeabi/libavformat.a(utils.o): In function `parse_frame_rate':
    /home/dimka/work/suzy/tmp/ffmpeg-android/ffmpeg/libavformat/utils.c:3240: undefined reference to `av_parse_video_rate'
    /home/dimka/src/mobile/android/ffmpegtest/obj/local/armeabi/libavformat.a(utils.o): In function `parse_image_size':
    /home/dimka/work/suzy/tmp/ffmpeg-android/ffmpeg/libavformat/utils.c:3234: undefined reference to `av_parse_video_size'
    /home/dimka/src/mobile/android/ffmpegtest/obj/local/armeabi/libavformat.a(utils.o): In function `flush_packet_queue':
    /home/dimka/work/suzy/tmp/ffmpeg-android/ffmpeg/libavformat/utils.c:1277: undefined reference to `av_free_packet'
    /home/dimka/work/suzy/tmp/ffmpeg-android/ffmpeg/libavformat/utils.c:1283: undefined reference to `av_free_packet'
    /home/dimka/src/mobile/android/ffmpegtest/obj/local/armeabi/libavformat.a(utils.o): In function `get_audio_frame_size':
    /home/dimka/work/suzy/tmp/ffmpeg-android/ffmpeg/libavformat/utils.c:766: undefined reference to `av_get_bits_per_sample'
    /home/dimka/src/mobile/android/ffmpegtest/obj/local/armeabi/libavformat.a(utils.o): In function `ff_interleave_add_packet':
    /home/dimka/work/suzy/tmp/ffmpeg-android/ffmpeg/libavformat/utils.c:2909: undefined reference to `av_dup_packet'
    and so on...

    I fail to figure why this is happening. I tried running ndk-build V=1 to check the actual linking command, and libavcodec is sitting there perfectly right, like it should. All other ffmpeg libs are there too.

    Any hints ?