
Recherche avancée
Autres articles (79)
-
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 (...) -
Les autorisations surchargées par les plugins
27 avril 2010, parMediaspip core
autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs
Sur d’autres sites (8143)
-
Create a video with other videos at certain points
7 mars 2020, par Antique ChariotI’ve never used ffmpeg before, and I need to do something quite complicated (in my opinion at least, this could be easy).
Basically I need to have a black video but at certain points concatenate other videos.
For example, at 0.00 a 3 second video, then black until 10.0 and then another video, etc etcThe finished videos will consist of hundreds of videos and be anywhere from 1-5 minutes long.
I’m working in Node.js, ideally using a wrapper would be best (I’m using fluent-ffmpeg currently but any will suffice), although raw commands are also an option.
Any ideas are appreciated !
Edit : also, say a 5 second video is at 0.00, and a 10 second video is at 1.00, I’d like it to overwrite the original 5 second video
-
Flutter Animated Thumbnails
2 septembre 2020, par user433575I'm using the camera package to record videos and want to have animated thumbnails. I don't see any packages other than ffmpeg which might be able to do it but I'm stuck.


I need to capture videos using the camera package, save them to mp4 and generate webp animated images from it. Any help or suggestions greatly appreciated.


Here's some of my code :


static Future<string> getThumb(videoPath, width, height) async {
assert(File(videoPath).existsSync());

final String outPath = '$videoPath.webp';
final arguments =
 '-y -i $videoPath -vcodec webp -loop 0 -pix_fmt yuv420p $outPath';

 
final int rc = await _encoder.execute(arguments);
assert(rc == 0);
assert(File(outPath).existsSync());

return outPath;
</string>


}


Thanks


-
Trying to merge two videos from my photo roll with Flutter ffmpeg without success
4 avril 2023, par Stéphane de LucaMy goal is to merge too video I pick from my photo roll.
My code starts as follows :


// videos[0] contains: "content://media/external/video/media/2779"
 final v1 = await videos[0].getMediaUrl();
 if (v1 == null) return;
 final v1Path = await LecleFlutterAbsolutePath.getAbsolutePath(uri: v1);



But printing
v1Path
give a path withjpeg
extension :
/data/user/0/com.example.shokaze/cache/OutputFile_1669939088711.jpeg' which I though would have bear
mp4` as it is a video.

Why is it so ?


Another question I have is how can I make a relevant path so that the ffmpeg video appears in my roll after its creation ? Should I do the following and provide
outputPath
to the code ?

The command it executes is :

-i /data/user/0/com.example.shokaze/cache/OutputFile_1669940421875.jpeg -i /data/user/0/com.example.shokaze/cache/OutputFile_1669940428723.jpeg -filter_complex '[0:0][1:0]concat=n=2:v=1:a=0[out]' -map '[out]' /data/user/0/com.example.shokaze/app_flutter/output.mp4


And I get an error :

I/flutter (30190): error 1


My code is as follows :


String output = "content://media/external/video/media/output";
 final outputPath = await LecleFlutterAbsolutePath.getAbsolutePath(uri: output);
 if (outputPath == null) return;



The full code is as follows :


// Makes the final video by merging all videos from the mixing table
 void makeFinalVideo() async {
 if (videos.length < 2) return;

 final v1 = await videos[0].getMediaUrl();
 if (v1 == null) return;
 final v1Path = await LecleFlutterAbsolutePath.getAbsolutePath(uri: v1);
 if (v1Path == null) return;
 //String v1 = "";
 final v2 = await videos[1].getMediaUrl();
 if (v2 == null) return;
 final v2Path = await LecleFlutterAbsolutePath.getAbsolutePath(uri: v2);
 if (v2Path == null) return;
 String output = "content://media/external/video/media/output";
 final outputPath = "";
 // await LecleFlutterAbsolutePath.getAbsolutePath(uri: output);
 // if (outputPath == null) return;

 Video.merge(v1Path, v2Path, outputPath);
 }



class Video {
 /// Merges the video [v1] with [v2] as [output] video located in app doc path
 static void merge(String v1, String v2, String output) async {
 final appDocDir = await getApplicationDocumentsDirectory();

 //final appDir = await syspaths.getApplicationDocumentsDirectory();
 String rawDocumentPath = appDocDir.path;
 final outputPath = '$rawDocumentPath/output.mp4';

 final command =
 '-i $v1 -i $v2 -filter_complex \'[0:0][1:0]concat=n=2:v=1:a=0[out]\' -map \'[out]\' $outputPath';
 //await execute(command);
 try {
 final r = await FFmpegKit.execute(command);

 //.then((rc) => print("FFmpeg process exited with rc $rc"));
 print("Result: $r");
 } catch (e) {
 print("Exception: $e");
 }
 }
}