MCPcopy Index your code
hub / github.com/elebumm/RedditVideoMakerBot / ffmpeg_install_windows

Function ffmpeg_install_windows

utils/ffmpeg_install.py:8–66  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

6
7
8def ffmpeg_install_windows():
9 try:
10 ffmpeg_url = (
11 "https://github.com/GyanD/codexffmpeg/releases/download/6.0/ffmpeg-6.0-full_build.zip"
12 )
13 ffmpeg_zip_filename = "ffmpeg.zip"
14 ffmpeg_extracted_folder = "ffmpeg"
15
16 # Check if ffmpeg.zip already exists
17 if os.path.exists(ffmpeg_zip_filename):
18 os.remove(ffmpeg_zip_filename)
19
20 # Download FFmpeg
21 r = requests.get(ffmpeg_url)
22 with open(ffmpeg_zip_filename, "wb") as f:
23 f.write(r.content)
24
25 # Check if the extracted folder already exists
26 if os.path.exists(ffmpeg_extracted_folder):
27 # Remove existing extracted folder and its contents
28 for root, dirs, files in os.walk(ffmpeg_extracted_folder, topdown=False):
29 for file in files:
30 os.remove(os.path.join(root, file))
31 for directory in dirs:
32 os.rmdir(os.path.join(root, directory))
33 os.rmdir(ffmpeg_extracted_folder)
34
35 # Extract FFmpeg
36 with zipfile.ZipFile(ffmpeg_zip_filename, "r") as zip_ref:
37 zip_ref.extractall()
38 os.remove("ffmpeg.zip")
39
40 # Rename and move files
41 os.rename(f"{ffmpeg_extracted_folder}-6.0-full_build", ffmpeg_extracted_folder)
42 for file in os.listdir(os.path.join(ffmpeg_extracted_folder, "bin")):
43 os.rename(
44 os.path.join(ffmpeg_extracted_folder, "bin", file),
45 os.path.join(".", file),
46 )
47 os.rmdir(os.path.join(ffmpeg_extracted_folder, "bin"))
48 for file in os.listdir(os.path.join(ffmpeg_extracted_folder, "doc")):
49 os.remove(os.path.join(ffmpeg_extracted_folder, "doc", file))
50 for file in os.listdir(os.path.join(ffmpeg_extracted_folder, "presets")):
51 os.remove(os.path.join(ffmpeg_extracted_folder, "presets", file))
52 os.rmdir(os.path.join(ffmpeg_extracted_folder, "presets"))
53 os.rmdir(os.path.join(ffmpeg_extracted_folder, "doc"))
54 os.remove(os.path.join(ffmpeg_extracted_folder, "LICENSE"))
55 os.remove(os.path.join(ffmpeg_extracted_folder, "README.txt"))
56 os.rmdir(ffmpeg_extracted_folder)
57
58 print(
59 "FFmpeg installed successfully! Please restart your computer and then re-run the program."
60 )
61 except Exception as e:
62 print(
63 "An error occurred while trying to install FFmpeg. Please try again. Otherwise, please install FFmpeg manually and try again."
64 )
65 print(e)

Callers 1

ffmpeg_installFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected