sciveo 0.1.80__tar.gz → 0.1.82__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 (191) hide show
  1. {sciveo-0.1.80 → sciveo-0.1.82}/PKG-INFO +1 -1
  2. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/cam.py +3 -2
  3. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/gst_server.py +5 -0
  4. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/rpi.py +4 -2
  5. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/timers.py +4 -1
  6. sciveo-0.1.82/sciveo/version.py +2 -0
  7. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo.egg-info/PKG-INFO +1 -1
  8. sciveo-0.1.80/sciveo/version.py +0 -2
  9. {sciveo-0.1.80 → sciveo-0.1.82}/README.md +0 -0
  10. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/__init__.py +0 -0
  11. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/api/__init__.py +0 -0
  12. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/api/base.py +0 -0
  13. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/api/predictors.py +0 -0
  14. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/api/server.py +0 -0
  15. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/api/upload.py +0 -0
  16. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/cli.py +0 -0
  17. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/common/__init__.py +0 -0
  18. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/common/configuration.py +0 -0
  19. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/common/model.py +0 -0
  20. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/common/optimizers.py +0 -0
  21. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/common/sampling.py +0 -0
  22. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/content/__init__.py +0 -0
  23. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/content/dataset.py +0 -0
  24. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/content/experiment.py +0 -0
  25. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/content/project.py +0 -0
  26. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/content/runner.py +0 -0
  27. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/db/__init__.py +0 -0
  28. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/db/read_table.py +0 -0
  29. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/__init__.py +0 -0
  30. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/__init__.py +0 -0
  31. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/draw.py +0 -0
  32. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/games/__init__.py +0 -0
  33. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/games/asteroids/__init__.py +0 -0
  34. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/games/asteroids/asteroid.py +0 -0
  35. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/games/asteroids/base_move.py +0 -0
  36. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/games/asteroids/circle.py +0 -0
  37. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/games/asteroids/game.py +0 -0
  38. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/games/asteroids/geometrics.py +0 -0
  39. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/games/asteroids/gravity_ball.py +0 -0
  40. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/games/asteroids/laser.py +0 -0
  41. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/games/asteroids/rocket.py +0 -0
  42. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/games/asteroids/space_asteroids.py +0 -0
  43. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/games/asteroids/volume_bar.py +0 -0
  44. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/motion_detection.py +0 -0
  45. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/nvr.py +0 -0
  46. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/readers.py +0 -0
  47. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/capture/rtsp.py +0 -0
  48. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/ml/__init__.py +0 -0
  49. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/ml/base.py +0 -0
  50. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/ml/encoders/__init__.py +0 -0
  51. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/ml/encoders/base.py +0 -0
  52. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/ml/encoders/normalizer.py +0 -0
  53. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/ml/nlp/__init__.py +0 -0
  54. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/ml/nlp/search.py +0 -0
  55. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/ml/time_series/__init__.py +0 -0
  56. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/ml/time_series/dataset.py +0 -0
  57. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/ml/time_series/predictor.py +0 -0
  58. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/ml/time_series/trainer.py +0 -0
  59. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/ml/time_series/window_generator.py +0 -0
  60. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/__init__.py +0 -0
  61. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/base.py +0 -0
  62. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/job_daemon.py +0 -0
  63. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/layouts/__init__.py +0 -0
  64. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/layouts/base.py +0 -0
  65. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/pipeline.py +0 -0
  66. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/postprocessors/__init__.py +0 -0
  67. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/postprocessors/base.py +0 -0
  68. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/postprocessors/default.py +0 -0
  69. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/__init__.py +0 -0
  70. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/audio/__init__.py +0 -0
  71. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/audio/audio.py +0 -0
  72. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/audio/audio_extractor_process.py +0 -0
  73. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/aws.py +0 -0
  74. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/base.py +0 -0
  75. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/file/__init__.py +0 -0
  76. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/file/archive.py +0 -0
  77. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/image/__init__.py +0 -0
  78. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/image/album.py +0 -0
  79. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/image/album_in_image.py +0 -0
  80. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/image/depth_esimation.py +0 -0
  81. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/image/embeddings.py +0 -0
  82. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/image/filters.py +0 -0
  83. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/image/generators.py +0 -0
  84. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/image/histogram.py +0 -0
  85. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/image/mask.py +0 -0
  86. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/image/object_detection.py +0 -0
  87. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/image/resize.py +0 -0
  88. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/image/segmentation.py +0 -0
  89. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/image/watermark.py +0 -0
  90. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/media_info.py +0 -0
  91. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/nlp/__init__.py +0 -0
  92. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/nlp/address.py +0 -0
  93. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/qr.py +0 -0
  94. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/sci/__init__.py +0 -0
  95. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/sci/base.py +0 -0
  96. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/sci/dataset.py +0 -0
  97. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/sci/time_series/__init__.py +0 -0
  98. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/sci/time_series/predictor.py +0 -0
  99. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/sci/time_series/trainer.py +0 -0
  100. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/tpu_base.py +0 -0
  101. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/video/__init__.py +0 -0
  102. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/video/generators.py +0 -0
  103. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/video/motion_detection.py +0 -0
  104. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/video/resize.py +0 -0
  105. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/video/video_album.py +0 -0
  106. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/video/video_frames.py +0 -0
  107. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/processors/video/video_resample.py +0 -0
  108. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/queues.py +0 -0
  109. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/server.py +0 -0
  110. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/web/__init__.py +0 -0
  111. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/pipelines/web/server.py +0 -0
  112. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/tools/__init__.py +0 -0
  113. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/media/tools/video_interactive.py +0 -0
  114. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/__init__.py +0 -0
  115. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/base.py +0 -0
  116. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/dataset/__init__.py +0 -0
  117. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/dataset/object_detection.py +0 -0
  118. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/evaluation/__init__.py +0 -0
  119. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/evaluation/markdown.py +0 -0
  120. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/evaluation/object_detection.py +0 -0
  121. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/images/__init__.py +0 -0
  122. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/images/base.py +0 -0
  123. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/images/description.py +0 -0
  124. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/images/embeddings.py +0 -0
  125. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/images/object_detection.py +0 -0
  126. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/images/tools.py +0 -0
  127. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/images/transformers.py +0 -0
  128. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/nlp/__init__.py +0 -0
  129. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/nlp/embeddings.py +0 -0
  130. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/nlp/tokenizers/__init__.py +0 -0
  131. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/nlp/tokenizers/bpe.py +0 -0
  132. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/video/__init__.py +0 -0
  133. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/ml/video/description.py +0 -0
  134. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/monitoring/__init__.py +0 -0
  135. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/monitoring/monitor.py +0 -0
  136. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/monitoring/power/__init__.py +0 -0
  137. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/monitoring/power/ems300.py +0 -0
  138. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/monitoring/power/sim.py +0 -0
  139. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/monitoring/power/tools.py +0 -0
  140. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/monitoring/start.py +0 -0
  141. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/monitoring/watchdog/__init__.py +0 -0
  142. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/monitoring/watchdog/base.py +0 -0
  143. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/monitoring/watchdog/process.py +0 -0
  144. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/network/__init__.py +0 -0
  145. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/network/camera.py +0 -0
  146. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/network/sniffer.py +0 -0
  147. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/network/tools.py +0 -0
  148. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/__init__.py +0 -0
  149. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/array.py +0 -0
  150. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/aws/__init__.py +0 -0
  151. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/aws/priority_queue.py +0 -0
  152. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/aws/s3.py +0 -0
  153. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/common.py +0 -0
  154. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/complexity.py +0 -0
  155. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/compress.py +0 -0
  156. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/configuration.py +0 -0
  157. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/crypto.py +0 -0
  158. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/daemon.py +0 -0
  159. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/draw/__init__.py +0 -0
  160. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/draw/contours.py +0 -0
  161. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/formating.py +0 -0
  162. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/hardware.py +0 -0
  163. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/http.py +0 -0
  164. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/logger.py +0 -0
  165. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/os.py +0 -0
  166. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/queue.py +0 -0
  167. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/random.py +0 -0
  168. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/remote.py +0 -0
  169. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/simple_counter.py +0 -0
  170. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/synchronized.py +0 -0
  171. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/tools/totp.py +0 -0
  172. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/web/__init__.py +0 -0
  173. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo/web/common.py +0 -0
  174. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo.egg-info/SOURCES.txt +0 -0
  175. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo.egg-info/dependency_links.txt +0 -0
  176. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo.egg-info/entry_points.txt +0 -0
  177. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo.egg-info/requires.txt +0 -0
  178. {sciveo-0.1.80 → sciveo-0.1.82}/sciveo.egg-info/top_level.txt +0 -0
  179. {sciveo-0.1.80 → sciveo-0.1.82}/setup.cfg +0 -0
  180. {sciveo-0.1.80 → sciveo-0.1.82}/setup.py +0 -0
  181. {sciveo-0.1.80 → sciveo-0.1.82}/test/test_complexity.py +0 -0
  182. {sciveo-0.1.80 → sciveo-0.1.82}/test/test_compress.py +0 -0
  183. {sciveo-0.1.80 → sciveo-0.1.82}/test/test_configuration.py +0 -0
  184. {sciveo-0.1.80 → sciveo-0.1.82}/test/test_crypto.py +0 -0
  185. {sciveo-0.1.80 → sciveo-0.1.82}/test/test_eval_markdown.py +0 -0
  186. {sciveo-0.1.80 → sciveo-0.1.82}/test/test_ml_datasets.py +0 -0
  187. {sciveo-0.1.80 → sciveo-0.1.82}/test/test_monitoring.py +0 -0
  188. {sciveo-0.1.80 → sciveo-0.1.82}/test/test_runner.py +0 -0
  189. {sciveo-0.1.80 → sciveo-0.1.82}/test/test_sampling.py +0 -0
  190. {sciveo-0.1.80 → sciveo-0.1.82}/test/test_tokenizers.py +0 -0
  191. {sciveo-0.1.80 → sciveo-0.1.82}/test/test_totp.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sciveo
3
- Version: 0.1.80
3
+ Version: 0.1.82
4
4
  Description-Content-Type: text/markdown
5
5
  Provides-Extra: mon
6
6
  Provides-Extra: net
@@ -28,7 +28,7 @@ class CaptureBase(DaemonBase):
28
28
  self.tag = tag
29
29
  self.lock_frame = threading.Lock()
30
30
  self.frame = None
31
- self.fps = FPSCounter(period=10, tag=f"{self.tag} [{self.src}]")
31
+ self.fps = FPSCounter(period=10, tag=f"{self.tag} [{self.src}]", round_value=1)
32
32
 
33
33
  def close(self):
34
34
  pass
@@ -56,9 +56,10 @@ class CameraDaemon(CaptureBase):
56
56
  self.init_cam()
57
57
 
58
58
  def init_cam(self):
59
+ debug(self.src, "starting...")
59
60
  self.cap = cv2.VideoCapture(self.src)
60
- debug(self.src, "warming...")
61
61
  time.sleep(1)
62
+ debug(self.src, "started")
62
63
 
63
64
  def close(self):
64
65
  self.cap.release()
@@ -18,6 +18,7 @@ from gi.repository import Gst, GObject, GstRtspServer, GLib
18
18
  Gst.init(None)
19
19
 
20
20
  from sciveo.tools.logger import *
21
+ from sciveo.tools.timers import FPSCounter
21
22
  from sciveo.media.capture.draw import *
22
23
  from sciveo.media.capture.cam import CameraDaemon
23
24
 
@@ -30,6 +31,7 @@ class RTSPFactoryBase(GstRtspServer.RTSPMediaFactory):
30
31
  self.fps = fps
31
32
  self.appsrc_name = appsrc_name
32
33
  self.set_shared(True)
34
+ self.fps_next_frame = FPSCounter(period=10, tag=f"{appsrc_name} ({self.width}x{self.height}@{self.fps})", round_value=1)
33
35
 
34
36
  def do_create_element(self, url):
35
37
  pipeline_str = (
@@ -114,6 +116,7 @@ class ColorBarFactory(RTSPFactoryBase):
114
116
  self.gen = ColorBarsGenerator(width=width, height=height)
115
117
 
116
118
  def next_frame(self):
119
+ self.fps_next_frame.update()
117
120
  return self.gen.next_frame()
118
121
 
119
122
 
@@ -145,6 +148,8 @@ class CamFactory(ColorBarFactory):
145
148
  for k, v in self.configuration.get("draw", {}).items():
146
149
  self.list_draw_processors.get(k, DrawNone())(frame, v)
147
150
 
151
+ self.fps_next_frame.update()
152
+
148
153
  return frame
149
154
 
150
155
 
@@ -21,11 +21,13 @@ from sciveo.media.capture.gst_server import CamFactory
21
21
 
22
22
  class RPICamera(CameraDaemon):
23
23
  def __init__(self, cam_id=0, width=640, height=480, period=0):
24
- super().__init__(cam_id=cam_id, period=period)
25
24
  self.width = width
26
25
  self.height = height
26
+ super().__init__(cam_id=cam_id, period=period)
27
27
 
28
28
  def init_cam(self):
29
+ debug(self.src, "starting...")
30
+
29
31
  self.picam2 = Picamera2()
30
32
  config = self.picam2.create_video_configuration(
31
33
  main={
@@ -37,8 +39,8 @@ class RPICamera(CameraDaemon):
37
39
  self.picam2.configure(config)
38
40
  self.picam2.start()
39
41
 
40
- debug(self.src, "warming...")
41
42
  time.sleep(1)
43
+ debug(self.src, "started")
42
44
 
43
45
  def close(self):
44
46
  self.picam2.stop()
@@ -15,7 +15,7 @@ from sciveo.tools.logger import *
15
15
 
16
16
 
17
17
  class FPSCounter:
18
- def __init__(self, period=1, tag="", print_period=1, printer=debug):
18
+ def __init__(self, period=1, tag="", print_period=1, printer=debug, round_value=2):
19
19
  self.period = period
20
20
  self.print_period = print_period
21
21
  self.printer = printer
@@ -24,6 +24,7 @@ class FPSCounter:
24
24
  self.n = 0
25
25
  self.t1 = time.time()
26
26
  self.value = 0
27
+ self.round_value = round_value
27
28
 
28
29
  def print(self):
29
30
  self.print_n += 1
@@ -36,6 +37,8 @@ class FPSCounter:
36
37
  t2 = time.time()
37
38
  if t2 - self.t1 > self.period:
38
39
  self.value = self.n / (t2 - self.t1)
40
+ if self.round_value is not None:
41
+ self.value = round(self.value, self.round_value)
39
42
  self.n = 0
40
43
  self.t1 = time.time()
41
44
  self.print()
@@ -0,0 +1,2 @@
1
+
2
+ __version__ = '0.1.82'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sciveo
3
- Version: 0.1.80
3
+ Version: 0.1.82
4
4
  Description-Content-Type: text/markdown
5
5
  Provides-Extra: mon
6
6
  Provides-Extra: net
@@ -1,2 +0,0 @@
1
-
2
- __version__ = '0.1.80'
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
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
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
File without changes
File without changes