Advanced search

Medias (91)

Other articles (87)

  • MediaSPIP version 0.1 Beta

    16 April 2011, by

    MediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Pour avoir une installation fonctionnelle, 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 (...)

  • Amélioration de la version de base

    13 September 2013

    Jolie sélection multiple
    Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
    Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)

  • Mise à jour de la version 0.1 vers 0.2

    24 June 2013, by

    Explications des différents changements notables lors du passage de la version 0.1 de MediaSPIP à la version 0.3. Quelles sont les nouveautés
    Au niveau des dépendances logicielles Utilisation des dernières versions de FFMpeg (>= v1.2.1); Installation des dépendances pour Smush; Installation de MediaInfo et FFprobe pour la récupération des métadonnées; On n’utilise plus ffmpeg2theora; On n’installe plus flvtool2 au profit de flvtool++; On n’installe plus ffmpeg-php qui n’est plus maintenu au profit de (...)

On other websites (9702)

  • FFMPEG get_buffer2 multi-thread random crash

    4 November 2015, by arnaud

    I’m doing a multi-thread FFMPEG video player. Basically it decodes and display 16 MP4 video files ( using h264 codec ) at the same time, using my own threads / jobs subsystem.
    For future extension I want to provide my own memory buffer for AVFrame decoding. To do this, I simply used get_buffer2 hook method. My get_buffer2 handles currently only use av_malloc & av_free (to validate everything is working ). Here is my handler:

    void our_buffer_default_free(void *opaque, uint8_t *data)
    {
       av_free(data);
    }

    int our_get_buffer(struct AVCodecContext *c, AVFrame *pic, int flags)
    {
       assert(c->codec_type == AVMEDIA_TYPE_VIDEO);

       pic->linesize[0] = pic->width;
       pic->linesize[1] = pic->width/2;
       pic->linesize[2] = pic->width/2;

       void* pYBuffer = av_malloc(pic->linesize[0] * pic->height);
       void* pUBuffer = av_malloc(pic->linesize[1] * pic->height / 2);
       void* pVBuffer = av_malloc(pic->linesize[2] * pic->height / 2);
       assert(pYBuffer);
       assert(pUBuffer);
       assert(pVBuffer);

       pic->data[0] = (uint8_t*)pYBuffer;
       pic->data[1] = (uint8_t*)pUBuffer;
       pic->data[2] = (uint8_t*)pVBuffer;
       pic->buf[0] = av_buffer_create(pic->data[0], pic->linesize[0] * pic->height, our_buffer_default_free, NULL, 0);
       pic->buf[1] = av_buffer_create(pic->data[1], pic->linesize[1] * pic->height / 2, our_buffer_default_free, NULL, 0);
       pic->buf[2] = av_buffer_create(pic->data[2], pic->linesize[2] * pic->height / 2, our_buffer_default_free, NULL, 0);
       return 0;
    }
    • If I don’t hook get_buffer2 (keep ffmpeg use its own AVFrame memory allocation) and activate my multithread job system, everything is running ok ( no crash)
    • If I hook get_buffer2 with the code provided and multi-thread activated, I get some random crashs ( after few seconds or minutes, random )
    • If I hook get_buffer2 without multi-thread activated, everything is running ok (no crash)

    So it seems the way I hook "get_buffer2" is not thread safe, but I just don’t see why. ( I guess av_malloc & av_free are threadsafe on windows platform)

    Any idea?

    PS: I don’t have many details on the crash because I’m using a pre-compiled FFMPEG. It often crash in avcodec57.dll. I’m using windows 64bits system, my app & FMMPEG binaries are both 32bits. Details about FFMPEG version used:

    Zeranoe's FFmpeg Builds Home Page: /ffmpeg.zeranoe.com/builds/>

    FFmpeg version: 20151103-git-6df2c94
     libavutil      54. 30.100 / 54. 30.100
     libavcodec     56. 57.100 / 56. 57.100
     libavformat    56. 40.101 / 56. 40.101
     libavdevice    56.  4.100 / 56.  4.100
     libavfilter     5. 32.100 /  5. 32.100
     libswscale      3.  1.101 /  3.  1.101
     libswresample   1.  2.101 /  1.  2.101
     libpostproc    53.  3.100 / 53.  3.100
  • avfilter/af_astats: fix possible crash because of undefined float to integer rounding

    11 January 2021, by Marton Balint
    avfilter/af_astats: fix possible crash because of undefined float to integer rounding
    

    Fixes ticket #9049.

    Signed-off-by: Marton Balint <cus@passwd.hu>

    • [DH] libavfilter/af_astats.c
  • FFMPEG avformat_open_input() function causes program to crash

    22 December 2019, by helong jin

    carsh code VS2019 windows7.ffmpeg4.2.