
Recherche avancée
Autres articles (4)
-
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 -
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 (...) -
Utilisation et configuration du script
19 janvier 2011, parInformations spécifiques à la distribution Debian
Si vous utilisez cette distribution, vous devrez activer les dépôts "debian-multimedia" comme expliqué ici :
Depuis la version 0.3.1 du script, le dépôt peut être automatiquement activé à la suite d’une question.
Récupération du script
Le script d’installation peut être récupéré de deux manières différentes.
Via svn en utilisant la commande pour récupérer le code source à jour :
svn co (...)
Sur d’autres sites (3683)
-
How to Concatenate bunch of videos using python ?
5 juillet 2023, par Saikat ChakrabortySo, I have over 5000 small clips that I need to combine. To apply various custom filter over their names, I want to do it with python. I have the following code :


import os
from moviepy.editor import *
os.chdir('D:/videos')
list1, list2 = os.listdir(), []

for i in list1: #filtering
 if i[-6:] != '-l.mp4' and i[-7:] != 'ALT.mp4':
 list2.append(i)
print('Getting Video Info:')

final = VideoFileClip(list2[0])


for i in range(1,len(list2)):
 final = concatenate_videoclips([final, VideoFileClip(list2[i])])
 print('\r' + str(i+1) + '/' + str(len(list2)), end='')


os.chdir('D:')
final.write_videofile('Merged.mp4')



But the program is creating lots of processes and just after reading 150 clips it's crashing.


It keeps increasing !
Is there any easier way/alternative to do this ? Thanks !


Edit :

I've tried using ffmpeg too, but concatenation removes the audio since concat protocol doesn't support .mp4 extension. In that case. Even if I convert all the files to .ts extension and try to concatenate them,WindowsError: [Error 206] The filename or extension is too long
pops up because too many files are separated by |. I did the following changes after converting all the files to .ts format :

import os
import ffmpeg
os.chdir('D:/videos')
list1 = os.listdir()
list2 = [i for i in list1 if i[-3:] == '.ts']
list2[0] = ffmpeg.input(list2[0])
for i in range(1, len(list2)):
 list2[i] = ffmpeg.concat(list2[i-1], ffmpeg.input(list2[i]))
 print('\r' + str(i) + '/' + str(len(list2)), end='')
ffmpeg.output(list2[-1], 'D:\Merged.mp4')
ffmpeg.run(list2[-1])



But now I'm getting
RecursionError: maximum recursion depth exceeded while calling a Python object
.

-
How to add transition effects like fade in, fade out, slide in, etc, to a video [on hold]
31 mai 2018, par Janhavi SavlaI am trying to add crossfade effect to a series of images ina folder and then create a video but I am getting an error :’tuple’ object has no attribute ’crossfadein’.
How should I resolve it ?
Here’s the code :from moviepy.editor import *
import os
delay =1
H = 720
W = 1280
output = "out.mp4"
path = "/Users/test/Desktop/Image_test_data/testdata2"
dirs = os.listdir( path )
ext = '.jpg'
clips=[]
images = [img for img in os.listdir(path) if img.endswith(ext)]
for image in images:
img=ImageClip(path+'/'+image).set_duration(2).resize(height=H,width=W)
clips.append(img)
final = concatenate([clip.crossfadein(delay) for clip in enumerate(clips)],
padding=-delay, method="compose")
final.write_videofile(output,fps=24, audio_codec="aac") -
Evolution #3916 : perf mysql : ne pas surcharger les recherches
8 janvier 2018, par jluc -Le patch proposé se veut respectueux au maximum de l’historique, puisque le comportement final est toujours identique, et pour cela il garde la recherche de l’expression complète quand il y a des petits mots. Mais pour éviter les slow queries, j’ai dû en fait totalement désactiver la recherche de l’expression complète, même quand il y a des petits mots. Les résultats sont les mêmes puisque si on cherche chacun des mots individuellement, qu’il y ait ou non des petits mots, l’expression complète sera trouvée. Et ça se confirme en pratique. Par contre, s’il n’y a QUE des petits mots, c’est la seule expression originelle qu’il faut rechercher au final.
Ça ne serait utile de chercher l’expression complète en plus des mots isolés que si il y avait une pondération des résultats (mais ce n’est pas le cas).