
Recherche avancée
Médias (3)
-
Exemple de boutons d’action pour une collection collaborative
27 février 2013, par
Mis à jour : Mars 2013
Langue : français
Type : Image
-
Exemple de boutons d’action pour une collection personnelle
27 février 2013, par
Mis à jour : Février 2013
Langue : English
Type : Image
-
Collections - Formulaire de création rapide
19 février 2013, par
Mis à jour : Février 2013
Langue : français
Type : Image
Autres articles (95)
-
Ajouter notes et légendes aux images
7 février 2011, parPour pouvoir ajouter notes et légendes aux images, la première étape est d’installer le plugin "Légendes".
Une fois le plugin activé, vous pouvez le configurer dans l’espace de configuration afin de modifier les droits de création / modification et de suppression des notes. Par défaut seuls les administrateurs du site peuvent ajouter des notes aux images.
Modification lors de l’ajout d’un média
Lors de l’ajout d’un média de type "image" un nouveau bouton apparait au dessus de la prévisualisation (...) -
Les tâches Cron régulières de la ferme
1er décembre 2010, parLa gestion de la ferme passe par l’exécution à intervalle régulier de plusieurs tâches répétitives dites Cron.
Le super Cron (gestion_mutu_super_cron)
Cette tâche, planifiée chaque minute, a pour simple effet d’appeler le Cron de l’ensemble des instances de la mutualisation régulièrement. Couplée avec un Cron système sur le site central de la mutualisation, cela permet de simplement générer des visites régulières sur les différents sites et éviter que les tâches des sites peu visités soient trop (...) -
Keeping control of your media in your hands
13 avril 2011, parThe vocabulary used on this site and around MediaSPIP in general, aims to avoid reference to Web 2.0 and the companies that profit from media-sharing.
While using MediaSPIP, you are invited to avoid using words like "Brand", "Cloud" and "Market".
MediaSPIP is designed to facilitate the sharing of creative media online, while allowing authors to retain complete control of their work.
MediaSPIP aims to be accessible to as many people as possible and development is based on expanding the (...)
Sur d’autres sites (6399)
-
ffmpeg remote url not working in lambda function
9 septembre 2024, par KomalI have created lambda function to trim video.


I run this command :


/opt/bin/ffmpeg -protocol_whitelist file,http,https,tcp,tls -i 'https://source-bucket.s3.amazonaws.com/1.mp4' -ss 5 -t 10 -loglevel 48 -y -avoid_negative_ts 1 -acodec copy /tmp/output.mp4



It gives following output :


"ffmpeg version 7.0.2-static https://johnvansickle.com/ffmpeg/ Copyright (c) 2000-2024 the FFmpeg developers\n built with gcc 8 (Debian 8.3.0-6)\n 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\n libavutil 59. 8.100 / 59. 8.100\n libavcodec 61. 3.100 / 61. 3.100\n libavformat 61. 1.100 / 61. 1.100\n libavdevice 61. 1.100 /
61. 1.100\n libavfilter 10. 1.100 / 10. 1.100\n libswscale 8. 1.100 / 8. 1.100\n libswresample 5. 1.100 / 5. 1.100\n libpostproc 58. 1.100 / 58. 1.100\nSplitting the commandline.\nReading option '-protocol_whitelist' ... matched as AVOption 'protocol_whitelist' with argument 'file,http,https,tcp,tls'.\nReading option '-i' ... matched as input url with argument 'https://source-bucket.s3.amazonaws.com/1.mp4'.\nReading option '-ss' ... matched as option 'ss' (start transcoding at specified time) with argument '50'.\nReading option '-t' ... matched as option 't' (stop transcoding after specified duration) with argument '100'.\nReading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '48'.\nReading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.\nReading option '-avoid_negative_ts' ... matched as AVOption 'avoid_negative_ts' with argument '1'.\nReading option '-acodec' ... matched as option 'acodec' (alias for -c:a (select encoder/decoder for audio streams)) with argument 'copy'.\nReading option '/tmp/output.mp4' ... matched as output url.\nFinished splitting the commandline.\nParsing a group of options: global .\nApplying option loglevel (set logging level) with argument 48.\nApplying option y (overwrite output files) with argument
1.\nSuccessfully parsed a group of options.\nParsing a group of options: input url https://source-bucket.s3.amazonaws.com/1.mp4.\nSuccessfully parsed a group of options.\nOpening an input file: https://source-bucket.s3.amazonaws.com/1.mp4.\n[AVFormatContext @ 0x70ea0c0] Opening 'https://source-bucket.s3.amazonaws.com/1.mp4' for reading\n"



So, its not going beyond this : 'Opening 'https://source-bucket.s3.amazonaws.com/1.mp4' ; for reading\n'


And after this, it immediately gets out. Need suggestions, where its going wrong. Same command working fine on local computer.


I tried cloudfront and signed url as well, as mentioned in this post : How to read remote video on Amazon S3 using ffmpeg. But it doesnt work with url. Only working when downloaded into tmp folder.


Following is the final log, which you can see is no timeout. It actually finish function execution within 2-3 seconds. I have timeout set for 15 mins to the function which is maximum :



REPORT RequestId: 4acd7b38-017c-4dce-bb65-8f6fd3cf37e0 Duration: 1297.93 ms Billed Duration: 1298 ms Memory Size: 1024 MB Max Memory Used: 103 MB Init Duration: 328.76 ms 



-
Livestream not reaching AWS endpoint
13 août 2024, par NoobAmII'm trying to stream my live video into Amazon IVS and I don't see it on the live channels.


Is it possible I have a mistake in my FFMPEG configuration ?
I'm expecting to see this in my playback url or on the console screen for playback but I see nothing at the moment.


As I understand it, shouldn't I see some kind of playback in the live channels if a stream is being sent that channel ?


async ivsStreamingService(payload: any): Promise<void> {
 const injestServer = '***.global-contribute.live-video.net:443/app/';
 const streamKey = 'sk_us-east-1_*****';
 const ffmpeg = spawn('ffmpeg', [
 '-re',
 '-i', '-',
 '-r', '30',
 '-c:v', 'libx264',
 '-pix_fmt', 'yuv420p',
 '-profile:v', 'main',
 '-preset', 'veryfast',
 '-x264opts', 'nal-hrd=cbr:no-scenecut',
 '-minrate', '3000k',
 '-maxrate', '3000k',
 '-g', '60',
 '-c:a', 'aac',
 '-b:a', '160k',
 '-ac', '2',
 '-ar', '44100',
 '-f', 'flv',
 `rtmps://${ingestServer}${streamKey}`
 ]);
 
 ffmpeg.stdin.write(payload, (err) => {
 console.log(payload)
 if (err) console.error('Error writing payload to FFmpeg stdin:', err);
 });
 
 ffmpeg.on('close', (code) => {
 console.log(`FFmpeg process exited with code ${code}`);
 });
 
 ffmpeg.stdin.on('error', (err) => {
 console.error('Error writing to FFmpeg stdin:', err);
 });
 
 ffmpeg.stderr.on('data', (data) => {
 console.error(`FFmpeg error: ${data}`);
 });
 }
</void>




I'm not quite sure why it wouldn't receive the stream, as it would appear everything is correct.


-
Live stream doesn't seem to be passed to AWS correctly
12 août 2024, par NoobAmII'm trying to stream my live video into Amazon IVS and I don't see it on the live channels.


Is it possible I have a mistake in my FFMPEG configuration ?
I'm expecting to see this in my playback url or on the console screen for playback but I see nothing at the moment.


As I understand it, shouldn't I see some kind of playback in the live channels if a stream is being sent that channel ?


` async sendDataToIvs(channelArn: string, payload: any): Promise<void> {
 const injestServer = '***.global-contribute.live-video.net';
 const streamKey = 'sk_us-east-1_*****';
 
 const ffmpeg = spawn('ffmpeg', [
 '-re', // Read input at native frame rate
 '-i', '-', // Input from stdin (live stream data)
 '-r', '30', // Frame rate
 '-c:v', 'libx264', // Video codec - H.264
 '-pix_fmt', 'yuv420p', // Pixel format
 '-profile:v', 'main', // H.264 profile
 '-preset', 'veryfast', // Encoder quality setting
 '-x264opts', 'nal-hrd=cbr:no-scenecut', // Additional x264 options
 '-minrate', '3000', // Minimum bitrate
 '-maxrate', '3000', // Maximum bitrate
 '-g', '60', // GOP size
 '-c:a', 'aac', // Audio codec
 '-b:a', '160k', // Audio bitrate
 '-ac', '2', // Audio channels
 '-ar', '44100', // Audio sample rate
 '-f', 'flv', // Output format
 `rtmps://${injestServer}:443/app/${streamKey}` // Output destination
 ]);
 
 ffmpeg.stdin.write(payload, (err) => {
 console.log(payload)
 if (err) console.error('Error writing payload to FFmpeg stdin:', err);
 });
 
 ffmpeg.on('close', (code) => {
 console.log(`FFmpeg process exited with code ${code}`);
 });
 
 ffmpeg.stdin.on('error', (err) => {
 console.error('Error writing to FFmpeg stdin:', err);
 });
 
 ffmpeg.stderr.on('data', (data) => {
 console.error(`FFmpeg error: ${data}`);
 });
 } `
</void>