better-ffmpeg-progress 4.1.0__tar.gz → 5.0.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/PKG-INFO +5 -9
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/README.md +4 -8
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/better_ffmpeg_progress/better_ffmpeg_progress.py +7 -18
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/better_ffmpeg_progress/terminate_process.py +2 -2
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/better_ffmpeg_progress.egg-info/PKG-INFO +5 -9
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/setup.py +1 -1
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/LICENSE +0 -0
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/better_ffmpeg_progress/__init__.py +0 -0
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/better_ffmpeg_progress/enums.py +0 -0
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/better_ffmpeg_progress/exceptions.py +0 -0
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/better_ffmpeg_progress/progress_bars.py +0 -0
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/better_ffmpeg_progress/utils.py +0 -0
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/better_ffmpeg_progress.egg-info/SOURCES.txt +0 -0
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/better_ffmpeg_progress.egg-info/dependency_links.txt +0 -0
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/better_ffmpeg_progress.egg-info/requires.txt +0 -0
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/better_ffmpeg_progress.egg-info/top_level.txt +0 -0
- {better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: better-ffmpeg-progress
|
|
3
|
-
Version:
|
|
3
|
+
Version: 5.0.0
|
|
4
4
|
Summary: Run FFmpeg & see percentage progress + ETA.
|
|
5
5
|
Home-page: https://github.com/CrypticSignal/better-ffmpeg-progress
|
|
6
6
|
Author: GitHub.com/CrypticSignal
|
|
@@ -61,13 +61,13 @@ from better_ffmpeg_progress import FfmpegProcess, FfmpegProcessError
|
|
|
61
61
|
command = [
|
|
62
62
|
"ffmpeg",
|
|
63
63
|
"-i",
|
|
64
|
-
"https://
|
|
65
|
-
"-
|
|
64
|
+
"https://media.xiph.org/video/derf/y4m/ducks_take_off_1080p50.y4m",
|
|
65
|
+
"-map",
|
|
66
|
+
"0:V",
|
|
67
|
+
"-c:V",
|
|
66
68
|
"libx264",
|
|
67
69
|
"-preset",
|
|
68
70
|
"ultrafast",
|
|
69
|
-
"-c:a",
|
|
70
|
-
"copy",
|
|
71
71
|
"-f",
|
|
72
72
|
"null",
|
|
73
73
|
"-",
|
|
@@ -78,11 +78,7 @@ try:
|
|
|
78
78
|
# Uncomment the line below if you want to use tqdm instead of rich for the progress bar
|
|
79
79
|
# process.use_tqdm = True
|
|
80
80
|
|
|
81
|
-
# Run the FFmpeg command and show a progress bar
|
|
82
81
|
process.run()
|
|
83
|
-
# The FFmpeg process failed if the return code is not 0
|
|
84
|
-
if process.return_code != 0:
|
|
85
|
-
pass
|
|
86
82
|
except FfmpegProcessError as e:
|
|
87
83
|
print(f"An error occurred when running the better-ffmpeg-process package:\n{e}")
|
|
88
84
|
```
|
|
@@ -42,13 +42,13 @@ from better_ffmpeg_progress import FfmpegProcess, FfmpegProcessError
|
|
|
42
42
|
command = [
|
|
43
43
|
"ffmpeg",
|
|
44
44
|
"-i",
|
|
45
|
-
"https://
|
|
46
|
-
"-
|
|
45
|
+
"https://media.xiph.org/video/derf/y4m/ducks_take_off_1080p50.y4m",
|
|
46
|
+
"-map",
|
|
47
|
+
"0:V",
|
|
48
|
+
"-c:V",
|
|
47
49
|
"libx264",
|
|
48
50
|
"-preset",
|
|
49
51
|
"ultrafast",
|
|
50
|
-
"-c:a",
|
|
51
|
-
"copy",
|
|
52
52
|
"-f",
|
|
53
53
|
"null",
|
|
54
54
|
"-",
|
|
@@ -59,11 +59,7 @@ try:
|
|
|
59
59
|
# Uncomment the line below if you want to use tqdm instead of rich for the progress bar
|
|
60
60
|
# process.use_tqdm = True
|
|
61
61
|
|
|
62
|
-
# Run the FFmpeg command and show a progress bar
|
|
63
62
|
process.run()
|
|
64
|
-
# The FFmpeg process failed if the return code is not 0
|
|
65
|
-
if process.return_code != 0:
|
|
66
|
-
pass
|
|
67
63
|
except FfmpegProcessError as e:
|
|
68
64
|
print(f"An error occurred when running the better-ffmpeg-process package:\n{e}")
|
|
69
65
|
```
|
|
@@ -127,13 +127,12 @@ class FfmpegProcess:
|
|
|
127
127
|
self._handle_overwrite_prompt()
|
|
128
128
|
|
|
129
129
|
self._process: Optional[subprocess.Popen] = None
|
|
130
|
-
self._return_code: Optional[int] = None
|
|
131
130
|
self.use_tqdm: bool = False
|
|
132
131
|
|
|
133
132
|
def run(
|
|
134
133
|
self,
|
|
135
134
|
print_command: bool = False,
|
|
136
|
-
) ->
|
|
135
|
+
) -> None:
|
|
137
136
|
if print_command:
|
|
138
137
|
cmd_str = (
|
|
139
138
|
" ".join(self._ffmpeg_command)
|
|
@@ -152,8 +151,6 @@ class FfmpegProcess:
|
|
|
152
151
|
if self._shell_needed and isinstance(current_ffmpeg_command, list):
|
|
153
152
|
current_ffmpeg_command = " ".join(current_ffmpeg_command)
|
|
154
153
|
|
|
155
|
-
self._return_code = 1
|
|
156
|
-
|
|
157
154
|
try:
|
|
158
155
|
creationflags = 0
|
|
159
156
|
# Windows
|
|
@@ -178,25 +175,24 @@ class FfmpegProcess:
|
|
|
178
175
|
creationflags=creationflags,
|
|
179
176
|
)
|
|
180
177
|
except Exception as e:
|
|
181
|
-
# self._return_code remains None as the process didn't start
|
|
182
178
|
raise FfmpegProcessError(f"Error starting FFmpeg process: {e}") from e
|
|
183
179
|
|
|
180
|
+
user_interrupted = False
|
|
184
181
|
try:
|
|
185
182
|
if self.use_tqdm:
|
|
186
|
-
|
|
183
|
+
use_tqdm(self, self._process)
|
|
187
184
|
else:
|
|
188
|
-
|
|
185
|
+
use_rich(self, self._process)
|
|
189
186
|
except KeyboardInterrupt:
|
|
187
|
+
user_interrupted = True
|
|
190
188
|
self._terminate()
|
|
191
|
-
self._return_code = 1
|
|
192
189
|
finally:
|
|
193
190
|
if self._process:
|
|
194
|
-
self._return_code = self._process.returncode
|
|
195
|
-
|
|
196
191
|
if self._process.stdout:
|
|
197
192
|
self._process.stdout.close()
|
|
198
193
|
|
|
199
|
-
|
|
194
|
+
if not user_interrupted and self._process and self._process.returncode != 0:
|
|
195
|
+
raise FfmpegProcessError(f"FFmpeg process failed. Return code: {self._process.returncode}")
|
|
200
196
|
|
|
201
197
|
def _terminate(self):
|
|
202
198
|
if self._process:
|
|
@@ -204,10 +200,3 @@ class FfmpegProcess:
|
|
|
204
200
|
else:
|
|
205
201
|
exit()
|
|
206
202
|
|
|
207
|
-
@property
|
|
208
|
-
def return_code(self) -> Optional[int]:
|
|
209
|
-
"""
|
|
210
|
-
The return code of the FFmpeg process.
|
|
211
|
-
None if the process has not started or failed to start.
|
|
212
|
-
"""
|
|
213
|
-
return self._return_code
|
|
@@ -196,6 +196,8 @@ def terminate_ffmpeg_process(process: Optional[subprocess.Popen]):
|
|
|
196
196
|
if not process or process.poll() is not None:
|
|
197
197
|
return
|
|
198
198
|
|
|
199
|
+
print("[KeyboardInterrupt] Terminating the FFmpeg process...")
|
|
200
|
+
|
|
199
201
|
original_pid = process.pid
|
|
200
202
|
|
|
201
203
|
parent_ps_proc: Optional[psutil.Process] = None
|
|
@@ -219,8 +221,6 @@ def terminate_ffmpeg_process(process: Optional[subprocess.Popen]):
|
|
|
219
221
|
print(f"Error during fallback Popen termination: {popen_term_err}")
|
|
220
222
|
return
|
|
221
223
|
|
|
222
|
-
print("[better-ffmpeg-progress] Terminating the FFmpeg process...")
|
|
223
|
-
|
|
224
224
|
if parent_ps_proc:
|
|
225
225
|
_terminate_children_processes(parent_ps_proc)
|
|
226
226
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: better-ffmpeg-progress
|
|
3
|
-
Version:
|
|
3
|
+
Version: 5.0.0
|
|
4
4
|
Summary: Run FFmpeg & see percentage progress + ETA.
|
|
5
5
|
Home-page: https://github.com/CrypticSignal/better-ffmpeg-progress
|
|
6
6
|
Author: GitHub.com/CrypticSignal
|
|
@@ -61,13 +61,13 @@ from better_ffmpeg_progress import FfmpegProcess, FfmpegProcessError
|
|
|
61
61
|
command = [
|
|
62
62
|
"ffmpeg",
|
|
63
63
|
"-i",
|
|
64
|
-
"https://
|
|
65
|
-
"-
|
|
64
|
+
"https://media.xiph.org/video/derf/y4m/ducks_take_off_1080p50.y4m",
|
|
65
|
+
"-map",
|
|
66
|
+
"0:V",
|
|
67
|
+
"-c:V",
|
|
66
68
|
"libx264",
|
|
67
69
|
"-preset",
|
|
68
70
|
"ultrafast",
|
|
69
|
-
"-c:a",
|
|
70
|
-
"copy",
|
|
71
71
|
"-f",
|
|
72
72
|
"null",
|
|
73
73
|
"-",
|
|
@@ -78,11 +78,7 @@ try:
|
|
|
78
78
|
# Uncomment the line below if you want to use tqdm instead of rich for the progress bar
|
|
79
79
|
# process.use_tqdm = True
|
|
80
80
|
|
|
81
|
-
# Run the FFmpeg command and show a progress bar
|
|
82
81
|
process.run()
|
|
83
|
-
# The FFmpeg process failed if the return code is not 0
|
|
84
|
-
if process.return_code != 0:
|
|
85
|
-
pass
|
|
86
82
|
except FfmpegProcessError as e:
|
|
87
83
|
print(f"An error occurred when running the better-ffmpeg-process package:\n{e}")
|
|
88
84
|
```
|
|
@@ -5,7 +5,7 @@ with open("README.md", "r", encoding="utf-8") as f:
|
|
|
5
5
|
|
|
6
6
|
setuptools.setup(
|
|
7
7
|
name="better-ffmpeg-progress",
|
|
8
|
-
version="
|
|
8
|
+
version="5.0.0",
|
|
9
9
|
author="GitHub.com/CrypticSignal",
|
|
10
10
|
author_email="theaudiophile@outlook.com",
|
|
11
11
|
description="Run FFmpeg & see percentage progress + ETA.",
|
|
File without changes
|
{better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/better_ffmpeg_progress/__init__.py
RENAMED
|
File without changes
|
{better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/better_ffmpeg_progress/enums.py
RENAMED
|
File without changes
|
{better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/better_ffmpeg_progress/exceptions.py
RENAMED
|
File without changes
|
|
File without changes
|
{better_ffmpeg_progress-4.1.0 → better_ffmpeg_progress-5.0.0}/better_ffmpeg_progress/utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|