nedo-vision-worker 1.1.2__py3-none-any.whl → 1.2.0__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.
- nedo_vision_worker/__init__.py +1 -1
- nedo_vision_worker/cli.py +197 -168
- nedo_vision_worker/database/DatabaseManager.py +3 -3
- nedo_vision_worker/doctor.py +1066 -386
- nedo_vision_worker/models/ai_model.py +35 -2
- nedo_vision_worker/protos/AIModelService_pb2.py +12 -10
- nedo_vision_worker/protos/AIModelService_pb2_grpc.py +1 -1
- nedo_vision_worker/protos/DatasetSourceService_pb2.py +2 -2
- nedo_vision_worker/protos/DatasetSourceService_pb2_grpc.py +1 -1
- nedo_vision_worker/protos/HumanDetectionService_pb2.py +2 -2
- nedo_vision_worker/protos/HumanDetectionService_pb2_grpc.py +1 -1
- nedo_vision_worker/protos/PPEDetectionService_pb2.py +2 -2
- nedo_vision_worker/protos/PPEDetectionService_pb2_grpc.py +1 -1
- nedo_vision_worker/protos/VisionWorkerService_pb2.py +2 -2
- nedo_vision_worker/protos/VisionWorkerService_pb2_grpc.py +1 -1
- nedo_vision_worker/protos/WorkerSourcePipelineService_pb2.py +2 -2
- nedo_vision_worker/protos/WorkerSourcePipelineService_pb2_grpc.py +1 -1
- nedo_vision_worker/protos/WorkerSourceService_pb2.py +2 -2
- nedo_vision_worker/protos/WorkerSourceService_pb2_grpc.py +1 -1
- nedo_vision_worker/services/AIModelClient.py +184 -160
- nedo_vision_worker/services/DirectDeviceToRTMPStreamer.py +534 -0
- nedo_vision_worker/services/GrpcClientBase.py +142 -108
- nedo_vision_worker/services/PPEDetectionClient.py +0 -7
- nedo_vision_worker/services/RestrictedAreaClient.py +0 -5
- nedo_vision_worker/services/SharedDirectDeviceClient.py +278 -0
- nedo_vision_worker/services/SharedVideoStreamServer.py +315 -0
- nedo_vision_worker/services/SystemWideDeviceCoordinator.py +236 -0
- nedo_vision_worker/services/VideoSharingDaemon.py +832 -0
- nedo_vision_worker/services/VideoStreamClient.py +30 -13
- nedo_vision_worker/services/WorkerSourceClient.py +1 -1
- nedo_vision_worker/services/WorkerSourcePipelineClient.py +28 -6
- nedo_vision_worker/services/WorkerSourceUpdater.py +30 -3
- nedo_vision_worker/util/VideoProbeUtil.py +222 -15
- nedo_vision_worker/worker/DataSyncWorker.py +1 -0
- nedo_vision_worker/worker/PipelineImageWorker.py +1 -1
- nedo_vision_worker/worker/VideoStreamWorker.py +27 -3
- nedo_vision_worker/worker/WorkerManager.py +2 -29
- nedo_vision_worker/worker_service.py +24 -11
- {nedo_vision_worker-1.1.2.dist-info → nedo_vision_worker-1.2.0.dist-info}/METADATA +1 -3
- {nedo_vision_worker-1.1.2.dist-info → nedo_vision_worker-1.2.0.dist-info}/RECORD +43 -38
- {nedo_vision_worker-1.1.2.dist-info → nedo_vision_worker-1.2.0.dist-info}/WHEEL +0 -0
- {nedo_vision_worker-1.1.2.dist-info → nedo_vision_worker-1.2.0.dist-info}/entry_points.txt +0 -0
- {nedo_vision_worker-1.1.2.dist-info → nedo_vision_worker-1.2.0.dist-info}/top_level.txt +0 -0
|
@@ -18,6 +18,7 @@ class WorkerManager:
|
|
|
18
18
|
self.config = config
|
|
19
19
|
self.worker_id = self.config.get("worker_id")
|
|
20
20
|
self.server_host = self.config.get("server_host")
|
|
21
|
+
self.server_port = self.config.get("server_port", 50051)
|
|
21
22
|
self.token = self.config.get("token")
|
|
22
23
|
|
|
23
24
|
if not self.worker_id:
|
|
@@ -29,7 +30,7 @@ class WorkerManager:
|
|
|
29
30
|
|
|
30
31
|
# Configure the centralized gRPC client manager
|
|
31
32
|
self.client_manager = GrpcClientManager.get_instance()
|
|
32
|
-
self.client_manager.configure(self.server_host)
|
|
33
|
+
self.client_manager.configure(self.server_host, self.server_port)
|
|
33
34
|
|
|
34
35
|
# Get shared client instance
|
|
35
36
|
self.status_client = self.client_manager.get_client(WorkerStatusClient)
|
|
@@ -46,16 +47,9 @@ class WorkerManager:
|
|
|
46
47
|
"""Start processing workers while keeping monitoring workers running."""
|
|
47
48
|
try:
|
|
48
49
|
self.video_stream_worker.start()
|
|
49
|
-
logger.info("🚀 [APP] Video Stream Worker started.")
|
|
50
|
-
|
|
51
50
|
self.pipeline_image_worker.start()
|
|
52
|
-
logger.info("🚀 [APP] Pipeline Image Worker started.")
|
|
53
|
-
|
|
54
51
|
self.data_sender_worker.start_updating()
|
|
55
|
-
logger.info("🚀 [APP] Data Sender Worker started updating.")
|
|
56
|
-
|
|
57
52
|
self.dataset_frame_worker.start()
|
|
58
|
-
logger.info("🚀 [APP] Dataset Frame Worker started.")
|
|
59
53
|
|
|
60
54
|
self._update_status("run")
|
|
61
55
|
|
|
@@ -66,16 +60,9 @@ class WorkerManager:
|
|
|
66
60
|
"""Stop processing workers while keeping monitoring workers running."""
|
|
67
61
|
try:
|
|
68
62
|
self.video_stream_worker.stop()
|
|
69
|
-
logger.info("🛑 [APP] Video Stream Worker stopped.")
|
|
70
|
-
|
|
71
63
|
self.pipeline_image_worker.stop()
|
|
72
|
-
logger.info("🛑 [APP] Pipeline Image Worker stopped.")
|
|
73
|
-
|
|
74
64
|
self.data_sender_worker.stop_updating()
|
|
75
|
-
logger.info("🛑 [APP] Data Sender Worker stopped updating.")
|
|
76
|
-
|
|
77
65
|
self.dataset_frame_worker.stop()
|
|
78
|
-
logger.info("🛑 [APP] Dataset Frame Worker stopped.")
|
|
79
66
|
|
|
80
67
|
self._update_status("stop")
|
|
81
68
|
|
|
@@ -87,16 +74,9 @@ class WorkerManager:
|
|
|
87
74
|
try:
|
|
88
75
|
# Start monitoring workers first
|
|
89
76
|
self.core_action_worker.start()
|
|
90
|
-
logging.info("🚀 [APP] Core Action Worker started and listening for commands.")
|
|
91
|
-
|
|
92
77
|
self.data_sync_worker.start()
|
|
93
|
-
logger.info("🚀 [APP] Data Sync Worker started.")
|
|
94
|
-
|
|
95
78
|
self.data_sender_worker.start()
|
|
96
|
-
logger.info("🚀 [APP] Data Sender Worker started.")
|
|
97
|
-
|
|
98
79
|
self.pipeline_action_worker.start()
|
|
99
|
-
logger.info("🚀 [APP] Pipeline Action Worker started.")
|
|
100
80
|
|
|
101
81
|
self._start_workers()
|
|
102
82
|
|
|
@@ -109,16 +89,9 @@ class WorkerManager:
|
|
|
109
89
|
"""Stop all workers including monitoring workers."""
|
|
110
90
|
try:
|
|
111
91
|
self.core_action_worker.stop()
|
|
112
|
-
logger.info("🛑 [APP] Core Action Worker stopped.")
|
|
113
|
-
|
|
114
92
|
self.data_sync_worker.stop()
|
|
115
|
-
logger.info("🛑 [APP] Data Sync Worker stopped.")
|
|
116
|
-
|
|
117
93
|
self.data_sender_worker.stop()
|
|
118
|
-
logger.info("🛑 [APP] Data Sender Worker stopped.")
|
|
119
|
-
|
|
120
94
|
self.pipeline_action_worker.stop()
|
|
121
|
-
logger.info("🛑 [APP] Pipeline Action Worker stopped.")
|
|
122
95
|
|
|
123
96
|
self._stop_workers()
|
|
124
97
|
|
|
@@ -4,11 +4,9 @@ import signal
|
|
|
4
4
|
import sys
|
|
5
5
|
import logging
|
|
6
6
|
|
|
7
|
-
# Set multiprocessing start method to 'spawn' for CUDA compatibility
|
|
8
7
|
try:
|
|
9
8
|
multiprocessing.set_start_method('spawn', force=True)
|
|
10
9
|
except RuntimeError:
|
|
11
|
-
# Method already set, ignore
|
|
12
10
|
pass
|
|
13
11
|
|
|
14
12
|
from .initializer.AppInitializer import AppInitializer
|
|
@@ -17,7 +15,7 @@ from .config.ConfigurationManager import ConfigurationManager
|
|
|
17
15
|
from .util.HardwareID import HardwareID
|
|
18
16
|
from .services.GrpcClientBase import set_auth_failure_callback
|
|
19
17
|
from .database.DatabaseManager import set_storage_path
|
|
20
|
-
from . import models
|
|
18
|
+
from . import models
|
|
21
19
|
|
|
22
20
|
|
|
23
21
|
class WorkerService:
|
|
@@ -31,8 +29,9 @@ class WorkerService:
|
|
|
31
29
|
server_host: str = "be.vision.sindika.co.id",
|
|
32
30
|
token: str = None,
|
|
33
31
|
system_usage_interval: int = 30,
|
|
34
|
-
rtmp_server: str =
|
|
32
|
+
rtmp_server: str = "rtmp://live.vision.sindika.co.id:1935/live",
|
|
35
33
|
storage_path: str = "data",
|
|
34
|
+
server_port: int = 50051,
|
|
36
35
|
):
|
|
37
36
|
"""
|
|
38
37
|
Initialize the worker service.
|
|
@@ -41,8 +40,9 @@ class WorkerService:
|
|
|
41
40
|
server_host: Manager server host (default: 'be.vision.sindika.co.id')
|
|
42
41
|
token: Authentication token for the worker (obtained from frontend)
|
|
43
42
|
system_usage_interval: Interval for system usage reporting (default: 30)
|
|
44
|
-
rtmp_server: RTMP server URL for video streaming
|
|
43
|
+
rtmp_server: RTMP server URL for video streaming
|
|
45
44
|
storage_path: Storage path for databases and files (default: 'data')
|
|
45
|
+
server_port: gRPC server port (default: 50051)
|
|
46
46
|
"""
|
|
47
47
|
# Set the global storage path before any database operations
|
|
48
48
|
set_storage_path(storage_path)
|
|
@@ -55,13 +55,10 @@ class WorkerService:
|
|
|
55
55
|
self.system_usage_interval = system_usage_interval
|
|
56
56
|
self.rtmp_server = rtmp_server
|
|
57
57
|
self.storage_path = storage_path
|
|
58
|
+
self.server_port = server_port
|
|
58
59
|
self.config = None
|
|
59
60
|
self.auth_failure_detected = False
|
|
60
61
|
|
|
61
|
-
# Validate required parameters
|
|
62
|
-
if not rtmp_server:
|
|
63
|
-
raise ValueError("RTMP server URL is required. Please provide --rtmp-server parameter.")
|
|
64
|
-
|
|
65
62
|
# Register authentication failure callback
|
|
66
63
|
set_auth_failure_callback(self._on_authentication_failure)
|
|
67
64
|
|
|
@@ -123,10 +120,13 @@ class WorkerService:
|
|
|
123
120
|
# Initialize with token
|
|
124
121
|
AppInitializer.initialize_configuration(hardware_id, server_host, self.token)
|
|
125
122
|
|
|
123
|
+
# Set server_port in config for first-time setup
|
|
124
|
+
ConfigurationManager.set_config("server_port", str(self.server_port))
|
|
125
|
+
|
|
126
126
|
# Get configuration
|
|
127
127
|
config = ConfigurationManager.get_all_configs()
|
|
128
128
|
else:
|
|
129
|
-
# Check if server_host or token has changed and update if needed
|
|
129
|
+
# Check if server_host, server_port, or token has changed and update if needed
|
|
130
130
|
config_updated = False
|
|
131
131
|
|
|
132
132
|
if config['server_host'] != server_host:
|
|
@@ -134,6 +134,12 @@ class WorkerService:
|
|
|
134
134
|
config_updated = True
|
|
135
135
|
self.logger.info(f"✅ [APP] Updated server host to: {server_host}")
|
|
136
136
|
|
|
137
|
+
# Check if server_port has changed and update if needed
|
|
138
|
+
if str(config.get('server_port')) != str(self.server_port):
|
|
139
|
+
ConfigurationManager.set_config("server_port", str(self.server_port))
|
|
140
|
+
config_updated = True
|
|
141
|
+
self.logger.info(f"✅ [APP] Updated server port to: {self.server_port}")
|
|
142
|
+
|
|
137
143
|
# Check if token has changed and update if needed
|
|
138
144
|
if self.token and config.get('token') != self.token:
|
|
139
145
|
ConfigurationManager.set_config("token", self.token)
|
|
@@ -244,6 +250,12 @@ def main():
|
|
|
244
250
|
default="be.vision.sindika.co.id",
|
|
245
251
|
help="Manager server host (default: be.vision.sindika.co.id)"
|
|
246
252
|
)
|
|
253
|
+
parser.add_argument(
|
|
254
|
+
"--server-port",
|
|
255
|
+
type=int,
|
|
256
|
+
default=50051,
|
|
257
|
+
help="gRPC server port (default: 50051)"
|
|
258
|
+
)
|
|
247
259
|
parser.add_argument(
|
|
248
260
|
"--system-usage-interval",
|
|
249
261
|
type=int,
|
|
@@ -255,10 +267,11 @@ def main():
|
|
|
255
267
|
# Create and run worker service
|
|
256
268
|
service = WorkerService(
|
|
257
269
|
server_host=args.server_host,
|
|
270
|
+
server_port=args.server_port,
|
|
258
271
|
system_usage_interval=args.system_usage_interval
|
|
259
272
|
)
|
|
260
273
|
service.run()
|
|
261
274
|
|
|
262
275
|
|
|
263
276
|
if __name__ == "__main__":
|
|
264
|
-
main()
|
|
277
|
+
main()
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: nedo-vision-worker
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.2.0
|
|
4
4
|
Summary: Nedo Vision Worker Service Library for AI Vision Processing
|
|
5
5
|
Author-email: Willy Achmat Fauzi <willy.achmat@gmail.com>
|
|
6
6
|
Maintainer-email: Willy Achmat Fauzi <willy.achmat@gmail.com>
|
|
@@ -179,10 +179,8 @@ This will check:
|
|
|
179
179
|
- ✅ Python version and dependencies
|
|
180
180
|
- ✅ FFmpeg installation and functionality
|
|
181
181
|
- ✅ OpenCV installation and optimizations
|
|
182
|
-
- ✅ gRPC connectivity
|
|
183
182
|
- ✅ NVIDIA GPU support and capabilities
|
|
184
183
|
- ✅ Storage permissions
|
|
185
|
-
- ✅ Network connectivity
|
|
186
184
|
|
|
187
185
|
## 📖 Quick Start
|
|
188
186
|
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
nedo_vision_worker/__init__.py,sha256=
|
|
2
|
-
nedo_vision_worker/cli.py,sha256=
|
|
3
|
-
nedo_vision_worker/doctor.py,sha256=
|
|
4
|
-
nedo_vision_worker/worker_service.py,sha256=
|
|
1
|
+
nedo_vision_worker/__init__.py,sha256=8AbQ3PK5CGdbnFRLBVzw8dcVQNHlNS_bBiqyygqIJ-Q,203
|
|
2
|
+
nedo_vision_worker/cli.py,sha256=d7oDe3wJMfXd-ddStnyFASkLU0F3VemFsD9i0K7CYqU,7457
|
|
3
|
+
nedo_vision_worker/doctor.py,sha256=uZ-NM_PfaTG5CG5OWFnl7cEsOTBWMGXNuKWuTV07deg,47228
|
|
4
|
+
nedo_vision_worker/worker_service.py,sha256=rXUVmyxcJPGhQEZ4UQvjQS5UqlnLBYudHQZCj0dQDxo,10421
|
|
5
5
|
nedo_vision_worker/config/ConfigurationManager.py,sha256=QrQaQ9Cdjpkcr2JE_miyrWJIZmMgZwJYBz-wE45Zzes,8011
|
|
6
6
|
nedo_vision_worker/config/__init__.py,sha256=Nqnn8clbgv-5l0PgxcTOldg8mkMKrFn4TvPL-rYUUGg,1
|
|
7
|
-
nedo_vision_worker/database/DatabaseManager.py,sha256=
|
|
7
|
+
nedo_vision_worker/database/DatabaseManager.py,sha256=BZAK3VzbAo_xWUNCni4O8rCLzCjY7mE02PI2HlEpqg4,8505
|
|
8
8
|
nedo_vision_worker/database/__init__.py,sha256=Nqnn8clbgv-5l0PgxcTOldg8mkMKrFn4TvPL-rYUUGg,1
|
|
9
9
|
nedo_vision_worker/initializer/AppInitializer.py,sha256=iGw8-7Eg2aNT-nFaxiRIhWHU8iwecLuwuvjWlt1-V0Y,3163
|
|
10
10
|
nedo_vision_worker/initializer/__init__.py,sha256=Nqnn8clbgv-5l0PgxcTOldg8mkMKrFn4TvPL-rYUUGg,1
|
|
11
11
|
nedo_vision_worker/models/__init__.py,sha256=6ZH2W1Jcy4o6xBPqFPcyxRU2UJ5Zvw_kfO38yLLGtHA,796
|
|
12
|
-
nedo_vision_worker/models/ai_model.py,sha256=
|
|
12
|
+
nedo_vision_worker/models/ai_model.py,sha256=9muyZL9AxtX417-tYUiw8bgvFPtqdXgEAq-hm_mLxGY,2277
|
|
13
13
|
nedo_vision_worker/models/auth.py,sha256=hBMchk6ATy8Wc3fUWLpYRbeNiteb43t2hIub0cCFap8,456
|
|
14
14
|
nedo_vision_worker/models/config.py,sha256=xrEYCqtchKD3x2XMwtkDXlKdqml3GgSbjoG00lJJtfc,260
|
|
15
15
|
nedo_vision_worker/models/dataset_source.py,sha256=kNp47WZKEVP4mFNQmKhaHSuuDkWCpLAFcSgrU0iTNok,1333
|
|
@@ -23,20 +23,20 @@ nedo_vision_worker/models/worker_source_pipeline.py,sha256=xCD4i9pHr8Qy5B_h1dH0Q
|
|
|
23
23
|
nedo_vision_worker/models/worker_source_pipeline_config.py,sha256=dGYTpcTFFu6pmGBufuWBHjv3Xs4RGAQwZn6jp6Ondvs,876
|
|
24
24
|
nedo_vision_worker/models/worker_source_pipeline_debug.py,sha256=6S7TkN37FrAT4VwsEB38DWSad7QfvNhsOGtSEK8D1Qs,594
|
|
25
25
|
nedo_vision_worker/models/worker_source_pipeline_detection.py,sha256=p6CJsiVCKprTYrNxJsiTB8njXdHkjZKVEyBceRVE6fY,560
|
|
26
|
-
nedo_vision_worker/protos/AIModelService_pb2.py,sha256=
|
|
27
|
-
nedo_vision_worker/protos/AIModelService_pb2_grpc.py,sha256=
|
|
28
|
-
nedo_vision_worker/protos/DatasetSourceService_pb2.py,sha256=
|
|
29
|
-
nedo_vision_worker/protos/DatasetSourceService_pb2_grpc.py,sha256=
|
|
30
|
-
nedo_vision_worker/protos/HumanDetectionService_pb2.py,sha256=
|
|
31
|
-
nedo_vision_worker/protos/HumanDetectionService_pb2_grpc.py,sha256=
|
|
32
|
-
nedo_vision_worker/protos/PPEDetectionService_pb2.py,sha256=
|
|
33
|
-
nedo_vision_worker/protos/PPEDetectionService_pb2_grpc.py,sha256
|
|
34
|
-
nedo_vision_worker/protos/VisionWorkerService_pb2.py,sha256=
|
|
35
|
-
nedo_vision_worker/protos/VisionWorkerService_pb2_grpc.py,sha256=
|
|
36
|
-
nedo_vision_worker/protos/WorkerSourcePipelineService_pb2.py,sha256=
|
|
37
|
-
nedo_vision_worker/protos/WorkerSourcePipelineService_pb2_grpc.py,sha256=
|
|
38
|
-
nedo_vision_worker/protos/WorkerSourceService_pb2.py,sha256=
|
|
39
|
-
nedo_vision_worker/protos/WorkerSourceService_pb2_grpc.py,sha256=
|
|
26
|
+
nedo_vision_worker/protos/AIModelService_pb2.py,sha256=0S0fUgyMHmfS6FVGuZ2Okz71f61vPXLoU8tosIzf7sI,3545
|
|
27
|
+
nedo_vision_worker/protos/AIModelService_pb2_grpc.py,sha256=2uxhbAQDmAAkuuanYkfGtwmCdSVzob_AvcKh9M248hM,6076
|
|
28
|
+
nedo_vision_worker/protos/DatasetSourceService_pb2.py,sha256=plHyTJvGqWCtup2vI7Y_NocITV-q47aCV3xddgwrhRQ,3362
|
|
29
|
+
nedo_vision_worker/protos/DatasetSourceService_pb2_grpc.py,sha256=Wuoj7bPzv6sMO_78Ruef_A8PcBO8WNLsYdDGR6zYG5s,6265
|
|
30
|
+
nedo_vision_worker/protos/HumanDetectionService_pb2.py,sha256=ltufKuBaXkOChbqOUVvbcRNxNTiaEj204QqktBcMstU,3277
|
|
31
|
+
nedo_vision_worker/protos/HumanDetectionService_pb2_grpc.py,sha256=5yIOEcldBQJ1Ep_S-piesAx53TtElNMzx2Z7qwoett8,6260
|
|
32
|
+
nedo_vision_worker/protos/PPEDetectionService_pb2.py,sha256=c1v864-pcMiHekQU7kxqV0wQg-p8zloDPVegF8JHd5c,3582
|
|
33
|
+
nedo_vision_worker/protos/PPEDetectionService_pb2_grpc.py,sha256=SKn2BOHaX-ztD97l6bfngvAeJiy-hnjphzNI7CfAvtw,6186
|
|
34
|
+
nedo_vision_worker/protos/VisionWorkerService_pb2.py,sha256=d88SWd1orMP--zvhuJCFpGhadoxeC0FPprh6zZPt4pE,7146
|
|
35
|
+
nedo_vision_worker/protos/VisionWorkerService_pb2_grpc.py,sha256=eV-kC0pPalm0di_yXlnHqv-6AhRWqJmyveTiFfUplLQ,18937
|
|
36
|
+
nedo_vision_worker/protos/WorkerSourcePipelineService_pb2.py,sha256=61xX4pKm_eBDdgpPpQtLcB45cDOD0ON6n5syE1_iKrM,7058
|
|
37
|
+
nedo_vision_worker/protos/WorkerSourcePipelineService_pb2_grpc.py,sha256=Bhq1kWbktPiYpIbmvzpfGapR1u_DEXawEaofJ7L_Be8,15384
|
|
38
|
+
nedo_vision_worker/protos/WorkerSourceService_pb2.py,sha256=CcXys0UCBwmjROOf0VdoN6oJKNopM1LvJ8owdrlA7z0,3926
|
|
39
|
+
nedo_vision_worker/protos/WorkerSourceService_pb2_grpc.py,sha256=23Zj3WSogfhmp_YK4z_DE3Bzs-N-X17SXL9A8u1rYus,8314
|
|
40
40
|
nedo_vision_worker/protos/__init__.py,sha256=Nqnn8clbgv-5l0PgxcTOldg8mkMKrFn4TvPL-rYUUGg,1
|
|
41
41
|
nedo_vision_worker/repositories/AIModelRepository.py,sha256=35cQ2EnJvMdArewumPrVIaiwueGy6cXU_g5J1Qcj6_Y,1415
|
|
42
42
|
nedo_vision_worker/repositories/DatasetSourceRepository.py,sha256=MOUbXY1-7WUPhY15aMpdXl6rl0afSvu3Cq8jNtp9nzM,8595
|
|
@@ -47,21 +47,26 @@ nedo_vision_worker/repositories/WorkerSourcePipelineDetectionRepository.py,sha25
|
|
|
47
47
|
nedo_vision_worker/repositories/WorkerSourcePipelineRepository.py,sha256=xfmEvgnyt-DdfSApGyFfy0H0dXjFFkjeo4LMr0fVFXU,10053
|
|
48
48
|
nedo_vision_worker/repositories/WorkerSourceRepository.py,sha256=Rw9wJ27TETECCNwDxQu19KaKipQ_XHU0JJP6-0rzgmU,1982
|
|
49
49
|
nedo_vision_worker/repositories/__init__.py,sha256=Nqnn8clbgv-5l0PgxcTOldg8mkMKrFn4TvPL-rYUUGg,1
|
|
50
|
-
nedo_vision_worker/services/AIModelClient.py,sha256=
|
|
50
|
+
nedo_vision_worker/services/AIModelClient.py,sha256=lxRNax6FR-pV0G1NpJnlaqjbQeu3kRolIUNSw1RkoZA,15406
|
|
51
51
|
nedo_vision_worker/services/ConnectionInfoClient.py,sha256=toC9zuY2Hrx1Cwq8Gycy_iFlaG1DvFT4qewlLlitpEQ,2214
|
|
52
52
|
nedo_vision_worker/services/DatasetSourceClient.py,sha256=O5a7onxFl0z47zXaMXWxHAMPuuc-i_vzkd2w5fwrukc,3319
|
|
53
|
+
nedo_vision_worker/services/DirectDeviceToRTMPStreamer.py,sha256=M5ei0cd3_KDhHZp6EkrOowhAY-hAHfAQh9YDVjQtbQI,22278
|
|
53
54
|
nedo_vision_worker/services/FileToRTMPServer.py,sha256=yUJxrouoTLSq9XZ88dhDYhP-px10jLoHopkPoy4lQxk,2663
|
|
54
|
-
nedo_vision_worker/services/GrpcClientBase.py,sha256=
|
|
55
|
+
nedo_vision_worker/services/GrpcClientBase.py,sha256=9tNOGFfcm1Vy7ELgiA78KmGYCT13d4nBzpZkRkhsFKI,7385
|
|
55
56
|
nedo_vision_worker/services/GrpcClientManager.py,sha256=DLXekmxlQogLo8V9-TNDXtyHT_UG-BaggqwsIups55k,5568
|
|
56
57
|
nedo_vision_worker/services/ImageUploadClient.py,sha256=T353YsRfm74G7Mh-eWr5nvdQHXTfpKwHJFmNW8HyjT8,3019
|
|
57
|
-
nedo_vision_worker/services/PPEDetectionClient.py,sha256=
|
|
58
|
+
nedo_vision_worker/services/PPEDetectionClient.py,sha256=CC-b0LRAgrftfIKp6TFKpeBkTYefe-C6Z1oz_X3HArQ,4345
|
|
58
59
|
nedo_vision_worker/services/RTSPtoRTMPStreamer.py,sha256=hkPRX6iGxUtivsOA36JWBopHEd1RlmgIP8SLqN4d2TU,3863
|
|
59
|
-
nedo_vision_worker/services/RestrictedAreaClient.py,sha256
|
|
60
|
+
nedo_vision_worker/services/RestrictedAreaClient.py,sha256=AE9SOcVQca4zn5V96boho56EgN5BCIpV-8grvFBBnGo,3853
|
|
61
|
+
nedo_vision_worker/services/SharedDirectDeviceClient.py,sha256=dylMhqpMsfK_UKLWIVL-ApJRP4g-NCP_55xvlGYBiwo,10760
|
|
62
|
+
nedo_vision_worker/services/SharedVideoStreamServer.py,sha256=WMKVxkzMoyfbgYiJ0fQOT-Ujz9btz6FLlaDP738yfoY,11601
|
|
60
63
|
nedo_vision_worker/services/SystemUsageClient.py,sha256=PbRuwDWKnMarcnkGtOKfYB5nA-3DeKv7V5_hZr8EDEo,3200
|
|
61
|
-
nedo_vision_worker/services/
|
|
62
|
-
nedo_vision_worker/services/
|
|
63
|
-
nedo_vision_worker/services/
|
|
64
|
-
nedo_vision_worker/services/
|
|
64
|
+
nedo_vision_worker/services/SystemWideDeviceCoordinator.py,sha256=9zBJMCbTMZS7gwN67rFpoUiTr82El2rpIO7DKFzeMjM,9417
|
|
65
|
+
nedo_vision_worker/services/VideoSharingDaemon.py,sha256=hYMjUIKNUVT1qSxuUuHN-7Bd85MDkxfqslxDLe2PBYQ,29721
|
|
66
|
+
nedo_vision_worker/services/VideoStreamClient.py,sha256=jSStEGjIHId4GseL-eE7FNGYU1CXgLaSjOm5CFVliPE,6828
|
|
67
|
+
nedo_vision_worker/services/WorkerSourceClient.py,sha256=vDZeCuHL5QQ2-knZ4TOSA59jzmbbThGIwFKKLEZ72Ws,9198
|
|
68
|
+
nedo_vision_worker/services/WorkerSourcePipelineClient.py,sha256=rkKTPDWDgXhutMTqo_qvGvx1uVkhHcgi-3mJMywub8s,17705
|
|
69
|
+
nedo_vision_worker/services/WorkerSourceUpdater.py,sha256=MsUsKL75sXj2odCcbupkFDW0KXg9LSu6-67iMWpYkHs,7679
|
|
65
70
|
nedo_vision_worker/services/WorkerStatusClient.py,sha256=7kC5EZjEBwWtHOE6UQ29OPCpYnv_6HSuH7Tc0alK_2Q,2531
|
|
66
71
|
nedo_vision_worker/services/__init__.py,sha256=Nqnn8clbgv-5l0PgxcTOldg8mkMKrFn4TvPL-rYUUGg,1
|
|
67
72
|
nedo_vision_worker/util/HardwareID.py,sha256=rSW8-6stm7rjXEdkYGqXMUn56gyw62YiWnSwZQVCCLM,4315
|
|
@@ -69,24 +74,24 @@ nedo_vision_worker/util/ImageUploader.py,sha256=2xipN3fwpKgFmbvoGIdElpGn5ARJyrgR
|
|
|
69
74
|
nedo_vision_worker/util/Networking.py,sha256=uOtL8HkKZXJp02ZZIHWYMAvAsaYb7BsAPTncfdvJx2c,3241
|
|
70
75
|
nedo_vision_worker/util/PlatformDetector.py,sha256=-iLPrKs7hp_oltkCI3hESJQkC2uRyu1-8mAbZrvgWx0,1501
|
|
71
76
|
nedo_vision_worker/util/SystemMonitor.py,sha256=2MWYaEXoL91UANT_-SuDWrFMq1ajPorh8co6Py9PV_c,11300
|
|
72
|
-
nedo_vision_worker/util/VideoProbeUtil.py,sha256=
|
|
77
|
+
nedo_vision_worker/util/VideoProbeUtil.py,sha256=whgvZvSeO5y7IG3E1mxn5KRKYqxyrGtLJowV3nHgwYA,13181
|
|
73
78
|
nedo_vision_worker/util/__init__.py,sha256=Nqnn8clbgv-5l0PgxcTOldg8mkMKrFn4TvPL-rYUUGg,1
|
|
74
79
|
nedo_vision_worker/worker/CoreActionWorker.py,sha256=lb7zPY3yui6I3F4rX4Ii7JwpWZahLEO72rh3iWOgFmg,5441
|
|
75
80
|
nedo_vision_worker/worker/DataSenderWorker.py,sha256=o32MT28EqYwAPmd9NKhX3rfNlDKekNOI2n8mZ6s8CpU,7162
|
|
76
|
-
nedo_vision_worker/worker/DataSyncWorker.py,sha256=
|
|
81
|
+
nedo_vision_worker/worker/DataSyncWorker.py,sha256=WvYfi3bG4mOKHU09J_MavfjFPrVgmxrrZYtrlQ-bnio,6265
|
|
77
82
|
nedo_vision_worker/worker/DatasetFrameSender.py,sha256=1SFYj8LJFNi-anBTapsbq8U_NGMM7mnoMKg9NeFAHys,8087
|
|
78
83
|
nedo_vision_worker/worker/DatasetFrameWorker.py,sha256=Ni5gPeDPk9Rz4_cbg63u7Y6LVw_-Bz24OvfeY-6Yp44,19320
|
|
79
84
|
nedo_vision_worker/worker/PPEDetectionManager.py,sha256=fAolWlrsY5SQAWygvjNBNU56IlC0HLlhPgpz7shL-gk,3588
|
|
80
85
|
nedo_vision_worker/worker/PipelineActionWorker.py,sha256=xgvryjKtEsMj4BKqWzDIaK_lFny-DfMCj5Y2DxHnWww,5651
|
|
81
|
-
nedo_vision_worker/worker/PipelineImageWorker.py,sha256=
|
|
86
|
+
nedo_vision_worker/worker/PipelineImageWorker.py,sha256=c8_cTasgN-NJABD_qHSRb3hatg81sY_rV3lAAnuW49U,5627
|
|
82
87
|
nedo_vision_worker/worker/RabbitMQListener.py,sha256=9gR49MDplgpyb-D5HOH0K77-DJQFvhS2E7biL92SjSU,6950
|
|
83
88
|
nedo_vision_worker/worker/RestrictedAreaManager.py,sha256=3yoXgQ459tV1bOa5choEzR9gE6LklrtHR_e0472U3L0,3521
|
|
84
89
|
nedo_vision_worker/worker/SystemUsageManager.py,sha256=StutV4UyLUfduYfK20de4SbPd7wqkR7io0gsOajxWSU,4509
|
|
85
|
-
nedo_vision_worker/worker/VideoStreamWorker.py,sha256=
|
|
86
|
-
nedo_vision_worker/worker/WorkerManager.py,sha256=
|
|
90
|
+
nedo_vision_worker/worker/VideoStreamWorker.py,sha256=5n6v1PNO7IB-jj_McALLkUP-cBjJoIEw4UiSAs3vTb0,7606
|
|
91
|
+
nedo_vision_worker/worker/WorkerManager.py,sha256=T0vMfhOd7YesgQ9o2w6soeJ6n9chUAcuwcGe7p31xr0,5298
|
|
87
92
|
nedo_vision_worker/worker/__init__.py,sha256=Nqnn8clbgv-5l0PgxcTOldg8mkMKrFn4TvPL-rYUUGg,1
|
|
88
|
-
nedo_vision_worker-1.
|
|
89
|
-
nedo_vision_worker-1.
|
|
90
|
-
nedo_vision_worker-1.
|
|
91
|
-
nedo_vision_worker-1.
|
|
92
|
-
nedo_vision_worker-1.
|
|
93
|
+
nedo_vision_worker-1.2.0.dist-info/METADATA,sha256=uj39xqzh3cXjTI02_xRZpZVPieB8PjqLUxIOvEbT12M,14591
|
|
94
|
+
nedo_vision_worker-1.2.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
95
|
+
nedo_vision_worker-1.2.0.dist-info/entry_points.txt,sha256=LrglS-8nCi8C_PL_pa6uxdgCe879hBETHDVXAckvs-8,60
|
|
96
|
+
nedo_vision_worker-1.2.0.dist-info/top_level.txt,sha256=vgilhlkyD34YsEKkaBabmhIpcKSvF3XpzD2By68L-XI,19
|
|
97
|
+
nedo_vision_worker-1.2.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|