Recherche avancée

Médias (1)

Mot : - Tags -/bug

Autres articles (101)

  • Qualité du média après traitement

    21 juin 2013, par

    Le bon réglage du logiciel qui traite les média est important pour un équilibre entre les partis ( bande passante de l’hébergeur, qualité du média pour le rédacteur et le visiteur, accessibilité pour le visiteur ). Comment régler la qualité de son média ?
    Plus la qualité du média est importante, plus la bande passante sera utilisée. Le visiteur avec une connexion internet à petit débit devra attendre plus longtemps. Inversement plus, la qualité du média est pauvre et donc le média devient dégradé voire (...)

  • Dépôt de média et thèmes par FTP

    31 mai 2013, par

    L’outil MédiaSPIP traite aussi les média transférés par la voie FTP. Si vous préférez déposer par cette voie, récupérez les identifiants d’accès vers votre site MédiaSPIP et utilisez votre client FTP favori.
    Vous trouverez dès le départ les dossiers suivants dans votre espace FTP : config/ : dossier de configuration du site IMG/ : dossier des média déjà traités et en ligne sur le site local/ : répertoire cache du site web themes/ : les thèmes ou les feuilles de style personnalisées tmp/ : dossier de travail (...)

  • Prérequis à l’installation

    31 janvier 2010, par

    Préambule
    Cet article n’a pas pour but de détailler les installations de ces logiciels mais plutôt de donner des informations sur leur configuration spécifique.
    Avant toute chose SPIPMotion tout comme MediaSPIP est fait pour tourner sur des distributions Linux de type Debian ou dérivées (Ubuntu...). Les documentations de ce site se réfèrent donc à ces distributions. Il est également possible de l’utiliser sur d’autres distributions Linux mais aucune garantie de bon fonctionnement n’est possible.
    Il (...)

Sur d’autres sites (7115)

  • Http Streaming from ffmpeg, How to get a sequenced packet ?

    10 septembre 2011, par manutd

    I am trying to make http streaming program.
    So I follow this code at this.
    However, when i decode, only one frame is decoded.
    I think I need call back function.
    Do you know how to make a call back function ?
    I know 'asf' packet's call back function is like int read_data(void *opaque, char *buf, int buf_size)

    But the other formats(mp3, ogg, aac, ..) doesn't work..

    Please help me.

    Any advice or comment are very appreciated.

    #include
    #include
    #include <libavcodec></libavcodec>avcodec.h>
    #include <libavformat></libavformat>avformat.h>
    #include <libavdevice></libavdevice>avdevice.h>

    int main(int argc, char **argv)
    {
           static AVInputFormat *file_iformat;
           static AVFormatContext *pFormatCtx;
           AVFormatParameters params;

           AVCodecContext *pCodecCtx;
           AVCodec *pCodec;

           const char url[] = "http://listen.radionomy.com/feelingfloyd";

           avcodec_register_all();
           avdevice_register_all();
           av_register_all();

           av_log_set_level(AV_LOG_VERBOSE);

           file_iformat = av_find_input_format("mp3"); /* mp3 demuxer */
           if (!file_iformat)
           {
                   fprintf(stderr, "Unknown input format: %s\n", &amp;url[0]);
                   exit(1);
           }

           //file_iformat->flags |= AVFMT_NOFILE; /* ??? */
           params.prealloced_context = 0;

           if (av_open_input_file(&amp;pFormatCtx, &amp;url[0], file_iformat, 0, &amp;params) != 0)
           {
                   fprintf(stderr, "err 1\n");
                   exit(2);
           }

           /* poulates AVFormatContex structure */
           if (av_find_stream_info(pFormatCtx) &lt; 0)
           {
                   fprintf(stderr, "err 2\n");
           }

           /* sanity check (1 stream) */
           if (pFormatCtx->nb_streams != 1 &amp;&amp;
                           pFormatCtx->streams[0]->codec->codec_type != AVMEDIA_TYPE_AUDIO)
           {
                   fprintf(stderr, "err 3\n");
           }

           pCodecCtx = pFormatCtx->streams[0]->codec;

           /* find decoder for input audio stream */
           pCodec = avcodec_find_decoder(pCodecCtx->codec_id);
           if (pCodec == NULL)
           {
                   fprintf(stderr, "err 4: unsupported codec\n");
           }

           if (pCodec->capabilities &amp; CODEC_CAP_TRUNCATED)
                   pCodecCtx->flags |= CODEC_FLAG_TRUNCATED;

           if (avcodec_open(pCodecCtx, pCodec) &lt; 0)
           {
                   fprintf(stderr, "err 5\n");
           }

           {
                   uint8_t *pAudioBuffer;
                   AVPacket pkt;

                   int ret;
                   int data_size = 2 * AVCODEC_MAX_AUDIO_FRAME_SIZE;

                   av_init_packet(&amp;pkt);
                   //pkt.data=NULL;
                   //pkt.size=0;
                   //pkt.stream_index = 0;

                   pAudioBuffer = av_malloc(data_size * sizeof(int16_t));

                   while (av_read_frame(pFormatCtx, &amp;pkt) == 0) {
                           //data_size = AVCODEC_MAX_AUDIO_FRAME_SIZE;
                           ret = avcodec_decode_audio3(pFormatCtx->streams[pkt.stream_index]->codec,
                                           (int16_t *)pAudioBuffer, &amp;data_size, &amp;pkt);

                           /* got an error (-32) here */
                           if (ret &lt; 0) {
                                   av_strerror(ret, (char *)pAudioBuffer, data_size);
                                   fprintf(stderr, "err 6 (%s)\n", pAudioBuffer);
                                   break;
                           }

                           printf("size=%d, stream_index=%d |ret=%d data_size=%d\n",
                                           pkt.size, pkt.stream_index, ret, data_size);
                           av_free_packet(&amp;pkt);
                   }

                   av_free(pAudioBuffer);
           }

           avcodec_close(pCodecCtx);
           av_close_input_file(pFormatCtx);

           return 0;
    }
  • Node.js Stream Mp3 to http without having to save file

    10 janvier 2019, par user2758113

    I am trying to stream just audio from a youtube link straight to http with node.js.

    My code looks like this, I am using express 4.0.

    var express = require('express');
    var router = express.Router();
    var ytdl = require('ytdl');
    var ffmpeg = require('fluent-ffmpeg');
    var fs = require('fs');

    router.get('/', function(req, res) {

     var url = 'https://www.youtube.com/watch?v=GgcHlZsOgQo';
     var video = ytdl(url)

     res.set({
         "Content-Type": "audio/mpeg"
     })

     new ffmpeg({source: video})
         .toFormat('mp3')
         .writeToStream(res, function(data, err) {
           if (err) console.log(err)
         })

    });

    module.exports = router;

    Now, I’m able to stream the video’s audio to the response if I save the file then pipe it to the response, but I’d rather try to figure out some way to go from downloading to ffmpeg to response.

    Not sure if this is possible. The main goal is to keep it as light weight as possible, and not have to read from files.

    I’ve seen this code which is essentially what I’d like to do minus the saving to a file part.

    part of the error

  • avformat/dashenc : Support HTTP Persistent for master.m3u8 as well

    18 octobre 2018, par kjeyapal@akamai.com
    avformat/dashenc : Support HTTP Persistent for m3u8 as well
    
    • [DH] libavformat/dashenc.c