typed-ffmpeg-compatible 2.4.1__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. typed_ffmpeg/__init__.py +25 -0
  2. typed_ffmpeg/base.py +114 -0
  3. typed_ffmpeg/common/__init__.py +0 -0
  4. typed_ffmpeg/common/schema.py +308 -0
  5. typed_ffmpeg/common/serialize.py +132 -0
  6. typed_ffmpeg/dag/__init__.py +13 -0
  7. typed_ffmpeg/dag/compile.py +51 -0
  8. typed_ffmpeg/dag/context.py +221 -0
  9. typed_ffmpeg/dag/factory.py +31 -0
  10. typed_ffmpeg/dag/global_runnable/__init__.py +0 -0
  11. typed_ffmpeg/dag/global_runnable/global_args.py +178 -0
  12. typed_ffmpeg/dag/global_runnable/runnable.py +174 -0
  13. typed_ffmpeg/dag/io/__init__.py +0 -0
  14. typed_ffmpeg/dag/io/_input.py +197 -0
  15. typed_ffmpeg/dag/io/_output.py +320 -0
  16. typed_ffmpeg/dag/io/output_args.py +327 -0
  17. typed_ffmpeg/dag/nodes.py +479 -0
  18. typed_ffmpeg/dag/schema.py +210 -0
  19. typed_ffmpeg/dag/utils.py +41 -0
  20. typed_ffmpeg/dag/validate.py +172 -0
  21. typed_ffmpeg/exceptions.py +42 -0
  22. typed_ffmpeg/filters.py +3572 -0
  23. typed_ffmpeg/probe.py +43 -0
  24. typed_ffmpeg/py.typed +0 -0
  25. typed_ffmpeg/schema.py +29 -0
  26. typed_ffmpeg/streams/__init__.py +5 -0
  27. typed_ffmpeg/streams/audio.py +7358 -0
  28. typed_ffmpeg/streams/av.py +22 -0
  29. typed_ffmpeg/streams/channel_layout.py +39 -0
  30. typed_ffmpeg/streams/video.py +13469 -0
  31. typed_ffmpeg/types.py +119 -0
  32. typed_ffmpeg/utils/__init__.py +0 -0
  33. typed_ffmpeg/utils/escaping.py +49 -0
  34. typed_ffmpeg/utils/lazy_eval/__init__.py +0 -0
  35. typed_ffmpeg/utils/lazy_eval/operator.py +134 -0
  36. typed_ffmpeg/utils/lazy_eval/schema.py +211 -0
  37. typed_ffmpeg/utils/run.py +27 -0
  38. typed_ffmpeg/utils/snapshot.py +26 -0
  39. typed_ffmpeg/utils/typing.py +17 -0
  40. typed_ffmpeg/utils/view.py +64 -0
  41. typed_ffmpeg_compatible-2.4.1.dist-info/LICENSE +21 -0
  42. typed_ffmpeg_compatible-2.4.1.dist-info/METADATA +182 -0
  43. typed_ffmpeg_compatible-2.4.1.dist-info/RECORD +45 -0
  44. typed_ffmpeg_compatible-2.4.1.dist-info/WHEEL +4 -0
  45. typed_ffmpeg_compatible-2.4.1.dist-info/entry_points.txt +3 -0
@@ -0,0 +1,22 @@
1
+ from ..dag.nodes import InputNode
2
+ from ..utils.typing import override
3
+ from .audio import AudioStream
4
+ from .video import VideoStream
5
+
6
+
7
+ class AVStream(AudioStream, VideoStream):
8
+ """
9
+ A stream that contains both audio and video. This is for input nodes only.
10
+ """
11
+
12
+ node: InputNode
13
+
14
+ @property
15
+ @override
16
+ def video(self) -> VideoStream:
17
+ return VideoStream(node=self.node, index=self.index)
18
+
19
+ @property
20
+ @override
21
+ def audio(self) -> AudioStream:
22
+ return AudioStream(node=self.node, index=self.index)
@@ -0,0 +1,39 @@
1
+ CHANNEL_LAYOUT = {
2
+ "mono": 1,
3
+ "stereo": 2,
4
+ "2.1": 3,
5
+ "3.0": 3,
6
+ "3.0(back)": 3,
7
+ "4.0": 4,
8
+ "quad": 4,
9
+ "quad(side)": 4,
10
+ "3.1": 4,
11
+ "5.0": 5,
12
+ "5.0(side)": 5,
13
+ "4.1": 5,
14
+ "5.1": 6,
15
+ "5.1(side)": 6,
16
+ "6.0": 6,
17
+ "6.0(front)": 6,
18
+ "3.1.2": 6,
19
+ "hexagonal": 6,
20
+ "6.1": 7,
21
+ "6.1(back)": 7,
22
+ "6.1(front)": 7,
23
+ "7.0": 7,
24
+ "7.0(front)": 7,
25
+ "7.1": 8,
26
+ "7.1(wide)": 8,
27
+ "7.1(wide-side)": 8,
28
+ "5.1.2": 8,
29
+ "octagonal": 8,
30
+ "cube": 8,
31
+ "5.1.4": 10,
32
+ "7.1.2": 10,
33
+ "7.1.4": 12,
34
+ "7.2.3": 12,
35
+ "9.1.4": 14,
36
+ "hexadecagonal": 16,
37
+ "downmix": 2,
38
+ "22.2": 24,
39
+ }