Recherche avancée

Médias (3)

Mot : - Tags -/pdf

Autres articles (58)

  • Keeping control of your media in your hands

    13 avril 2011, par

    The vocabulary used on this site and around MediaSPIP in general, aims to avoid reference to Web 2.0 and the companies that profit from media-sharing.
    While using MediaSPIP, you are invited to avoid using words like "Brand", "Cloud" and "Market".
    MediaSPIP is designed to facilitate the sharing of creative media online, while allowing authors to retain complete control of their work.
    MediaSPIP aims to be accessible to as many people as possible and development is based on expanding the (...)

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

  • Mise à disposition des fichiers

    14 avril 2011, par

    Par défaut, lors de son initialisation, MediaSPIP ne permet pas aux visiteurs de télécharger les fichiers qu’ils soient originaux ou le résultat de leur transformation ou encodage. Il permet uniquement de les visualiser.
    Cependant, il est possible et facile d’autoriser les visiteurs à avoir accès à ces documents et ce sous différentes formes.
    Tout cela se passe dans la page de configuration du squelette. Il vous faut aller dans l’espace d’administration du canal, et choisir dans la navigation (...)

Sur d’autres sites (9905)

  • Revision 29188 : 2 options de plus pour personnaliser la page d’activation de la mutu : * ...

    15 juin 2009, par real3t@… — Log

    2 options de plus pour personnaliser la page d’activation de la mutu :
    * ’branding’ : texte libre en HTML
    * ’branding_logo’ => logo (sous forme de HTML)

  • Libav Transcoding to H264 : Frames being dropped

    21 juin 2014, par roman

    I’m sorry if my question isn’t too well formulated, I’m only now getting started with FFmpeg and Libav. I’m not too knowledgable about media formats either, I pretty much learned all I know about the topic this past month. I’ve been doing as much research as I can, and have gotten pretty far, but I’ve only now gotten to the point where I’m almost unsure what my question actually is ! These are more like observations, but hopefully some of the experts can help me out here.

    I’m trying to transcode Gifs into MP4s using FFmpeg’s libraries, but I’m running into a strange issue when using the H264 Codec. In my transcoding loop, I keep a count of the number of frames that I write out (by verifying the return value of av_write_frame). In a particular sample, I count a total of 166 frames written out. If I examine FFmpeg’s converted file using FFprobe (the functionality I’m wanting to emulate using my program, a conversion from Gif to MP4), FFmpeg’s output file also seems to have 166 frames, but when I examine my output with FFprobe, I seem to only have 144 frames. What I find a bit interesting is that if I simply change my codec from H264 to MPEG4, my output appears to have the 166 frames, matching FFmpeg’s output and my counter. I get very similar results with different Gif files, where my counter of frames written matches FFmpeg’s output’s frame count, but my output seems to drop some frames.

    Encoder settings :

    ostream_codec_context->codec_id = CODEC_IN_USE;  //CODEC_ID_H264 or CODEC_ID_MPEG4
    ostream_codec_context->pix_fmt = AV_PIX_FMT_YUV420P;
    ostream_codec_context->codec_type = AVMEDIA_TYPE_VIDEO;
    ostream_codec_context->flags = CODEC_FLAG_GLOBAL_HEADER;
    ostream_codec_context->profile = FF_PROFILE_MPEG4_SIMPLE;

    ostream_codec_context->gop_size = istream_codec_context->gop_size;
    ostream_codec_context->time_base = istream_codec_context->time_base;

    ostream_codec_context->width  = (istream_codec_context->width  / 2) * 2;
    ostream_codec_context->height = (istream_codec_context->height / 2) * 2;    

    Transcoding loop :

    I’ve omitted some error-checking code and debugging statements

    avformat_write_header(oformat_context, NULL);
    while (av_read_frame(iformat_context, &packet) == 0 )
    {
      if (packet.stream_index == istream_index)
      {  
         avcodec_decode_video2(istream_codec_context, ipicture, &full_frame, &packet);
         if (full_frame)
         {
            sws_scale(image_conversion_context,
                      (uint8_t const * const *) ipicture->data,
                      ipicture->linesize, 0, istream_codec_context->height,
                      opicture->data, opicture->linesize);

            opicture->pts = av_rescale_q(packet.pts, istream_codec_context->time_base,
                                         ostream->time_base);

            ret = avcodec_encode_video2(ostream_codec_context, &packet,
                                        opicture, &got_packet);
            if (!ret)
            {
               ret = av_write_frame(oformat_context, &packet);
               if (ret < 0)
                  num_frames_written++;
            }
         }
      }
      av_free_packet(&packet);
      av_init_packet(&packet);
    }

    I’m also having issues with my output’s bit-rate. I can try setting it with the rest of my encoder settings, but the bit-rate that FFprobe shows is not the same as what I give the codec context. I tried setting the bit-rate to constant values just to see how it affected my output, and although my output’s bit-rate isn’t the same as what I give it, I found that my input definitely seems to influence the output’s actual bit-rate. I found a post that seems to be dealing with my issue, but the solution listed there does not seem to fix my issue.

    http://ffmpeg.org/pipermail/libav-user/2012-July/002492.html

    Another thing worth mentioning is that my various time bases don’t seem to match up with those of FFmpeg’s output. Notably, my output’s TBC seems to be twice the inverse of my output codec context’s time base. I’m not too sure if this is an issue with the Gif file format, my output codec context’s always seems to be set to 1/100.

    Bit-rate calculation and setting

    int calculated_br = istream_codec_context->time_base.den *    
                       avpicture_get_size(AV_PIX_FMT_YUV420P, ostream_codec_context->width,
                                          ostream_codec_context->height);    

    ostream_codec_context->bit_rate = calculated_br;
    ostream_codec_context->rc_min_rate = calculated_br;
    ostream_codec_context->rc_max_rate = calculated_br;
    ostream_codec_context->rc_buffer_size = calculated_br;

    I’ve got a hunch that all these issues could be related to me not setting my PTS/DTS correctly, even though my output’s pts/dts values match those of FFmpeg’s output.

    I would appreciate some help,
    Thank you !

  • hlsenc : single_file, support HLS ver 4 byteranges

    15 septembre 2014, par Mika Raento
    hlsenc : single_file, support HLS ver 4 byteranges
    

    This adds a new option -hls_flags single_file that creates one .ts file
    for HLS and adds byteranges to the .m3u8 file, instead of creating one
    .ts file for each segment.

    This is helpful at least for storing large number of videos, as the
    number of files per video is drastically reduced and copying and storing
    those files takes less requests and inodes.

    This is based on work by Nicolas Martyanoff, discussed on ffmpeg-devel
    in July 2014. That patch seems abandoned by the author, and contained
    unrelated changes. This patch tries to add the minimum amount of code to
    support the byterange playlists.

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

    • [DH] doc/muxers.texi
    • [DH] libavformat/hlsenc.c