rocket-welder-sdk 1.1.35.dev13__tar.gz → 1.1.36__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.
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/PKG-INFO +1 -1
- rocket_welder_sdk-1.1.36/VERSION +1 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/high_level/__init__.py +2 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/high_level/client.py +3 -30
- rocket_welder_sdk-1.1.36/rocket_welder_sdk/high_level/frame_sink_factory.py +118 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/transport/__init__.py +2 -1
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/transport/frame_sink.py +45 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk.egg-info/PKG-INFO +1 -1
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk.egg-info/SOURCES.txt +1 -0
- rocket_welder_sdk-1.1.35.dev13/VERSION +0 -1
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/MANIFEST.in +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/README.md +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/logo.png +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/pyproject.toml +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/__init__.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/bytes_size.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/connection_string.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/controllers.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/external_controls/__init__.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/external_controls/contracts.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/external_controls/contracts_old.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/frame_metadata.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/gst_metadata.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/high_level/connection_strings.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/high_level/data_context.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/high_level/schema.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/high_level/transport_protocol.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/keypoints_protocol.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/opencv_controller.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/periodic_timer.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/py.typed +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/rocket_welder_client.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/segmentation_result.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/session_id.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/transport/frame_source.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/transport/nng_transport.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/transport/stream_transport.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/transport/tcp_transport.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/transport/unix_socket_transport.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/ui/__init__.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/ui/controls.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/ui/icons.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/ui/ui_events_projection.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/ui/ui_service.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/ui/value_types.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk.egg-info/dependency_links.txt +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk.egg-info/requires.txt +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk.egg-info/top_level.txt +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/setup.cfg +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/setup.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_bytes_size.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_connection_string.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_controllers.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_external_controls_serialization.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_external_controls_serialization_v2.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_frame_metadata.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_gst_metadata.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_high_level_api.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_icons.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_keypoints_cross_platform.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_keypoints_protocol.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_rocket_welder_client.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_segmentation_cross_platform.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_segmentation_result.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_session_id.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_transport_cross_platform.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_ui_controls.py +0 -0
- {rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_ui_service_happy_path.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rocket-welder-sdk
|
|
3
|
-
Version: 1.1.
|
|
3
|
+
Version: 1.1.36
|
|
4
4
|
Summary: High-performance video streaming SDK for RocketWelder services using ZeroBuffer IPC
|
|
5
5
|
Home-page: https://github.com/modelingevolution/rocket-welder-sdk
|
|
6
6
|
Author: ModelingEvolution
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1.1.36
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/high_level/__init__.py
RENAMED
|
@@ -23,6 +23,7 @@ from .data_context import (
|
|
|
23
23
|
IKeyPointsDataContext,
|
|
24
24
|
ISegmentationDataContext,
|
|
25
25
|
)
|
|
26
|
+
from .frame_sink_factory import FrameSinkFactory
|
|
26
27
|
from .schema import (
|
|
27
28
|
IKeyPointsSchema,
|
|
28
29
|
ISegmentationSchema,
|
|
@@ -35,6 +36,7 @@ from .transport_protocol import (
|
|
|
35
36
|
)
|
|
36
37
|
|
|
37
38
|
__all__ = [
|
|
39
|
+
"FrameSinkFactory",
|
|
38
40
|
"IKeyPointsDataContext",
|
|
39
41
|
"IKeyPointsSchema",
|
|
40
42
|
"ISegmentationDataContext",
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/high_level/client.py
RENAMED
|
@@ -32,13 +32,13 @@ from .data_context import (
|
|
|
32
32
|
KeyPointsDataContext,
|
|
33
33
|
SegmentationDataContext,
|
|
34
34
|
)
|
|
35
|
+
from .frame_sink_factory import FrameSinkFactory
|
|
35
36
|
from .schema import (
|
|
36
37
|
IKeyPointsSchema,
|
|
37
38
|
ISegmentationSchema,
|
|
38
39
|
KeyPointsSchema,
|
|
39
40
|
SegmentationSchema,
|
|
40
41
|
)
|
|
41
|
-
from .transport_protocol import TransportKind
|
|
42
42
|
|
|
43
43
|
if TYPE_CHECKING:
|
|
44
44
|
from rocket_welder_sdk.keypoints_protocol import KeyPointsSink
|
|
@@ -203,35 +203,8 @@ class RocketWelderClient:
|
|
|
203
203
|
return kp_ctx, seg_ctx
|
|
204
204
|
|
|
205
205
|
def _create_frame_sink(self, protocol: Any, address: str) -> IFrameSink:
|
|
206
|
-
"""Create frame sink from protocol."""
|
|
207
|
-
|
|
208
|
-
from rocket_welder_sdk.transport.stream_transport import StreamFrameSink
|
|
209
|
-
from rocket_welder_sdk.transport.unix_socket_transport import UnixSocketFrameSink
|
|
210
|
-
|
|
211
|
-
from .transport_protocol import TransportProtocol
|
|
212
|
-
|
|
213
|
-
if not isinstance(protocol, TransportProtocol):
|
|
214
|
-
raise TypeError(f"Expected TransportProtocol, got {type(protocol)}")
|
|
215
|
-
|
|
216
|
-
if protocol.kind == TransportKind.FILE:
|
|
217
|
-
logger.debug("Creating file sink: %s", address)
|
|
218
|
-
file_handle = open(address, "wb") # noqa: SIM115 ownership transfers to sink
|
|
219
|
-
try:
|
|
220
|
-
return StreamFrameSink(file_handle)
|
|
221
|
-
except Exception:
|
|
222
|
-
file_handle.close()
|
|
223
|
-
raise
|
|
224
|
-
elif protocol.kind == TransportKind.SOCKET:
|
|
225
|
-
logger.debug("Creating Unix socket sink: %s", address)
|
|
226
|
-
return UnixSocketFrameSink.connect(address)
|
|
227
|
-
elif protocol.kind in (TransportKind.NNG_PUSH_IPC, TransportKind.NNG_PUSH_TCP):
|
|
228
|
-
logger.debug("Creating NNG pusher: %s", address)
|
|
229
|
-
return NngFrameSink.create_pusher(address)
|
|
230
|
-
elif protocol.kind in (TransportKind.NNG_PUB_IPC, TransportKind.NNG_PUB_TCP):
|
|
231
|
-
logger.debug("Creating NNG publisher: %s", address)
|
|
232
|
-
return NngFrameSink.create_publisher(address)
|
|
233
|
-
else:
|
|
234
|
-
raise ValueError(f"Unsupported protocol: {protocol}")
|
|
206
|
+
"""Create frame sink from protocol using FrameSinkFactory."""
|
|
207
|
+
return FrameSinkFactory.create(protocol, address, logger_instance=logger)
|
|
235
208
|
|
|
236
209
|
def close(self) -> None:
|
|
237
210
|
"""Release resources."""
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Factory for creating IFrameSink instances from parsed protocol and address.
|
|
3
|
+
|
|
4
|
+
Does NOT parse URLs - use SegmentationConnectionString or KeyPointsConnectionString for parsing.
|
|
5
|
+
|
|
6
|
+
This mirrors the C# FrameSinkFactory class for API consistency.
|
|
7
|
+
|
|
8
|
+
Usage:
|
|
9
|
+
from rocket_welder_sdk.high_level import FrameSinkFactory, SegmentationConnectionString
|
|
10
|
+
|
|
11
|
+
cs = SegmentationConnectionString.parse("socket:///tmp/seg.sock")
|
|
12
|
+
sink = FrameSinkFactory.create(cs.protocol, cs.address)
|
|
13
|
+
|
|
14
|
+
# For null sink (no output configured):
|
|
15
|
+
sink = FrameSinkFactory.create_null()
|
|
16
|
+
"""
|
|
17
|
+
|
|
18
|
+
from __future__ import annotations
|
|
19
|
+
|
|
20
|
+
import logging
|
|
21
|
+
from typing import TYPE_CHECKING, Optional
|
|
22
|
+
|
|
23
|
+
from .transport_protocol import TransportProtocol
|
|
24
|
+
|
|
25
|
+
if TYPE_CHECKING:
|
|
26
|
+
from rocket_welder_sdk.transport.frame_sink import IFrameSink
|
|
27
|
+
|
|
28
|
+
logger = logging.getLogger(__name__)
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
class FrameSinkFactory:
|
|
32
|
+
"""
|
|
33
|
+
Factory for creating IFrameSink instances from parsed protocol and address.
|
|
34
|
+
|
|
35
|
+
Does NOT parse URLs - use SegmentationConnectionString or KeyPointsConnectionString for parsing.
|
|
36
|
+
|
|
37
|
+
Mirrors C# RocketWelder.SDK.Transport.FrameSinkFactory.
|
|
38
|
+
"""
|
|
39
|
+
|
|
40
|
+
@staticmethod
|
|
41
|
+
def create(
|
|
42
|
+
protocol: Optional[TransportProtocol],
|
|
43
|
+
address: str,
|
|
44
|
+
*,
|
|
45
|
+
logger_instance: Optional[logging.Logger] = None,
|
|
46
|
+
) -> IFrameSink:
|
|
47
|
+
"""
|
|
48
|
+
Create a frame sink from parsed protocol and address.
|
|
49
|
+
|
|
50
|
+
Returns NullFrameSink if protocol is None (no URL specified).
|
|
51
|
+
|
|
52
|
+
Args:
|
|
53
|
+
protocol: The transport protocol (from ConnectionString.protocol), or None
|
|
54
|
+
address: The address (file path, socket path, or NNG address)
|
|
55
|
+
logger_instance: Optional logger for diagnostics
|
|
56
|
+
|
|
57
|
+
Returns:
|
|
58
|
+
An IFrameSink connected to the specified address, or NullFrameSink if protocol is None
|
|
59
|
+
|
|
60
|
+
Raises:
|
|
61
|
+
ValueError: If protocol is not supported for sinks
|
|
62
|
+
|
|
63
|
+
Example:
|
|
64
|
+
cs = SegmentationConnectionString.parse("socket:///tmp/seg.sock")
|
|
65
|
+
sink = FrameSinkFactory.create(cs.protocol, cs.address)
|
|
66
|
+
"""
|
|
67
|
+
from rocket_welder_sdk.transport import NngFrameSink, NullFrameSink
|
|
68
|
+
from rocket_welder_sdk.transport.stream_transport import StreamFrameSink
|
|
69
|
+
from rocket_welder_sdk.transport.unix_socket_transport import UnixSocketFrameSink
|
|
70
|
+
|
|
71
|
+
log = logger_instance or logger
|
|
72
|
+
|
|
73
|
+
# Handle None protocol - return null sink
|
|
74
|
+
if protocol is None:
|
|
75
|
+
log.debug("No protocol specified, using NullFrameSink")
|
|
76
|
+
return NullFrameSink.instance()
|
|
77
|
+
|
|
78
|
+
if not isinstance(protocol, TransportProtocol):
|
|
79
|
+
raise TypeError(f"Expected TransportProtocol, got {type(protocol).__name__}")
|
|
80
|
+
|
|
81
|
+
if protocol.is_file:
|
|
82
|
+
log.info("Creating file frame sink at: %s", address)
|
|
83
|
+
file_handle = open(address, "wb") # noqa: SIM115
|
|
84
|
+
return StreamFrameSink(file_handle)
|
|
85
|
+
|
|
86
|
+
if protocol.is_socket:
|
|
87
|
+
log.info("Creating Unix socket frame sink at: %s", address)
|
|
88
|
+
return UnixSocketFrameSink.connect(address)
|
|
89
|
+
|
|
90
|
+
if protocol.is_nng:
|
|
91
|
+
log.info("Creating NNG frame sink (%s) at: %s", protocol.schema, address)
|
|
92
|
+
|
|
93
|
+
if protocol.is_pub:
|
|
94
|
+
return NngFrameSink.create_publisher(address)
|
|
95
|
+
if protocol.is_push:
|
|
96
|
+
return NngFrameSink.create_pusher(address)
|
|
97
|
+
|
|
98
|
+
raise ValueError(
|
|
99
|
+
f"NNG protocol '{protocol.schema}' is not supported for sinks "
|
|
100
|
+
"(only pub and push are supported)"
|
|
101
|
+
)
|
|
102
|
+
|
|
103
|
+
raise ValueError(f"Transport protocol '{protocol.schema}' is not supported for frame sinks")
|
|
104
|
+
|
|
105
|
+
@staticmethod
|
|
106
|
+
def create_null() -> IFrameSink:
|
|
107
|
+
"""
|
|
108
|
+
Create a null frame sink that discards all data.
|
|
109
|
+
|
|
110
|
+
Use when no output URL is configured.
|
|
111
|
+
"""
|
|
112
|
+
from rocket_welder_sdk.transport import NullFrameSink
|
|
113
|
+
|
|
114
|
+
return NullFrameSink.instance()
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
# Re-export for convenience
|
|
118
|
+
__all__ = ["FrameSinkFactory"]
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/transport/__init__.py
RENAMED
|
@@ -4,7 +4,7 @@ Transport layer for RocketWelder SDK.
|
|
|
4
4
|
Provides transport-agnostic frame sink/source abstractions for protocols.
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
-
from .frame_sink import IFrameSink
|
|
7
|
+
from .frame_sink import IFrameSink, NullFrameSink
|
|
8
8
|
from .frame_source import IFrameSource
|
|
9
9
|
from .nng_transport import NngFrameSink, NngFrameSource
|
|
10
10
|
from .stream_transport import StreamFrameSink, StreamFrameSource
|
|
@@ -20,6 +20,7 @@ __all__ = [
|
|
|
20
20
|
"IFrameSource",
|
|
21
21
|
"NngFrameSink",
|
|
22
22
|
"NngFrameSource",
|
|
23
|
+
"NullFrameSink",
|
|
23
24
|
"StreamFrameSink",
|
|
24
25
|
"StreamFrameSource",
|
|
25
26
|
"TcpFrameSink",
|
|
@@ -75,3 +75,48 @@ class IFrameSink(ABC):
|
|
|
75
75
|
async def close_async(self) -> None:
|
|
76
76
|
"""Close the sink and release resources asynchronously."""
|
|
77
77
|
pass
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
class NullFrameSink(IFrameSink):
|
|
81
|
+
"""
|
|
82
|
+
A frame sink that discards all data.
|
|
83
|
+
|
|
84
|
+
Use when no output URL is configured or for testing.
|
|
85
|
+
Singleton pattern - use NullFrameSink.instance() to get the shared instance.
|
|
86
|
+
"""
|
|
87
|
+
|
|
88
|
+
_instance: "NullFrameSink | None" = None
|
|
89
|
+
|
|
90
|
+
def __new__(cls) -> "NullFrameSink":
|
|
91
|
+
if cls._instance is None:
|
|
92
|
+
cls._instance = super().__new__(cls)
|
|
93
|
+
return cls._instance
|
|
94
|
+
|
|
95
|
+
@classmethod
|
|
96
|
+
def instance(cls) -> "NullFrameSink":
|
|
97
|
+
"""Get the singleton instance."""
|
|
98
|
+
return cls()
|
|
99
|
+
|
|
100
|
+
def write_frame(self, frame_data: bytes) -> None:
|
|
101
|
+
"""Discards the frame data (no-op)."""
|
|
102
|
+
pass
|
|
103
|
+
|
|
104
|
+
async def write_frame_async(self, frame_data: bytes) -> None:
|
|
105
|
+
"""Discards the frame data (no-op)."""
|
|
106
|
+
pass
|
|
107
|
+
|
|
108
|
+
def flush(self) -> None:
|
|
109
|
+
"""No-op flush."""
|
|
110
|
+
pass
|
|
111
|
+
|
|
112
|
+
async def flush_async(self) -> None:
|
|
113
|
+
"""No-op flush."""
|
|
114
|
+
pass
|
|
115
|
+
|
|
116
|
+
def close(self) -> None:
|
|
117
|
+
"""No-op close (singleton, never actually closed)."""
|
|
118
|
+
pass
|
|
119
|
+
|
|
120
|
+
async def close_async(self) -> None:
|
|
121
|
+
"""No-op close (singleton, never actually closed)."""
|
|
122
|
+
pass
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk.egg-info/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rocket-welder-sdk
|
|
3
|
-
Version: 1.1.
|
|
3
|
+
Version: 1.1.36
|
|
4
4
|
Summary: High-performance video streaming SDK for RocketWelder services using ZeroBuffer IPC
|
|
5
5
|
Home-page: https://github.com/modelingevolution/rocket-welder-sdk
|
|
6
6
|
Author: ModelingEvolution
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk.egg-info/SOURCES.txt
RENAMED
|
@@ -30,6 +30,7 @@ rocket_welder_sdk/high_level/__init__.py
|
|
|
30
30
|
rocket_welder_sdk/high_level/client.py
|
|
31
31
|
rocket_welder_sdk/high_level/connection_strings.py
|
|
32
32
|
rocket_welder_sdk/high_level/data_context.py
|
|
33
|
+
rocket_welder_sdk/high_level/frame_sink_factory.py
|
|
33
34
|
rocket_welder_sdk/high_level/schema.py
|
|
34
35
|
rocket_welder_sdk/high_level/transport_protocol.py
|
|
35
36
|
rocket_welder_sdk/transport/__init__.py
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
1.1.35.dev13
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/connection_string.py
RENAMED
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/controllers.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/frame_metadata.py
RENAMED
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/gst_metadata.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/high_level/schema.py
RENAMED
|
File without changes
|
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/keypoints_protocol.py
RENAMED
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/opencv_controller.py
RENAMED
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/periodic_timer.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/segmentation_result.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/ui/__init__.py
RENAMED
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/ui/controls.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/ui/ui_service.py
RENAMED
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk/ui/value_types.py
RENAMED
|
File without changes
|
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk.egg-info/requires.txt
RENAMED
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/rocket_welder_sdk.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_keypoints_cross_platform.py
RENAMED
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_keypoints_protocol.py
RENAMED
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_rocket_welder_client.py
RENAMED
|
File without changes
|
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_segmentation_result.py
RENAMED
|
File without changes
|
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_transport_cross_platform.py
RENAMED
|
File without changes
|
|
File without changes
|
{rocket_welder_sdk-1.1.35.dev13 → rocket_welder_sdk-1.1.36}/tests/test_ui_service_happy_path.py
RENAMED
|
File without changes
|