Recherche avancée

Médias (91)

Autres articles (29)

  • 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 (...)

  • Contribute to documentation

    13 avril 2011

    Documentation is vital to the development of improved technical capabilities.
    MediaSPIP welcomes documentation by users as well as developers - including : critique of existing features and functions articles contributed by developers, administrators, content producers and editors screenshots to illustrate the above translations of existing documentation into other languages
    To contribute, register to the project users’ mailing (...)

  • Ajouter notes et légendes aux images

    7 février 2011, par

    Pour pouvoir ajouter notes et légendes aux images, la première étape est d’installer le plugin "Légendes".
    Une fois le plugin activé, vous pouvez le configurer dans l’espace de configuration afin de modifier les droits de création / modification et de suppression des notes. Par défaut seuls les administrateurs du site peuvent ajouter des notes aux images.
    Modification lors de l’ajout d’un média
    Lors de l’ajout d’un média de type "image" un nouveau bouton apparait au dessus de la prévisualisation (...)

Sur d’autres sites (3060)

  • Reading JPEG in ffmpeg

    23 octobre 2012, par Paul Lammertsma

    I'm trying to get ffmpeg to encode several individual JPEG images into a video on Android. I've successfully built it for Android (see the configuration string at the end of this post).

    I can encode an h.263+ video with randomly generated frame content, and ffmpeg otherwise appears to work well.

    A similar question suggests that the following code should be sufficient to load an image into an AvFrame :

    // Make sure we have the codecs
    av_register_all();

    AVFormatContext *pFormatCtx;
    int ret = av_open_input_file(&pFormatCtx, imageFileName, NULL, 0, NULL);

    if (ret != 0) {
       printf("Can't open image file '%s': code %d, %s",
           imageFileName, ret, strerror(AVERROR(ret)));
    }

    The above returns the correct absolute file path and error :

    Failed '/sdcard/DCIM/Camera/IMG083.jpg' : code -1094995529, Unknown error : 1094995529

    Incidentally, if I omit av_register_all(), it returns with error 2.

    I've compiled ffmpeg with the following arguments :

    ./configure —target-os=linux
    —prefix=$PREFIX
    —enable-cross-compile
    —extra-libs="-lgcc"
    —arch=arm
    —cc=$PREBUILT/bin/arm-linux-androideabi-gcc
    —cross-prefix=$PREBUILT/bin/arm-linux-androideabi-
    —nm=$PREBUILT/bin/arm-linux-androideabi-nm
    —sysroot=$PLATFORM
    —extra-cflags=" -O3 -fpic -DANDROID -DHAVE_SYS_UIO_H=1 -Dipv6mr_interface=ipv6mr_ifindex -fasm -Wno-psabi -fno-short-enums -fno-strict-aliasing -finline-limit=300 $OPTIMIZE_CFLAGS "
    —enable-shared
    —enable-static
    —extra-ldflags="-Wl,-rpath-link=$PLATFORM/usr/lib -L$PLATFORM/usr/lib -nostdlib -lc -lm -ldl -llog"
    —disable-everything
    —enable-demuxer=mov
    —enable-demuxer=h264
    —disable-ffplay
    —enable-protocol=file
    —enable-avformat
    —enable-avcodec
    —enable-decoder=mjpeg
    —enable-decoder=png
    —enable-parser=h264
    —enable-encoder=h263
    —enable-encoder=h263p
    —disable-network
    —enable-zlib
    —disable-avfilter
    —disable-avdevice

    Any suggestions would be most welcome !

  • Reading JPEG in ffmpeg

    16 juillet 2021, par Paul Lammertsma

    I'm trying to get ffmpeg to encode several individual JPEG images into a video on Android. I've successfully built it for Android (see the configuration string at the end of this post).

    



    I can encode an h.263+ video with randomly generated frame content, and ffmpeg otherwise appears to work well.

    



    A similar question suggests that the following code should be sufficient to load an image into an AvFrame :

    



    // Make sure we have the codecs
av_register_all();

AVFormatContext *pFormatCtx;
int ret = av_open_input_file(&pFormatCtx, imageFileName, NULL, 0, NULL);

if (ret != 0) {
    printf("Can't open image file '%s': code %d, %s",
        imageFileName, ret, strerror(AVERROR(ret)));
}


    



    The above returns the correct absolute file path and error :

    



    


    Failed '/sdcard/DCIM/Camera/IMG083.jpg' : code -1094995529, Unknown error : 1094995529

    


    



    Incidentally, if I omit av_register_all(), it returns with error 2.

    



    I've compiled ffmpeg with the following arguments :

    



    

    


    ./configure —target-os=linux 
 —prefix=$PREFIX 
 —enable-cross-compile 
 —extra-libs="-lgcc" 
 —arch=arm 
 —cc=$PREBUILT/bin/arm-linux-androideabi-gcc 
 —cross-prefix=$PREBUILT/bin/arm-linux-androideabi- 
 —nm=$PREBUILT/bin/arm-linux-androideabi-nm 
 —sysroot=$PLATFORM 
 —extra-cflags=" -O3 -fpic -DANDROID -DHAVE_SYS_UIO_H=1 -Dipv6mr_interface=ipv6mr_ifindex -fasm -Wno-psabi -fno-short-enums -fno-strict-aliasing -finline-limit=300 $OPTIMIZE_CFLAGS " 
 —enable-shared 
 —enable-static 
 —extra-ldflags="-Wl,-rpath-link=$PLATFORM/usr/lib -L$PLATFORM/usr/lib -nostdlib -lc -lm -ldl -llog" 
 —disable-everything 
 —enable-demuxer=mov 
 —enable-demuxer=h264 
 —disable-ffplay 
 —enable-protocol=file 
 —enable-avformat 
 —enable-avcodec 
 —enable-decoder=mjpeg 
 —enable-decoder=png 
 —enable-parser=h264 
 —enable-encoder=h263 
 —enable-encoder=h263p 
 —disable-network 
 —enable-zlib 
 —disable-avfilter 
 —disable-avdevice

    


    


    



    Any suggestions would be most welcome !

    


  • OpenCV videocapture() not opening video file from hard disk

    8 janvier 2020, par Rossi Riccardo

    Despite being a lot of threads on the issue of open CV not being able to open videos i still can’t manage to solve it.

    I’m trying to open and extract frames using openCV with spyder (os : windows 10, python 3.7.4). As far as i know (provided the file path is correct) cv2.read returns a 0 if either the codec is unsupported (converted the video to H264 to be sure and also downloaded a test avi used to test out this very issue in an older post ) or if there is a problem with the ffmpeg dependency.

    Since i thought this was the source of the issue i added conda and phyton to the PATH with the SETX command and, after that, ended up copying ffmpeg dll and cv2 folders everywhere since i couldn’t understand well were i was supposed to paste it. Results is that i still can’t make it work and can’t even opt to try to make the frame extractor directly with ffmpeg since even that one gives me an error with a copypasted function from it’s site.

    Here is the code :

    import os
    import ffmpeg


    def read_frame_as_jpeg(in_filename, frame_num):
       out, err = (
           ffmpeg
           .input(in_filename)
           .filter('select', 'gte(n,{})'.format(frame_num))
           .output('pipe:', vframes=1, format='image2', vcodec='mjpeg')
           .run(capture_stdout=True)
       )

    # Read the video from specified path
    #cam = cv2.VideoCapture(r'C:\MY\folder\264H.mp4')
    cam = cv2.VideoCapture(r'C:\Users\name\Downloads\drop.avi')
    fps=60
    vid_start=371
    vid_end=377
    sens=20
    out_dir=r"C:\MY\folder"
    out_dir=out_dir+'\\'
    print(out_dir)

    stri="drop.avi"#even tried putting the fiel in the same directory, no change
    read_frame_as_jpeg(stri, 1)

    # frame
    currentframe = 0

    while(True):

       # reading from frame
       ret,frame = cam.read()

       print(currentframe)
       if ret and currentframe>= (fps*vid_start)-sens and currentframe<= (fps*vid_end)+sens:
           # if video is still left continue creating images
           name = out_dir+ str(currentframe) + '.bmp'
           print ('Creating...' + name)

           # writing the extracted images
           cv2.imwrite(name, frame)

           # increasing counter so that it will
           # show how many frames are created
           currentframe += 1
       else:
           break

    # Release all space and windows once done
    cam.release()
    cv2.destroyAllWindows()  

    The ffpeg error that i get is

    [WinError 2] Impossible to find the specified file

    while on the other hand since videocapture returns a 0 it doesn’t even enter the loop so i get just a "0" print