auto-editor 24.27.1__py3-none-any.whl → 24.30.1__py3-none-any.whl
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.
- auto_editor/__init__.py +2 -2
- auto_editor/analyze.py +159 -218
- auto_editor/edit.py +14 -21
- auto_editor/lang/palet.py +29 -9
- auto_editor/lib/contracts.py +12 -6
- auto_editor/make_layers.py +4 -25
- auto_editor/output.py +4 -4
- auto_editor/preview.py +2 -3
- auto_editor/render/subtitle.py +1 -1
- auto_editor/render/video.py +8 -18
- auto_editor/subcommands/levels.py +52 -37
- auto_editor/subcommands/repl.py +4 -13
- auto_editor/subcommands/subdump.py +5 -8
- auto_editor/utils/container.py +71 -313
- {auto_editor-24.27.1.dist-info → auto_editor-24.30.1.dist-info}/METADATA +3 -6
- {auto_editor-24.27.1.dist-info → auto_editor-24.30.1.dist-info}/RECORD +20 -23
- {auto_editor-24.27.1.dist-info → auto_editor-24.30.1.dist-info}/WHEEL +1 -1
- {auto_editor-24.27.1.dist-info → auto_editor-24.30.1.dist-info}/top_level.txt +0 -1
- ae-ffmpeg/ae_ffmpeg/__init__.py +0 -16
- ae-ffmpeg/ae_ffmpeg/py.typed +0 -0
- ae-ffmpeg/setup.py +0 -65
- {auto_editor-24.27.1.dist-info → auto_editor-24.30.1.dist-info}/LICENSE +0 -0
- {auto_editor-24.27.1.dist-info → auto_editor-24.30.1.dist-info}/entry_points.txt +0 -0
auto_editor/utils/container.py
CHANGED
@@ -1,338 +1,96 @@
|
|
1
1
|
from __future__ import annotations
|
2
2
|
|
3
|
-
from dataclasses import dataclass
|
3
|
+
from dataclasses import dataclass
|
4
4
|
from typing import TypedDict
|
5
5
|
|
6
|
+
import av
|
7
|
+
from av.codec import Codec
|
8
|
+
|
6
9
|
|
7
10
|
class DictContainer(TypedDict, total=False):
|
8
|
-
allow_video: bool
|
9
|
-
allow_audio: bool
|
10
|
-
allow_subtitle: bool
|
11
|
-
allow_image: bool
|
12
11
|
max_videos: int | None
|
13
12
|
max_audios: int | None
|
14
13
|
max_subtitles: int | None
|
15
|
-
vcodecs: list[str] | None
|
16
|
-
acodecs: list[str] | None
|
17
|
-
scodecs: list[str] | None
|
18
|
-
vstrict: bool
|
19
|
-
sstrict: bool
|
20
|
-
disallow_v: list[str]
|
21
14
|
samplerate: list[int] | None
|
22
15
|
|
23
16
|
|
24
17
|
@dataclass(slots=True)
|
25
18
|
class Container:
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
19
|
+
allow_image: bool
|
20
|
+
vcodecs: set[str]
|
21
|
+
acodecs: set[str]
|
22
|
+
scodecs: set[str]
|
23
|
+
default_vid: str
|
24
|
+
default_aud: str
|
25
|
+
default_sub: str
|
30
26
|
max_videos: int | None = None
|
31
27
|
max_audios: int | None = None
|
32
28
|
max_subtitles: int | None = None
|
33
|
-
vcodecs: list[str] | None = None
|
34
|
-
acodecs: list[str] | None = None
|
35
|
-
scodecs: list[str] | None = None
|
36
|
-
vstrict: bool = False
|
37
|
-
sstrict: bool = False
|
38
|
-
disallow_v: list[str] = field(default_factory=list)
|
39
29
|
samplerate: list[int] | None = None # Any samplerate is allowed
|
40
30
|
|
41
31
|
|
42
|
-
|
43
|
-
"
|
44
|
-
"
|
45
|
-
"
|
46
|
-
"
|
47
|
-
"
|
48
|
-
"
|
49
|
-
"
|
50
|
-
"
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
opus_en = ["opus", "libopus"]
|
57
|
-
|
58
|
-
h265: DictContainer = {
|
59
|
-
"allow_video": True,
|
60
|
-
"vcodecs": hevc_en + ["mpeg4"] + h264_en,
|
61
|
-
}
|
62
|
-
h264: DictContainer = {
|
63
|
-
"allow_video": True,
|
64
|
-
"vcodecs": h264_en + ["mpeg4"] + hevc_en,
|
65
|
-
}
|
66
|
-
aac: DictContainer = {
|
67
|
-
"allow_audio": True,
|
68
|
-
"max_audios": 1,
|
69
|
-
"acodecs": aac_en,
|
70
|
-
}
|
71
|
-
ass: DictContainer = {
|
72
|
-
"allow_subtitle": True,
|
73
|
-
"scodecs": ["ass", "ssa"],
|
74
|
-
"max_subtitles": 1,
|
75
|
-
"sstrict": True,
|
76
|
-
}
|
77
|
-
mp4: DictContainer = {
|
78
|
-
"allow_video": True,
|
79
|
-
"allow_audio": True,
|
80
|
-
"allow_subtitle": True,
|
81
|
-
"allow_image": True,
|
82
|
-
"vcodecs": h264_en + hevc_en + av1_en + ["vp9", "mpeg4", "mpeg2video", "mjpeg"],
|
83
|
-
"acodecs": aac_en + opus_en + ["mp3", "flac", "vorbis", "libvorbis", "ac3", "mp2"],
|
84
|
-
"vstrict": True,
|
85
|
-
}
|
86
|
-
ogg: DictContainer = {
|
87
|
-
"allow_video": True,
|
88
|
-
"allow_audio": True,
|
89
|
-
"allow_subtitle": True,
|
90
|
-
"vcodecs": ["libtheora", "theora"],
|
91
|
-
"acodecs": opus_en + ["libvorbis", "vorbis", "flac", "speex"],
|
92
|
-
"vstrict": True,
|
32
|
+
containers: dict[str, DictContainer] = {
|
33
|
+
"aac": {"max_audios": 1},
|
34
|
+
"adts": {"max_audios": 1},
|
35
|
+
"ass": {"max_subtitles": 1},
|
36
|
+
"ssa": {"max_subtitles": 1},
|
37
|
+
"apng": {"max_videos": 1},
|
38
|
+
"gif": {"max_videos": 1},
|
39
|
+
"wav": {"max_audios": 1},
|
40
|
+
"ast": {"max_audios": 1},
|
41
|
+
"mp3": {"max_audios": 1},
|
42
|
+
"flac": {"max_audios": 1},
|
43
|
+
"srt": {"max_subtitles": 1},
|
44
|
+
"vtt": {"max_subtitles": 1},
|
45
|
+
"swf": {"samplerate": [44100, 22050, 11025]},
|
93
46
|
}
|
94
47
|
|
95
|
-
mka_audio = (
|
96
|
-
["libvorbis", "vorbis"]
|
97
|
-
+ aac_en
|
98
|
-
+ opus_en
|
99
|
-
+ [
|
100
|
-
"mp3",
|
101
|
-
"flac",
|
102
|
-
"ac3",
|
103
|
-
"mp2",
|
104
|
-
"wmav2",
|
105
|
-
"pcm_s16le",
|
106
|
-
"pcm_alaw",
|
107
|
-
"pcm_f32le",
|
108
|
-
"pcm_f64le",
|
109
|
-
"pcm_mulaw",
|
110
|
-
"pcm_s16be",
|
111
|
-
"pcm_s24be",
|
112
|
-
"pcm_s24le",
|
113
|
-
"pcm_s32be",
|
114
|
-
"pcm_s32le",
|
115
|
-
"pcm_u8",
|
116
|
-
]
|
117
|
-
)
|
118
48
|
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
"
|
123
|
-
|
124
|
-
"ssa":
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
"
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
"pcm_u8",
|
161
|
-
],
|
162
|
-
},
|
163
|
-
"ast": {
|
164
|
-
"allow_audio": True,
|
165
|
-
"max_audios": 1,
|
166
|
-
"acodecs": ["pcm_s16be_planar"],
|
167
|
-
},
|
168
|
-
"mp3": {
|
169
|
-
"allow_audio": True,
|
170
|
-
"max_audios": 1,
|
171
|
-
"acodecs": ["mp3"],
|
172
|
-
},
|
173
|
-
"opus": {
|
174
|
-
"allow_audio": True,
|
175
|
-
"acodecs": opus_en + ["flac", "libvorbis", "vorbis", "speex"],
|
176
|
-
},
|
177
|
-
"oga": {
|
178
|
-
"allow_audio": True,
|
179
|
-
"acodecs": opus_en + ["flac", "libvorbis", "vorbis", "speex"],
|
180
|
-
},
|
181
|
-
"flac": {
|
182
|
-
"allow_audio": True,
|
183
|
-
"max_audios": 1,
|
184
|
-
"acodecs": ["flac"],
|
185
|
-
},
|
186
|
-
"webm": {
|
187
|
-
"allow_video": True,
|
188
|
-
"allow_audio": True,
|
189
|
-
"allow_subtitle": True,
|
190
|
-
"vcodecs": ["vp9", "vp8"] + av1_en,
|
191
|
-
"acodecs": opus_en + ["vorbis", "libvorbis"],
|
192
|
-
"scodecs": ["webvtt"],
|
193
|
-
"vstrict": True,
|
194
|
-
"sstrict": True,
|
195
|
-
},
|
196
|
-
"srt": {
|
197
|
-
"allow_subtitle": True,
|
198
|
-
"scodecs": ["srt"],
|
199
|
-
"max_subtitles": 1,
|
200
|
-
"sstrict": True,
|
201
|
-
},
|
202
|
-
"vtt": {
|
203
|
-
"allow_subtitle": True,
|
204
|
-
"scodecs": ["webvtt"],
|
205
|
-
"max_subtitles": 1,
|
206
|
-
"sstrict": True,
|
207
|
-
},
|
208
|
-
"avi": {
|
209
|
-
"allow_video": True,
|
210
|
-
"allow_audio": True,
|
211
|
-
"vcodecs": ["mpeg4"] + h264_en + ["prores", "mjpeg", "mpeg2video", "rawvideo"],
|
212
|
-
"acodecs": ["mp3"]
|
213
|
-
+ aac_en
|
214
|
-
+ [
|
215
|
-
"flac",
|
216
|
-
"vorbis",
|
217
|
-
"libvorbis",
|
218
|
-
"mp2",
|
219
|
-
"wmav2",
|
220
|
-
"pcm_s16le",
|
221
|
-
"pcm_alaw",
|
222
|
-
"pcm_f32le",
|
223
|
-
"pcm_f64le",
|
224
|
-
"pcm_mulaw",
|
225
|
-
"pcm_s24le",
|
226
|
-
"pcm_s32le",
|
227
|
-
"pcm_u8",
|
228
|
-
],
|
229
|
-
"disallow_v": hevc_en + ["apng", "gif"],
|
230
|
-
},
|
231
|
-
"wmv": {
|
232
|
-
"allow_video": True,
|
233
|
-
"allow_audio": True,
|
234
|
-
"vcodecs": ["msmpeg4v3"]
|
235
|
-
+ h264_en
|
236
|
-
+ ["mpeg4", "mpeg2video", "mjpeg", "rawvideo"],
|
237
|
-
"acodecs": ["wmav2"]
|
238
|
-
+ aac_en
|
239
|
-
+ [
|
240
|
-
"mp3",
|
241
|
-
"flac",
|
242
|
-
"vorbis",
|
243
|
-
"libvorbis",
|
244
|
-
"ac3",
|
245
|
-
"mp2",
|
246
|
-
"pcm_s16le",
|
247
|
-
"pcm_alaw",
|
248
|
-
"pcm_f32le",
|
249
|
-
"pcm_f64le",
|
250
|
-
"pcm_mulaw",
|
251
|
-
"pcm_s24le",
|
252
|
-
"pcm_s32le",
|
253
|
-
"pcm_u8",
|
254
|
-
],
|
255
|
-
"vstrict": True,
|
256
|
-
},
|
257
|
-
"mkv": {
|
258
|
-
"allow_video": True,
|
259
|
-
"allow_audio": True,
|
260
|
-
"allow_subtitle": True,
|
261
|
-
"allow_image": True,
|
262
|
-
"vcodecs": h264_en
|
263
|
-
+ hevc_en
|
264
|
-
+ prores_en
|
265
|
-
+ [
|
266
|
-
"vp9",
|
267
|
-
"vp8",
|
268
|
-
"mpeg4",
|
269
|
-
"mpeg2video",
|
270
|
-
"msmpeg4v3",
|
271
|
-
"mjpeg",
|
272
|
-
"gif",
|
273
|
-
"rawvideo",
|
274
|
-
],
|
275
|
-
"acodecs": mka_audio,
|
276
|
-
"disallow_v": ["apng"],
|
277
|
-
},
|
278
|
-
"mka": {
|
279
|
-
"allow_audio": True,
|
280
|
-
"acodecs": mka_audio,
|
281
|
-
},
|
282
|
-
"mov": {
|
283
|
-
"allow_video": True,
|
284
|
-
"allow_audio": True,
|
285
|
-
"allow_subtitle": True,
|
286
|
-
"vcodecs": h264_en
|
287
|
-
+ hevc_en
|
288
|
-
+ prores_en
|
289
|
-
+ [
|
290
|
-
"mpeg4",
|
291
|
-
"mpeg2video",
|
292
|
-
"msmpeg4v3",
|
293
|
-
"mjpeg",
|
294
|
-
"gif",
|
295
|
-
"flv1",
|
296
|
-
"dvvideo",
|
297
|
-
"rawvideo",
|
298
|
-
],
|
299
|
-
"acodecs": aac_en
|
300
|
-
+ [
|
301
|
-
"mp3",
|
302
|
-
"vorbis",
|
303
|
-
"libvorbis",
|
304
|
-
"ac3",
|
305
|
-
"mp2",
|
306
|
-
"wmav2",
|
307
|
-
"pcm_s16le",
|
308
|
-
"pcm_alaw",
|
309
|
-
"pcm_f32be",
|
310
|
-
"pcm_f32le",
|
311
|
-
"pcm_f64be",
|
312
|
-
"pcm_f64le",
|
313
|
-
"pcm_mulaw",
|
314
|
-
"pcm_s16be",
|
315
|
-
"pcm_s24be",
|
316
|
-
"pcm_s24le",
|
317
|
-
"pcm_s32be",
|
318
|
-
"pcm_s32le",
|
319
|
-
"pcm_s8",
|
320
|
-
"pcm_u8",
|
321
|
-
],
|
322
|
-
"disallow_v": ["apng", "vp9", "vp8"],
|
323
|
-
},
|
324
|
-
"swf": {
|
325
|
-
"allow_video": True,
|
326
|
-
"allow_audio": True,
|
327
|
-
"vcodecs": ["flv1", "mjpeg"],
|
328
|
-
"acodecs": ["mp3"],
|
329
|
-
"vstrict": True,
|
330
|
-
"samplerate": [44100, 22050, 11025],
|
331
|
-
},
|
332
|
-
}
|
49
|
+
def codec_type(x: str) -> str:
|
50
|
+
if x in ("vp9", "vp8", "h264", "hevc", "av1", "gif", "apng"):
|
51
|
+
return "video"
|
52
|
+
if x in ("aac", "flac", "mp3"):
|
53
|
+
return "audio"
|
54
|
+
if x in ("ass", "ssa", "srt"):
|
55
|
+
return "subtitle"
|
56
|
+
|
57
|
+
try:
|
58
|
+
return Codec(x, "r").type
|
59
|
+
except Exception:
|
60
|
+
try:
|
61
|
+
return Codec(x, "w").type
|
62
|
+
except Exception:
|
63
|
+
return ""
|
64
|
+
|
65
|
+
|
66
|
+
def container_constructor(ext: str) -> Container:
|
67
|
+
with av.open(f".{ext}", "w") as container:
|
68
|
+
codecs = container.supported_codecs
|
69
|
+
if ext == "webm":
|
70
|
+
vdefault = "vp9"
|
71
|
+
else:
|
72
|
+
vdefault = container.default_video_codec
|
73
|
+
adefault = container.default_audio_codec
|
74
|
+
sdefault = container.default_subtitle_codec
|
75
|
+
|
76
|
+
vcodecs = set()
|
77
|
+
acodecs = set()
|
78
|
+
scodecs = set()
|
79
|
+
|
80
|
+
for codec in codecs:
|
81
|
+
kind = codec_type(codec)
|
82
|
+
if kind == "video":
|
83
|
+
vcodecs.add(codec)
|
84
|
+
if codec == "h264":
|
85
|
+
vcodecs.add("libx264")
|
86
|
+
if kind == "audio":
|
87
|
+
acodecs.add(codec)
|
88
|
+
if kind == "subtitle":
|
89
|
+
scodecs.add(codec)
|
333
90
|
|
91
|
+
allow_image = ext in ("mp4", "mkv")
|
92
|
+
kwargs = containers[ext] if ext in containers else {}
|
334
93
|
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
return Container(allow_video=True, allow_audio=True, allow_subtitle=True)
|
94
|
+
return Container(
|
95
|
+
allow_image, vcodecs, acodecs, scodecs, vdefault, adefault, sdefault, **kwargs
|
96
|
+
)
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: auto-editor
|
3
|
-
Version: 24.
|
3
|
+
Version: 24.30.1
|
4
4
|
Summary: Auto-Editor: Effort free video editing!
|
5
5
|
Author-email: WyattBlue <wyattblue@auto-editor.com>
|
6
6
|
License: Unlicense
|
@@ -11,8 +11,8 @@ Keywords: video,audio,media,editor,editing,processing,nonlinear,automatic,silenc
|
|
11
11
|
Requires-Python: >=3.10
|
12
12
|
Description-Content-Type: text/markdown
|
13
13
|
License-File: LICENSE
|
14
|
-
Requires-Dist: numpy >=1.
|
15
|
-
Requires-Dist: pyav ==12.
|
14
|
+
Requires-Dist: numpy >=1.23.0
|
15
|
+
Requires-Dist: pyav ==12.3.*
|
16
16
|
Requires-Dist: ae-ffmpeg ==1.2.*
|
17
17
|
|
18
18
|
<p align="center"><img src="https://auto-editor.com/img/auto-editor-banner.webp" title="Auto-Editor" width="700"></p>
|
@@ -182,6 +182,3 @@ auto-editor --margin --help
|
|
182
182
|
|
183
183
|
## Copyright
|
184
184
|
Auto-Editor is under the [Public Domain](https://github.com/WyattBlue/auto-editor/blob/master/LICENSE) and includes all directories besides the ones listed below. Auto-Editor was created by [these people.](https://auto-editor.com/blog/thank-you-early-testers)
|
185
|
-
|
186
|
-
ae-ffmpeg is under the [LGPLv3 License](https://github.com/WyattBlue/auto-editor/blob/master/ae-ffmpeg/LICENSE.txt). The ffmpeg and ffprobe programs were created by the FFmpeg team.
|
187
|
-
|
@@ -1,15 +1,12 @@
|
|
1
|
-
|
2
|
-
ae-ffmpeg/ae_ffmpeg/__init__.py,sha256=Fd2YsCINa0dB3tf9VVKDTPT9P6MDH-ve3RT2pqArImI,453
|
3
|
-
ae-ffmpeg/ae_ffmpeg/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
4
|
-
auto_editor/__init__.py,sha256=x3FkUVgQK07IAJYRgjIfWDxsjSINz0ig_JBv3pG5gas,43
|
1
|
+
auto_editor/__init__.py,sha256=2eo38rUAsDC2UUJAIJ4AZoh26SJrz93bjEMG1PMKUnQ,43
|
5
2
|
auto_editor/__main__.py,sha256=nkb8N_bxF_qld53LWo4c6Y0n9NDRdsPfANpVF1RD1cQ,9863
|
6
|
-
auto_editor/analyze.py,sha256=
|
7
|
-
auto_editor/edit.py,sha256=
|
3
|
+
auto_editor/analyze.py,sha256=6siPLoYwEjvbAzPfKZWDEcqtGXIM8n9qNveyCCYLAgI,11769
|
4
|
+
auto_editor/edit.py,sha256=yZFLoWqfC2QFEdibp7AlKXMRB-6jHwNDpTW2SlN-4Is,11325
|
8
5
|
auto_editor/ffwrapper.py,sha256=jga7-HbQnC4w21qZk4aY4kwLT7UPqkGn6NJPFM5Qssc,7811
|
9
6
|
auto_editor/help.py,sha256=BFiP7vBz42TUzum4-zaQIrV1OY7kHeN0pe0MPE0T5xw,7997
|
10
|
-
auto_editor/make_layers.py,sha256=
|
11
|
-
auto_editor/output.py,sha256=
|
12
|
-
auto_editor/preview.py,sha256=
|
7
|
+
auto_editor/make_layers.py,sha256=AzfxRkm9ZFjeVwdh3jFT_5_YvVaUMtphVKDtIaDI5bo,8900
|
8
|
+
auto_editor/output.py,sha256=OpZG3SvDRumKoU-fZOA-8-hc9pO_uBdO3WTNhDO9LHM,8065
|
9
|
+
auto_editor/preview.py,sha256=CVKtSjcX1dNjbBgsD9PTbRBwRV6dxBLkJ_VIkkBuTUY,3032
|
13
10
|
auto_editor/timeline.py,sha256=JwcS-8AS5vsoTL_m03aosYijScQef4AGa2lyutQ8wbI,7069
|
14
11
|
auto_editor/validate_input.py,sha256=JQt7J5xOBJDp6lnd2sQptpYhf7Z_hyxNEzLsE9E7LKU,2596
|
15
12
|
auto_editor/vanparse.py,sha256=p0u1X2gKM_lWB9bg-Lotqq9-bjfLgsVW9-U4Lwbz0aU,10029
|
@@ -23,36 +20,36 @@ auto_editor/formats/utils.py,sha256=GIZw28WHuCIaZ_zMI0v6Kxbq0QaIpbLsdSegdYwQxQ8,
|
|
23
20
|
auto_editor/lang/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
24
21
|
auto_editor/lang/json.py,sha256=OsNcYlfEj8ZLlzLK-gkLcrCCKI7mJz9rpe-6XLr4f9U,9231
|
25
22
|
auto_editor/lang/libmath.py,sha256=z33A161Oe6vYYK7R6pgYjdZZe63dQkN38Qf36TL3prg,847
|
26
|
-
auto_editor/lang/palet.py,sha256=
|
23
|
+
auto_editor/lang/palet.py,sha256=ZlQsKS5TEUDDiPQSXMSXcdoYYibcv6nwwe372IVdQkw,59839
|
27
24
|
auto_editor/lib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
28
|
-
auto_editor/lib/contracts.py,sha256=
|
25
|
+
auto_editor/lib/contracts.py,sha256=HxWWMU63_6nKsdIXCDKnlWaYzS0dpN-H3uwCuzZALaM,7353
|
29
26
|
auto_editor/lib/data_structs.py,sha256=EXNcdMsdmZxMRlpbXmIbRoC-YfGzvPZi7EdBQGwvpP4,6887
|
30
27
|
auto_editor/lib/err.py,sha256=UlszQJdzMZwkbT8x3sY4GkCV_5x9yrd6uVVUzvA8iiI,35
|
31
28
|
auto_editor/render/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
32
29
|
auto_editor/render/audio.py,sha256=pUhD4rQZfUnyzKgpuxNxl_2CUGwbkAWo2356HUAW7VM,8835
|
33
|
-
auto_editor/render/subtitle.py,sha256=
|
34
|
-
auto_editor/render/video.py,sha256=
|
30
|
+
auto_editor/render/subtitle.py,sha256=g195kDN0LcwKlZeQMCflXPH5n_74iwCk1RPLSQ5eP34,4373
|
31
|
+
auto_editor/render/video.py,sha256=MOhZh72VGe0LVrDE8SzBb-FqXUrnQTIF51zz1qvX2_I,12987
|
35
32
|
auto_editor/subcommands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
36
33
|
auto_editor/subcommands/desc.py,sha256=GDrKJYiHMaeTrplZAceXl1JwoqD78XsV2_5lc0Xd7po,869
|
37
34
|
auto_editor/subcommands/info.py,sha256=7Sgt9WR0rWxe7juCRKseMxW6gKv3z3voqFcL8-MOVVM,6927
|
38
|
-
auto_editor/subcommands/levels.py,sha256=
|
35
|
+
auto_editor/subcommands/levels.py,sha256=ymHwAp2l7HScmdTtNAPDEeDfRVY_rRPRigUCDYx2F40,4220
|
39
36
|
auto_editor/subcommands/palet.py,sha256=tbQoRWoT4jR3yu0etGApfprM-oQgXIjC-rIY-QG3nM0,655
|
40
|
-
auto_editor/subcommands/repl.py,sha256=
|
41
|
-
auto_editor/subcommands/subdump.py,sha256=
|
37
|
+
auto_editor/subcommands/repl.py,sha256=gEVmZduWwnumMe4GLHi72C_IbmdscYwiz7mjigU97Qk,3300
|
38
|
+
auto_editor/subcommands/subdump.py,sha256=af_XBf7kaevqHn1A71z8C-7x8pS5WKD9FE_ugkCw6rk,665
|
42
39
|
auto_editor/subcommands/test.py,sha256=UcpJp-PMcoUyz6LDD4y2V6EQ9w1ed66fPZr4GpzJReg,25050
|
43
40
|
auto_editor/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
44
41
|
auto_editor/utils/bar.py,sha256=RJqkJ8gNr8op_Z-2hh48ExjSonmTPX-RshctK_itv14,3988
|
45
42
|
auto_editor/utils/chunks.py,sha256=J-eGKtEz68gFtRrj1kOSgH4Tj_Yz6prNQ7Xr-d9NQJw,52
|
46
43
|
auto_editor/utils/cmdkw.py,sha256=XApxw7FZBOEJV9N4LHhdw1GVfHbFfCjr-zCZ1gJsSvY,6002
|
47
|
-
auto_editor/utils/container.py,sha256=
|
44
|
+
auto_editor/utils/container.py,sha256=CWB55RRzADBuQmX8lhiPaG8iPayGWaebvtmJjgJ6WRA,2497
|
48
45
|
auto_editor/utils/encoder.py,sha256=auNYo7HXbcU4iTUCc0LE5lpwFmSvdWvBm6-5KIaRK8w,2983
|
49
46
|
auto_editor/utils/func.py,sha256=H38xO6Wxg1TZILVrx-nCowCzj_mqBUtJuOFp4DV3Hsc,4843
|
50
47
|
auto_editor/utils/log.py,sha256=ry-C92PRkJ-c8PQYIs1imk1qigDYfsCoLBYK6CQSP7I,2844
|
51
48
|
auto_editor/utils/subtitle_tools.py,sha256=TjjVPiT8bWzZJcrZjF7ddpgfIsVkLE4LyxXzBswHAGU,693
|
52
49
|
auto_editor/utils/types.py,sha256=zWbU_VkcdP4yHHzKyaSiXu560n5U53i0x5SPkUDsCZU,11570
|
53
|
-
auto_editor-24.
|
54
|
-
auto_editor-24.
|
55
|
-
auto_editor-24.
|
56
|
-
auto_editor-24.
|
57
|
-
auto_editor-24.
|
58
|
-
auto_editor-24.
|
50
|
+
auto_editor-24.30.1.dist-info/LICENSE,sha256=yiq99pWITHfqS0pbZMp7cy2dnbreTuvBwudsU-njvIM,1210
|
51
|
+
auto_editor-24.30.1.dist-info/METADATA,sha256=6PQ4JL2l2YioyyknShGetU4rsQ2Czp8EJHZzMsbo7dA,6138
|
52
|
+
auto_editor-24.30.1.dist-info/WHEEL,sha256=Wyh-_nZ0DJYolHNn1_hMa4lM7uDedD_RGVwbmTjyItk,91
|
53
|
+
auto_editor-24.30.1.dist-info/entry_points.txt,sha256=-H7zdTw4MqnAcwrN5xTNkGIhzZtJMxS9r6lTMeR9-aA,240
|
54
|
+
auto_editor-24.30.1.dist-info/top_level.txt,sha256=ky1HUkqq9i034c4CUU_0wBw0xZsxxyGEak1eTbdvpyA,12
|
55
|
+
auto_editor-24.30.1.dist-info/RECORD,,
|
ae-ffmpeg/ae_ffmpeg/__init__.py
DELETED
@@ -1,16 +0,0 @@
|
|
1
|
-
__version__ = "1.2.0"
|
2
|
-
|
3
|
-
import os.path
|
4
|
-
from platform import machine, system
|
5
|
-
|
6
|
-
|
7
|
-
def get_path() -> str:
|
8
|
-
_os = system()
|
9
|
-
_arch = machine().lower()
|
10
|
-
_interdir = _os if _os != "Darwin" else f"{_os}-{_arch}"
|
11
|
-
program = "ffmpeg.exe" if _os == "Windows" else "ffmpeg"
|
12
|
-
|
13
|
-
dirpath = os.path.dirname(os.path.realpath(__file__))
|
14
|
-
file_path = os.path.join(dirpath, _interdir, program)
|
15
|
-
|
16
|
-
return file_path if os.path.isfile(file_path) else "ffmpeg"
|
ae-ffmpeg/ae_ffmpeg/py.typed
DELETED
File without changes
|
ae-ffmpeg/setup.py
DELETED
@@ -1,65 +0,0 @@
|
|
1
|
-
import re
|
2
|
-
|
3
|
-
from setuptools import find_packages, setup
|
4
|
-
|
5
|
-
|
6
|
-
def pip_version():
|
7
|
-
with open("ae_ffmpeg/__init__.py") as f:
|
8
|
-
version_content = f.read()
|
9
|
-
|
10
|
-
version_match = re.search(
|
11
|
-
r"^__version__ = ['\"]([^'\"]*)['\"]", version_content, re.M
|
12
|
-
)
|
13
|
-
|
14
|
-
if version_match:
|
15
|
-
return version_match.group(1)
|
16
|
-
|
17
|
-
raise ValueError("Unable to find version string.")
|
18
|
-
|
19
|
-
|
20
|
-
with open("README.md") as f:
|
21
|
-
long_description = f.read()
|
22
|
-
|
23
|
-
setup(
|
24
|
-
name="ae-ffmpeg",
|
25
|
-
version=pip_version(),
|
26
|
-
description="Static FFmpeg binaries for Auto-Editor",
|
27
|
-
long_description=long_description,
|
28
|
-
long_description_content_type="text/markdown",
|
29
|
-
license="LGPLv3",
|
30
|
-
url="https://auto-editor.com",
|
31
|
-
project_urls={
|
32
|
-
"Bug Tracker": "https://github.com/WyattBlue/auto-editor/issues",
|
33
|
-
"Source Code": "https://github.com/WyattBlue/auto-editor",
|
34
|
-
},
|
35
|
-
author="WyattBlue",
|
36
|
-
author_email="wyattblue@auto-editor.com",
|
37
|
-
keywords="video audio media",
|
38
|
-
packages=find_packages(),
|
39
|
-
package_data={
|
40
|
-
"ae_ffmpeg": [
|
41
|
-
"LICENSE.txt",
|
42
|
-
"Windows/ffmpeg.exe",
|
43
|
-
"Windows/ffprobe.exe",
|
44
|
-
"Windows/libopenh264.dll",
|
45
|
-
"Darwin-x86_64/ffmpeg",
|
46
|
-
"Darwin-x86_64/ffprobe",
|
47
|
-
"Darwin-arm64/ffmpeg",
|
48
|
-
"Darwin-arm64/ffprobe",
|
49
|
-
"py.typed",
|
50
|
-
],
|
51
|
-
},
|
52
|
-
include_package_data=True,
|
53
|
-
zip_safe=False,
|
54
|
-
python_requires=">=3.8",
|
55
|
-
classifiers=[
|
56
|
-
"Topic :: Multimedia :: Sound/Audio",
|
57
|
-
"Topic :: Multimedia :: Video",
|
58
|
-
"License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)",
|
59
|
-
"Intended Audience :: Developers",
|
60
|
-
"Operating System :: MacOS :: MacOS X",
|
61
|
-
"Operating System :: Microsoft :: Windows",
|
62
|
-
"Development Status :: 5 - Production/Stable",
|
63
|
-
"Programming Language :: Python :: 3",
|
64
|
-
],
|
65
|
-
)
|
File without changes
|
File without changes
|