
Recherche avancée
Autres articles (112)
-
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 (...) -
Websites made with MediaSPIP
2 mai 2011, parThis page lists some websites based on MediaSPIP.
-
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 (15013)
-
ffmpeg API : handle frame loss in hevc encoding
8 janvier 2024, par MarioEverything works fine until the introduction of frame->pts increment due to frame loss.


Below is the regular progression without frame->pts increments :




frame->pts=8 pkt->pts=512 pkt->dts=-512 pkt->flags=1

frame->pts=9 pkt->pts=2560 pkt->dts=0 pkt->flags=0

frame->pts=10 pkt->pts=1536 pkt->dts=512 pkt->flags=0

frame->pts=11 pkt->pts=1024 pkt->dts=1024 pkt->flags=0

frame->pts=12 pkt->pts=2048 pkt->dts=1536 pkt->flags=0

frame->pts=13 pkt->pts=4608 pkt->dts=2048 pkt->flags=0

frame->pts=14 pkt->pts=3584 pkt->dts=2560 pkt->flags=0

frame->pts=15 pkt->pts=3072 pkt->dts=3072 pkt->flags=0

frame->pts=16 pkt->pts=4096 pkt->dts=3584 pkt->flags=0

frame->pts=17 pkt->pts=6656 pkt->dts=4096 pkt->flags=0

frame->pts=18 pkt->pts=5632 pkt->dts=4608 pkt->flags=0



When I introduce the frame->pts increment it happens :




frame->pts=15 pkt->pts=512 pkt->dts=-512 pkt->flags=1

frame->pts=17 pkt->pts=4608 pkt->dts=2048 pkt->flags=0

frame->pts=19 pkt->pts=2560 pkt->dts=1536 pkt->flags=0

[mp4 @ 0x7eff842222c0] Application provided invalid, non monotonically increasing dts to muxer in stream 0 : 2048 >= 1536



So I wrote the following code as a "quick" solution (between av_packet_rescale_ts() and av_interleaved_write_frame()) :


av_packet_rescale_ts(pkt, c->time_base, st->time_base); 
 ...
 if (pkt->dts<=previous_dts) 
 { 
 if (pkt->pts<=previous_pts) 
 { 
 pkt->pts=previous_dts+1+pkt->pts-pkt->dts; 
 } 
 pkt->dts=previous_dts+1; 
 } 
 previous_dts=pkt->dts; 
 previous_pts=pkt->pts; 
 ...
 ret = av_interleaved_write_frame(fmt_ctx, pkt); 



Now I no longer have the error, but the values are :




frame->pts=15 pkt->pts=512 pkt->dts=-512 pkt->flags=1

changed frame->pts=15 pkt->pts=512 pkt->dts=1 pkt->flags=1

frame->pts=17 pkt->pts=4608 pkt->dts=2048 pkt->flags=0

frame->pts=19 pkt->pts=2560 pkt->dts=1536 pkt->flags=0

changed frame->pts=19 pkt->pts=3073 pkt->dts=2049 pkt->flags=0

frame->pts=21 pkt->pts=1536 pkt->dts=1536 pkt->flags=0

changed frame->pts=21 pkt->pts=2050 pkt->dts=2050 pkt->flags=0

frame->pts=23 pkt->pts=4096 pkt->dts=3584 pkt->flags=0

frame->pts=25 pkt->pts=8704 pkt->dts=6144 pkt->flags=0

frame->pts=27 pkt->pts=6656 pkt->dts=5632 pkt->flags=0

changed frame->pts=27 pkt->pts=7169 pkt->dts=6145 pkt->flags=0

frame->pts=29 pkt->pts=5632 pkt->dts=5632 pkt->flags=0

changed frame->pts=29 pkt->pts=6146 pkt->dts=6146 pkt->flags=0

frame->pts=31 pkt->pts=7680 pkt->dts=7168 pkt->flags=0

frame->pts=33 pkt->pts=12800 pkt->dts=10240 pkt->flags=0

frame->pts=35 pkt->pts=10752 pkt->dts=9728 pkt->flags=0

changed frame->pts=35 pkt->pts=11265 pkt->dts=10241 pkt->flags=0

frame->pts=37 pkt->pts=9728 pkt->dts=9728 pkt->flags=0

changed frame->pts=37 pkt->pts=10242 pkt->dts=10242 pkt->flags=0



What is the correct way to handle frame loss scenario ?
Is there a way to inform the encoder about frame loss ?


The encoder is "hevc_qsv" and the output format is mov (.mp4).


-
Revision 29188 : 2 options de plus pour personnaliser la page d’activation de la mutu : * ...
15 juin 2009, par real3t@… — Log2 options de plus pour personnaliser la page d’activation de la mutu :
* ’branding’ : texte libre en HTML
* ’branding_logo’ => logo (sous forme de HTML) -
Organic Traffic : What It Is and How to Increase It
19 septembre 2023, par Erin — Analytics Tips