From 1d9ea60e4d0e2ca393d6045ef254633168aa87e1 Mon Sep 17 00:00:00 2001 From: K4YT3X Date: Tue, 11 Dec 2018 15:53:09 -0500 Subject: [PATCH] relocated files --- config_generator.py | 55 ------- ffmpeg.py | 89 ----------- testvid.mp4 | Bin 433366 -> 0 bytes video2x.json | 6 - video2x.py | 361 -------------------------------------------- video2x_setup.py | 167 -------------------- waifu2x.py | 57 ------- 7 files changed, 735 deletions(-) delete mode 100755 config_generator.py delete mode 100755 ffmpeg.py delete mode 100644 testvid.mp4 delete mode 100644 video2x.json delete mode 100755 video2x.py delete mode 100644 video2x_setup.py delete mode 100755 waifu2x.py diff --git a/config_generator.py b/config_generator.py deleted file mode 100755 index 74f3750..0000000 --- a/config_generator.py +++ /dev/null @@ -1,55 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- -""" -Name: Video2x Config Generator -Author: K4YT3X -Date Created: October 23, 2018 -Last Modified: November 26, 2018 - -Licensed under the GNU General Public License Version 3 (GNU GPL v3), - available at: https://www.gnu.org/licenses/gpl-3.0.txt - -(C) 2018 K4YT3X -""" -from avalon_framework import Avalon -import json -import os - -VERSION = '1.0.0' - - -def get_path(text): - """ Get path and validate - """ - while True: - path = Avalon.gets(text) - if os.path.isdir(path): - return path - Avalon.error('{} id not a directory / folder'.format(path)) - - -def enroll_settings(): - settings = {} - - settings['waifu2x_path'] = get_path('waifu2x-caffe-cui.exe path: ') - settings['ffmpeg_path'] = get_path('ffmpeg binaries directory: ') - settings['ffmpeg_arguments'] = Avalon.gets('Extra arguments passed to ffmpeg: ') - - settings['ffmpeg_hwaccel'] = Avalon.gets('ffmpeg hardware acceleration method (cuda): ') - if settings['ffmpeg_hwaccel'] == '': - settings['ffmpeg_hwaccel'] = 'cuda' - - return settings - - -def write_config(settings): - with open('video2x.json', 'w') as config: - json.dump(settings, config, indent=2) - config.close() - - -try: - print('Video2X Config Generator {}'.format(VERSION)) - write_config(enroll_settings()) -except KeyboardInterrupt: - Avalon.warning('Exiting...') diff --git a/ffmpeg.py b/ffmpeg.py deleted file mode 100755 index 338133d..0000000 --- a/ffmpeg.py +++ /dev/null @@ -1,89 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- -""" -Name: FFMPEG Class -Author: K4YT3X -Date Created: Feb 24, 2018 -Last Modified: November 2, 2018 - -Description: This class handles all FFMPEG related -operations. - -Version 2.0.5 -""" -import subprocess - - -class Ffmpeg: - """This class communicates with ffmpeg - - This class deals with ffmpeg. It handles extracitng - frames, stripping audio, converting images into videos - and inserting audio tracks to videos. - """ - - def __init__(self, ffmpeg_path, outfile, ffmpeg_arguments, hardware_acc=False): - self.ffmpeg_path = '{}ffmpeg.exe'.format(ffmpeg_path) - self.outfile = outfile - self.hardware_acc = hardware_acc - self.ffmpeg_arguments = ffmpeg_arguments - - def extract_frames(self, videoin, outpath): - """Extract every frame from original videos - - This method extracts every frame from videoin - using ffmpeg - - Arguments: - videoin {string} -- input video path - outpath {string} -- video output folder - """ - execute = '\"{}\" -i \"{}\" {}\\extracted_%0d.png -y {}'.format( - self.ffmpeg_path, videoin, outpath, ' '.join(self.ffmpeg_arguments)) - print(execute) - subprocess.call(execute) - - def extract_audio(self, videoin, outpath): - """Strips audio tracks from videos - - This method strips audio tracks from videos - into the output folder in aac format. - - Arguments: - videoin {string} -- input video path - outpath {string} -- video output folder - """ - execute = '\"{}\" -i \"{}\" -vn -acodec copy {}\\output-audio.aac -y {}'.format( - self.ffmpeg_path, videoin, outpath, ' '.join(self.ffmpeg_arguments)) - print(execute) - subprocess.call(execute) - - def convert_video(self, framerate, resolution, upscaled, ): - """Converts images into videos - - This method converts a set of images into a - video. - - Arguments: - framerate {float} -- target video framerate - resolution {string} -- target video resolution - upscaled {string} -- source images folder - """ - execute = '\"{}\" -r {} -f image2 -s {} -i {}\\extracted_%d.png -vcodec libx264 -crf 25 -pix_fmt yuv420p {}\\no_audio.mp4 -y {}'.format( - self.ffmpeg_path, framerate, resolution, upscaled, upscaled, ' '.join(self.ffmpeg_arguments)) - print(execute) - subprocess.call(execute) - - def insert_audio_track(self, upscaled): - """Insert audio into video - - Inserts the WAV audio track stripped from - the original video into final video. - - Arguments: - upscaled {string} -- upscaled image folder - """ - execute = '\"{}\" -i {}\\no_audio.mp4 -i {}\\output-audio.aac -shortest -codec copy {} -y {}'.format( - self.ffmpeg_path, upscaled, upscaled, self.outfile, ' '.join(self.ffmpeg_arguments)) - print(execute) - subprocess.call(execute) diff --git a/testvid.mp4 b/testvid.mp4 deleted file mode 100644 index 2bdf495c5526309e912cf0284ddeecb670fc9714..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 433366 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�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