Recherche avancée

Médias (3)

Mot : - Tags -/spip

Autres articles (107)

  • Diogene : création de masques spécifiques de formulaires d’édition de contenus

    26 octobre 2010, par

    Diogene est un des plugins ? SPIP activé par défaut (extension) lors de l’initialisation de MediaSPIP.
    A quoi sert ce plugin
    Création de masques de formulaires
    Le plugin Diogène permet de créer des masques de formulaires spécifiques par secteur sur les trois objets spécifiques SPIP que sont : les articles ; les rubriques ; les sites
    Il permet ainsi de définir en fonction d’un secteur particulier, un masque de formulaire par objet, ajoutant ou enlevant ainsi des champs afin de rendre le formulaire (...)

  • Gestion des droits de création et d’édition des objets

    8 février 2011, par

    Par défaut, beaucoup de fonctionnalités sont limitées aux administrateurs mais restent configurables indépendamment pour modifier leur statut minimal d’utilisation notamment : la rédaction de contenus sur le site modifiables dans la gestion des templates de formulaires ; l’ajout de notes aux articles ; l’ajout de légendes et d’annotations sur les images ;

  • MediaSPIP 0.1 Beta version

    25 avril 2011, par

    MediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

Sur d’autres sites (8593)

  • ffmpeg and timecode from movie metadata

    17 décembre 2015, par T4ng10r

    I want to add to movie made by digital camcorder timecode. This timecodes are visible during playback in camera, some tool to extract and visualize EXIF metadata also display them.

    I made few attempts to configure ffmpeg, but only succeed in adding CURRENT PC time, not time from file.

    ffmpeg -y -i S1480002.MP4 -vf "drawtext=fontfile=arial.ttf :expansion=normal: text=%{metadata\\:creation_time}: \ x=(w-tw)/2: y=h-(2*lh): fontcolor=white@0.8" output.mp4

    I need to extract creation time from input file metadata. ffprobe display this time, but ffmpeg don’t.

  • Audio encoding using avcodec_fill_audio_frame() and memory leaks

    7 mai 2014, par praks411

    As a part of encoding decoded audio packets, I’m using avcodec_fill_audio_frame(). I’m passing allocated AVFrame pointer to along with buffer containing the decoded samples and other parameters number of channels, sample format, buffer size. Though the encoding is working fine I’m not able to completely eliminate the memory leaks. I’ve taken care of most of things but still I’m not able detect the leakage.
    Below is the function which I’m using for encoding. Please suggest something.
    AudioSample contains decoded data and it is completely managed in different class(free in class destructor). I’m freeing the AVFrame in FFmpegEncoder destructor and AVPacket is freed every time using av_free_packet() with av_packet_destruct enabled. What more do I need to free ?

    void FfmpegEncoder::WriteAudioSample(AudioSample *audS)
    {


       int num_audio_frame = 0;
       AVCodecContext *c = NULL;
      // AVFrame *frame;
       AVPacket pkt;

       av_init_packet(&pkt);
       pkt.destruct = av_destruct_packet;
       pkt.data = NULL;
       pkt.size = 0;
       int ret = 0, got_packet = 0;
       c = m_out_aud_strm->codec;
        static int64_t aud_pts_in = -1;

       if((audS != NULL) && (audS->GetSampleLength() > 0) )
       {
           int byte_per_sample = av_get_bytes_per_sample(c->sample_fmt);

           PRINT_VAL("Byte Per Sample ", byte_per_sample)
           m_frame->nb_samples = (audS->GetSampleLength())/(c->channels*av_get_bytes_per_sample(c->sample_fmt));
           if(m_frame->nb_samples == c->frame_size)
           {  

    #if 1
           if(m_need_resample && (c->channels >= 2))
              {
                  uint8_t * t_buff1 = new uint8_t[audS->GetSampleLength()];
                  if(t_buff1 != NULL)
                   {
                        for(int64_t i = 0; i< m_frame->nb_samples; i++)
                       {
                           memcpy(t_buff1 + i*byte_per_sample, (uint8_t*)((uint8_t*)audS->GetAudioSampleData() + i*byte_per_sample*c->channels), byte_per_sample);
                           memcpy(t_buff1 + (audS->GetSampleLength())/2 + i*byte_per_sample, (uint8_t*)((uint8_t*)audS->GetAudioSampleData() + i*byte_per_sample*c->channels+ byte_per_sample), byte_per_sample);
                       }
                       audS->FillAudioSample(t_buff1, audS->GetSampleLength());
                       delete[] t_buff1;
                   }
               }
    #endif
               ret = avcodec_fill_audio_frame(m_frame, c->channels, c->sample_fmt, (uint8_t*)audS->GetAudioSampleData(),m_frame->nb_samples*byte_per_sample*c->channels, 0);
               //ret = avcodec_fill_audio_frame(&frame, c->channels, c->sample_fmt, t_buff,frame.nb_samples*byte_per_sample*c->channels, 0);
               if(ret != 0)
               {
                   PRINT_MSG("Avcodec Fill Audio Failed ")
               }
               else
               {
                   got_packet = 0;
                   ret = avcodec_encode_audio2(c, &pkt, m_frame, &got_packet);
                   if(ret < 0 || got_packet == 0)
                   {
                       PRINT_MSG("failed to encode audio ")    
                   }
                   else
                   {
                       PRINT_MSG("Audio Packet Encoded ");
                       aud_pts_in++;
                       pkt.pts = aud_pts_in;
                       pkt.dts = pkt.pts;
                       pkt.stream_index = m_out_aud_strm->index;

                       ret = av_interleaved_write_frame(oc, &pkt);
                       if(ret != 0)
                       {
                           PRINT_MSG("Error Write Audio PKT ")    
                       }
                       else
                       {
                           PRINT_MSG("Audio PKT Writen ")    
                       }
                   }
                }
           }
           avcodec_flush_buffers(c);
        //   avcodec_free_frame(&frame);
        }

        av_free_packet(&pkt);
    }

    Thanks,
    Pradeep

  • tools/trasher : Check fseek returns

    22 février 2015, par Michael Niedermayer
    tools/trasher : Check fseek returns
    

    Fixes CID733726

    Signed-off-by : Michael Niedermayer <michaelni@gmx.at>

    • [DH] tools/trasher.c