
Recherche avancée
Médias (1)
-
Carte de Schillerkiez
13 mai 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Texte
Autres articles (45)
-
Emballe Médias : Mettre en ligne simplement des documents
29 octobre 2010, parLe plugin emballe médias a été développé principalement pour la distribution mediaSPIP mais est également utilisé dans d’autres projets proches comme géodiversité par exemple. Plugins nécessaires et compatibles
Pour fonctionner ce plugin nécessite que d’autres plugins soient installés : CFG Saisies SPIP Bonux Diogène swfupload jqueryui
D’autres plugins peuvent être utilisés en complément afin d’améliorer ses capacités : Ancres douces Légendes photo_infos spipmotion (...) -
Librairies et logiciels spécifiques aux médias
10 décembre 2010, parPour un fonctionnement correct et optimal, plusieurs choses sont à prendre en considération.
Il est important, après avoir installé apache2, mysql et php5, d’installer d’autres logiciels nécessaires dont les installations sont décrites dans les liens afférants. Un ensemble de librairies multimedias (x264, libtheora, libvpx) utilisées pour l’encodage et le décodage des vidéos et sons afin de supporter le plus grand nombre de fichiers possibles. Cf. : ce tutoriel ; FFMpeg avec le maximum de décodeurs et (...) -
Amélioration de la version de base
13 septembre 2013Jolie sélection multiple
Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)
Sur d’autres sites (4907)
-
swscale/x86/input.asm : add x86-optimized planer rgb2yuv functions
24 novembre 2021, par Mark Reidswscale/x86/input.asm : add x86-optimized planer rgb2yuv functions
sse2 only operates on 2 lanes per loop for to_y and to_uv functions, due
to the lack of pmulld instruction. Emulating pmulld with 2 pmuludq and shuffles
proved too costly and made to_uv functions slower then the c implementation.For to_y on sse2 only float functions are generated,
I was are not able outperform the c implementation on the integer pixel formats.For to_a on see4 only the float functions are generated.
sse2 and sse4 generated nearly identical performing code on integer pixel formats,
so only sse2/avx2 versions are generated.planar_gbrp_to_y_512_c : 1197.5
planar_gbrp_to_y_512_sse4 : 444.5
planar_gbrp_to_y_512_avx2 : 287.5
planar_gbrap_to_y_512_c : 1204.5
planar_gbrap_to_y_512_sse4 : 447.5
planar_gbrap_to_y_512_avx2 : 289.5
planar_gbrp9be_to_y_512_c : 1380.0
planar_gbrp9be_to_y_512_sse4 : 543.5
planar_gbrp9be_to_y_512_avx2 : 340.0
planar_gbrp9le_to_y_512_c : 1200.5
planar_gbrp9le_to_y_512_sse4 : 442.0
planar_gbrp9le_to_y_512_avx2 : 282.0
planar_gbrp10be_to_y_512_c : 1378.5
planar_gbrp10be_to_y_512_sse4 : 544.0
planar_gbrp10be_to_y_512_avx2 : 337.5
planar_gbrp10le_to_y_512_c : 1200.0
planar_gbrp10le_to_y_512_sse4 : 448.0
planar_gbrp10le_to_y_512_avx2 : 285.5
planar_gbrap10be_to_y_512_c : 1380.0
planar_gbrap10be_to_y_512_sse4 : 542.0
planar_gbrap10be_to_y_512_avx2 : 340.5
planar_gbrap10le_to_y_512_c : 1199.0
planar_gbrap10le_to_y_512_sse4 : 446.0
planar_gbrap10le_to_y_512_avx2 : 289.5
planar_gbrp12be_to_y_512_c : 10563.0
planar_gbrp12be_to_y_512_sse4 : 542.5
planar_gbrp12be_to_y_512_avx2 : 339.0
planar_gbrp12le_to_y_512_c : 1201.0
planar_gbrp12le_to_y_512_sse4 : 440.5
planar_gbrp12le_to_y_512_avx2 : 286.0
planar_gbrap12be_to_y_512_c : 1701.5
planar_gbrap12be_to_y_512_sse4 : 917.0
planar_gbrap12be_to_y_512_avx2 : 338.5
planar_gbrap12le_to_y_512_c : 1201.0
planar_gbrap12le_to_y_512_sse4 : 444.5
planar_gbrap12le_to_y_512_avx2 : 288.0
planar_gbrp14be_to_y_512_c : 1370.5
planar_gbrp14be_to_y_512_sse4 : 545.0
planar_gbrp14be_to_y_512_avx2 : 338.5
planar_gbrp14le_to_y_512_c : 1199.0
planar_gbrp14le_to_y_512_sse4 : 444.0
planar_gbrp14le_to_y_512_avx2 : 279.5
planar_gbrp16be_to_y_512_c : 1364.0
planar_gbrp16be_to_y_512_sse4 : 544.5
planar_gbrp16be_to_y_512_avx2 : 339.5
planar_gbrp16le_to_y_512_c : 1201.0
planar_gbrp16le_to_y_512_sse4 : 445.5
planar_gbrp16le_to_y_512_avx2 : 280.5
planar_gbrap16be_to_y_512_c : 1377.0
planar_gbrap16be_to_y_512_sse4 : 545.0
planar_gbrap16be_to_y_512_avx2 : 338.5
planar_gbrap16le_to_y_512_c : 1201.0
planar_gbrap16le_to_y_512_sse4 : 442.0
planar_gbrap16le_to_y_512_avx2 : 279.0
planar_gbrpf32be_to_y_512_c : 4113.0
planar_gbrpf32be_to_y_512_sse2 : 2438.0
planar_gbrpf32be_to_y_512_sse4 : 1068.0
planar_gbrpf32be_to_y_512_avx2 : 904.5
planar_gbrpf32le_to_y_512_c : 3818.5
planar_gbrpf32le_to_y_512_sse2 : 2024.5
planar_gbrpf32le_to_y_512_sse4 : 1241.5
planar_gbrpf32le_to_y_512_avx2 : 657.0
planar_gbrapf32be_to_y_512_c : 3707.0
planar_gbrapf32be_to_y_512_sse2 : 2444.0
planar_gbrapf32be_to_y_512_sse4 : 1077.0
planar_gbrapf32be_to_y_512_avx2 : 909.0
planar_gbrapf32le_to_y_512_c : 3822.0
planar_gbrapf32le_to_y_512_sse2 : 2024.5
planar_gbrapf32le_to_y_512_sse4 : 1176.0
planar_gbrapf32le_to_y_512_avx2 : 658.5planar_gbrp_to_uv_512_c : 2325.8
planar_gbrp_to_uv_512_sse2 : 1726.8
planar_gbrp_to_uv_512_sse4 : 771.8
planar_gbrp_to_uv_512_avx2 : 506.8
planar_gbrap_to_uv_512_c : 2281.8
planar_gbrap_to_uv_512_sse2 : 1726.3
planar_gbrap_to_uv_512_sse4 : 768.3
planar_gbrap_to_uv_512_avx2 : 496.3
planar_gbrp9be_to_uv_512_c : 2336.8
planar_gbrp9be_to_uv_512_sse2 : 1924.8
planar_gbrp9be_to_uv_512_sse4 : 852.3
planar_gbrp9be_to_uv_512_avx2 : 552.8
planar_gbrp9le_to_uv_512_c : 2270.3
planar_gbrp9le_to_uv_512_sse2 : 1512.3
planar_gbrp9le_to_uv_512_sse4 : 764.3
planar_gbrp9le_to_uv_512_avx2 : 491.3
planar_gbrp10be_to_uv_512_c : 2281.8
planar_gbrp10be_to_uv_512_sse2 : 1917.8
planar_gbrp10be_to_uv_512_sse4 : 855.3
planar_gbrp10be_to_uv_512_avx2 : 541.3
planar_gbrp10le_to_uv_512_c : 2269.8
planar_gbrp10le_to_uv_512_sse2 : 1515.3
planar_gbrp10le_to_uv_512_sse4 : 759.8
planar_gbrp10le_to_uv_512_avx2 : 487.8
planar_gbrap10be_to_uv_512_c : 2382.3
planar_gbrap10be_to_uv_512_sse2 : 1924.8
planar_gbrap10be_to_uv_512_sse4 : 855.3
planar_gbrap10be_to_uv_512_avx2 : 540.8
planar_gbrap10le_to_uv_512_c : 2382.3
planar_gbrap10le_to_uv_512_sse2 : 1512.3
planar_gbrap10le_to_uv_512_sse4 : 759.3
planar_gbrap10le_to_uv_512_avx2 : 484.8
planar_gbrp12be_to_uv_512_c : 2283.8
planar_gbrp12be_to_uv_512_sse2 : 1936.8
planar_gbrp12be_to_uv_512_sse4 : 858.3
planar_gbrp12be_to_uv_512_avx2 : 541.3
planar_gbrp12le_to_uv_512_c : 2278.8
planar_gbrp12le_to_uv_512_sse2 : 1507.3
planar_gbrp12le_to_uv_512_sse4 : 760.3
planar_gbrp12le_to_uv_512_avx2 : 485.8
planar_gbrap12be_to_uv_512_c : 2385.3
planar_gbrap12be_to_uv_512_sse2 : 1927.8
planar_gbrap12be_to_uv_512_sse4 : 855.3
planar_gbrap12be_to_uv_512_avx2 : 539.8
planar_gbrap12le_to_uv_512_c : 2377.3
planar_gbrap12le_to_uv_512_sse2 : 1516.3
planar_gbrap12le_to_uv_512_sse4 : 759.3
planar_gbrap12le_to_uv_512_avx2 : 484.8
planar_gbrp14be_to_uv_512_c : 2283.8
planar_gbrp14be_to_uv_512_sse2 : 1935.3
planar_gbrp14be_to_uv_512_sse4 : 852.3
planar_gbrp14be_to_uv_512_avx2 : 540.3
planar_gbrp14le_to_uv_512_c : 2276.8
planar_gbrp14le_to_uv_512_sse2 : 1514.8
planar_gbrp14le_to_uv_512_sse4 : 762.3
planar_gbrp14le_to_uv_512_avx2 : 484.8
planar_gbrp16be_to_uv_512_c : 2383.3
planar_gbrp16be_to_uv_512_sse2 : 1881.8
planar_gbrp16be_to_uv_512_sse4 : 852.3
planar_gbrp16be_to_uv_512_avx2 : 541.8
planar_gbrp16le_to_uv_512_c : 2378.3
planar_gbrp16le_to_uv_512_sse2 : 1476.8
planar_gbrp16le_to_uv_512_sse4 : 765.3
planar_gbrp16le_to_uv_512_avx2 : 485.8
planar_gbrap16be_to_uv_512_c : 2382.3
planar_gbrap16be_to_uv_512_sse2 : 1886.3
planar_gbrap16be_to_uv_512_sse4 : 853.8
planar_gbrap16be_to_uv_512_avx2 : 550.8
planar_gbrap16le_to_uv_512_c : 2381.8
planar_gbrap16le_to_uv_512_sse2 : 1488.3
planar_gbrap16le_to_uv_512_sse4 : 765.3
planar_gbrap16le_to_uv_512_avx2 : 491.8
planar_gbrpf32be_to_uv_512_c : 4863.0
planar_gbrpf32be_to_uv_512_sse2 : 3347.5
planar_gbrpf32be_to_uv_512_sse4 : 1800.0
planar_gbrpf32be_to_uv_512_avx2 : 1199.0
planar_gbrpf32le_to_uv_512_c : 4725.0
planar_gbrpf32le_to_uv_512_sse2 : 2753.0
planar_gbrpf32le_to_uv_512_sse4 : 1474.5
planar_gbrpf32le_to_uv_512_avx2 : 927.5
planar_gbrapf32be_to_uv_512_c : 4859.0
planar_gbrapf32be_to_uv_512_sse2 : 3269.0
planar_gbrapf32be_to_uv_512_sse4 : 1802.0
planar_gbrapf32be_to_uv_512_avx2 : 1201.5
planar_gbrapf32le_to_uv_512_c : 6338.0
planar_gbrapf32le_to_uv_512_sse2 : 2756.5
planar_gbrapf32le_to_uv_512_sse4 : 1476.0
planar_gbrapf32le_to_uv_512_avx2 : 908.5planar_gbrap_to_a_512_c : 383.3
planar_gbrap_to_a_512_sse2 : 66.8
planar_gbrap_to_a_512_avx2 : 43.8
planar_gbrap10be_to_a_512_c : 601.8
planar_gbrap10be_to_a_512_sse2 : 86.3
planar_gbrap10be_to_a_512_avx2 : 34.8
planar_gbrap10le_to_a_512_c : 602.3
planar_gbrap10le_to_a_512_sse2 : 48.8
planar_gbrap10le_to_a_512_avx2 : 31.3
planar_gbrap12be_to_a_512_c : 601.8
planar_gbrap12be_to_a_512_sse2 : 111.8
planar_gbrap12be_to_a_512_avx2 : 41.3
planar_gbrap12le_to_a_512_c : 385.8
planar_gbrap12le_to_a_512_sse2 : 75.3
planar_gbrap12le_to_a_512_avx2 : 39.8
planar_gbrap16be_to_a_512_c : 386.8
planar_gbrap16be_to_a_512_sse2 : 79.8
planar_gbrap16be_to_a_512_avx2 : 31.3
planar_gbrap16le_to_a_512_c : 600.3
planar_gbrap16le_to_a_512_sse2 : 40.3
planar_gbrap16le_to_a_512_avx2 : 30.3
planar_gbrapf32be_to_a_512_c : 1148.8
planar_gbrapf32be_to_a_512_sse2 : 611.3
planar_gbrapf32be_to_a_512_sse4 : 234.8
planar_gbrapf32be_to_a_512_avx2 : 183.3
planar_gbrapf32le_to_a_512_c : 851.3
planar_gbrapf32le_to_a_512_sse2 : 263.3
planar_gbrapf32le_to_a_512_sse4 : 199.3
planar_gbrapf32le_to_a_512_avx2 : 156.8Reviewed-by : Paul B Mahol <onemda@gmail.com>
Signed-off-by : James Almer <jamrial@gmail.com> -
ffmpeg chains parameters and options while being used in a loop
10 janvier 2024, par Simon NazarenkoI got a code that generates videos from scratch (got gifs, captions and audio). It works amazing when done once, however, when put in a loop and it should create more than 1 video it freezes being caused by memory leak. Upon investigation I realized that ffmpeg (v1.1.0) chains the loop iterations carrying the parameters and options from the first iteration to the second. It then breaks (overwrites) the first video and infinitely writes the second.


This is my dependency


const ffmpeg = require("fluent-ffmpeg")()
 .setFfprobePath(ffprobe.path)
 .setFfmpegPath(ffmpegInstaller.path)



It looks like this


async function convertGifToVideo(
 gifFile,
 audioFile,
 subtitlesFile,
 tempDirectory
) {
 return new Promise((resolve, reject) => {
 const outputFile = `${tempDirectory}/video_${Date.now()}.mp4`
 
 ffmpeg
 .input(gifFile)
 .inputFormat("gif")
 .inputOptions("-stream_loop -1")
 .input(audioFile)
 .outputOptions("-shortest")
 .outputOptions(`-vf subtitles=${subtitlesFile}`)
 .outputOptions("-report")
 .output(outputFile)
 .on("end", () => {
 console.log(`Combined ${gifFile} and ${audioFile} into ${outputFile}`)
 resolve(outputFile)
 })
 .on("error", (err, stdout, stderr) => {
 console.error("Error combining GIF and audio:", err)
 console.error("ffmpeg stdout:", stdout)
 console.error("ffmpeg stderr:", stderr)
 reject(err)
 })
 .run()
 })
}



And it's called in a loop


for (const key in script) {
 if (script.hasOwnProperty(key)) {
 ...stuff

 const videoFileName = await convertGifToVideo(
 gifFileName,
 audioFileName,
 subtitlesFileName,
 tempDirectory
 )
 }
 }



Here is a piece of log from the first video generation




ffmpeg started on 2024-01-10 at 02:58:52
Report written to "ffmpeg-20240110-025852.log"
Command line :
/home/simon/Documents/AFYTUBE/node_modules/@ffmpeg-installer/linux-x64/ffmpeg -f gif -stream_loop -1 -i ./temp/gif_funny_frogs.gif -i ./temp/funny_frogs.mp3 -y -shortest -vf "subtitles=./temp/funny_frogs.srt" -report ./temp/video_1704880732780.mp4




Here is a piece of log from the second one




/home/simon/Documents/AFYTUBE/node_modules/@ffmpeg-installer/linux-x64/ffmpeg -f gif -stream_loop -1 -i ./temp/gif_funny_frogs.gif -i ./temp/funny_frogs.mp3 -f gif -stream_loop -1 -i ./temp/gif_leg_exercises.gif -i ./temp/leg_exercises.mp3 -y -shortest -vf "subtitles=./temp/funny_frogs.srt" -report -shortest -vf "subtitles=./temp/leg_exercises.srt" -report ./temp/video_1704880732780.mp4 ./temp/video_1704880750879.mp4




Any ideas what I am doing wrong ?


-
ffmpeg -i desktop Output file does not contain any stream [closed]
29 novembre 2024, par AntonioI'm trying to screen record a remote Windows VM machine which I'm accessing through ssh. I'm executing this command
ffmpeg -f gdigrab -framerate 30 -i desktop -t 00:00:10 output.mp4
which is returning the following error :

ffmpeg version 7.1-essentials_build-www.gyan.dev Copyright (c) 2000-2024 the FFmpeg developers
 built with gcc 14.2.0 (Rev1, Built by MSYS2 project)
 configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --en
able-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-zlib --enable-libsrt --enable-libss
h --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-lib
aom --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-libfreetype --enable-libfribidi --enabl
e-libharfbuzz --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-dxva2
--enable-d3d11va --enable-d3d12va --enable-ffnvcodec --enable-libvpl --enable-nvdec --enable-nvenc --enable-vaapi --enable-libgme
--enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --en
able-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
 libavutil 59. 39.100 / 59. 39.100
 libavcodec 61. 19.100 / 61. 19.100
 libavformat 61. 7.100 / 61. 7.100
 libavdevice 61. 3.100 / 61. 3.100
 libavfilter 10. 4.100 / 10. 4.100
 libswscale 8. 3.100 / 8. 3.100
 libswresample 5. 3.100 / 5. 3.100
 libpostproc 58. 3.100 / 58. 3.100
[gdigrab @ 000001a87f3af600] Capturing whole desktop as 1024x768x32 at (0,0)
[gdigrab @ 000001a87f3af600] Failed to capture image (error 5)
[gdigrab @ 000001a87f3af600] Could not find codec parameters for stream 0 (Video: bmp, none, 754987 kb/s): unspecified size
Consider increasing the value for the 'analyzeduration' (0) and 'probesize' (5000000) options
Input #0, gdigrab, from 'desktop':
 Duration: N/A, bitrate: 754987 kb/s
 Stream #0:0: Video: bmp, none, 754987 kb/s, 30 fps, 1000k tbr, 1000k tbn
Output #0, mp4, to 'output.mp4':
[out#0/mp4 @ 000001a87f3aeec0] Output file does not contain any stream
Error opening output file output.mp4.
Error opening output files: Invalid argument



If I take a remote desktop connection and use the same command, then it works perfectly.


I've also tried running
ffmpeg.exe -f lavfi -i color=c=black:s=800x600:r=30:d=60 out.mp4
which records something but it's just a black screen.

Does anyone have any idea what could be happening ? I'm clueless at this point as I haven't been able to find more info online.