
Recherche avancée
Autres articles (97)
-
MediaSPIP 0.1 Beta version
25 avril 2011, parMediaSPIP 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 (...) -
Multilang : améliorer l’interface pour les blocs multilingues
18 février 2011, parMultilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela. -
HTML5 audio and video support
13 avril 2011, parMediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
For older browsers the Flowplayer flash fallback is used.
MediaSPIP allows for media playback on major mobile platforms with the above (...)
Sur d’autres sites (12202)
-
How to profile compression speed for a h264 encoder
25 mai 2018, par DeanI’m using nvenc to compress in h264 a video stream. I now have a kinda-working low latency implementation for game streaming purposes but I’m struggling to get reliable profiling results. I’ve been trying to stream a video (so everything is predetermined) via my encoder to the clients in controlled network conditions (e.g. locally). I tried to time average compression times per frame but they’re highly volatile and the numbers I get aren’t that meaningful.
How are low latency streaming encoders tested for performances ?
-
HTML5 Audio() : Improved audio formats, mp3, mp4/aac + detection. Works on Palm Pre (tested on WebOS 1.4.1). HTML5 on for iPad, iPhone, Pre. Removed JS interval timer, using native timeupdate event. Callback frequency may be lower, but lower CPU. Element now unloaded + reference nulled at stop() / onfinish().
17 mai 2010, par Scott Schillerm script/soundmanager2-jsmin.js m script/soundmanager2-nodebug-jsmin.js m script/soundmanager2.js HTML5 Audio() : Improved audio formats, mp3, mp4/aac + detection. Works on Palm Pre (tested on WebOS 1.4.1). HTML5 on for iPad, iPhone, Pre. Removed JS interval timer, using native timeupdate event. (...)
-
VLC huge buffering times over rtp for local H264 stream
15 mars 2022, par mikeI'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 formatrtp_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";
codec = avcodec_find_encoder_by_name(codec_name.c_str());
context = avcodec_alloc_context3(codec);
pkt = av_packet_alloc();
context->bit_rate = 5 * Mega;
context->width = info.DisplayWidth;
context->height = info.DisplayHeight;
context->time_base = { 1, FPS };
context->framerate = { FPS, 1 };
context->gop_size = 100;
context->max_b_frames = 1; 
context->pix_fmt = AV_PIX_FMT_YUV420P;
if (codec->id == AV_CODEC_ID_H264)
 {
 check_ret("set option: preset", av_opt_set(context->priv_data, "preset", "fast", 0));
 check_ret("set option: tune", av_opt_set(context->priv_data, "tune", "zerolatency", 0));
 check_ret("set option: profile", av_opt_set(context->priv_data, "profile", "baseline", 0)); 
 }
check_ret("open codec", avcodec_open2(context, codec, NULL));

// setup the stream 
fmt = (AVOutputFormat*)av_guess_format("rtp_mpegts", NULL, NULL);

avformat_alloc_output_context2(&avfctx, fmt, fmt->name,
 "rtp://127.0.0.1:6666?pkt_size=1316"); 
 
avio_open(&avfctx->pb, avfctx->url, AVIO_FLAG_WRITE);
AVStream* stream = avformat_new_stream(avfctx, codec);
avcodec_parameters_from_context(stream->codecpar, context);
stream->time_base.num = 1;
stream->time_base.den = FPS;
avformat_write_header(avfctx, NULL);

// then the encoding (in an output loop)
<not get="get" frame="frame" from="from" rgba="rgba" to="to" yuv="yuv">
yuvFrame->pts = i++; // i is incremented every frame
avcodec_send_frame(enc_ctx, yuvFrame);
 while (ret >= 0) {
 ret = avcodec_receive_packet(enc_ctx, pkt); 
 //ret = av_interleaved_write_frame(avfctx, pkt); was using this, don't seem to need it
 ret = av_write_frame(avfctx, pkt);
 av_packet_unref(pkt);
}
</not>


The VLC output looks like this :


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