matrice-streaming 0.1.59__tar.gz → 0.1.61__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.
Files changed (71) hide show
  1. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/PKG-INFO +1 -1
  2. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/matrice_streaming.egg-info/PKG-INFO +1 -1
  3. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/matrice_streaming.egg-info/SOURCES.txt +2 -0
  4. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/__init__.py +26 -2
  5. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/async_camera_worker.py +2 -2
  6. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/async_ffmpeg_worker.py +2 -2
  7. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/ffmpeg_camera_streamer.py +1 -1
  8. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/ffmpeg_worker_manager.py +1 -1
  9. matrice_streaming-0.1.61/src/matrice_streaming/streaming_gateway/camera_streamer/nvdec.py +961 -0
  10. matrice_streaming-0.1.61/src/matrice_streaming/streaming_gateway/camera_streamer/nvdec_worker_manager.py +380 -0
  11. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/worker_manager.py +1 -1
  12. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/streaming_gateway.py +183 -12
  13. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/LICENSE.txt +0 -0
  14. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/README.md +0 -0
  15. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/matrice_streaming.egg-info/dependency_links.txt +0 -0
  16. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/matrice_streaming.egg-info/not-zip-safe +0 -0
  17. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/matrice_streaming.egg-info/top_level.txt +0 -0
  18. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/pyproject.toml +0 -0
  19. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/setup.cfg +0 -0
  20. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/setup.py +0 -0
  21. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/__init__.py +0 -0
  22. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/client/__init__.py +0 -0
  23. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/client/client.py +0 -0
  24. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/client/client_utils.py +0 -0
  25. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/deployment/__init__.py +0 -0
  26. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/deployment/camera_manager.py +0 -0
  27. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/deployment/deployment.py +0 -0
  28. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/deployment/inference_pipeline.py +0 -0
  29. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/deployment/streaming_gateway_manager.py +0 -0
  30. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/deployment/todo.txt +0 -0
  31. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/py.typed +0 -0
  32. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/__init__.py +0 -0
  33. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/ARCHITECTURE.md +0 -0
  34. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/camera_streamer.py +0 -0
  35. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/device_detection.py +0 -0
  36. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/encoder_manager.py +0 -0
  37. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/encoding_pool_manager.py +0 -0
  38. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/ffmpeg_config.py +0 -0
  39. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/frame_processor.py +0 -0
  40. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/gstreamer_camera_streamer.py +0 -0
  41. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/gstreamer_worker.py +0 -0
  42. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/gstreamer_worker_manager.py +0 -0
  43. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/message_builder.py +0 -0
  44. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/platform_pipelines.py +0 -0
  45. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/retry_manager.py +0 -0
  46. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/stream_statistics.py +0 -0
  47. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/camera_streamer/video_capture_manager.py +0 -0
  48. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/debug/README.md +0 -0
  49. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/debug/__init__.py +0 -0
  50. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/debug/benchmark.py +0 -0
  51. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/debug/debug_gstreamer_gateway.py +0 -0
  52. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/debug/debug_stream_backend.py +0 -0
  53. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/debug/debug_streaming_gateway.py +0 -0
  54. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/debug/debug_utils.py +0 -0
  55. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/debug/example_debug_streaming.py +0 -0
  56. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/debug/test_videoplayback.py +0 -0
  57. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/dynamic_camera_manager.py +0 -0
  58. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/event_listener.py +0 -0
  59. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/metrics_reporter.py +0 -0
  60. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/streaming_action.py +0 -0
  61. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/streaming_gateway_utils.py +0 -0
  62. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/src/matrice_streaming/streaming_gateway/streaming_status_listener.py +0 -0
  63. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/tests/test_async_infrastructure.py +0 -0
  64. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/tests/test_batch_auto_calculation.py +0 -0
  65. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/tests/test_batching_verification.py +0 -0
  66. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/tests/test_e2e_production.py +0 -0
  67. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/tests/test_flatten_binary.py +0 -0
  68. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/tests/test_gstreamer_integration.py +0 -0
  69. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/tests/test_msgpack_fix.py +0 -0
  70. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/tests/test_phase1_unit.py +0 -0
  71. {matrice_streaming-0.1.59 → matrice_streaming-0.1.61}/tests/test_phase2_scaling.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: matrice_streaming
3
- Version: 0.1.59
3
+ Version: 0.1.61
4
4
  Summary: Common server utilities for Matrice.ai services
5
5
  Author-email: "Matrice.ai" <dipendra@matrice.ai>
6
6
  License-Expression: MIT
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: matrice_streaming
3
- Version: 0.1.59
3
+ Version: 0.1.61
4
4
  Summary: Common server utilities for Matrice.ai services
5
5
  Author-email: "Matrice.ai" <dipendra@matrice.ai>
6
6
  License-Expression: MIT
@@ -42,6 +42,8 @@ src/matrice_streaming/streaming_gateway/camera_streamer/gstreamer_camera_streame
42
42
  src/matrice_streaming/streaming_gateway/camera_streamer/gstreamer_worker.py
43
43
  src/matrice_streaming/streaming_gateway/camera_streamer/gstreamer_worker_manager.py
44
44
  src/matrice_streaming/streaming_gateway/camera_streamer/message_builder.py
45
+ src/matrice_streaming/streaming_gateway/camera_streamer/nvdec.py
46
+ src/matrice_streaming/streaming_gateway/camera_streamer/nvdec_worker_manager.py
45
47
  src/matrice_streaming/streaming_gateway/camera_streamer/platform_pipelines.py
46
48
  src/matrice_streaming/streaming_gateway/camera_streamer/retry_manager.py
47
49
  src/matrice_streaming/streaming_gateway/camera_streamer/stream_statistics.py
@@ -26,14 +26,33 @@ except (ImportError, ValueError):
26
26
  GStreamerPipeline = None
27
27
  GStreamerAsyncWorker = None
28
28
  GStreamerWorkerManager = None
29
-
29
+
30
30
  def is_gstreamer_available():
31
31
  return False
32
32
 
33
+ # NVDEC components (optional - graceful import)
34
+ try:
35
+ from .nvdec_worker_manager import (
36
+ NVDECWorkerManager,
37
+ is_nvdec_available,
38
+ get_available_gpu_count,
39
+ )
40
+ NVDEC_AVAILABLE = is_nvdec_available()
41
+ except ImportError:
42
+ # NVDEC not available (requires CuPy, PyNvVideoCodec)
43
+ NVDEC_AVAILABLE = False
44
+ NVDECWorkerManager = None
45
+
46
+ def is_nvdec_available():
47
+ return False
48
+
49
+ def get_available_gpu_count():
50
+ return 1
51
+
33
52
  __all__ = [
34
53
  # Original components
35
54
  "CameraStreamer",
36
- "WorkerManager",
55
+ "WorkerManager",
37
56
  "AsyncCameraWorker",
38
57
  # GStreamer components
39
58
  "GStreamerCameraStreamer",
@@ -43,4 +62,9 @@ __all__ = [
43
62
  "GStreamerWorkerManager",
44
63
  "is_gstreamer_available",
45
64
  "GSTREAMER_AVAILABLE",
65
+ # NVDEC components
66
+ "NVDECWorkerManager",
67
+ "is_nvdec_available",
68
+ "get_available_gpu_count",
69
+ "NVDEC_AVAILABLE",
46
70
  ]
@@ -94,7 +94,7 @@ class AsyncCameraWorker:
94
94
  # SHM_MODE: New parameters for shared memory architecture
95
95
  # ================================================================
96
96
  use_shm: bool = True, # Feature flag (default: existing JPEG behavior)
97
- shm_slot_count: int = 300, # Ring buffer size per camera
97
+ shm_slot_count: int = 1000, # Ring buffer size per camera (increased for consumer lag)
98
98
  shm_frame_format: str = "BGR", # "BGR", "RGB", or "NV12"
99
99
  # ================================================================
100
100
  # PERFORMANCE: New parameters for optimized frame capture
@@ -1308,7 +1308,7 @@ def run_async_worker(
1308
1308
  # SHM_MODE: New parameters for shared memory architecture
1309
1309
  # ================================================================
1310
1310
  use_shm: bool = True,
1311
- shm_slot_count: int = 300,
1311
+ shm_slot_count: int = 1000,
1312
1312
  shm_frame_format: str = "BGR",
1313
1313
  # ================================================================
1314
1314
  # PERFORMANCE: New parameters for optimized frame capture
@@ -80,7 +80,7 @@ class AsyncFFmpegWorker:
80
80
  ffmpeg_config: Optional[FFmpegConfig] = None,
81
81
  # SHM mode options
82
82
  use_shm: bool = False,
83
- shm_slot_count: int = 300,
83
+ shm_slot_count: int = 1000,
84
84
  shm_frame_format: str = "BGR",
85
85
  # Performance options
86
86
  pin_cpu_affinity: bool = True,
@@ -901,7 +901,7 @@ def run_ffmpeg_worker(
901
901
  response_queue: multiprocessing.Queue = None,
902
902
  ffmpeg_config_dict: Optional[Dict[str, Any]] = None,
903
903
  use_shm: bool = False,
904
- shm_slot_count: int = 300,
904
+ shm_slot_count: int = 1000,
905
905
  shm_frame_format: str = "BGR",
906
906
  pin_cpu_affinity: bool = True,
907
907
  total_workers: int = 1,
@@ -312,7 +312,7 @@ class FFmpegCameraStreamer:
312
312
  ffmpeg_config: Optional[FFmpegConfig] = None,
313
313
  # SHM mode options
314
314
  use_shm: bool = False,
315
- shm_slot_count: int = 300,
315
+ shm_slot_count: int = 1000,
316
316
  shm_frame_format: str = "BGR",
317
317
  # Frame optimizer options
318
318
  frame_optimizer_enabled: bool = True,
@@ -35,7 +35,7 @@ class FFmpegWorkerManager:
35
35
  ffmpeg_config: Optional[FFmpegConfig] = None,
36
36
  # SHM options
37
37
  use_shm: bool = False,
38
- shm_slot_count: int = 300,
38
+ shm_slot_count: int = 1000,
39
39
  shm_frame_format: str = "BGR",
40
40
  # Performance options
41
41
  pin_cpu_affinity: bool = True,