
Recherche avancée
Autres articles (99)
-
Amélioration de la version de base
13 septembre 2013Jolie sélection multiple
Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...) -
Emballe médias : à quoi cela sert ?
4 février 2011, parCe plugin vise à gérer des sites de mise en ligne de documents de tous types.
Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ; -
Configuration spécifique pour PHP5
4 février 2011, parPHP5 est obligatoire, vous pouvez l’installer en suivant ce tutoriel spécifique.
Il est recommandé dans un premier temps de désactiver le safe_mode, cependant, s’il est correctement configuré et que les binaires nécessaires sont accessibles, MediaSPIP devrait fonctionner correctement avec le safe_mode activé.
Modules spécifiques
Il est nécessaire d’installer certains modules PHP spécifiques, via le gestionnaire de paquet de votre distribution ou manuellement : php5-mysql pour la connectivité avec la (...)
Sur d’autres sites (13233)
-
Flutter : Running FFmpeg.execute to generate thumbnails in a different isolate doesn't work ?
12 novembre 2024, par VasudevThis is the current code to generate thumbnails for Video and Audio files.. It is working fine in most cases.


@override
Future<imageprovider> thumbnail(String path,
{required double width, required double height}) async {


 final FFmpegSession session = await FFmpegKit.executeAsync(
 "-loglevel quiet -i '$filePath' -y -ss 00:00:00.000 -vframes 1 '$thumbnailPath'");


 final returnCode = await session.getReturnCode();
 if (returnCode == null || returnCode.isValueError()) {
 throw Exception("Thumbnail generation failed");
 }

/* Returns ImageProvider */
}
</imageprovider>


Now in iOS, for large files, the thumbnail generation doesn't really fail. But takes a long time and doesn't complete at all.


This causes performance issues. I would like to run this FFmpeg.execute() in a different isolate, but it doesn't work at all.


final FFmpegSession session = await Isolate.run(
 () async {
 return await FFmpegKit.executeAsync(
 "-loglevel quiet -i '$filePath' -y -ss 00:00:00.000 -vframes 1 '$thumbnailPath'");
 },
 );



-
ffmpeg timelapse discard garbage jpg [duplicate]
12 mai 2021, par pieknI'm successfully creating timelapse video (jpg->mp4) using command line
$ffmpeg -r $fps -f concat -safe 0 -i $concat_file -c:v libx264 -vf 'format=yuv420p' $thumbnail 2>&1 &


But some of source jpg are 'garbage' (look picture below what I mean) - part of the picture is lost.
part of picture is lost


As result, final clip contains damaged frames (see below)
final clip


As I see, the best for me is to discard these jpg. But I have no ideas how to define them ? - file system don't see them as 'broken', etc.


Any ideas ?


-
ffmpeg with Flutter - Error in my code - Video not created
30 juillet 2020, par csslerI try to create a video from images with flutter and
ffmpeg
. I think the logic of my code is correct, but I always get the return value1
which says that the execute was not successfull.

Do you find the error in my code ?


Future<void> _onCreateVideoFromImages() async {
 Directory tempDir = await getTemporaryDirectory();
 String tempPath = tempDir.path;

 final allPictures = await picturesData.getPicturesFromAlbum(albumID);

 List textFileMap = [];

 for (var i = 0; i < allPictures.length; i++) {
 var file = File(allPictures[i].path);

 final newFile = await file
 .copySync("$tempPath/img${i.toString().padLeft(4, '0')}.jpg");

 print("File has been moved successfully to temporary folder: $newFile");

 textFileMap.add("file '" + newFile.path + "'");
 }

 print("Final list:");
 print(textFileMap);

 print("Create txt file for ffmpeg");
 final File file = File('${tempPath}/images.txt');
 final textFile = await file.writeAsString(textFileMap.join("\n"));
 print("txt file created successfully: $textFile");

 await _flutterFFmpeg.execute(
 "ffmpeg -f concat -safe 0 -i $textFile -c copy $tempPath/output.mp4")
 .then((rc) {
 if (rc == 0) {
 print("Video completed");
 } else {
 print(rc); // Returns 1
 }
 });
 }
</void>


And here the console log


flutter: File has been moved successfully to temporary folder: File: '/var/mobile/Containers/Data/Application/C28A04D5-76DF-450B-8F63-75CD39BC927F/Library/Caches/img0001.jpg'
flutter: Final list::
flutter: [file '/var/mobile/Containers/Data/Application/C28A04D5-76DF-450B-8F63-75CD39BC927F/Library/Caches/img0000.jpg', file '/var/mobile/Containers/Data/Application/C28A04D5-76DF-450B-8F63-75CD39BC927F/Library/Caches/img0001.jpg']
flutter: Create txt file for ffmpeg"
flutter: txt file created successfully: '/var/mobile/Containers/Data/Application/C28A04D5-76DF-450B-8F63-75CD39BC927F/Library/Caches/images.txt'
flutter: Code: 1



I appreciate your help !