Recherche avancée

Médias (91)

Autres articles (58)

  • Soumettre améliorations et plugins supplémentaires

    10 avril 2011

    Si vous avez développé une nouvelle extension permettant d’ajouter une ou plusieurs fonctionnalités utiles à MediaSPIP, faites le nous savoir et son intégration dans la distribution officielle sera envisagée.
    Vous pouvez utiliser la liste de discussion de développement afin de le faire savoir ou demander de l’aide quant à la réalisation de ce plugin. MediaSPIP étant basé sur SPIP, il est également possible d’utiliser le liste de discussion SPIP-zone de SPIP pour (...)

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

  • MediaSPIP v0.2

    21 juin 2013, par

    MediaSPIP 0.2 est la première version de MediaSPIP stable.
    Sa date de sortie officielle est le 21 juin 2013 et est annoncée ici.
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Comme pour la version précédente, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

Sur d’autres sites (8609)

  • lavf : introduce AVFMT_TS_NEGATIVE

    3 avril 2013, par Luca Barbato
    lavf : introduce AVFMT_TS_NEGATIVE
    

    Most formats do not support negative timestamps, shift them to avoid
    unexpected behaviour and a number of bad crashes.

    CC:libav-stable@libav.org

    Signed-off-by : Anton Khirnov <anton@khirnov.net>
    Signed-off-by : Luca Barbato <lu_zero@gentoo.org>

    • [DBH] libavformat/avformat.h
    • [DBH] libavformat/ffmenc.c
    • [DBH] libavformat/framecrcenc.c
    • [DBH] libavformat/md5enc.c
    • [DBH] libavformat/mux.c
    • [DBH] libavformat/oggenc.c
    • [DBH] tests/ref/lavf/asf
    • [DBH] tests/ref/lavf/mkv
    • [DBH] tests/ref/lavf/mpg
    • [DBH] tests/ref/lavf/ts
    • [DBH] tests/ref/seek/lavf-asf
    • [DBH] tests/ref/seek/lavf-mkv
    • [DBH] tests/ref/seek/lavf-mpg
    • [DBH] tests/ref/seek/lavf-ts
  • Read/write to stream with JavaCV

    4 juillet 2013, par Zielony

    I'm trying to make use of JavaCV for android. I would like to create a video stream composed of screenshots. I found out that I can write a file using FFmpegFrameRecorder, but I can't write to a stream, array, buffer, or anything else, other than a file.

    Next thing is that I found a piece of code featuring custom FrameRecorder using 'avio_alloc_context' and read/write/seek callbacks. Unfortunately it's only a snippet and it's in C++. 'avio_alloc_context' method on android takes Read_packet, Read_packet and Seek callbacks, so I cannot pass a Write_packet callback. Moreover, right after 'avio_alloc_context' call, I get 'finalize' called on all objects passed to 'avio_alloc_context'.

    final VideoOutputStream videoOutputStream = new VideoOutputStream(stream);

    Read_packet read_packet = new Read_packet() {
       @Override
       public int call(Pointer arg0, BytePointer arg1, int arg2) {
           VideoOutputStream videoStream = (VideoOutputStream) arg0;
           try {
               videoStream.write(arg1.getStringBytes());
           } catch (IOException e) {
               e.printStackTrace();
           }
           return arg2;
       }
    };

    AVIOContext pb = avio_alloc_context(new MBytePointer(av_malloc(video_outbuf_size)), video_outbuf_size, 1,videoOutputStream, null, read_packet, null);

    oc.pb(pb);

    Using the above code nothing crashes nor reports errors. I just keep getting empty files.

    My question is - does anyone of you guys managed to get it working ? Do you know a correct way to initialize custom reading/writing in FrameRecorder/Grabber in JavaCV ?

  • How to save an SDL bitmap to memory and load it back ?

    19 novembre 2012, par Nav

    I have a bunch of RWops functions :

    static int myseekfunc(SDL_RWops *context, int offset, int whence) { SDL_SetError("Can&#39;t seek in this kind of RWops"); return(-1); }
    static int myreadfunc(SDL_RWops *context, void *ptr, int size, int maxnum) { memset(ptr,0,size*maxnum); return(maxnum); }
    static int mywritefunc(SDL_RWops *context, const void *ptr, int size, int num) { return(num); }
    static int myclosefunc(SDL_RWops *context)
    {
     if(context->type != 0xdeadbeef) { SDL_SetError("Wrong kind of RWops for myclosefunc()"); return(-1); }
     free(context->hidden.unknown.data1);
     SDL_FreeRW(context);
     return(0);
    }

    // Note that this function is NOT static -- we want it directly callable from other source files
    SDL_RWops *MyCustomRWop()
    {
     SDL_RWops *c=SDL_AllocRW();
     if(c==NULL) return(NULL);

     c->seek =myseekfunc;
     c->read =myreadfunc;
     c->write=mywritefunc;
     c->close=myclosefunc;
     c->type =0xdeadbeef;
     printf("deadbeef=%d\n",c->type);
     c->hidden.unknown.data1=malloc(256);//IS THIS CORRECT?
     return(c);
    }

    with which I'm trying to write a BMP into memory and then extract it back. The below code is from tutorial02.
    Two problems I'm facing are :
    1. Unless I call SDL_DisplayYUVOverlay, the SDL_SaveBMP function outputs a blank BMP file to the hard disk. How can I output a BMP file without having to call SDL_DisplayYUVOverlay ?
    2. Although I'm able to save the BMP to memory with SDL_SaveBMP_RW and free the memory with filestream->close, I'm unable to load the BMP back from memory with SDL_SaveBMP. The application crashes while trying to load it. Is it because of the c->hidden.unknown.data1=malloc(256); code above ? What would be the right way of allocating this memory ?

     AVFormatContext *pFormatCtx = NULL;
     int             i, videoStream;
     AVCodecContext  *pCodecCtx = NULL;
     AVCodec         *pCodec = NULL;
     AVFrame         *pFrame = NULL;
     AVPacket        packet;
     SDL_Overlay     *bmp = NULL;
     SDL_Surface     *screen = NULL;
     SDL_Surface     *screen2 = NULL;
     SDL_Rect        rect;
    ....
    ....    
    if(frameFinished)

    {
    SDL_LockYUVOverlay(bmp);//-----------lock

    AVPicture pict;
    pict.data[0] = bmp->pixels[0];
    pict.data[1] = bmp->pixels[2];
    pict.data[2] = bmp->pixels[1];

    pict.linesize[0] = bmp->pitches[0];
    pict.linesize[1] = bmp->pitches[2];
    pict.linesize[2] = bmp->pitches[1];

    // Convert the image into YUV format that SDL uses
    sws_scale( sws_ctx, (uint8_t const * const *)pFrame->data, pFrame->linesize, 0, pCodecCtx->height, pict.data, pict.linesize );

    SDL_UnlockYUVOverlay(bmp);//-----------unlock

    rect.x = 0;
    rect.y = 0;
    rect.w = pCodecCtx->width;
    rect.h = pCodecCtx->height;
    SDL_DisplayYUVOverlay(bmp, &amp;rect);
    ++i;

    SDL_RWops *filestream = MyCustomRWop();//SDL_AllocRW();
    SDL_SaveBMP_RW (screen, filestream, i);
    screen2 = SDL_LoadBMP_RW(filestream,1);//LOADING IS THE PROBLEM HERE. DON&#39;T KNOW WHY
    filestream->close;
    SDL_SaveBMP(screen, filepointer);