Recherche avancée

Médias (91)

Autres articles (86)

  • Encoding and processing into web-friendly formats

    13 avril 2011, par

    MediaSPIP automatically converts uploaded files to internet-compatible formats.
    Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
    Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
    Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
    All uploaded files are stored online in their original format, so you can (...)

  • Le profil des utilisateurs

    12 avril 2011, par

    Chaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
    L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...)

  • Configurer la prise en compte des langues

    15 novembre 2010, par

    Accéder à la configuration et ajouter des langues prises en compte
    Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
    De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
    Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...)

Sur d’autres sites (11527)

  • VLC huge buffering times over rtp for local H264 stream

    15 mars 2022, par mike

    I'm outputting an H264 stream, encoded by my application using ffmpeg. I can display it using ffplay, but when trying to view the stream in VLC, I only get the first frame, or it looks like that's the case.

    


    The messages output shows that it is "buffering", taking around a minute to get to 100% when the frame updates.
When using ffplay, the latency is about 50-100ms at worst.

    


    I am sending to rtp://127.0.0.1:6666?pkt_size=1316 with the format rtp_mpegts.
I am new to this and it's highly likely I haven't set the frame up completely correctly. The process is (minus declarations and error checking)

    


    codec_name = "libx264";&#xA;codec = avcodec_find_encoder_by_name(codec_name.c_str());&#xA;context = avcodec_alloc_context3(codec);&#xA;pkt = av_packet_alloc();&#xA;context->bit_rate = 5 * Mega;&#xA;context->width = info.DisplayWidth;&#xA;context->height = info.DisplayHeight;&#xA;context->time_base = { 1, FPS };&#xA;context->framerate = { FPS, 1 };&#xA;context->gop_size = 100;&#xA;context->max_b_frames = 1;            &#xA;context->pix_fmt = AV_PIX_FMT_YUV420P;&#xA;if (codec->id == AV_CODEC_ID_H264)&#xA;            {&#xA;                check_ret("set option: preset", av_opt_set(context->priv_data, "preset", "fast", 0));&#xA;                check_ret("set option: tune", av_opt_set(context->priv_data, "tune", "zerolatency", 0));&#xA;                check_ret("set option: profile", av_opt_set(context->priv_data, "profile", "baseline", 0));                &#xA;            }&#xA;check_ret("open codec", avcodec_open2(context, codec, NULL));&#xA;&#xA;// setup the stream &#xA;fmt = (AVOutputFormat*)av_guess_format("rtp_mpegts", NULL, NULL);&#xA;&#xA;avformat_alloc_output_context2(&amp;avfctx, fmt, fmt->name,&#xA;            "rtp://127.0.0.1:6666?pkt_size=1316"); &#xA;        &#xA;avio_open(&amp;avfctx->pb, avfctx->url, AVIO_FLAG_WRITE);&#xA;AVStream* stream = avformat_new_stream(avfctx, codec);&#xA;avcodec_parameters_from_context(stream->codecpar, context);&#xA;stream->time_base.num = 1;&#xA;stream->time_base.den = FPS;&#xA;avformat_write_header(avfctx, NULL);&#xA;&#xA;// then the encoding (in an output loop)&#xA;<not get="get" frame="frame" from="from" rgba="rgba" to="to" yuv="yuv">&#xA;yuvFrame->pts = i&#x2B;&#x2B;; // i is incremented every frame&#xA;avcodec_send_frame(enc_ctx, yuvFrame);&#xA; while (ret >= 0) {&#xA;  ret = avcodec_receive_packet(enc_ctx, pkt);          &#xA;  //ret = av_interleaved_write_frame(avfctx, pkt); was using this, don&#x27;t seem to need it&#xA;  ret = av_write_frame(avfctx, pkt);&#xA;  av_packet_unref(pkt);&#xA;}&#xA;</not>

    &#xA;

    The VLC output looks like this :

    &#xA;

    main debug: using hw decoder module "d3d11va"&#xA;avcodec info: Using D3D11VA (NVIDIA GeForce RTX 2080 Super with Max-Q Design, vendor 10de(NVIDIA), device 1e93, revision a1) for hardware decoding&#xA;qt debug: Logical video size: 1280x720&#xA;main debug: resized to 1280x720&#xA;main debug: VoutDisplayEvent &#x27;resize&#x27; 1280x720&#xA;main debug: Received first picture&#xA;main debug: Buffering 1%&#xA;main debug: Buffering 2%&#xA;main debug: Buffering 3%&#xA;main debug: auto hiding mouse cursor&#xA;main debug: Buffering 4%&#xA;main debug: Buffering 5%&#xA;main debug: Buffering 6%&#xA;main debug: Buffering 7%&#xA;main debug: Buffering 8%&#xA;main debug: Buffering 9%&#xA;main debug: Buffering 10%&#xA;main debug: auto hiding mouse cursor&#xA;main debug: Buffering 11%&#xA;rtp warning: 1 packet(s) lost&#xA;rtp warning: 1 packet(s) lost&#xA;rtp warning: 1 packet(s) lost&#xA;ts warning: discontinuity received 0x3 instead of 0xd (pid=256)&#xA;ts warning: discontinuity received 0x5 instead of 0xf (pid=256)&#xA;ts warning: discontinuity received 0x1 instead of 0xb (pid=256)&#xA;main debug: Buffering 12%&#xA;main debug: Buffering 13%&#xA;main debug: Buffering 14%&#xA;main debug: Buffering 15%&#xA;main debug: Buffering 16%&#xA;main debug: Buffering 17%&#xA;main debug: Buffering 18%&#xA;main debug: auto hiding mouse cursor&#xA;main debug: Buffering 19%&#xA;main debug: Buffering 20%&#xA;

    &#xA;

  • FFprobe doesn't the work in node child_proces

    17 mai 2023, par Viktor Kushnir

    How to invoke the following command in a node.js :

    &#xA;

    ffprobe -v quiet -of json -show_entries format a.aif&#xA;

    &#xA;

    I try to do :

    &#xA;

    const ffprobe = child_process.spawn("ffprobe", [&#xA;      &#x27;-v&#x27;, &#xA;      &#x27;quiet&#x27;, &#xA;      &#x27;-of&#x27;, &#xA;      &#x27;json&#x27;, &#xA;      &#x27;-show_entries&#x27;, &#xA;      &#x27;format&#x27;,&#xA;      filePath,&#xA;    ]);&#xA;

    &#xA;

    But it doesn't work. Tried other variants, but it doesn't work either. I need to get the metadata of the audio file in my application node, how do I do this with ffmpeg ?

    &#xA;

    Only this work :

    &#xA;

    const ffprobe = child_process.spawn("ffprobe", [&#xA;      filePath,&#xA;    ]);&#xA;

    &#xA;

    But I want to remove the data I don't need.

    &#xA;

  • lavf/movenc : allow writing avc3 sample entry type

    15 novembre 2017, par John Stebbins
    lavf/movenc : allow writing avc3 sample entry type
    

    The avc3 sample entry type is useful for adaptive streaming. It permits
    parameter sets to be written inline in the video stream.

    Signed-off-by : Michael Niedermayer <michael@niedermayer.cc>

    • [DH] libavformat/movenc.c