
Recherche avancée
Médias (1)
-
MediaSPIP Simple : futur thème graphique par défaut ?
26 septembre 2013, par
Mis à jour : Octobre 2013
Langue : français
Type : Video
Autres articles (103)
-
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 (...) -
MediaSPIP 0.1 Beta version
25 avril 2011, parMediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
The zip file provided here only contains the sources of MediaSPIP in its standalone version.
To get a working installation, you must manually install all-software dependencies on the server.
If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...) -
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 (...)
Sur d’autres sites (10476)
-
FFMPEG stuck at 00:00:00 speed=0x for a long time at the beginning
4 juin 2020, par lagmoellertimI'm currently writing a script that can remove silence from any video. I'm doing this using ffmpeg and a complex_filter script.



Since most of my videos are pretty long (>1.5h), ffmpeg is called multiple times with a different complex_filter, each editing a part of the video (about 8 minutes long each) and combining those parts at the end.



The input file for all these separate parts is always the original 1.5h video clip.



The problem I keep getting is that for videos starting not directly at the start (first part works fine, second part starting at minute 8 takes longer, third part starting at minute 16 even longer, ... you get the point), this shows up and gets displayed for quite a long time, until it finally works with its normal speed :



frame= 0 fps=0.0 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A speed= 0x



Here is the ffmpeg script I use



ffmpeg -i video.mp4 -vsync 1 -async 1 -safe 0 -filter_complex_script /path/to/complex_filter -y -map '[vout]' -map '[aout]' video_parts/infb4_3.mp4



I also tried adding
-ss 00:24:00
before or behind the-i
input, but I did not notice any speed improvement.


And here the complex_filter of one part of the video, starting at minute 24 and ending at minute 32 :



[0:v]trim=start=1440:end=1440.655,setpts=PTS-STARTPTS[v0];
[v0]setpts=0.1667*PTS[vf0];
[0:a]atrim=start=1440:end=1440.655,asetpts=PTS-STARTPTS[a0];
[a0]atempo=6.0,volume=0.5[af0];
[0:v]trim=start=1440.655:end=1442.745,setpts=PTS-STARTPTS[v1];
[0:a]atrim=start=1440.655:end=1442.745,asetpts=PTS-STARTPTS[a1];
[0:v]trim=start=1442.745:end=1443.115,setpts=PTS-STARTPTS[v2];
[v2]setpts=0.1667*PTS[vf2];
[0:a]atrim=start=1442.745:end=1443.115,asetpts=PTS-STARTPTS[a2];
[a2]atempo=6.0,volume=0.5[af2];
[0:v]trim=start=1443.115:end=1444.005,setpts=PTS-STARTPTS[v3];
[0:a]atrim=start=1443.115:end=1444.005,asetpts=PTS-STARTPTS[a3];
[0:v]trim=start=1444.005:end=1444.295,setpts=PTS-STARTPTS[v4];
[v4]setpts=0.1667*PTS[vf4];
[0:a]atrim=start=1444.005:end=1444.295,asetpts=PTS-STARTPTS[a4];
[a4]atempo=6.0,volume=0.5[af4];
[0:v]trim=start=1444.295:end=1449.925,setpts=PTS-STARTPTS[v5];
[0:a]atrim=start=1444.295:end=1449.925,asetpts=PTS-STARTPTS[a5];
[0:v]trim=start=1449.925:end=1450.295,setpts=PTS-STARTPTS[v6];
[v6]setpts=0.1667*PTS[vf6];
[0:a]atrim=start=1449.925:end=1450.295,asetpts=PTS-STARTPTS[a6];
[a6]atempo=6.0,volume=0.5[af6];
[0:v]trim=start=1450.295:end=1453.225,setpts=PTS-STARTPTS[v7];
[0:a]atrim=start=1450.295:end=1453.225,asetpts=PTS-STARTPTS[a7];
[0:v]trim=start=1453.225:end=1453.965,setpts=PTS-STARTPTS[v8];
[v8]setpts=0.1667*PTS[vf8];
[0:a]atrim=start=1453.225:end=1453.965,asetpts=PTS-STARTPTS[a8];
[a8]atempo=6.0,volume=0.5[af8];
[0:v]trim=start=1453.965:end=1458.755,setpts=PTS-STARTPTS[v9];
[0:a]atrim=start=1453.965:end=1458.755,asetpts=PTS-STARTPTS[a9];
[0:v]trim=start=1458.755:end=1459.815,setpts=PTS-STARTPTS[v10];
[v10]setpts=0.1667*PTS[vf10];
[0:a]atrim=start=1458.755:end=1459.815,asetpts=PTS-STARTPTS[a10];
[a10]atempo=6.0,volume=0.5[af10];
[0:v]trim=start=1459.815:end=1464.805,setpts=PTS-STARTPTS[v11];
[0:a]atrim=start=1459.815:end=1464.805,asetpts=PTS-STARTPTS[a11];
[0:v]trim=start=1464.805:end=1466.665,setpts=PTS-STARTPTS[v12];
[v12]setpts=0.1667*PTS[vf12];
[0:a]atrim=start=1464.805:end=1466.665,asetpts=PTS-STARTPTS[a12];
[a12]atempo=6.0,volume=0.5[af12];
[0:v]trim=start=1466.665:end=1469.615,setpts=PTS-STARTPTS[v13];
[0:a]atrim=start=1466.665:end=1469.615,asetpts=PTS-STARTPTS[a13];
[0:v]trim=start=1469.615:end=1470.075,setpts=PTS-STARTPTS[v14];
[v14]setpts=0.1667*PTS[vf14];
[0:a]atrim=start=1469.615:end=1470.075,asetpts=PTS-STARTPTS[a14];
[a14]atempo=6.0,volume=0.5[af14];
[0:v]trim=start=1470.075:end=1474.435,setpts=PTS-STARTPTS[v15];
[0:a]atrim=start=1470.075:end=1474.435,asetpts=PTS-STARTPTS[a15];
[0:v]trim=start=1474.435:end=1474.725,setpts=PTS-STARTPTS[v16];
[v16]setpts=0.1667*PTS[vf16];
[0:a]atrim=start=1474.435:end=1474.725,asetpts=PTS-STARTPTS[a16];
[a16]atempo=6.0,volume=0.5[af16];
[0:v]trim=start=1474.725:end=1476.765,setpts=PTS-STARTPTS[v17];
[0:a]atrim=start=1474.725:end=1476.765,asetpts=PTS-STARTPTS[a17];
[0:v]trim=start=1476.765:end=1479.525,setpts=PTS-STARTPTS[v18];
[v18]setpts=0.1667*PTS[vf18];
[0:a]atrim=start=1476.765:end=1479.525,asetpts=PTS-STARTPTS[a18];
[a18]atempo=6.0,volume=0.5[af18];
[0:v]trim=start=1479.525:end=1483.705,setpts=PTS-STARTPTS[v19];
[0:a]atrim=start=1479.525:end=1483.705,asetpts=PTS-STARTPTS[a19];
[0:v]trim=start=1483.705:end=1484.165,setpts=PTS-STARTPTS[v20];
[v20]setpts=0.1667*PTS[vf20];
[0:a]atrim=start=1483.705:end=1484.165,asetpts=PTS-STARTPTS[a20];
[a20]atempo=6.0,volume=0.5[af20];
[0:v]trim=start=1484.165:end=1485.605,setpts=PTS-STARTPTS[v21];
[0:a]atrim=start=1484.165:end=1485.605,asetpts=PTS-STARTPTS[a21];
[0:v]trim=start=1485.605:end=1486.315,setpts=PTS-STARTPTS[v22];
[v22]setpts=0.1667*PTS[vf22];
[0:a]atrim=start=1485.605:end=1486.315,asetpts=PTS-STARTPTS[a22];
[a22]atempo=6.0,volume=0.5[af22];
[0:v]trim=start=1486.315:end=1489.055,setpts=PTS-STARTPTS[v23];
[0:a]atrim=start=1486.315:end=1489.055,asetpts=PTS-STARTPTS[a23];
[0:v]trim=start=1489.055:end=1489.485,setpts=PTS-STARTPTS[v24];
[v24]setpts=0.1667*PTS[vf24];
[0:a]atrim=start=1489.055:end=1489.485,asetpts=PTS-STARTPTS[a24];
[a24]atempo=6.0,volume=0.5[af24];
[0:v]trim=start=1489.485:end=1491.375,setpts=PTS-STARTPTS[v25];
[0:a]atrim=start=1489.485:end=1491.375,asetpts=PTS-STARTPTS[a25];
[0:v]trim=start=1491.375:end=1491.955,setpts=PTS-STARTPTS[v26];
[v26]setpts=0.1667*PTS[vf26];
[0:a]atrim=start=1491.375:end=1491.955,asetpts=PTS-STARTPTS[a26];
[a26]atempo=6.0,volume=0.5[af26];
[0:v]trim=start=1491.955:end=1493.325,setpts=PTS-STARTPTS[v27];
[0:a]atrim=start=1491.955:end=1493.325,asetpts=PTS-STARTPTS[a27];
[0:v]trim=start=1493.325:end=1493.785,setpts=PTS-STARTPTS[v28];
[v28]setpts=0.1667*PTS[vf28];
[0:a]atrim=start=1493.325:end=1493.785,asetpts=PTS-STARTPTS[a28];
[a28]atempo=6.0,volume=0.5[af28];
[0:v]trim=start=1493.785:end=1498.195,setpts=PTS-STARTPTS[v29];
[0:a]atrim=start=1493.785:end=1498.195,asetpts=PTS-STARTPTS[a29];
[0:v]trim=start=1498.195:end=1498.935,setpts=PTS-STARTPTS[v30];
[v30]setpts=0.1667*PTS[vf30];
[0:a]atrim=start=1498.195:end=1498.935,asetpts=PTS-STARTPTS[a30];
[a30]atempo=6.0,volume=0.5[af30];
[0:v]trim=start=1498.935:end=1500.385,setpts=PTS-STARTPTS[v31];
[0:a]atrim=start=1498.935:end=1500.385,asetpts=PTS-STARTPTS[a31];
[0:v]trim=start=1500.385:end=1500.675,setpts=PTS-STARTPTS[v32];
[v32]setpts=0.1667*PTS[vf32];
[0:a]atrim=start=1500.385:end=1500.675,asetpts=PTS-STARTPTS[a32];
[a32]atempo=6.0,volume=0.5[af32];
[0:v]trim=start=1500.675:end=1503.665,setpts=PTS-STARTPTS[v33];
[0:a]atrim=start=1500.675:end=1503.665,asetpts=PTS-STARTPTS[a33];
[0:v]trim=start=1503.665:end=1504.675,setpts=PTS-STARTPTS[v34];
[v34]setpts=0.1667*PTS[vf34];
[0:a]atrim=start=1503.665:end=1504.675,asetpts=PTS-STARTPTS[a34];
[a34]atempo=6.0,volume=0.5[af34];
[0:v]trim=start=1504.675:end=1509.405,setpts=PTS-STARTPTS[v35];
[0:a]atrim=start=1504.675:end=1509.405,asetpts=PTS-STARTPTS[a35];
[0:v]trim=start=1509.405:end=1511.155,setpts=PTS-STARTPTS[v36];
[v36]setpts=0.1667*PTS[vf36];
[0:a]atrim=start=1509.405:end=1511.155,asetpts=PTS-STARTPTS[a36];
[a36]atempo=6.0,volume=0.5[af36];
[0:v]trim=start=1511.155:end=1518.295,setpts=PTS-STARTPTS[v37];
[0:a]atrim=start=1511.155:end=1518.295,asetpts=PTS-STARTPTS[a37];
[0:v]trim=start=1518.295:end=1520.185,setpts=PTS-STARTPTS[v38];
[v38]setpts=0.1667*PTS[vf38];
[0:a]atrim=start=1518.295:end=1520.185,asetpts=PTS-STARTPTS[a38];
[a38]atempo=6.0,volume=0.5[af38];
[0:v]trim=start=1520.185:end=1526.105,setpts=PTS-STARTPTS[v39];
[0:a]atrim=start=1520.185:end=1526.105,asetpts=PTS-STARTPTS[a39];
[0:v]trim=start=1526.105:end=1526.765,setpts=PTS-STARTPTS[v40];
[v40]setpts=0.1667*PTS[vf40];
[0:a]atrim=start=1526.105:end=1526.765,asetpts=PTS-STARTPTS[a40];
[a40]atempo=6.0,volume=0.5[af40];
[0:v]trim=start=1526.765:end=1528.765,setpts=PTS-STARTPTS[v41];
[0:a]atrim=start=1526.765:end=1528.765,asetpts=PTS-STARTPTS[a41];
[0:v]trim=start=1528.765:end=1529.255,setpts=PTS-STARTPTS[v42];
[v42]setpts=0.1667*PTS[vf42];
[0:a]atrim=start=1528.765:end=1529.255,asetpts=PTS-STARTPTS[a42];
[a42]atempo=6.0,volume=0.5[af42];
[0:v]trim=start=1529.255:end=1531.465,setpts=PTS-STARTPTS[v43];
[0:a]atrim=start=1529.255:end=1531.465,asetpts=PTS-STARTPTS[a43];
[0:v]trim=start=1531.465:end=1531.955,setpts=PTS-STARTPTS[v44];
[v44]setpts=0.1667*PTS[vf44];
[0:a]atrim=start=1531.465:end=1531.955,asetpts=PTS-STARTPTS[a44];
[a44]atempo=6.0,volume=0.5[af44];
[0:v]trim=start=1531.955:end=1533.535,setpts=PTS-STARTPTS[v45];
[0:a]atrim=start=1531.955:end=1533.535,asetpts=PTS-STARTPTS[a45];
[0:v]trim=start=1533.535:end=1533.955,setpts=PTS-STARTPTS[v46];
[v46]setpts=0.1667*PTS[vf46];
[0:a]atrim=start=1533.535:end=1533.955,asetpts=PTS-STARTPTS[a46];
[a46]atempo=6.0,volume=0.5[af46];
[0:v]trim=start=1533.955:end=1535.275,setpts=PTS-STARTPTS[v47];
[0:a]atrim=start=1533.955:end=1535.275,asetpts=PTS-STARTPTS[a47];
[0:v]trim=start=1535.275:end=1536.015,setpts=PTS-STARTPTS[v48];
[v48]setpts=0.1667*PTS[vf48];
[0:a]atrim=start=1535.275:end=1536.015,asetpts=PTS-STARTPTS[a48];
[a48]atempo=6.0,volume=0.5[af48];
[0:v]trim=start=1536.015:end=1539.725,setpts=PTS-STARTPTS[v49];
[0:a]atrim=start=1536.015:end=1539.725,asetpts=PTS-STARTPTS[a49];
[0:v]trim=start=1539.725:end=1540.935,setpts=PTS-STARTPTS[v50];
[v50]setpts=0.1667*PTS[vf50];
[0:a]atrim=start=1539.725:end=1540.935,asetpts=PTS-STARTPTS[a50];
[a50]atempo=6.0,volume=0.5[af50];
[0:v]trim=start=1540.935:end=1543.765,setpts=PTS-STARTPTS[v51];
[0:a]atrim=start=1540.935:end=1543.765,asetpts=PTS-STARTPTS[a51];
[0:v]trim=start=1543.765:end=1544.145,setpts=PTS-STARTPTS[v52];
[v52]setpts=0.1667*PTS[vf52];
[0:a]atrim=start=1543.765:end=1544.145,asetpts=PTS-STARTPTS[a52];
[a52]atempo=6.0,volume=0.5[af52];
[0:v]trim=start=1544.145:end=1545.775,setpts=PTS-STARTPTS[v53];
[0:a]atrim=start=1544.145:end=1545.775,asetpts=PTS-STARTPTS[a53];
[0:v]trim=start=1545.775:end=1546.035,setpts=PTS-STARTPTS[v54];
[v54]setpts=0.1667*PTS[vf54];
[0:a]atrim=start=1545.775:end=1546.035,asetpts=PTS-STARTPTS[a54];
[a54]atempo=6.0,volume=0.5[af54];
[0:v]trim=start=1546.035:end=1547.455,setpts=PTS-STARTPTS[v55];
[0:a]atrim=start=1546.035:end=1547.455,asetpts=PTS-STARTPTS[a55];
[0:v]trim=start=1547.455:end=1547.775,setpts=PTS-STARTPTS[v56];
[v56]setpts=0.1667*PTS[vf56];
[0:a]atrim=start=1547.455:end=1547.775,asetpts=PTS-STARTPTS[a56];
[a56]atempo=6.0,volume=0.5[af56];
[0:v]trim=start=1547.775:end=1550.145,setpts=PTS-STARTPTS[v57];
[0:a]atrim=start=1547.775:end=1550.145,asetpts=PTS-STARTPTS[a57];
[0:v]trim=start=1550.145:end=1550.785,setpts=PTS-STARTPTS[v58];
[v58]setpts=0.1667*PTS[vf58];
[0:a]atrim=start=1550.145:end=1550.785,asetpts=PTS-STARTPTS[a58];
[a58]atempo=6.0,volume=0.5[af58];
[0:v]trim=start=1550.785:end=1555.925,setpts=PTS-STARTPTS[v59];
[0:a]atrim=start=1550.785:end=1555.925,asetpts=PTS-STARTPTS[a59];

... shortened so that stackoverflow accepts it ...

[0:v]trim=start=1893.715:end=1897.605,setpts=PTS-STARTPTS[v181];
[0:a]atrim=start=1893.715:end=1897.605,asetpts=PTS-STARTPTS[a181];
[0:v]trim=start=1897.605:end=1898.025,setpts=PTS-STARTPTS[v182];
[v182]setpts=0.1667*PTS[vf182];
[0:a]atrim=start=1897.605:end=1898.025,asetpts=PTS-STARTPTS[a182];
[a182]atempo=6.0,volume=0.5[af182];
[0:v]trim=start=1898.025:end=1900.455,setpts=PTS-STARTPTS[v183];
[0:a]atrim=start=1898.025:end=1900.455,asetpts=PTS-STARTPTS[a183];
[0:v]trim=start=1900.455:end=1903.985,setpts=PTS-STARTPTS[v184];
[v184]setpts=0.1667*PTS[vf184];
[0:a]atrim=start=1900.455:end=1903.985,asetpts=PTS-STARTPTS[a184];
[a184]atempo=6.0,volume=0.5[af184];
[0:v]trim=start=1903.985:end=1908.195,setpts=PTS-STARTPTS[v185];
[0:a]atrim=start=1903.985:end=1908.195,asetpts=PTS-STARTPTS[a185];
[0:v]trim=start=1908.195:end=1908.455,setpts=PTS-STARTPTS[v186];
[v186]setpts=0.1667*PTS[vf186];
[0:a]atrim=start=1908.195:end=1908.455,asetpts=PTS-STARTPTS[a186];
[a186]atempo=6.0,volume=0.5[af186];
[0:v]trim=start=1908.455:end=1911.655,setpts=PTS-STARTPTS[v187];
[0:a]atrim=start=1908.455:end=1911.655,asetpts=PTS-STARTPTS[a187];
[0:v]trim=start=1911.655:end=1916.495,setpts=PTS-STARTPTS[v188];
[v188]setpts=0.1667*PTS[vf188];
[0:a]atrim=start=1911.655:end=1916.495,asetpts=PTS-STARTPTS[a188];
[a188]atempo=6.0,volume=0.5[af188];
[0:v]trim=start=1916.495:end=1920,setpts=PTS-STARTPTS[v189];
[0:a]atrim=start=1916.495:end=1920,asetpts=PTS-STARTPTS[a189];
[vf0][af0][v1][a1][vf2][af2][v3][a3][vf4][af4][v5][a5][vf6][af6][v7][a7][vf8][af8][v9][a9][vf10][af10][v11][a11][vf12][af12][v13][a13][vf14][af14][v15][a15][vf16][af16][v17][a17][vf18][af18][v19][a19][vf20][af20][v21][a21][vf22][af22][v23][a23][vf24][af24][v25][a25][vf26][af26][v27][a27][vf28][af28][v29][a29] ... shortened here so that stackoverflow accepts it ... [v181][a181][vf182][af182][v183][a183][vf184][af184][v185][a185][vf186][af186][v187][a187][vf188][af188][v189][a189]concat=n=190:v=1:a=1[vout][aout]




Thanks !


-
C# FFMPEG : Code bugs out and stops producing media files
24 mai 2020, par HamezI've made a joke program in C# that uses ffmpeg to edit videos with different effects such as stuttering. I've finished 3 effects so far and each of them work on their own but as soon as I put one after another
e.g. fx.CrashStutter(0, 2); fx.CrashBeep(2, 2); fx.Wow(4, 2);

The code breaks and no longer produces photo/video files but once I stop debugging the file it was supposed to be processing appears. I've used a system where it loops over trying to execute a command to create a text file as a marker for when ffmpeg is done processing a file. The debug console also repeatedly says "The process tried to write to a nonexistent pipe."


Here's the code for all 3 effects :



public void Wow(double start, double duration)
 {
 if (fxstart == true)
 {
 //MessageBox.Show("WowFX Duration" + duration);
 string folderName = ("W_s" + start);
 System.Threading.Thread.Sleep(100);
 FXcmd.StandardInput.WriteLine("mkdir " + folderName);
 System.Threading.Thread.Sleep(100);
 FXcmd.StandardInput.WriteLine("cd " + folderName);
 System.Threading.Thread.Sleep(100);
 FXcmd.StandardInput.WriteLine("ffmpeg -ss " + start + " -t " + (duration / 6) + " -i " + source + " a.mp4");
 //wait until a.mp4 appears
 while (File.Exists("FxSource(Temporary)\\" + folderName + "\\a.txt") == false)
 {
 /*aha got a live one!*/FXcmd.StandardInput.WriteLine(" echo a > a.txt");
 System.Threading.Thread.Sleep(1500);
 }
 FXcmd.StandardInput.WriteLine("ffmpeg -i a.mp4 -vf reverse -af areverse b.mp4");
 //wait until b.mp4 appears
 while (File.Exists("FxSource(Temporary)\\" + folderName + "\\b.txt") == false)
 {
 FXcmd.StandardInput.WriteLine(" echo b > b.txt");
 System.Threading.Thread.Sleep(1500);
 }
 FXcmd.StandardInput.WriteLine("ffmpeg -ss " + start + " -t " + (duration / 3) + " -i " + source + " c.mp4");
 //wait until c.mp4 appears
 while (File.Exists("FxSource(Temporary)\\" + folderName + "\\c.txt") == false)
 {
 FXcmd.StandardInput.WriteLine(" echo c > c.txt");
 System.Threading.Thread.Sleep(1500);
 }
 FXcmd.StandardInput.WriteLine("ffmpeg -i c.mp4 -vf reverse -af areverse d.mp4");
 //wait until d.mp4 appears
 while (File.Exists("FxSource(Temporary)\\" + folderName + "\\d.txt") == false)
 {
 FXcmd.StandardInput.WriteLine(" echo d > d.txt");
 System.Threading.Thread.Sleep(1500);
 }
 string[] concatList = { "file 'a.mp4'", "file 'b.mp4'", "file 'c.mp4'", "file 'd.mp4'" };
 //FXcmd.StandardInput.Write("del a.txt, b.txt, c.txt, d.txt");
 //System.Threading.Thread.Sleep(1000);
 System.IO.File.WriteAllLines(("FxSource(Temporary)\\" + folderName + "\\concatList.txt"), concatList);
 System.Threading.Thread.Sleep(1500);
 FXcmd.StandardInput.WriteLine("ffmpeg -f concat -i concatList.txt -c copy " + folderName + ".mp4");
 while (File.Exists("FxSource(Temporary)\\" + folderName + "\\" + "1.txt") == false)
 {
 FXcmd.StandardInput.WriteLine(" echo 1 > 1.txt");
 System.Threading.Thread.Sleep(1500);
 }
 FXcmd.StandardInput.WriteLine("copy " + folderName + ".mp4 ..");
 while (File.Exists("FxSource(Temporary)\\" + folderName + ".mp4") == false)
 {
 System.Threading.Thread.Sleep(1500);
 }
 FXcmd.StandardInput.WriteLine("cd ..");
 System.Threading.Thread.Sleep(100);
 FXcmd.StandardInput.WriteLine("cls");
 FXcmd.StandardInput.Flush();
 }
 }
 public void CrashStutter(int start, int duration)
 {
 if (fxstart == true)
 {
 string folderName = ("Cs_s" + start);
 System.Threading.Thread.Sleep(100);
 FXcmd.StandardInput.WriteLine("mkdir " + folderName);
 System.Threading.Thread.Sleep(100);
 FXcmd.StandardInput.WriteLine("cd " + folderName);
 System.Threading.Thread.Sleep(100);
 FXcmd.StandardInput.WriteLine("ffmpeg -ss " + start + " -t 0.1" + " -i " + source + " a.mp4");
 System.Threading.Thread.Sleep(100);
 while (File.Exists("FxSource(Temporary)\\" + folderName + "\\a.txt") == false)
 {
 FXcmd.StandardInput.WriteLine(" echo a > a.txt");
 System.Threading.Thread.Sleep(1500);
 }
 FXcmd.StandardInput.WriteLine("ffmpeg -stream_loop "+10*duration+" -i a.mp4 "+folderName+".mp4");
 while (File.Exists("FxSource(Temporary)\\" + folderName + "\\" + "1.txt") == false)
 {
 FXcmd.StandardInput.WriteLine(" echo 1 > 1.txt");
 System.Threading.Thread.Sleep(1500);
 }
 FXcmd.StandardInput.WriteLine("copy " + folderName + ".mp4 ..");
 while (File.Exists("FxSource(Temporary)\\" + folderName + ".mp4") == false)
 {
 System.Threading.Thread.Sleep(1500);
 }
 FXcmd.StandardInput.WriteLine("cd ..");
 System.Threading.Thread.Sleep(100);
 FXcmd.StandardInput.WriteLine("cls");
 FXcmd.StandardInput.Flush();
 }
 }
 public void CrashBeep(int start, int duration)
 {
 //this effect cannot last longer than 7 seconds
 double contrast = 25;
 double red = 0.75;
 if (fxstart == true)
 {
 string folderName = ("Cb_s" + start);
 FXcmd.StandardInput.WriteLine("mkdir " + folderName);
 System.Threading.Thread.Sleep(100);
 FXcmd.StandardInput.WriteLine("cd " + folderName);
 System.Threading.Thread.Sleep(100);
 /*gets stuck*/FXcmd.StandardInput.WriteLine("ffmpeg -i "+source+ " -vf fps=1 a.jpg");
 System.Threading.Thread.Sleep(100);
 while (File.Exists("FxSource(Temporary)\\" + folderName + "\\a.txt") == false)
 {
 FXcmd.StandardInput.WriteLine(" echo a > a.txt");
 System.Threading.Thread.Sleep(1500);
 }
 FXcmd.StandardInput.WriteLine("ffmpeg -i a.jpg -vf eq=contrast="+contrast+" b.jpg");
 while (File.Exists("FxSource(Temporary)\\" + folderName + "\\b.txt") == false)
 {
 FXcmd.StandardInput.WriteLine(" echo b > b.txt");
 System.Threading.Thread.Sleep(1500);
 }
 FXcmd.StandardInput.WriteLine("ffmpeg -i b.jpg -vf colorbalance=rm=" + red + " c.jpg");
 while (File.Exists("FxSource(Temporary)\\" + folderName + "\\c.txt") == false)
 {
 FXcmd.StandardInput.WriteLine(" echo > c.txt");
 System.Threading.Thread.Sleep(1500);
 }
 FXcmd.StandardInput.WriteLine("ffmpeg -loop 1 -i c.jpg -c:v libx264 -t "+ duration +" -pix_fmt yuv420p -vf scale=1920:1080 d.mp4");
 while (File.Exists("FxSource(Temporary)\\" + folderName + "\\d.txt") == false)
 {
 FXcmd.StandardInput.WriteLine(" echo d > d.txt");
 System.Threading.Thread.Sleep(1500);
 }
 FXcmd.StandardInput.WriteLine("cd ..");
 System.Threading.Thread.Sleep(100);
 FXcmd.StandardInput.WriteLine("copy beep.mp3 "+folderName+"/beep.mp3");
 System.Threading.Thread.Sleep(100);
 FXcmd.StandardInput.WriteLine("cd "+folderName);
 System.Threading.Thread.Sleep(100);
 FXcmd.StandardInput.WriteLine("ffmpeg -i beep.mp3 -ss 0 -t " + duration + " e.mp3");
 while (File.Exists("FxSource(Temporary)\\" + folderName + "\\e.txt") == false)
 {
 FXcmd.StandardInput.WriteLine(" echo e > e.txt");
 System.Threading.Thread.Sleep(1500);
 }
 FXcmd.StandardInput.WriteLine("ffmpeg -i d.mp4 -i e.mp3 -c copy -map 0:v:0 -map 1:a:0 " + folderName + ".mp4");
 while (File.Exists("FxSource(Temporary)\\" + folderName + "\\" + "1.txt") == false)
 {
 FXcmd.StandardInput.WriteLine(" echo 1 > 1.txt");
 System.Threading.Thread.Sleep(1500);
 }
 FXcmd.StandardInput.WriteLine("copy " + folderName + ".mp4 ..");
 while (File.Exists("FxSource(Temporary)\\" + folderName + ".mp4") == false)
 {
 System.Threading.Thread.Sleep(1500);
 }
 FXcmd.StandardInput.WriteLine("cd ..");
 System.Threading.Thread.Sleep(100);
 FXcmd.StandardInput.WriteLine("cls");
 FXcmd.StandardInput.Flush();
 }
 }




Any suggestions ? Thanks !


-
Add watermark, set bitrate and scale video
15 mai 2020, par razzI'm looking for the command to edit a video with ffmpeg according to instructions below.



The original video can be any type in any size or resolution (mp4,avi,wmv etc) and needs to be converted to mp4



- 

- Convert video to .mp4
- Add a watermark at the right bottom
- Set a Bitrate (accepted values between 1500 - 2000 )
- Resize width to 1280px (keep aspect ratio)