소스 검색

libobs: Fix audio not playing back with audio lines

The fix for the race condition that was made in 432017b2c also broke
audio lines.  This fixes audio lines and moves the fix to just the case
where it actually applied.
jp9000 5 년 전
부모
커밋
cf0a5e5c97
1개의 변경된 파일5개의 추가작업 그리고 1개의 파일을 삭제
  1. 5 1
      libobs/obs-source.c

+ 5 - 1
libobs/obs-source.c

@@ -4589,12 +4589,16 @@ static inline void process_audio_source_tick(obs_source_t *source,
 void obs_source_audio_render(obs_source_t *source, uint32_t mixers,
 			     size_t channels, size_t sample_rate, size_t size)
 {
-	if (!source->audio_output_buf[0][0] || !source->context.data) {
+	if (!source->audio_output_buf[0][0]) {
 		source->audio_pending = true;
 		return;
 	}
 
 	if (source->info.audio_render) {
+		if (!source->context.data) {
+			source->audio_pending = true;
+			return;
+		}
 		custom_audio_render(source, mixers, channels, sample_rate);
 		return;
 	}