
Recherche avancée
Autres articles (35)
-
Support de tous types de médias
10 avril 2011Contrairement à beaucoup de logiciels et autres plate-formes modernes de partage de documents, MediaSPIP a l’ambition de gérer un maximum de formats de documents différents qu’ils soient de type : images (png, gif, jpg, bmp et autres...) ; audio (MP3, Ogg, Wav et autres...) ; vidéo (Avi, MP4, Ogv, mpg, mov, wmv et autres...) ; contenu textuel, code ou autres (open office, microsoft office (tableur, présentation), web (html, css), LaTeX, Google Earth) (...)
-
Other interesting software
13 avril 2011, parWe don’t claim to be the only ones doing what we do ... and especially not to assert claims to be the best either ... What we do, we just try to do it well and getting better ...
The following list represents softwares that tend to be more or less as MediaSPIP or that MediaSPIP tries more or less to do the same, whatever ...
We don’t know them, we didn’t try them, but you can take a peek.
Videopress
Website : http://videopress.com/
License : GNU/GPL v2
Source code : (...) -
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 (7424)
-
Node-Fluent-ffmpeg stops with Error initializing complex filters. Invalid argument
28 août 2020, par V.PanichkinI use node-fluent-ffmpeg to generate ffmpeg command. I created a node.js app, but it throws an exception :


Error: ffmpeg exited with code 1: Error initializing complex filters.
Invalid argument

 at ChildProcess.<anonymous> (/home/victor/Documents/work/recorder_ws/node_modules/fluent-ffmpeg/lib/processor.js:182:22)
 at ChildProcess.emit (events.js:315:20)
 at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12)
</anonymous>


The command that was generated by Node-Fluent-Ffmpeg is


ffmpeg -i /home/user/videos/1.webm -i /home/user/videos/3.webm -i /home/user/videos/4.webm -i /home/user/videos/5.webm -y -filter_complex "[0:v] scale=qvga [a0];[1:v] scale=qvga [a1];[2:v] scale=qvga [a2];[3:v] scale=qvga [a3];[a0][a1][a2][a3]xstack=inputs=4:layout=0_0|w0_0|0_h0|w0_h0[out]" -map "[out]" -c:v libx264 -t '30' ./server-generated.mkv



I checked it several times and didn't find any problem. Afterwards, I run this generated command directly in the console and it works fine.


Could someone tell me why node-fluent-ffmpeg cannot run this command with a valid ffmpeg command and throws invalid argument exception ?


-
Error : ffmpeg exited with code 2 - Docker Container
15 avril 2020, par Vincenzo AstaI created a Docker Container that when I run I get this error (Why do I get this error ? It works locally) :



{
 "message": "Error: ffmpeg exited with code 2
 at ChildProcess.<anonymous> (/app/lib/node_modules/fluent-ffmpeg/lib/processor.js:182:22)
 at emitTwo (events.js:126:13)
 at ChildProcess.emit (events.js:214:7)
 at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)"
}
</anonymous>



Below, the part of code where I get the error (in particular the execution goes into reject) :



var ffmpeg = require('fluent-ffmpeg');

module.exports = (sourcePath, outputPath, af, outputFormat="mp3") => {
 return new Promise((resolve, reject) => {
 let proc = new ffmpeg({ source: sourcePath, nolog: true });
 proc.audioQuality(0);
 proc.audioFilters(af);
 proc.setFfmpegPath(__dirname + "/ffmpeg-20180325-5b31dd1-win64-static/bin/ffmpeg.exe");
 proc.toFormat(outputFormat).on('end', function () {
 resolve();
 })
 .on('error', function (err) {
 reject(err);
 })
 .saveToFile(outputPath);
 })
}




My Dockerfile :



FROM node:8.11.1

WORKDIR /app

COPY package*.json /app/

RUN npm install

COPY . /app/

EXPOSE 8000

CMD [ "node", "app.js" ]




My package.json :



{
 "name": "",
 "version": "1.0.0",
 "description": "",
 "main": "app.js",
 "author": "",
 "license": "ISC",
 "dependencies": {
 "express": "^4.16.4",
 "azure-storage": "^2.1.0",
 "crypto": "^0.0.3",
 "ffmpeg": "^0.0.4",
 "ffmpeg-normalize": "^1.3.0",
 "fluent-ffmpeg": "^2.1.2",
 "fs": "^0.0.1-security",
 "jmespath": "0.15.0",
 "mp3-duration": "^1.1.0",
 "striptags": "^3.1.1"
 }
}



-
Nix package : Pass build flag —extra-cflags to ffmpeg at compile time
13 mai 2024, par catleeballI'm a little inexperienced with Nix and NixOS and am struggling a bit with this ffmpeg source build. Any advice is appreciated !


Goal


Build ffmpeg from source with
--extra-cflags="-pipe -O3 -march=znver3 -ffat-lto-objects"
, ideally using a flake or overlay or similar so that I can build off the existing ffmpeg nix package and maybe even reproducible builds.

Attempts


I've been trying to follow different advice I've seen online, but looking at ffmpeg in nixpkgs, I'm not sure what I could patch or override. Since
configureFlags
happens inside thestdenv.mkderivation
block, when I try to override it, it doesn't seem to have scope into this variable (and since the derivation explicitly setsonfigurePlatforms = [];
, I'm not sure if that would clobber the override changes unless I tried to override the whole long derivation).

Looking at the ffmpeg configure script, it seemed like environment variable cflags / cxxflags won't be respected, but it will take them from the
--extra-cflags
argument, but I could be missing something.

Flake attempt


Here's an example
flake.nix
I forked from an example I saw at this github repo

{
 description = "A full build of ffmpeg, including the proprietary stuff";

 inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
 inputs.flake-utils.url = "github:numtide/flake-utils";

 outputs = { self, nixpkgs, flake-utils }:
 flake-utils.lib.eachDefaultSystem (system:
 let
 pkgs = import nixpkgs {
 inherit system;
 config.allowUnfree = true;
 };

 overrides = {
 ffmpeg = pkgs.ffmpeg-full;
 # If this did work, I'm not sure how it would combine with the derivation in the existing package, e.g. if it would get overridden
 configureFlags = [ "--extra-cflags -march=znver3 -O3 -pipe -ffat-lto-objects" ];
 withHeadlessDeps = true;
 nonfreeLicensing = true;
 # more options here once things are working above
 };
 in
 rec {
 packages.ffmpeg-custom = pkgs.ffmpeg-full.override overrides;
 defaultPackage = packages.ffmpeg-custom;
 }
 );
}



when building with
nix profile install
, I encounter the error :

error: function 'anonymous lambda' called with unexpected argument 'configureFlags'

 at /nix/store/d9wpzgyjlpw1424kw2lyilah6690fnk3-source/pkgs/development/libraries/ffmpeg-full/default.nix:1:1:

 1| { lib, stdenv, buildPackages, ffmpeg, addOpenGLRunpath, pkg-config, perl, texinfo, yasm
 | ^
 2| /*



presumably since configureFlags is defined in the derivation in the original package.


Overlay in configuration.nix attempt


I tried adding this to my /etc/nixos/configuration.nix also without success :


nixpkgs.overlays = [
 (self: super: {
 ffmpeg-full = super.ffmpeg-full.override {
 configureFlags = [
 "--enable-hardcoded-tables"
 "--extra-cflags -march=znver3 -O3 -pipe -ffat-lto-objects"
 ] ++ super.ffmpeg-full.configureFlags;
 };
 })
];



when building with
nixos-rebuild switch
I get the same error :

error: function 'anonymous lambda' called with unexpected argument 'configureFlags'

 at /nix/store/amxbqlhq11xfrbs4vdsyi04fap0abx0v-nixos-23.11/nixos/pkgs/development/libraries/ffmpeg/generic.nix:3:1:

 2|
 3| { lib, stdenv, buildPackages, removeReferencesTo, addOpenGLRunpath, pkg-config, perl, texinfo, yasm
 | ^
 4|



Context


I have a NixOS machine that does very long-running ffmpeg encodes nearly all the time. I was hoping to rebuild headless ffmpeg with more aggressive cflags and maybe some extra options. I hope to benchmark performance differences between different builds.


I'll probably use this as an excuse to also build ffmpeg with some extra nonfree dependencies too.