
Recherche avancée
Médias (1)
-
SWFUpload Process
6 septembre 2011, par
Mis à jour : Septembre 2011
Langue : français
Type : Texte
Autres articles (107)
-
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 (...) -
Formulaire personnalisable
21 juin 2013, parCette page présente les champs disponibles dans le formulaire de publication d’un média et il indique les différents champs qu’on peut ajouter. Formulaire de création d’un Media
Dans le cas d’un document de type média, les champs proposés par défaut sont : Texte Activer/Désactiver le forum ( on peut désactiver l’invite au commentaire pour chaque article ) Licence Ajout/suppression d’auteurs Tags
On peut modifier ce formulaire dans la partie :
Administration > Configuration des masques de formulaire. (...) -
Qu’est ce qu’un masque de formulaire
13 juin 2013, parUn masque de formulaire consiste en la personnalisation du formulaire de mise en ligne des médias, rubriques, actualités, éditoriaux et liens vers des sites.
Chaque formulaire de publication d’objet peut donc être personnalisé.
Pour accéder à la personnalisation des champs de formulaires, il est nécessaire d’aller dans l’administration de votre MediaSPIP puis de sélectionner "Configuration des masques de formulaires".
Sélectionnez ensuite le formulaire à modifier en cliquant sur sont type d’objet. (...)
Sur d’autres sites (13460)
-
Cannot display a decoded video frame on Raylib
20 décembre 2024, par gabriel_tisoI'm trying to explore
libav
andraylib
just to understand how audio and video work, and also to learn how to build nice interfaces using theraylib
project. I've implemented a simple struct capable of decoding audio and video frames. When a video frame appears, I convert it to theRGBA
format, which packs the values into 32bpp. This is the setup :

if (av_image_alloc((uint8_t **)media->dst_frame->data,
 media->dst_frame->linesize, media->ctxs[0]->width,
 media->ctxs[0]->height, AV_PIX_FMT_RGBA, 1) < 0) {
 fprintf(stderr, "Failed to setup dest image\n");
 return -1;
 }

 media->sws_ctx = sws_getContext(
 media->ctxs[0]->width, media->ctxs[0]->height, media->ctxs[0]->pix_fmt,
 media->ctxs[0]->width, media->ctxs[0]->height, AV_PIX_FMT_RGBA,
 SWS_BILINEAR, NULL, NULL, 0);

 // Later on, in the decode function:
 int ret = sws_scale(media->sws_ctx, media->frame->data,
 media->frame->linesize, 0, media->frame->height,
 media->dst_frame->data, media->dst_frame->linesize);




In the main file, I init raylib, and setup the necessary steps to load the texture (here I'm trying to fetch the first video frame in order to show the user a preview of the video, later on I plan to reset the stream to allow a correct playback routine). I think the format of the image is right.


Image previewImage =
 GenImageColor(videoArea.width, videoArea.height, BLACK);
 // I assume this makes the formats compatible
 ImageFormat(&previewImage, PIXELFORMAT_UNCOMPRESSED_R8G8B8A8);

 Texture2D videoTexture = LoadTextureFromImage(previewImage);
 UnloadImage(previewImage);




 if (!state->has_media) {
 DrawText("Drop a video file here!", videoArea.x + 10,
 videoArea.y + 10, 20, GRAY);
 } else {
 if (state->first_frame) {
 do {
 decode_packet(state->media);
 } while (!is_frame_video(state->media));

 UpdateTexture(videoTexture, state->media->dst_frame->data[0]);

 state->first_frame = 0;
 }
 }

 DrawTexture(videoTexture, videoArea.x, videoArea.y, WHITE);



Anyway, this is what I get when a mp4 file is dropped :



It seems like an alignment issue maybe ? Can someone point me in the right direction in order to correctly solve this problem ?


-
swscale/lut3d : add 3DLUT dispatch system
29 novembre 2024, par Niklas Haasswscale/lut3d : add 3DLUT dispatch system
This is a lightweight wrapper around the underlying color management system,
whose job it is merely to manage the 3DLUT state and apply them to the frame
data. This is where we might add platform-specific optimizations in the future.I also plan on adding support for more pixel formats in the future. In
particular, we could support YUV or XYZ input formats directly using only
negligible additional code in the 3DLUT setup functions. This would eliminate
the major source of slowdown, which is currently the roundtrip to RGBA64. -
lavc/vvc : Ensure subpictures don't overlap
22 février, par Frank Plowmanlavc/vvc : Ensure subpictures don't overlap
This is essentially a re-implementation of
https://patchwork.ffmpeg.org/project/ffmpeg/patch/20241005223955.54158-1-post@frankplowman.com/That patch was not applied last time. Instead we opted to identify
issues which could be caused by invalid subpicture layouts and remedy
those issues where they manifest, either through error detection or code
hardening. This was primarily implemented in the set
https://patchwork.ffmpeg.org/project/ffmpeg/list/?series=13381.This has worked to some degree, however issues with subpicture layouts
continue to crop up from the fuzzer and I've fixed a number of bugs
related to subpicture layouts since then. I think it's best to return
to the initial plan and simply check if the subpicture layout is valid
initially.This implementation is also lighter than the first time — by doing a
bit more logic in pps_subpic_less_than_one_tile_slice, we are able to
store a tile_in_subpic map rather than a ctu_in_subpic map. This
reduces the size of the map to the point it becomes possible to allocate
it on the stack. Similar to 8bd66a8c9587af61c7b46558be3c4ee317c1af5a,
the layout is also validated in the slice map construction code, rather
than in the CBS, which avoids duplicating some logic.Signed-off-by : Frank Plowman <post@frankplowman.com>