فهرست منبع

oboe_sink: handle temporary stream creation failure

Liam 2 سال پیش
والد
کامیت
964e19ab56
1فایلهای تغییر یافته به همراه6 افزوده شده و 2 حذف شده
  1. 6 2
      src/audio_core/sink/oboe_sink.cpp

+ 6 - 2
src/audio_core/sink/oboe_sink.cpp

@@ -67,9 +67,13 @@ public:
         oboe::AudioStreamBuilder builder;
         oboe::AudioStreamBuilder builder;
 
 
         const auto result = ConfigureBuilder(builder, direction)->openStream(temp_stream);
         const auto result = ConfigureBuilder(builder, direction)->openStream(temp_stream);
-        ASSERT(result == oboe::Result::OK);
+        if (result == oboe::Result::OK) {
+            return temp_stream->getChannelCount() >= 6 ? 6 : 2;
+        }
 
 
-        return temp_stream->getChannelCount() >= 6 ? 6 : 2;
+        LOG_ERROR(Audio_Sink, "Failed to open {} stream. Using default channel count 2",
+                  direction == oboe::Direction::Output ? "output" : "input");
+        return 2;
     }
     }
 
 
 protected:
 protected: