
Recherche avancée
Autres articles (62)
-
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 -
Encoding and processing into web-friendly formats
13 avril 2011, parMediaSPIP 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 (...) -
Encodage et transformation en formats lisibles sur Internet
10 avril 2011MediaSPIP transforme et ré-encode les documents mis en ligne afin de les rendre lisibles sur Internet et automatiquement utilisables sans intervention du créateur de contenu.
Les vidéos sont automatiquement encodées dans les formats supportés par HTML5 : MP4, Ogv et WebM. La version "MP4" est également utilisée pour le lecteur flash de secours nécessaire aux anciens navigateurs.
Les documents audios sont également ré-encodés dans les deux formats utilisables par HTML5 :MP3 et Ogg. La version "MP3" (...)
Sur d’autres sites (6947)
-
Revision 8ba92a0bed : changes intra coding to be based on txfm block This commit changed the encoding
17 mai 2013, par Yaowu XuChanged Paths :
Modify /vp9/common/vp9_blockd.h
Modify /vp9/common/vp9_reconintra.c
Modify /vp9/common/vp9_reconintra.h
Modify /vp9/decoder/vp9_decodemv.c
Modify /vp9/decoder/vp9_decodframe.c
Modify /vp9/decoder/vp9_onyxd_if.c
Modify /vp9/encoder/vp9_bitstream.c
Modify /vp9/encoder/vp9_encodeframe.c
Modify /vp9/encoder/vp9_encodeintra.h
Modify /vp9/encoder/vp9_encodemb.c
Modify /vp9/encoder/vp9_onyx_if.c
changes intra coding to be based on txfm blockThis commit changed the encoding and decoding of intra blocks to be
based on transform block. In each prediction block, the intra coding
iterates thorough each transform block based on raster scan order.This commit also fixed a bug in D135 prediction code.
TODO next :
The RD mode/txfm_size selection should take this into account when
computing RD values.Change-Id : I6d1be2faa4c4948a52e830b6a9a84a6b2b6850f6
-
Tour of Part of the VP8 Process
18 novembre 2010, par Multimedia Mike — VP8My toy VP8 encoder outputs a lot of textual data to illustrate exactly what it’s doing. For those who may not be exactly clear on how this or related algorithms operate, this may prove illuminating.
Let’s look at subblock 0 of macroblock 0 of a luma plane :
subblock 0 (original) 92 91 89 86 91 90 88 86 89 89 89 88 89 87 88 93
Since it’s in the top-left corner of the image to be encoded, the phantom samples above and to the left are implicitly 128 for the purpose of intra prediction (in the VP8 algorithm).
subblock 0 (original) 128 128 128 128 128 92 91 89 86 128 91 90 88 86 128 89 89 89 88 128 89 87 88 93
Using the 4×4 DC prediction mode means averaging the 4 top predictors and 4 left predictors. So, the predictor is 128. Subtract this from each element of the subblock :subblock 0, predictor removed -36 -37 -39 -42 -37 -38 -40 -42 -39 -39 -39 -40 -39 -41 -40 -35
Next, run the subblock through the forward transform :
subblock 0, transformed -312 7 1 0 1 12 -5 2 2 -3 3 -1 1 0 -2 1
Quantize (integer divide) each element ; the DC (first element) and AC (rest of the elements) quantizers are both 4 :
subblock 0, quantized -78 1 0 0 0 3 -1 0 0 0 0 0 0 0 0 0
The above block contains the coefficients that are actually transmitted (zigzagged and entropy-encoded) through the bitstream and decoded on the other end.
The decoding process looks something like this– after the same coefficients are decoded and rearranged, they are dequantized (multiplied) by the original quantizers :
subblock 0, dequantized -312 4 0 0 0 12 -4 0 0 0 0 0 0 0 0 0
Note that these coefficients are not exactly the same as the original, pre-quantized coefficients. This is a large part of where the “lossy” in “lossy video compression” comes from.
Next, the decoder generates a base predictor subblock. In this case, it’s all 128 (DC prediction for top-left subblock) :
subblock 0, predictor 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128
Finally, the dequantized coefficients are shoved through the inverse transform and added to the base predictor block :
subblock 0, reconstructed 91 91 89 85 90 90 89 87 89 88 89 90 88 88 89 92
Again, not exactly the same as the original block, but an incredible facsimile thereof.
Note that this decoding-after-encoding demonstration is not merely pedagogical– the encoder has to decode the subblock because the encoding of successive subblocks may depend on this subblock. The encoder can’t rely on the original representation of the subblock because the decoder won’t have that– it will have the reconstructed block.
For example, here’s the next subblock :
subblock 1 (original) 84 84 87 90 85 85 86 93 86 83 83 89 91 85 84 87
Let’s assume DC prediction once more. The 4 top predictors are still all 128 since this subblock lies along the top row. However, the 4 left predictors are the right edge of the subblock reconstructed in the previous example :
subblock 1 (original) 128 128 128 128 85 84 84 87 90 87 85 85 86 93 90 86 83 83 89 92 91 85 84 87
The DC predictor is computed as
(128 + 128 + 128 + 128 + 85 + 87 + 90 + 92 + 4) / 8 = 108
(the extra +4 is for rounding considerations). (Note that in this case, using the original subblock’s right edge would also have resulted in 108, but that’s beside the point.)Continuing through the same process as in subblock 0 :
subblock 1, predictor removed -24 -24 -21 -18 -23 -23 -22 -15 -22 -25 -25 -19 -17 -23 -24 -21
subblock 1, transformed
-173 -9 14 -1
2 -11 -4 0
1 6 -2 3
-5 1 0 1subblock 1, quantized
-43 -2 3 0
0 -2 -1 0
0 1 0 0
-1 0 0 0subblock 1, dequantized
-172 -8 12 0
0 -8 -4 0
0 4 0 0
-4 0 0 0subblock 1, predictor
108 108 108 108
108 108 108 108
108 108 108 108
108 108 108 108subblock 1, reconstructed
84 84 87 89
86 85 87 91
86 83 84 89
90 85 84 88I hope this concrete example (straight from a working codec) clarifies this part of the VP8 process.
-
VP8 Misplaced Plane
16 octobre 2010, par Multimedia Mike — VP8So I’m stubbornly plugging away at my toy VP8 encoder and I managed to produce this gem. See if you can spot the subtle mistake :
The misplaced color plane resulted from using the luma plane stride where it was not appropriate. I fixed that and now chroma planes are wired to use to the same naive prediction algorithm as the luma plane.
Also, I fixed the entropy encoder so that end of block conditions are signaled correctly (instead of my original, suboptimal hack to just encode all zeros). I was disappointed to see that this did not result in a major compression improvement. Then again, I’m using the lowest possible quantization settings for this outing, so perhaps this is to be expected.
Sigh… 4×4 luma prediction is next. Wish me luck.