소스 검색

Fix auto disposal of pipeline that needs to stay in struct

Sean McNamara 5 년 전
부모
커밋
1e9a52bd6e
1개의 변경된 파일5개의 추가작업 그리고 2개의 파일을 삭제
  1. 5 2
      playback/src/audio_backend/gstreamer.rs

+ 5 - 2
playback/src/audio_backend/gstreamer.rs

@@ -5,8 +5,10 @@ use gst::prelude::*;
 use gst::*;
 use zerocopy::*;
 
+#[allow(dead_code)]
 pub struct GstreamerSink {
-    tx: SyncSender<Vec<u8>>
+    tx: SyncSender<Vec<u8>>,
+    pipeline: gst::Pipeline
 }
 
 impl Open for GstreamerSink {
@@ -75,7 +77,8 @@ impl Open for GstreamerSink {
         pipeline.set_state(gst::State::Playing).expect("Unable to set the pipeline to the `Playing` state");
 
         GstreamerSink {
-            tx: tx
+            tx: tx,
+            pipeline: pipeline
         }
     }
 }