
Recherche avancée
Autres articles (12)
-
Submit bugs and patches
13 avril 2011Unfortunately a software is never perfect.
If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
You may also (...) -
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 (...) -
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 (...)
Sur d’autres sites (6851)
-
ffmpeg throws error "Invalid file index 1 in filtergraph description" when used with concat and -/filter_complex [closed]
20 février, par Ernst VI want to create mp4 videos from many small .jpg files (time-lapse). Each image is shown for 2 seconds and then fades to the next. This works fine when I issue the command with a few images (see below). But when the number of images reaches hundreds or thousands, I can no longer put them into a single command, but have to put the filenames and the complex filter into .txt files.


Whatever I try, I always get the error
"Invalid file index 1 in filtergraph description"
.

This works fine :


ffmpeg -loop 1 -i "image1.jpg" -loop 1 -i "image2.jpg" -loop 1 -i "image3.jpg" -loop 1 -i "image4.jpg" -loop 1 -i "image5.jpg" -filter_complex "[0:v]trim=0:2,setpts=PTS-STARTPTS[v0]; [1:v]trim=0:2,setpts=PTS-STARTPTS[v1]; [2:v]trim=0:2,setpts=PTS-STARTPTS[v2]; [3:v]trim=0:2,setpts=PTS-STARTPTS[v3]; [4:v]trim=0:2,setpts=PTS-STARTPTS[v4]; [v0][v1] xfade=transition=fade:duration=1:offset=1 [xf1]; [xf1][v2] xfade=transition=fade:duration=1:offset=2 [xf2]; [xf2][v3] xfade=transition=fade:duration=1:offset=3 [xf3]; [xf3][v4] xfade=transition=fade:duration=1:offset=4 [xf4]" -map "[xf4]" -c:v libx264 -crf 18 -pix_fmt yuv420p output.mp4



But when I put the input files and the filter in txt files, it fails with the error above :


ffmpeg -stream_loop 1 -f concat -safe 0 -i concat_list.txt -/filter_complex filter_script.txt -map "[xf4]" -c:v libx264 -crf 18 -pix_fmt yuv420p output.mp4



This is the
concat_list.txt
:

file 'image1.jpg'
file 'image2.jpg'
file 'image3.jpg'
file 'image4.jpg'
file 'image5.jpg'



This is the
filter_script.txt
:

[0:v]trim=0:2,setpts=PTS-STARTPTS[v0];[1:v]trim=0:2,setpts=PTS-STARTPTS[v1];[2:v]trim=0:2,setpts=PTS-STARTPTS[v2];[3:v]trim=0:2,setpts=PTS-STARTPTS[v3];[4:v]trim=0:2,setpts=PTS-STARTPTS[v4];[v0][v1] xfade=transition=fade:duration=1:offset=1 [xf1];[xf1][v2] xfade=transition=fade:duration=1:offset=2 [xf2];[xf2][v3] xfade=transition=fade:duration=1:offset=3 [xf3];[xf3][v4] xfade=transition=fade:duration=1:offset=4 [xf4]



I tried adding/removing line breaks, semicolons, etc. Nothing helped.
Any idea what is going wrong here ? Thank you very much !


My ffmpeg version is the most recent one :


ffmpeg version 2025-02-17-git-b92577405b-full_build-www.gyan.dev


-
How can use ffmpeg in AWS Lambda to clip hls trasnsimision to .mp4
15 novembre 2024, par Bruno MunnéThe ffmpeg input is through the public url of the bucket, I want to save the output in a tmp.mp4 file and I want to upload this file to the bucket. Locally the ffmpeg command works perfectly, lasting no more than 3 seconds and the output file weighs less than 1MB


export const handler = async (event) => {
 try {
 const { m3u8, offset, duration, signedURL } = event;

 const clipKey = `clip_output.mp4`;
 const clipFilePath = path.join('/tmp', clipKey);

 execSync(`/opt/ffmpeglib/ffmpeg -i ${process.env.URL_CLOUDFLARE}/${m3u8} -ss ${offset} -t ${duration} -c copy -f mp4 ${clipFilePath}`)

 const fileContent = fs.readFileSync(clipFilePath);
 const resSign = await fetch(signedURL, {
 method: "PUT",
 headers: {
 "Content-Type": "application/octet-stream",
 },
 body: fileContent,
 });

 if (!resSign.ok) throw new Error(`Failed to upload file to S3: ${resSign.statusText}`);

 fs.unlinkSync(clipFilePath);

 return {
 statusCode: 200,
 body: JSON.stringify({
 message: 'Clip procesado y subido correctamente',
 clipKey: path.basename(clipFilePath)
 }),
 };
 } catch (error) {
 console.error("Error al procesar el clip:", error);
 return {
 statusCode: 500,
 body: JSON.stringify({ error: error.message }),
 };
 }
};



The error it shows me is the following


at genericNodeError (node:internal/errors:984:15)
 at wrappedFn (node:internal/errors:538:14)
 at checkExecSyncError (node:child_process:891:11)
 at execSync (node:child_process:963:15)
 at Runtime.handler (file:///var/task/index.js:16:3)
 at Runtime.handleOnceNonStreaming (file:///var/runtime/index.mjs:1173:29) {
 status: null,
 signal: 'SIGSEGV',
 output: [
 null,
 <buffer>,
 <buffer 66="66" 6d="6d" 70="70" 65="65" 67="67" 20="20" 76="76" 72="72" 73="73" 69="69" 6f="6f" 6e="6e" 4e="4e" 2d="2d" 37="37" 31="31" 30="30" 36="36" 34="34" 64="64" 35="35" 33="33" 63="63" 74="74" 61="61" 68="68" 3a="3a" 2f="2f" 1194="1194" more="more" bytes="bytes">
 ],
 pid: 13,
 stdout: <buffer>,
 stderr: <buffer 66="66" 6d="6d" 70="70" 65="65" 67="67" 20="20" 76="76" 72="72" 73="73" 69="69" 6f="6f" 6e="6e" 4e="4e" 2d="2d" 37="37" 31="31" 30="30" 36="36" 34="34" 64="64" 35="35" 33="33" 63="63" 74="74" 61="61" 68="68" 3a="3a" 2f="2f" 1194="1194" more="more" bytes="bytes">
}
ffmpeg version N-71064-gd5e603ddc0-static https://johnvansickle.com/ffmpeg/ Copyright (c) 2000-2024 the FFmpeg developers
built with gcc 8 (Debian 8.3.0-6)
configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --cc=gcc --enable-fontconfig --enable-frei0r --enable-gnutls --enable-gmp --enable-libgme --enable-gray --enable-libaom --enable-libfribidi --enable-libass --enable-libvmaf --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librubberband --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libdav1d --enable-libxvid --enable-libzvbi --enable-libzimg
libavutil 59. 27.100 / 59. 27.100
libavcodec 61. 9.100 / 61. 9.100
libavformat 61. 4.100 / 61. 4.100
libavdevice 61. 2.100 / 61. 2.100
libavfilter 10. 2.102 / 10. 2.102
libswscale 8. 2.100 / 8. 2.100
libswresample 5. 2.100 / 5. 2.100
libpostproc 58. 2.100 / 58. 2.100
END RequestId: 2fc8c51e-66c6-4c74-aa9c-fa10c11207a0
REPORT RequestId: 2fc8c51e-66c6-4c74-aa9c-fa10c11207a0 Duration: 164.82 ms Billed Duration: 165 ms Memory Size: 2048 MB Max Memory Used: 88 MB Init Duration: 185.19 ms
</buffer></buffer></buffer></buffer>


Help to resolve it please


-
flutter_ffmpeg is discontinued with no alternatives ?
13 mars, par Rageh AzzazyBased on this article by Taner Sener
https://tanersener.medium.com/saying-goodbye-to-ffmpegkit-33ae939767e1


and after the discontinuation of flutter_ffmpeg and ffmpeg_kit_flutter packages.


most packages for executing video editing commands were built depending on them and so won't work After April 1, 2025 as mentioned in the package documentation and Taner's article.


example of packages depending on flutter_ffmpeg or ffmpeg_kit_flutter like


- 

- video_trimmer
- zero_video_trimmer
- flutter_video_trimmer
- video_trim
- bemeli_compress
- video_trimmer_pro
- ... others
















and editing video using video_editor or video_editor_2 or video_editor_pits has become a problem


and I believe downloading the binaries and doing the whole thing locally is not just tedious but illegal as well.


so I broke down exactly what I need to edit videos in my flutter app


and I found those package but not yet tested them


Trimming : flutter_native_video_trimmer


Compression : video_compress or video_compress_plus


Muting : video_compress handles this


Encoding : Not sure, I just need a simple MP4 video files


Cropping : I can't find a solution for video cropping


I don't need to rotate, reverse or do any fancy stuff to the videos, just those five functions.


so now only remaining solution for this approach is to find a simple video cropping function and an encoder that work on flutter IOS & Android


so my question is not looking for external library recommendation but
do you have any ideas how to crop a video in flutter natively ?