
Recherche avancée
Médias (1)
-
Revolution of Open-source and film making towards open film making
6 octobre 2011, par
Mis à jour : Juillet 2013
Langue : English
Type : Texte
Autres articles (104)
-
Diogene : création de masques spécifiques de formulaires d’édition de contenus
26 octobre 2010, parDiogene est un des plugins ? SPIP activé par défaut (extension) lors de l’initialisation de MediaSPIP.
A quoi sert ce plugin
Création de masques de formulaires
Le plugin Diogène permet de créer des masques de formulaires spécifiques par secteur sur les trois objets spécifiques SPIP que sont : les articles ; les rubriques ; les sites
Il permet ainsi de définir en fonction d’un secteur particulier, un masque de formulaire par objet, ajoutant ou enlevant ainsi des champs afin de rendre le formulaire (...) -
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 (...) -
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;
Sur d’autres sites (13372)
-
MoviePy and FFMPEG "No attribute" errors
22 mars 2023, par CypherTretiiI am trying to create a python script that will produce the type of cartoon TikToks with the satisfying video on the bottom part. I am still getting a bunch of errors like "ffmpeg has no attribute "metadata", or some other atribute that is missing"


import os
import random
import hashlib
from moviepy.editor import *

# Function to get MD5 hash of a file
def get_md5_hash(file_path):
 with open(file_path, "rb") as f:
 bytes = f.read()
 hash = hashlib.md5(bytes)
 return hash.hexdigest()

# Input video file path
input_file_path = "C:/Users/Kris/output_movies/Bojack.Horseman.S01E01.720p.WEBRip.x264-W4F_1.mp4"

# Re-render the video
video = VideoFileClip(input_file_path)
video.write_videofile("re_rendered_video.mp4", codec='libx264')

# Change MD5 hash
new_md5_hash = get_md5_hash("re_rendered_video.mp4")
os.rename("re_rendered_video.mp4", f"{new_md5_hash}.mp4")

# Clear ID3 tag metadata
video = VideoFileClip(f"{new_md5_hash}.mp4")
video.reader.metadata.clear()
video.reader.close()

# Choose random video from folder and combine with input video
random_video_path = random.choice(os.listdir("C:/Users/Kris/satisfying_vids"))
random_video = VideoFileClip(f"C:/Users/Kris/satisfying_vids/{random_video_path}")

# Ensure the bottom video is at least as long as the input video
while random_video.duration < video.duration:
 if random_video.duration * 2 <= video.duration:
 random_video = concatenate_videoclips([random_video, random_video])
 else:
 duration_diff = video.duration - random_video.duration
 looped_video = random_video.subclip(0, duration_diff)
 random_video = concatenate_videoclips([random_video, looped_video])

# If the concatenated video exceeds the length of the input video, trim it
if random_video.duration > video.duration:
 random_video = random_video.subclip(0, video.duration)

# Resize the bottom video to match the input video resolution
random_video_resized = random_video.resize((960, 540))

# Combine the videos in 1:1 aspect ratio with the bottom video at the bottom of the screen
final_video = clips_array([[video], [random_video_resized]])

# Save the final video with .mp4 format
final_video.write_videofile(f"{new_md5_hash}_combined.mp4", codec='libx264')


# Increase brightness and contrast
final_video = VideoFileClip(f"{new_md5_hash}_combined.mp4")
final_video = final_video.fx(vfx.colorx, 0, [random.uniform(-0.2, 0.2), random.uniform(-1, 1)])
final_video.write_videofile(f"{new_md5_hash}_processed.mp4", codec='libx264')

# Color one pixel black and crop one pixel from bottom right corner
final_video = VideoFileClip(f"{new_md5_hash}_processed.mp4")
final_video = final_video.fx(vfx.painting, paint_color=[0,0,0], width=1, height=1, x=0, y=0)
final_video = final_video.crop(x1=0, y1=0, x2=final_video.w-1, y2=final_video.h-1)
final_video.write_videofile(f"{new_md5_hash}_final.mp4", codec='libx264')




the goal for the code is :


Takes an .mp4 file as input (the file is 1920 x 1080 in terms of resolution)


Re-renders the video


Changes the MD5 Hash


Clears ID3 Tag Metadata


Choses another random video from a folder, that is 1920 x 1080 pixels in terms of resolution - combine the chosen video with the input video in 1:1 aspect ratio. Put the video that is randomly chosen from the folder on bottom side of the screen.


Increase the video’s brightness by random number ranging from -0.2 to 0.2


Increase contrast by random number ranging from -1 to 1


Color one pixel black


Crop 1 pixel from the down right angle


Save the final video with .mp4 format


This is the error I am getting when running my code :
AttributeError : 'FFMPEG_VideoReader' object has no attribute 'metadata'


Along with various missing attributes.


-
Anomalie #4272 : Vignettes considérée comme orphelins lors de la suppression des documents inutilisés
11 février 2019, par Fabrice VéronneauDiscussions sur le forum à ce sujet
https://forum.spip.net/fr_271022.html
https://forum.spip.net/fr_270796.html?debut_forums=%40270837#forum270837 -
Anomalie #2749 (Fermé) : Problème de cookie
21 mars 2013, par guytarr °il y a bien http://forum.spip.net/fr_248457.html mais rien trouvé dans forum ou sur les listes de "récent".