diff --git a/src/rtsp_manager.cpp b/src/rtsp_manager.cpp index 8ae3c31..8232c64 100644 --- a/src/rtsp_manager.cpp +++ b/src/rtsp_manager.cpp @@ -120,18 +120,8 @@ gboolean RTSPManager::unmount_camera_in_main(gpointer data) auto it = mounted_factories.find(cam->name); if (it != mounted_factories.end()) { - GstRTSPMediaFactory *factory = it->second; - if (factory) - { - // 创建 element 并发送 EOS - GstElement *element = gst_rtsp_media_factory_create_element(factory); - if (element) - { - gst_element_send_event(element, gst_event_new_eos()); - gst_object_unref(element); - } - g_object_unref(factory); - } + if (it->second) + g_object_unref(it->second); // 直接释放 factory mounted_factories.erase(it); } streaming_status[cam->name] = false;