
Recherche avancée
Médias (1)
-
The Slip - Artworks
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Texte
Autres articles (63)
-
MediaSPIP Core : La Configuration
9 novembre 2010, parMediaSPIP Core fournit par défaut trois pages différentes de configuration (ces pages utilisent le plugin de configuration CFG pour fonctionner) : une page spécifique à la configuration générale du squelettes ; une page spécifique à la configuration de la page d’accueil du site ; une page spécifique à la configuration des secteurs ;
Il fournit également une page supplémentaire qui n’apparait que lorsque certains plugins sont activés permettant de contrôler l’affichage et les fonctionnalités spécifiques (...) -
MediaSPIP v0.2
21 juin 2013, parMediaSPIP 0.2 est la première version de MediaSPIP stable.
Sa date de sortie officielle est le 21 juin 2013 et est annoncée ici.
Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
Comme pour la version précédente, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...) -
MediaSPIP version 0.1 Beta
16 avril 2011, parMediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
Pour avoir une installation fonctionnelle, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)
Sur d’autres sites (11661)
-
ffmpeg ignores set bitrate
13 mars 2023, par col__panicI have a folder of h264 files I am trying to convert to hevc with a lower bitrate set with -b:v flag. For context I am using python running in a Docker container. The issue is that when ffmpeg completes, the output bitrate is extremely low.


As you can see from the ffmpeg command below, I am expecting around 900k bitrate. But as the command runs, it shows around 18k bitrate.


ffmpeg -y -vsync 0 -hwaccel cuda -hwaccel_output_format cuda -i /tmp/input.ts -an -c:v hevc_nvenc -b:v 914k -b_ref_mode 0 -tag:v hvc1 /tmp/output.mp4 
ffmpeg version N-109685-gac37b2c2b1 Copyright (c) 2000-2023 the FFmpeg developers
 built with gcc 9 (Ubuntu 9.4.0-1ubuntu1~20.04.1)
 configuration: --enable-nonfree --enable-cuda-nvcc --enable-libnpp --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64
 libavutil 57. 44.100 / 57. 44.100
 libavcodec 59. 58.100 / 59. 58.100
 libavformat 59. 36.100 / 59. 36.100
 libavdevice 59. 8.101 / 59. 8.101
 libavfilter 8. 54.100 / 8. 54.100
 libswscale 6. 8.112 / 6. 8.112
 libswresample 4. 9.100 / 4. 9.100
-vsync is deprecated. Use -fps_mode
Passing a number to -vsync is deprecated, use a string argument as described in the manual.
Input #0, mpegts, from '/tmp/input.ts':
 Duration: 01:04:53.85, start: 85937.219044, bitrate: 2613 kb/s
 Program 1 
 Stream #0:0[0x101]: Video: h264 (Constrained Baseline) ([27][0][0][0] / 0x001B), yuv420p(progressive), 1280x720, 90k tbr, 90k tbn
 Stream #0:1[0x202]: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 130 kb/s
Stream mapping:
 Stream #0:0 -> #0:0 (h264 (native) -> hevc (hevc_nvenc))
Press [q] to stop, [?] for help
Output #0, mp4, to '/tmp/output.mp4':
 Metadata:
 encoder : Lavf59.36.100
 Stream #0:0: Video: hevc (Main) (hvc1 / 0x31637668), cuda(progressive), 1280x720, q=2-31, 914 kb/s, 90k fps, 90k tbn
 Metadata:
 encoder : Lavc59.58.100 hevc_nvenc
 Side data:
 cpb: bitrate max/min/avg: 0/0/914000 buffer size: 1828000 vbv_delay: N/A
frame=113118 fps=412 q=49.0 Lsize= 8925kB time=01:04:53.82 bitrate= 18.8kbits/s speed=14.2x 
video:8215kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 8.636624%



And then checking the output shows that it is around 18kb/s.


ffmpeg -i /tmp/output.mp4 
...
 Duration: 01:04:53.82, start: 0.000000, bitrate: 18 kb/s



For reference the input file is 2600kb/s.


ffmpeg -i /tmp/input.ts 
...
 Duration: 01:04:53.85, start: 85937.219044, bitrate: 2613 kb/s




This seems like an issue with the file itself, given that I have run the same command and had it work. Also note that even when I leave out the -b:v flag, the output is about the same.


I have tried setting -minrate:v -maxrate:v -bufsize:v and -ss 00:00:00 flags as well and they did not help.


Also there was another post that mentioned the audio track being an issue and to rule that out, I tried using -an and that didn't help either.


I saw another post that mentioned the order of the parameters being an issue but I don't think that's the issue because this same command has run successfully on other input files.


Any ideas ?


EDIT :
nvm fixed it


-
Node 18 or Node 20 break ffmpeg (in google cloud functions -> ffprobe was killed with signal SIGSEGV)
10 janvier 2024, par user20206929Please see below, the code is working on node js 16, but not when upgrading to node 18 or 20.


const ffmpeg = require("fluent-ffmpeg");

// Following is inside a .https.onRequest Google Cloud function with enough memory

try {
 const duration = new Promise((resolve, reject) => {
 ffmpeg.ffprobe(videoUrl, async (err, metadata) => {
 if (err) {
 if (res.headersSent) {
 console.error("Response already sent");
 return;
 } else {
 console.log("Metadata:", metadata);
 console.log("err: " + err);
 res.status(400).send("Error getting video metadata");
 return;
 }
 }
 const duration = metadata.format.duration;
 console.log("video duration in second: " + duration);
 resolve(duration);
 });
});
 videoDuration = await duration;
} catch (err) {
 console.log(err);
 throw err;
}



When upgrading to node 18/20 (No other change than upgrading node), the error "ffprobe not found" appears.


But setting the path manually using ffmpeg.setFfprobePath(ffprobePath) ;
trigger the error : Error : ffprobe was killed with signal SIGSEGV


So it seem its a permissions issue.


However, I tried a lot of different solutions, none of them made this work.
For instance i tried to download manually the ffprobe from the official website https://ffbinaries.com/downloads. Then manually add it to the code.


I tried to use https://www.npmjs.com/package/@ffprobe-installer/ffprobe or others package like https://www.npmjs.com/package/ffprobe-static


I also tried to download the ffprobe file to the temporary folder of google cloud, and change the permission of this folder.


All of those was doing the same error.


None of what i could think of made any difference.


Please help because i need to update node 16 to 18 or 20 before google remove node 16 on january 31 2024 and for now i don't see a solution.


I also looked for other solution to get this duration from a video file url, but using ffmpeg seem to be the only one that should work out of the box. As it is working on node 16.


Thank you,


UPDATE - 11/26/2023


GCP Functions NodeJS 16 runtime uses Ubuntu 18.04 with FFMpeg installed.
NodeJS 18/20 use Ubuntu 22.04, and Google decided not to include FFMpeg.


https://cloud.google.com/functions/docs/runtime-support#node.js
https://cloud.google.com/functions/docs/reference/system-packages


No workaround or solutions found as of now


UPDATE - 01/10/2024


Google added back ffmpeg to latest version, this is working as before now.


-
Top 5 Web Analytics Tools for Your Site
11 août 2023, par Erin — Analytics Tips