
Recherche avancée
Médias (1)
-
Bug de détection d’ogg
22 mars 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Video
Autres articles (53)
-
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. -
Les autorisations surchargées par les plugins
27 avril 2010, parMediaspip core
autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs -
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir
Sur d’autres sites (9999)
-
Streaming MJPEG video over RTSP without re-encoding using ffmpeg in Ubuntu
5 août 2023, par user8109I have a video file encoded in MJPEG format stored as .avi file. I want to stream this video without re-encoding using ffmpeg tool from an Ubuntu machine to a remote server over RTSP protocol. I could achieve this for videos encoded in H.264 format and H.265 format using the below command.


ffmpeg -re -i "$input_file" -c copy -f rtsp "$output_url"



But, I am getting errors when I am streaming MJPEG video. One alternative approach could be to extract individual JPEG frames and stream that over the network using the following command.


ffmpeg -re -i "$input_file" -f image2pipe -vcodec mjpeg -pix_fmt yuvj420p - | ffmpeg -i - -c:v copy -an -f rtsp "$output_url"



But I am getting errors here also. Any solution is fine for me.


-
Greed is Good ; Greed Works
25 novembre 2010, par Multimedia Mike — VP8Greed, for lack of a better word, is good ; Greed works. Well, most of the time. Maybe.
Picking Prediction Modes
VP8 uses one of 4 prediction modes to predict a 16x16 luma block or 8x8 chroma block before processing it (for luma, a block can also be broken into 16 4x4 blocks for individual prediction using even more modes).So, how to pick the best predictor mode ? I had no idea when I started writing my VP8 encoder. I did not read any literature on the matter ; I just sat down and thought of a brute-force approach. According to the comments in my code :
// naive, greedy algorithm : // residual = source - predictor // mean = mean(residual) // residual -= mean // find the max diff between the mean and the residual // the thinking is that, post-prediction, the best block will // be comprised of similar samples
After removing the predictor from the macroblock, individual 4x4 subblocks are put through a forward DCT and quantized. Optimal compression in this scenario results when all samples are the same since only the DC coefficient will be non-zero. Failing that, when the input samples are at least similar to each other, few of the AC coefficients will be non-zero, which helps compression. When the samples are all over the scale, there aren’t a whole lot of non-zero coefficients unless you crank up the quantizer, which results in poor quality in the reconstructed subblocks.
Thus, my goal was to pick a prediction mode that, when applied to the input block, resulted in a residual in which each element would feature the least deviation from the mean of the residual (relative to other prediction choices).
Greedy Approach
I realized that this algorithm falls into the broad general category of "greedy" algorithms— one that makes locally optimal decisions at each stage. There are most likely smarter algorithms. But this one was good enough for making an encoder that just barely works.Compression Results
I checked the total file compression size on my usual 640x360 Big Buck Bunny logo image while forcing prediction modes vs. using my greedy prediction picking algorithm. In this very simple test, DC-only actually resulted in slightly better compression than the greedy algorithm (which says nothing about overall quality).prediction mode quantizer index = 0 (minimum) quantizer index = 10 greedy 286260 98028 DC 280593 95378 vertical 297206 105316 horizontal 295357 104185 TrueMotion 311660 113480 As another data point, in both quantizer cases, my greedy algorithm selected a healthy mix of prediction modes :
- quantizer index 0 : DC = 521, VERT = 151, HORIZ = 183, TM = 65
- quantizer index 10 : DC = 486, VERT = 167, HORIZ = 190, TM = 77
Size vs. Quality
Again, note that this ad-hoc test only measures one property (a highly objective one)— compression size. It did not account for quality which is a far more controversial topic that I have yet to wade into. -
FFMPEG : How to extract a PNG sequence from a video, remove duplicate frames in the process and keep the original frame number ?
16 mai 2020, par SimonI have a recording of an old game which has variable framerate. Since I want to process individual frames to upscale and modernize the footage I would like to avoid any duplicate frames. I know that I can use this function to extract all frames from a video :



ffmpeg -i input.mov -r 60/1 out%04d.png




And I know that I can remove duplicate frames using this function :



ffmpeg -i input.mov -vf mpdecimate,setpts=N/FRAME_RATE/TB output.mov




However, the above command removes duplicate frames and puts frames next to each other whereas in order to keep a timecode of sorts it would be a lot more useful to be able to extract PNGs with frame number (video is progressive 60fps) but without all of the duplicates.



So, the question is : what if I want to extract PNG files BUT maintain the original corresponding framenumber within the sequence ? So, if we have a video with 10 frames and frames 2-8 are duplicates it spits out 1.png 2.png 9.png and 10.png ? How do I combine both bits of code listed above ?