typed-ffmpeg-compatible 2.2.0__tar.gz → 2.4.0__tar.gz
Sign up to get free protection for your applications and to get access to all the features.
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/PKG-INFO +1 -2
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/pyproject.toml +1 -1
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/global_runnable/global_args.py +0 -3
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/io/_input.py +1 -3
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/io/_output.py +1 -3
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/io/output_args.py +1 -3
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/filters.py +75 -206
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/streams/audio.py +228 -422
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/streams/video.py +420 -829
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/LICENSE +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/README.md +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/__init__.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/base.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/common/__init__.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/common/schema.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/common/serialize.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/__init__.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/compile.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/context.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/factory.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/global_runnable/__init__.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/global_runnable/runnable.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/io/__init__.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/nodes.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/schema.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/utils.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/validate.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/exceptions.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/probe.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/py.typed +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/schema.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/streams/__init__.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/streams/av.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/streams/channel_layout.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/types.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/utils/__init__.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/utils/escaping.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/utils/lazy_eval/__init__.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/utils/lazy_eval/operator.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/utils/lazy_eval/schema.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/utils/run.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/utils/snapshot.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/utils/typing.py +0 -0
- {typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/utils/view.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: typed-ffmpeg-compatible
|
3
|
-
Version: 2.
|
3
|
+
Version: 2.4.0
|
4
4
|
Summary: Modern Python FFmpeg wrappers offer comprehensive support for complex filters, complete with detailed typing and documentation.
|
5
5
|
Home-page: https://livingbio.github.io/typed-ffmpeg/
|
6
6
|
License: MIT
|
@@ -17,7 +17,6 @@ Classifier: Programming Language :: Python :: 3
|
|
17
17
|
Classifier: Programming Language :: Python :: 3.10
|
18
18
|
Classifier: Programming Language :: Python :: 3.11
|
19
19
|
Classifier: Programming Language :: Python :: 3.12
|
20
|
-
Classifier: Programming Language :: Python :: 3.13
|
21
20
|
Classifier: Topic :: Multimedia :: Sound/Audio
|
22
21
|
Classifier: Topic :: Multimedia :: Video
|
23
22
|
Classifier: Topic :: Software Development :: Libraries
|
@@ -1,6 +1,6 @@
|
|
1
1
|
[tool.poetry]
|
2
2
|
name = "typed-ffmpeg-compatible"
|
3
|
-
version = "2.
|
3
|
+
version = "2.4.0"
|
4
4
|
description = "Modern Python FFmpeg wrappers offer comprehensive support for complex filters, complete with detailed typing and documentation."
|
5
5
|
authors = ["lucemia <lucemia@gmail.com>"]
|
6
6
|
readme = "README.md"
|
@@ -64,7 +64,6 @@ class GlobalArgs(ABC):
|
|
64
64
|
qphist: Func = None,
|
65
65
|
vsync: Func = None,
|
66
66
|
extra_options: dict[str, Any] = None,
|
67
|
-
**kwargs: Any,
|
68
67
|
) -> GlobalStream:
|
69
68
|
"""
|
70
69
|
Set global options.
|
@@ -116,7 +115,6 @@ class GlobalArgs(ABC):
|
|
116
115
|
qphist: deprecated, does nothing
|
117
116
|
vsync: set video sync method globally; deprecated, use -fps_mode
|
118
117
|
extra_options: Additional options
|
119
|
-
**kwargs: Additional options
|
120
118
|
|
121
119
|
Returns:
|
122
120
|
GlobalStream: GlobalStream instance
|
@@ -176,6 +174,5 @@ class GlobalArgs(ABC):
|
|
176
174
|
if v is not None
|
177
175
|
}
|
178
176
|
| (extra_options or {})
|
179
|
-
| kwargs
|
180
177
|
),
|
181
178
|
).stream()
|
{typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/io/_input.py
RENAMED
@@ -65,7 +65,6 @@ def input(
|
|
65
65
|
dn: Boolean = None,
|
66
66
|
top: Int = None,
|
67
67
|
extra_options: dict[str, Any] = None,
|
68
|
-
**kwargs: Any
|
69
68
|
) -> AVStream:
|
70
69
|
"""
|
71
70
|
Input file URL (ffmpeg ``-i`` option)
|
@@ -125,7 +124,6 @@ def input(
|
|
125
124
|
dn: disable data
|
126
125
|
top: deprecated, use the setfield video filter
|
127
126
|
extra_options: ffmpeg's input file options
|
128
|
-
**kwargs: ffmpeg's input file options
|
129
127
|
|
130
128
|
Returns:
|
131
129
|
Input stream
|
@@ -196,4 +194,4 @@ def input(
|
|
196
194
|
if v is not None
|
197
195
|
}
|
198
196
|
|
199
|
-
return InputNode(filename=str(filename), kwargs=tuple((options | (extra_options or {})
|
197
|
+
return InputNode(filename=str(filename), kwargs=tuple((options | (extra_options or {})).items())).stream()
|
{typed_ffmpeg_compatible-2.2.0 → typed_ffmpeg_compatible-2.4.0}/src/typed_ffmpeg/dag/io/_output.py
RENAMED
@@ -106,7 +106,6 @@ def output(
|
|
106
106
|
dn: Boolean = None,
|
107
107
|
top: Int = None,
|
108
108
|
extra_options: dict[str, Any] = None,
|
109
|
-
**kwargs: Any
|
110
109
|
) -> OutputStream:
|
111
110
|
"""
|
112
111
|
Output file URL
|
@@ -210,7 +209,6 @@ def output(
|
|
210
209
|
dn: disable data
|
211
210
|
top: deprecated, use the setfield video filter
|
212
211
|
extra_options: the arguments for the output
|
213
|
-
**kwargs: the arguments for the output
|
214
212
|
|
215
213
|
Returns:
|
216
214
|
the output stream
|
@@ -318,5 +316,5 @@ def output(
|
|
318
316
|
}
|
319
317
|
|
320
318
|
return OutputNode(
|
321
|
-
inputs=streams, filename=str(filename), kwargs=tuple((options | (extra_options or {})
|
319
|
+
inputs=streams, filename=str(filename), kwargs=tuple((options | (extra_options or {})).items())
|
322
320
|
).stream()
|
@@ -115,7 +115,6 @@ class OutputArgs(ABC):
|
|
115
115
|
dn: Boolean = None,
|
116
116
|
top: Int = None,
|
117
117
|
extra_options: dict[str, Any] = None,
|
118
|
-
**kwargs: Any,
|
119
118
|
) -> OutputStream:
|
120
119
|
"""
|
121
120
|
Output file URL
|
@@ -219,7 +218,6 @@ class OutputArgs(ABC):
|
|
219
218
|
dn: disable data
|
220
219
|
top: deprecated, use the setfield video filter
|
221
220
|
extra_options: the arguments for the output
|
222
|
-
**kwargs: the arguments for the output
|
223
221
|
|
224
222
|
Returns:
|
225
223
|
the output stream
|
@@ -326,4 +324,4 @@ class OutputArgs(ABC):
|
|
326
324
|
if v is not None
|
327
325
|
}
|
328
326
|
|
329
|
-
return self._output_node(*streams, filename=filename, **options, **(extra_options or {})
|
327
|
+
return self._output_node(*streams, filename=filename, **options, **(extra_options or {})).stream()
|