7070)
7171from ..services .dlc_processor import DLCLiveProcessor , PoseResult
7272from ..services .multi_camera_controller import MultiCameraController , MultiFrameData , get_camera_id , get_display_id
73+ from ..services .recording_manager import RecordingManager
7374from ..utils .display import BBoxColors , compute_tile_info , create_tiled_frame , draw_bbox , draw_pose
7475from ..utils .settings_store import DLCLiveGUISettingsStore , ModelPathStore
7576from ..utils .stats import WorkerTimingStats , format_dlc_stats
7980from .misc import layouts as lyts
8081from .misc .drag_spinbox import ScrubSpinBox
8182from .misc .eliding_label import ElidingPathLabel
82- from .recording_manager import RecordingManager
8383from .theme import LOGO , LOGO_ALPHA , AppStyle , apply_theme
8484
8585logger = logging .getLogger ("DLCLiveGUI" )
@@ -801,7 +801,7 @@ def _connect_signals(self) -> None:
801801 # Multi-camera controller signals (used for both single and multi-camera modes)
802802 self .multi_camera_controller .frame_ready .connect (self ._on_multi_frame_processing_ready )
803803 self .multi_camera_controller .display_ready .connect (self ._on_multi_frame_display_ready )
804- self .multi_camera_controller .recording_frame_ready .connect (self ._on_recording_frame_ready )
804+ # self.multi_camera_controller.recording_frame_ready.connect(self._on_recording_frame_ready)
805805 self .multi_camera_controller .all_started .connect (self ._on_multi_camera_started )
806806 self .multi_camera_controller .all_stopped .connect (self ._on_multi_camera_stopped )
807807 self .multi_camera_controller .camera_error .connect (self ._on_multi_camera_error )
@@ -1605,6 +1605,7 @@ def _start_multi_camera_recording(self) -> None:
16051605 if run_dir is None :
16061606 self ._show_error ("Failed to start recording." )
16071607 return
1608+ self .multi_camera_controller .set_recording_sink (self ._rec_manager .write_frame )
16081609 self .multi_camera_controller .set_recording_frame_do_emit (True )
16091610
16101611 self ._settings_store .set_session_name (session_name )
@@ -1629,6 +1630,7 @@ def _stop_multi_camera_recording(self) -> None:
16291630 # Stop frame emission immediately so no new frames enter recording pipeline.
16301631 try :
16311632 self .multi_camera_controller .set_recording_frame_do_emit (False )
1633+ self .multi_camera_controller .set_recording_sink (None )
16321634 except Exception :
16331635 logger .exception ("Failed to disable recording frame emission" )
16341636
0 commit comments