diff --git a/server/pyinvoker.cpp b/server/pyinvoker.cpp index 37d2ed1c..451bd3c8 100644 --- a/server/pyinvoker.cpp +++ b/server/pyinvoker.cpp @@ -515,7 +515,7 @@ PythonInvoker::PythonInvoker() { NoticeCenter::Instance().addListener(this, Broadcast::kBroadcastCreateMuxer, [this](BroadcastCreateMuxerArgs) { py::gil_scoped_acquire guard; if (_on_create_muxer) { - auto py_muxer = _on_create_muxer(sender); + auto py_muxer = _on_create_muxer(to_python_ref(sender)); if (py_muxer && !py_muxer.is_none()) { delegate = std::make_shared(std::move(py_muxer)); } diff --git a/src/Common/MultiMediaSourceMuxer.h b/src/Common/MultiMediaSourceMuxer.h index c65b9329..d2cf23b0 100644 --- a/src/Common/MultiMediaSourceMuxer.h +++ b/src/Common/MultiMediaSourceMuxer.h @@ -25,7 +25,7 @@ namespace mediakit { -class MultiMediaSourceMuxer : public MediaSourceEventInterceptor, public MediaSink, public std::enable_shared_from_this{ +class MultiMediaSourceMuxer : public MediaSourceEventInterceptor, public MediaSink, public toolkit::noncopyable, public std::enable_shared_from_this{ public: using Ptr = std::shared_ptr; using RingType = toolkit::RingBuffer;