
Recherche avancée
Autres articles (49)
-
ANNEXE : Les plugins utilisés spécifiquement pour la ferme
5 mars 2010, parLe site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)
-
Creating farms of unique websites
13 avril 2011, parMediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...) -
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 (7855)
-
Cancelling ffpeg launched as a C# process
22 avril 2016, par DarwinIcesurferI’m launching ffmpeg in a c# process to encode a video. In a command window, ffmpeg can be interrupted by pressing CTRL-C. I have tried to achieve the same effect by closing the process, however ffmpeg does not appear to close (it is still visible in task manager and it does not release the handle on the file it was encoding)
How can ffmpeg be interrupted programatically ?
static Process proc;
static BackgroundWorker bw;
public void EncodeVideoWithProgress(string filename, string arguments, BackgroundWorker worker, DoWorkEventArgs e)
{
proc = new Process();
// assign the backgroud worker to a class member variable so all function within the class will have access
bw = worker;
proc.StartInfo.FileName = "ffmpeg";
proc.StartInfo.Arguments = "-i " + " \"" + filename + "\" " + arguments;
proc.StartInfo.UseShellExecute = false;
proc.EnableRaisingEvents = true;
proc.StartInfo.RedirectStandardError = true;
proc.StartInfo.RedirectStandardOutput = false;
proc.StartInfo.CreateNoWindow = true;
proc.ErrorDataReceived += new DataReceivedEventHandler(NetErrorDataHandler);
proc.Start();
proc.BeginErrorReadLine();
proc.WaitForExit();
}
private static void NetErrorDataHandler(object sendingProcess,
DataReceivedEventArgs errLine)
{
if (bw.CancellationPending)
{
proc.CloseMainWindow();
proc.Close();
}
else
{
// do other tasks
}
} -
Live Smooth Streaming in IIS from webcam using FFMPEG
13 mai 2016, par tearvisusI’m trying to do a live stream of video captured by my webcam and host it on IIS using Live Smooth Streaming. Here are the steps I’m taking :
- In the IIS manager’s MIME Types add a new extension :
.isml
with type :application/atom+xml
- In the IIS manager add a publishing point (filename :
myStream.isml
). - Start the publishing point.
- Run the following command :
ffmpeg -hide_banner -y -f dshow -rtbufsize 100000k -i video="Lenovo EasyCamera":audio="Microphone (Realtek High Definition Audio)" -movflags isml+frag_keyframe -s 854x480 -f ismv http://localhost/myStream.isml/Stream(video)
- Play the stream from the location
http://localhost/myStream.isml/manifest
using VLC.
The problem is that the playback stops a few seconds before the moment in which I opened the stream with VLC. If I reopen the stream again, it will play from around the moment the first playback stopped to the moment the second playback started.
What I’m trying to achieve is to make the clients see the video from the moment they open the stream to the moment they disconnect. A delay up to a few seconds is acceptable. Obviously, the playback should not end regardless of the connection moment.
How can I do this ? Should I change something in the FFMPEG’s command or in the IIS ?
Note : A solution using tools other than FFMPEG is acceptable, as long as they are free (as in beer).
EDIT : Changed the description of problematic playback.
- In the IIS manager’s MIME Types add a new extension :
-
Killing all child processes
12 juin 2016, par ErraticFoxI have written a onclick function that runs child process for a command line for ffmpeg. Though I can’t seem to force close or kill the process in the middle of it. I’ve tried multiple ways such as child.kill() along with
SIGINT
,SIGKILL
,SIGHUP
,SIGQUIT
, andSIGTERM
and it continuously runs in the background still until finished or killed in the task manager. So how can I kill all the process related to the exec ?Here’s my current code :
function submitBtn() {
var selectVal1 = $("#inputFile1 option:selected").val(),
selectVal2 = $("#inputFile2 option:selected").val(),
selectOpt2 = $("#inputFile2 option:selected").text().toLowerCase()
if (!selectVal1 || !selectVal2) {
Materialize.toast('Please select your formats', 4000)
} else if ($("#uploadFile").val() === '') {
Materialize.toast('Please select your file', 4000)
} else {
var process = require("child_process")
var inputDir = uploadFile.files[0].path
var dir = inputDir.split("\\")
var pop = dir.pop()
var outputDir = dir.join("\\")
var cmd = `ffmpeg -y -i "${inputDir}" "${outputDir}\\output.${selectOpt2}"`
$("#load").removeClass("disabledLoad")
func = process.exec(cmd, function(error, stdout, stderr) {})
func.on('exit', function() {
$("document").ready(function() {
$("#load").addClass("disabledLoad")
Materialize.toast('Conversion compelete!', 4000)
})
})
}
}
function exitBtn() {
//var remote = require('electron').remote
//var window = remote.getCurrentWindow()
//window.close()
func.kill()
}I even tried renaming
process
toproc
and then doingprocess.on('exit', function () {
console.log('process is about to exit, kill ffmpeg');
func.kill()
})in exitBtn but still nothing. It doesn’t give errors or log my string I put.