
Recherche avancée
Médias (1)
-
Rennes Emotion Map 2010-11
19 octobre 2011, par
Mis à jour : Juillet 2013
Langue : français
Type : Texte
Autres articles (33)
-
Installation en mode ferme
4 février 2011, parLe mode ferme permet d’héberger plusieurs sites de type MediaSPIP en n’installant qu’une seule fois son noyau fonctionnel.
C’est la méthode que nous utilisons sur cette même plateforme.
L’utilisation en mode ferme nécessite de connaïtre un peu le mécanisme de SPIP contrairement à la version standalone qui ne nécessite pas réellement de connaissances spécifique puisque l’espace privé habituel de SPIP n’est plus utilisé.
Dans un premier temps, vous devez avoir installé les mêmes fichiers que l’installation (...) -
Multilang : améliorer l’interface pour les blocs multilingues
18 février 2011, parMultilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela. -
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir
Sur d’autres sites (7398)
-
avcodec/mpegaudio_parser : Skip APE tags when parsing mp3 packets.
30 janvier 2018, par Dale Curtis -
FFMPEG RTMP not working in my red5pro module on Ubuntu 14.0.4
24 janvier 2018, par AtulThis following command not working in my java module (this takes snap from live stream and save it)
Runtime.getRuntime().exec("ffmpeg -i \"rtmp ://127.0.0.1:1935/live/mytest live=1 timeout=2\" -f image2 -vframes 1 /snaps/testo.jpg") ;If I use same command on Ubuntu 14.0.4 console it works. Same command working in my red5pro module on Window but not on Ubuntu.
When I use
String[] execStr = "/usr/local/bin/ffmpeg","-i","rtmp ://127.0.0.1:1935/live/mytest","live=1","timeout=2","-f","image2","-vframes","1","/snaps/tt.jpg" ;
ProcessBuilder pb = new ProcessBuilder("ffmpeg -i rtmp ://localhost/live/mytest live=1 timeout=2 -f image2 -vframes 1 /snaps/testo.jpg") ;It always throw stream not found ( in red5pro console)
-
Improve performance of FFMPEG with Java [on hold]
20 janvier 2018, par Nitishkumar SinghThis question is actually for improving performance of an Java application. In this java application, I am trying to convert an video into small clips.
Here is the implementation class for the same
package ffmpeg.clip.process;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.nio.file.Paths;
import java.time.Duration;
import java.time.LocalTime;
import java.time.temporal.ChronoUnit;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutionException;
import java.util.stream.Collectors;
import ffmpeg.clip.utils.VideoConstant;
import ffmpeg.clip.utils.VideoUtils;
/*
* @author Nitishkumar Singh
* @Description: class will use ffmpeg to break an source video into clips
*/
public class VideoToClip {
/*
* Prevent from creating instance
*/
private VideoToClip() {
}
/**
* Get Video Duration is milliseconds
*
* @Exception IOException - File does not exist VideoException- Video File have data issues
*/
static LocalTime getDuration(String sourceVideoFile) throws Exception {
if (!Paths.get(sourceVideoFile).toFile().exists())
throw new Exception("File does not exist!!");
Process proc = new ProcessBuilder(VideoConstant.SHELL, VideoConstant.SHELL_COMMAND_STRING_ARGUMENT,
String.format(VideoConstant.DURATION_COMMAND, sourceVideoFile)).start();
boolean errorOccured = (new BufferedReader(new InputStreamReader(proc.getErrorStream())).lines()
.count() > VideoConstant.ZERO);
String durationInSeconds = new BufferedReader(new InputStreamReader(proc.getInputStream())).lines()
.collect(Collectors.joining(System.lineSeparator()));
proc.destroy();
if (errorOccured || (durationInSeconds.length() == VideoConstant.ZERO))
throw new Exception("Video File have some issues!");
else
return VideoUtils.parseHourMinuteSecondMillisecondFormat(durationInSeconds);
}
/**
* Create Clips for Video Using Start and End Second
*
* @Exception IOException - Clip Creation Process Failed InterruptedException - Clip Creation task get's failed
*/
static String toClipProcess(String sourceVideo, String outputDirectory, LocalTime start, LocalTime end,
String fileExtension) throws IOException, InterruptedException, ExecutionException {
String clipName = String.format(VideoConstant.CLIP_FILE_NAME,
VideoUtils.getHourMinuteSecondMillisecondFormat(start),
VideoUtils.getHourMinuteSecondMillisecondFormat(end), fileExtension);
String command = String.format(VideoConstant.FFMPEG_OUTPUT_COMMAND, sourceVideo,
VideoUtils.getHourMinuteSecondMillisecondFormat(start),
VideoUtils.getHourMinuteSecondMillisecondFormat(end.minus(start.toNanoOfDay(), ChronoUnit.NANOS)),
outputDirectory, clipName);
LocalTime startTime = LocalTime.now();
System.out.println("Clip Name: " + clipName);
System.out.println("FFMPEG Process Execution Started");
CompletableFuture<process> completableFuture = CompletableFuture.supplyAsync(() -> {
try {
return executeProcess(command);
} catch (InterruptedException | IOException ex) {
throw new RuntimeException(ex);
}
});
completableFuture.get();
// remove
LocalTime endTime = LocalTime.now();
System.out.println("Clip Name: " + clipName);
System.out.println("FFMPEG Process Execution Finished");
System.out.println("Duration: " + Duration.between(startTime, endTime).toMillis() / 1000);
return clipName;
}
/**
* Create and Execute Process for each command
*/
static Process executeProcess(String command) throws InterruptedException, IOException {
Process clipProcess = Runtime.getRuntime().exec(command);
clipProcess.waitFor();
return clipProcess;
}
}
</process>The Entire Solution is availble at Github. So I am actually using CompletableFuture and running FFMPEG command by creating Java Process. The time it takes is too much. For 40 minutes video, it takes more than 49 minutes, that too on a 64 cpu machine. I am trying to reduce the core size to 8 or something, as well improve it’s performance. Any Help would be really great.