typed-ffmpeg-compatible 2.5.0__py3-none-any.whl → 2.6.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.
@@ -1,4 +1,5 @@
1
- from typing import Any, Iterable
1
+ from collections.abc import Iterable
2
+ from typing import Any
2
3
 
3
4
 
4
5
  def escape(text: str | int | float, chars: str = "\\'=:") -> str:
@@ -39,11 +40,11 @@ def convert_kwargs_to_cmd_line_args(kwargs: dict[str, Any]) -> list[str]:
39
40
  v = kwargs[k]
40
41
  if isinstance(v, Iterable) and not isinstance(v, str):
41
42
  for value in v:
42
- args.append("-{}".format(k))
43
+ args.append(f"-{k}")
43
44
  if value is not None:
44
- args.append("{}".format(value))
45
+ args.append(f"{value}")
45
46
  continue
46
- args.append("-{}".format(k))
47
+ args.append(f"-{k}")
47
48
  if v is not None:
48
- args.append("{}".format(v))
49
+ args.append(f"{v}")
49
50
  return args
typed_ffmpeg/utils/run.py CHANGED
@@ -19,7 +19,7 @@ def command_line(args: list[str]) -> str:
19
19
 
20
20
  # Filter_Node_Option_Type
21
21
  def ignore_default(
22
- kwargs: dict[str, str | int | float | bool | Default]
22
+ kwargs: dict[str, str | int | float | bool | Default],
23
23
  ) -> tuple[tuple[str, str | int | float | bool | LazyValue], ...]:
24
24
  """
25
25
  Convert the values of the dictionary to strings.
@@ -1,12 +1,18 @@
1
+ from dataclasses import asdict
1
2
  from typing import Optional
2
3
 
3
- from syrupy.extensions.image import PNGImageSnapshotExtension
4
- from syrupy.types import PropertyFilter, PropertyMatcher, SerializableData, SerializedData
4
+ from syrupy.extensions.json import JSONSnapshotExtension
5
+ from syrupy.types import (
6
+ PropertyFilter,
7
+ PropertyMatcher,
8
+ SerializableData,
9
+ SerializedData,
10
+ )
5
11
 
6
12
  from ..dag.schema import Stream
7
13
 
8
14
 
9
- class DAGSnapshotExtenstion(PNGImageSnapshotExtension):
15
+ class DAGSnapshotExtenstion(JSONSnapshotExtension):
10
16
  """
11
17
  A snapshot extension for the DAG. This extension is used to serialize and match the DAG.
12
18
  """
@@ -20,7 +26,5 @@ class DAGSnapshotExtenstion(PNGImageSnapshotExtension):
20
26
  matcher: Optional["PropertyMatcher"] = None,
21
27
  ) -> "SerializedData":
22
28
  stream = Stream(node=data)
23
- graph_path = stream.view()
24
29
 
25
- with open(graph_path, "rb") as ifile:
26
- return super().serialize(ifile.read())
30
+ return super().serialize(asdict(stream))
@@ -35,7 +35,8 @@ def view(node: Node, format: Literal["png", "svg", "dot"]) -> str:
35
35
  import graphviz # type: ignore
36
36
  except ImportError:
37
37
  raise ImportError(
38
- "failed to import graphviz; please make sure graphviz is installed (e.g. " "`pip install graphviz`)"
38
+ "failed to import graphviz; please make sure graphviz is installed (e.g. "
39
+ "`pip install graphviz`)"
39
40
  )
40
41
 
41
42
  graph = graphviz.Digraph(format=format)
@@ -59,6 +60,10 @@ def view(node: Node, format: Literal["png", "svg", "dot"]) -> str:
59
60
 
60
61
  for node in context.all_nodes:
61
62
  for idx, stream in enumerate(node.inputs):
62
- graph.edge(stream.node.hex, node.hex, label=f"{'*' if stream.index is None else stream.index} => {idx}")
63
+ graph.edge(
64
+ stream.node.hex,
65
+ node.hex,
66
+ label=f"{'*' if stream.index is None else stream.index} => {idx}",
67
+ )
63
68
 
64
69
  return graph.render(engine="dot")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: typed-ffmpeg-compatible
3
- Version: 2.5.0
3
+ Version: 2.6.1
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
@@ -0,0 +1,46 @@
1
+ typed_ffmpeg/__init__.py,sha256=122K8EWO5F-1re6YjI_VrTo8tlGGkNbT9Dqlppt5bUI,711
2
+ typed_ffmpeg/base.py,sha256=77X6z6GPMYyYkJqzYUHJKqPeToQ0ZsA8TQMVXCm7dDA,3248
3
+ typed_ffmpeg/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
+ typed_ffmpeg/common/schema.py,sha256=tGgb13tfiHOEXpOEmjlh92Gg8o4G4b9bzFgiTpupGO8,9724
5
+ typed_ffmpeg/common/serialize.py,sha256=J-NuMzPoy_qDl9UStVeMnjYVLK-QOUjz5cz4xStPIc4,3471
6
+ typed_ffmpeg/dag/__init__.py,sha256=RXOgd2Gx0w0bzvnqX9TpFpi5SbTtgh0DQAmCZnYMx_o,315
7
+ typed_ffmpeg/dag/compile.py,sha256=891eELZB_LeD6RSwRYFjBrcQmd7uvfFiOaQyp5LCUwU,1565
8
+ typed_ffmpeg/dag/context.py,sha256=a0UWq1yMBznCTapO_FHlelHVdzBGf2juUKoSRKN0jUI,5863
9
+ typed_ffmpeg/dag/factory.py,sha256=KT50pifjKUXymDM8DvAE1OJYRBahoAmRQ-VGD0L7irA,1561
10
+ typed_ffmpeg/dag/global_runnable/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
+ typed_ffmpeg/dag/global_runnable/global_args.py,sha256=YvYEp7gYquzRhhbBHptq7hq3r210VZtyTZNECIWd0Vc,7571
12
+ typed_ffmpeg/dag/global_runnable/runnable.py,sha256=PW36CSlwSqKuIPOVD4XfRb9hhwsAdv4wFMNxq8Da83U,5371
13
+ typed_ffmpeg/dag/io/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
+ typed_ffmpeg/dag/io/_input.py,sha256=O4YJ253W75Ez9lHb1oNCyqt5HmHcAsCIqdN8jZKijmc,7176
15
+ typed_ffmpeg/dag/io/_output.py,sha256=xayZijYpQzt26xkbCeuC7Z0EICDaArZIW69U1E4Hu8I,12432
16
+ typed_ffmpeg/dag/io/output_args.py,sha256=SThIhZh9PXs2m6Fz5JsSy8oS-Te7GM_oz7HRuZo0-eI,13901
17
+ typed_ffmpeg/dag/nodes.py,sha256=ua0wZDcu60nscs5V0CDTCoZbw9uyrYC7vkZrewNVqsU,14778
18
+ typed_ffmpeg/dag/schema.py,sha256=rkzf9OavVj_pP8dVqVI8wAMaCUe0Q1s5B1MLN35a5Dk,5913
19
+ typed_ffmpeg/dag/utils.py,sha256=ooGrCOnsvRjjUMhC4JSCc3T2FRL1JLz0CeVSiE9f1hI,1141
20
+ typed_ffmpeg/dag/validate.py,sha256=hsKzWIKngZWAZCEzU-G0drSfAJyOQd9WXx0c7m0vLLg,5973
21
+ typed_ffmpeg/exceptions.py,sha256=rNF4bGWDds9P9gzzATEmPMHprXx1Rm4QVtFyIq3pqNc,944
22
+ typed_ffmpeg/filters.py,sha256=_lBpGZgPHK3KgGVrw-TCdQEsBRuEXVIgwggYNGd80MU,110076
23
+ typed_ffmpeg/info.py,sha256=-5ME5u16foXWDSdO-1hNw_4twH_5gtkENdiswg4fMAk,4790
24
+ typed_ffmpeg/probe.py,sha256=iIMKIdlvudCnnJLVKwzQxCOhGlgSqtnCeSgY8mEiHoE,1449
25
+ typed_ffmpeg/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
26
+ typed_ffmpeg/schema.py,sha256=Bb1It8tVVmPcGl2QkhIqSMdsL4ZnwkdBy-5UjS5SEvQ,533
27
+ typed_ffmpeg/streams/__init__.py,sha256=Nt9uWpcVI1sQLl5Qt_kBCBcWOGZA1vczCQ0qvFbSko0,141
28
+ typed_ffmpeg/streams/audio.py,sha256=2oNRhb5UetWtlPG3NW73AjUZoFPl303yMv-6W1sGWt0,259054
29
+ typed_ffmpeg/streams/av.py,sha256=SWcy8Q9hk36ZZJ4WosG08NR-r1f2IzOgZ4tsAZ7nX18,544
30
+ typed_ffmpeg/streams/channel_layout.py,sha256=ocRb1HM9QgAH4xL0liVs-lXq0WaZyRu1agWz4CaLssU,662
31
+ typed_ffmpeg/streams/video.py,sha256=cQwHfew75YO_dbZjmpUYd-nXt1JHN0M7suFKKe5UH5s,453576
32
+ typed_ffmpeg/types.py,sha256=ly3zLtg7KxRa_jsDDrFPAxRZRjTQdWVpiQzOD9NdrFM,4137
33
+ typed_ffmpeg/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
34
+ typed_ffmpeg/utils/escaping.py,sha256=OfX0K2InUuAye7t8DcS6ebCNvRatxy1F4ieBLRfOea4,1203
35
+ typed_ffmpeg/utils/lazy_eval/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
36
+ typed_ffmpeg/utils/lazy_eval/operator.py,sha256=AFUUdse1M5QvyO6i78xO3e3hxG2lwITSmgywsQbDWNs,2787
37
+ typed_ffmpeg/utils/lazy_eval/schema.py,sha256=JCiwxNElHzeSm5ehfgpwgV1fNbZ7cuQzs2u605zEw5Q,4840
38
+ typed_ffmpeg/utils/run.py,sha256=9fKUFOS6mD4hDm751zVADS31N4yY6dTeoKPy1LImauI,710
39
+ typed_ffmpeg/utils/snapshot.py,sha256=TLhjMPVzOpWSqoToNy_heWCv3-Hnbk6hK_BuRKAhf0U,773
40
+ typed_ffmpeg/utils/typing.py,sha256=sx4IN38NGQxgMs5GOtPouM02TcHINxvTreXPUbAbGRc,316
41
+ typed_ffmpeg/utils/view.py,sha256=RhKqKgRQ3mRaXtnV77yUk40HKgiGZikB4T8IL92I3v4,1780
42
+ typed_ffmpeg_compatible-2.6.1.dist-info/LICENSE,sha256=8Aaya5i_09Cou2i3QMxTwz6uHGzi_fGA4uhkco07-A4,1066
43
+ typed_ffmpeg_compatible-2.6.1.dist-info/METADATA,sha256=2n8lmjQpXl8iwWw95GFvYgHXWS8a75qda4YHoqR6FOI,7249
44
+ typed_ffmpeg_compatible-2.6.1.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
45
+ typed_ffmpeg_compatible-2.6.1.dist-info/entry_points.txt,sha256=KfZmNsM16GT_lF1otASIN6E3i6xXHXoB1gMeEdlptjA,44
46
+ typed_ffmpeg_compatible-2.6.1.dist-info/RECORD,,
@@ -1,45 +0,0 @@
1
- typed_ffmpeg/__init__.py,sha256=WnVr15iPyHWL5ZXtAKah50Jf-rR4QEA8qisBWhMY3KI,596
2
- typed_ffmpeg/base.py,sha256=aa0-lPC_P_P61nnQRK0VR9a-b-XhNCPJUdtYWkQA6yE,3169
3
- typed_ffmpeg/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
- typed_ffmpeg/common/schema.py,sha256=9oiURyju0YDYPdhg0afrSQ1nOyAK-0v1xSkA6S7Psok,9460
5
- typed_ffmpeg/common/serialize.py,sha256=LGBQm6-yNpktJKoHOg7tP7sgo75K54TSe1wGDF2NgZ4,3431
6
- typed_ffmpeg/dag/__init__.py,sha256=EGMFaOLWrQRQdy8EJUJbaGLxv0w_H7Z9p6kXwbuXMwI,286
7
- typed_ffmpeg/dag/compile.py,sha256=891eELZB_LeD6RSwRYFjBrcQmd7uvfFiOaQyp5LCUwU,1565
8
- typed_ffmpeg/dag/context.py,sha256=BPd_sjumfibcu3YHdzRLLC6Vyf3K8_hewEfhBPWumWI,5804
9
- typed_ffmpeg/dag/factory.py,sha256=uQQZmRp1wvpDKYIriBEZHu-gehEjLxxjWf6uZTnQNXI,1231
10
- typed_ffmpeg/dag/global_runnable/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
- typed_ffmpeg/dag/global_runnable/global_args.py,sha256=-IBuJgOoXO0JqU_P7NRyIUZv2Vpr-vodVTQ92XSwQVo,7579
12
- typed_ffmpeg/dag/global_runnable/runnable.py,sha256=3rXAOeg6wKEekdm-g19WG5lG5igxuMLZ1JOiwSogIf8,5289
13
- typed_ffmpeg/dag/io/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
- typed_ffmpeg/dag/io/_input.py,sha256=xz5MWVmQJNd2ryFoDNy094hIfj2RCngIxu12AwPwnUU,7162
15
- typed_ffmpeg/dag/io/_output.py,sha256=OCY7XxEdEOfvVqjEsXq5SWPt02Kkx8GkYphIWiAkLts,12415
16
- typed_ffmpeg/dag/io/output_args.py,sha256=tilJd5xssVahZP88J8A2urZ3PHJG80Lj6kv1QS8WZzE,13875
17
- typed_ffmpeg/dag/nodes.py,sha256=hdgwepV3U-GU2rHCgWor2pYuNyCJcCL2mJtuOWgSGuw,14449
18
- typed_ffmpeg/dag/schema.py,sha256=WfY6gJtjnOxJV-Z5hdBcrKUYzpbHv4dT7mYs0Zv9lS0,5926
19
- typed_ffmpeg/dag/utils.py,sha256=ooGrCOnsvRjjUMhC4JSCc3T2FRL1JLz0CeVSiE9f1hI,1141
20
- typed_ffmpeg/dag/validate.py,sha256=smkTzh4ex6Omqcm5iUWeKX5-B8c4e0oTTVOGWSl9i5I,5786
21
- typed_ffmpeg/exceptions.py,sha256=Zz-lKGildItY9a3dD1NHqx5b1U9hO6splbtA8JGce0U,968
22
- typed_ffmpeg/filters.py,sha256=OEIG8nWGMHBenm5EJmng6nHYCL-_t5KVun5quF4GhLE,107702
23
- typed_ffmpeg/probe.py,sha256=srLG1HIK4V4bX3GdgETiLrkc7LJuTAoG7B36L6htteQ,1408
24
- typed_ffmpeg/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
25
- typed_ffmpeg/schema.py,sha256=5ITK1t7g_OLZRyuN69DI920wERsxZZxrV3mV57tql7A,534
26
- typed_ffmpeg/streams/__init__.py,sha256=Nt9uWpcVI1sQLl5Qt_kBCBcWOGZA1vczCQ0qvFbSko0,141
27
- typed_ffmpeg/streams/audio.py,sha256=OsPnRyFgvVxLmlxDJgRLwM5aLNTUbuFRcpjG4U1Gr4M,252785
28
- typed_ffmpeg/streams/av.py,sha256=SWcy8Q9hk36ZZJ4WosG08NR-r1f2IzOgZ4tsAZ7nX18,544
29
- typed_ffmpeg/streams/channel_layout.py,sha256=ocRb1HM9QgAH4xL0liVs-lXq0WaZyRu1agWz4CaLssU,662
30
- typed_ffmpeg/streams/video.py,sha256=jfHWVt72O1ZgS6uuFPA3GWgByvx5tr1EVa9p6wPKP9o,440022
31
- typed_ffmpeg/types.py,sha256=ly3zLtg7KxRa_jsDDrFPAxRZRjTQdWVpiQzOD9NdrFM,4137
32
- typed_ffmpeg/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
33
- typed_ffmpeg/utils/escaping.py,sha256=zGwBMq9DDqy1HCfa8jof_Kx9pwz1iB7MfrPByUXTd6Y,1208
34
- typed_ffmpeg/utils/lazy_eval/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
- typed_ffmpeg/utils/lazy_eval/operator.py,sha256=AFUUdse1M5QvyO6i78xO3e3hxG2lwITSmgywsQbDWNs,2787
36
- typed_ffmpeg/utils/lazy_eval/schema.py,sha256=JCiwxNElHzeSm5ehfgpwgV1fNbZ7cuQzs2u605zEw5Q,4840
37
- typed_ffmpeg/utils/run.py,sha256=OotkfIFCU9KD_SzhigCtUeqqvcEWlFiMUsBcxms1k3M,709
38
- typed_ffmpeg/utils/snapshot.py,sha256=OTEH0Eyzam_r1i5oIC0nKD3hGpVmq4aV5TB2qd5hKuM,813
39
- typed_ffmpeg/utils/typing.py,sha256=sx4IN38NGQxgMs5GOtPouM02TcHINxvTreXPUbAbGRc,316
40
- typed_ffmpeg/utils/view.py,sha256=rS8gC_uwlUs9Y5UQFj1ur2NjVbZXkZGdGHND0btJpuM,1705
41
- typed_ffmpeg_compatible-2.5.0.dist-info/LICENSE,sha256=8Aaya5i_09Cou2i3QMxTwz6uHGzi_fGA4uhkco07-A4,1066
42
- typed_ffmpeg_compatible-2.5.0.dist-info/METADATA,sha256=bhXG9rmI7iIzYn0yRU6JVeP1k3FTxHsa_AznmKgSe9E,7249
43
- typed_ffmpeg_compatible-2.5.0.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
44
- typed_ffmpeg_compatible-2.5.0.dist-info/entry_points.txt,sha256=KfZmNsM16GT_lF1otASIN6E3i6xXHXoB1gMeEdlptjA,44
45
- typed_ffmpeg_compatible-2.5.0.dist-info/RECORD,,