
Recherche avancée
Médias (1)
-
Video d’abeille en portrait
14 mai 2011, par
Mis à jour : Février 2012
Langue : français
Type : Video
Autres articles (90)
-
Taille des images et des logos définissables
9 février 2011, parDans beaucoup d’endroits du site, logos et images sont redimensionnées pour correspondre aux emplacements définis par les thèmes. L’ensemble des ces tailles pouvant changer d’un thème à un autre peuvent être définies directement dans le thème et éviter ainsi à l’utilisateur de devoir les configurer manuellement après avoir changé l’apparence de son site.
Ces tailles d’images sont également disponibles dans la configuration spécifique de MediaSPIP Core. La taille maximale du logo du site en pixels, on permet (...) -
Participer à sa traduction
10 avril 2011Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
Actuellement MediaSPIP n’est disponible qu’en français et (...) -
Supporting all media types
13 avril 2011, parUnlike most software and media-sharing platforms, MediaSPIP aims to manage as many different media types as possible. The following are just a few examples from an ever-expanding list of supported formats : images : png, gif, jpg, bmp and more audio : MP3, Ogg, Wav and more video : AVI, MP4, OGV, mpg, mov, wmv and more text, code and other data : OpenOffice, Microsoft Office (Word, PowerPoint, Excel), web (html, CSS), LaTeX, Google Earth and (...)
Sur d’autres sites (11438)
-
Latest FFmpeg fails to create a good MP4 out of JPG file (Windows 10)
30 décembre 2023, par mengrieI am using FFmpeg to create an MP4 file out of several JPG files. The command to accomplish this


ffmpeg.exe ^
-hide_banner -nostats -loglevel error -y ^
-loop 1 -t 6 -i 001.jpg ^
-loop 1 -t 6 -i 002.jpg ^
-loop 1 -t 6 -i 003.jpg ^
-loop 1 -t 6 -i 004.jpg ^
-loop 1 -t 6 -i 005.jpg ^
-loop 1 -t 6 -i 006.jpg ^
-filter_complex ^
"[0:v]scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2,setsar=1,fade=t=out:st=5:d=1[v0]; ^
[1:v]scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2,setsar=1,fade=t=in:st=0:d=1,fade=t=out:st=5:d=1[v1]; ^
[2:v]scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2,setsar=1,fade=t=in:st=0:d=1,fade=t=out:st=5:d=1[v2]; ^
[3:v]scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2,setsar=1,fade=t=in:st=0:d=1,fade=t=out:st=5:d=1[v3]; ^
[4:v]scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2,setsar=1,fade=t=in:st=0:d=1,fade=t=out:st=5:d=1[v4]; ^
[5:v]scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2,setsar=1,fade=t=in:st=0:d=1,fade=t=out:st=5:d=1[v5]; ^
[v0][v1][v2][v3][v4][v5]concat=n=6:v=1:a=0,format=yuv420p[v]" -map "[v]" -r 30 006.mp4



Using "ffmpeg version 2022-12-25-git-eeb280f351-full_build-www.gyan.dev Copyright (c) 2000-2022 the FFmpeg developers built with gcc 12.1.0 (Rev2, Built by MSYS2 project)" does the job as expected.


However, yesterdag I downloaded (from gyan.dev - Windows - ffmpeg-git-full.7z) the latest version and upgrade the tool. "ffmpeg version 2023-12-28-git-c1340f3439-full_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developers built with gcc 12.2.0 (Rev10, Built by MSYS2 project)"


Using this version, the MP4 contains only a few JPGs and timing is also messed up, resulting in a useless MP4.


Has something changed or are these parameters causing a new behaviour ?


Thx


In meanwhile I went back to older version


-
FFmpeg batchfile to compress images JPG JPEGs and keep EXIF (metadata)
24 novembre 2023, par esdoublelefI tried searching everywhere for a possible solution but I really can't find it. Hope someone can help me out here.


I have written a batch file to use FFmpeg to compress and sharpen JPGs in a folder.


@ECHO ON
 FOR %%a in (*.jpg) DO (ffmpeg -i "%%a" -q:v 8 -vf unsharp=5:5:1.0:5:5:0.0 "2022 01 22 %%~na".jpg)
PAUSE



The new file comes out smaller in size, but is missing all the EXIF information that the original photo has.


I tried to add in the command
-metadata
but apparently it works for MP4 only. I have an existing solution with ImageMagick but I'm hoping to solve this via FFmpeg.

Or is there a way to integrate exiftool into the batch file ?


Thank you and I really appreciate any help here.


-
memcpy to av_malloc's memory crash
26 octobre 2023, par PeacefulWindyI use the code in x64 windows :


#include<iostream>
#include<memory>
#include<vector>
extern "C"
{
#include <libavcodec></libavcodec>avcodec.h>
#include<libavformat></libavformat>avformat.h>
#include <libavutil></libavutil>imgutils.h>
#include<libswscale></libswscale>swscale.h>
#include<libswresample></libswresample>swresample.h>
}

struct BufferData
{
 uint8_t* ptr;
 size_t size;
 size_t file_size;
};

int main()
{
 auto file=fopen("E:/test.jpg", "rb");
 fseek(file, 0, SEEK_END);
 auto fileSize = ftell(file);
 fseek(file, 0, SEEK_SET);
 auto data = std::vector(fileSize);
 fread(data.data(), sizeof(uint8_t), fileSize, file);
 fclose(file);

 auto test = BufferData();
 test.ptr = data.data();
 test.size = data.size();
 test.file_size = data.size();
 auto buffer = (uint8_t*)av_malloc(4096 * 10);
 char errStr[128] = { 0 };

 auto avformatContext = avformat_alloc_context();
 auto avioContext = avio_alloc_context(buffer, 4096, 0, &test, [](void* opaque, uint8_t* buf, int buf_size)
 {
 BufferData* bd = (BufferData*)opaque;
 auto size = std::min(bd->size, (size_t)buf_size);

 if (!size)
 {
 return -1;
 }

 memcpy(buf, bd->ptr, size);
 bd->ptr += size;
 bd->size -= size;
 return (int)size;
 }, NULL, NULL);
 avformatContext->pb = avioContext;
 avformatContext->flags = AVFMT_FLAG_CUSTOM_IO;

 auto ret = avformat_open_input(&avformatContext, nullptr, nullptr, nullptr);
 if (ret != 0)
 {
 av_strerror(ret, errStr, sizeof(errStr));
 std::cout << errStr << std::endl;
 av_free(buffer);
 avformat_close_input(&avformatContext);
 return 0;
 }

 ret = avformat_find_stream_info(avformatContext, nullptr);
 if (ret < 0)
 {
 av_strerror(ret, errStr, sizeof(errStr));
 std::cout << errStr << std::endl;
 av_free(buffer);
 avformat_close_input(&avformatContext);
 return 0;
 }

 av_dump_format(avformatContext, 0, nullptr, 0);

 auto videoIndex = av_find_best_stream(avformatContext, AVMEDIA_TYPE_VIDEO, -1, -1, nullptr, 0);
 if (videoIndex == AVERROR_STREAM_NOT_FOUND)
 {
 av_free(buffer);
 avformat_close_input(&avformatContext);
 return 0;
 }
 else if (videoIndex == AVERROR_DECODER_NOT_FOUND)
 {
 av_free(buffer);
 avformat_close_input(&avformatContext);
 return 0;
 }

 auto videoCodecPar = avformatContext->streams[videoIndex]->codecpar;
 auto videoCodec = avcodec_find_decoder(videoCodecPar->codec_id);
 if (!videoCodec)
 {
 av_free(buffer);
 avformat_close_input(&avformatContext);
 return 0;
 }

 av_free(buffer);
 avformat_close_input(&avformatContext);
}
</vector></memory></iostream>


I use memcpy to copy data to buffer,it run to av_free(buffer) get crash.
ffmpeg version is 6.0.
Visual Studio version is 2022 with CMake.


Use fread replace memcpy,it can work !But I need to resolve load from std::vector memory,not fread.
I think maybe memory-align problem when run av_free,but I no way to find the cause.