
Recherche avancée
Autres articles (86)
-
Websites made with MediaSPIP
2 mai 2011, parThis page lists some websites based on MediaSPIP.
-
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 (...) -
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 (...)
Sur d’autres sites (12855)
-
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 ?


-
What is a Cohort Report ? A Beginner’s Guide to Cohort Analysis
3 janvier 2024, par Erin -
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.