소스 검색

obs-qsv11: Do not enable b-frames on sandy/ivy bridge

B-frames on sandy/ivy bridge do not work, so disable for those
platforms.
jp9000 6 년 전
부모
커밋
c5178a5d1e
1개의 변경된 파일4개의 추가작업 그리고 0개의 파일을 삭제
  1. 4 0
      plugins/obs-qsv11/obs-qsv11.c

+ 4 - 0
plugins/obs-qsv11/obs-qsv11.c

@@ -331,6 +331,10 @@ static void update_params(struct obs_qsv *obsqsv, obs_data_t *settings)
 	if (obs_data_has_user_value(settings, "bf"))
 	if (obs_data_has_user_value(settings, "bf"))
 		bFrames = (int)obs_data_get_int(settings, "bf");
 		bFrames = (int)obs_data_get_int(settings, "bf");
 
 
+	enum qsv_cpu_platform plat = qsv_get_cpu_platform();
+	if (plat == QSV_CPU_PLATFORM_IVB || plat == QSV_CPU_PLATFORM_SNB)
+		bFrames = 0;
+
 	int width = (int)obs_encoder_get_width(obsqsv->encoder);
 	int width = (int)obs_encoder_get_width(obsqsv->encoder);
 	int height = (int)obs_encoder_get_height(obsqsv->encoder);
 	int height = (int)obs_encoder_get_height(obsqsv->encoder);
 	if (astrcmpi(target_usage, "quality") == 0)
 	if (astrcmpi(target_usage, "quality") == 0)