Fonction de découpe

This commit is contained in:
Antoine Van Elstraete 2021-04-15 15:31:34 +02:00
parent 5d085ec381
commit e0e747ab04

View File

@ -48,7 +48,7 @@ def get_infos(file):
return infos return infos
def interlaced(file, infos): def is_interlaced(file, infos):
''' '''
Cette fonction detecte si la vidéo est entrelacée. Cette fonction detecte si la vidéo est entrelacée.
-> https://fr.wikipedia.org/wiki/Entrelacement_(vid%C3%A9o) -> https://fr.wikipedia.org/wiki/Entrelacement_(vid%C3%A9o)
@ -74,6 +74,17 @@ def interlaced(file, infos):
return False return False
def cropping(file, infos):
'''
Cette fonction detecte les bandes inutiles de la vidéo
'''
duration_tier = int(infos['duration'] / 3)
command = f"ffmpeg -loglevel info -i {file} -ss {duration_tier} -t {duration_tier} -an -f null -vf cropdetect -y /dev/null"
cropsize = subprocess.getoutput(command).splitlines()[-3].split()[-1]
logging.debug(f"Paramètre de découpe : {cropsize}")
return cropsize
if __name__ == '__main__': if __name__ == '__main__':
import argparse import argparse
parser = argparse.ArgumentParser() parser = argparse.ArgumentParser()
@ -85,4 +96,5 @@ if __name__ == '__main__':
else: else:
logging.basicConfig(format='[%(asctime)s]\n%(message)s', level=logging.INFO, datefmt='%d/%m/%Y %H:%M:%S') logging.basicConfig(format='[%(asctime)s]\n%(message)s', level=logging.INFO, datefmt='%d/%m/%Y %H:%M:%S')
infos = get_infos(args.f_input) infos = get_infos(args.f_input)
interlaced = interlaced(args.f_input, infos) interlaced = is_interlaced(args.f_input, infos)
cropsize = cropping(args.f_input, infos)