Browse Source

Merge pull request #1962 from jpark37/default-color-range

Default color range
Colin Edwards 6 years ago
parent
commit
f2a0c5275f

+ 1 - 0
plugins/linux-v4l2/data/locale/en-US.ini

@@ -9,5 +9,6 @@ FrameRate="Frame Rate"
 LeaveUnchanged="Leave Unchanged"
 UseBuffering="Use Buffering"
 ColorRange="Color Range"
+ColorRange.Default="Default"
 ColorRange.Partial="Partial"
 ColorRange.Full="Full"

+ 4 - 1
plugins/linux-v4l2/v4l2-input.c

@@ -231,7 +231,7 @@ static void v4l2_defaults(obs_data_t *settings)
 	obs_data_set_default_int(settings, "dv_timing", -1);
 	obs_data_set_default_int(settings, "resolution", -1);
 	obs_data_set_default_int(settings, "framerate", -1);
-	obs_data_set_default_int(settings, "color_range", VIDEO_RANGE_PARTIAL);
+	obs_data_set_default_int(settings, "color_range", VIDEO_RANGE_DEFAULT);
 	obs_data_set_default_bool(settings, "buffering", true);
 }
 
@@ -770,6 +770,9 @@ static obs_properties_t *v4l2_properties(void *vptr)
 	obs_property_t *color_range_list = obs_properties_add_list(
 		props, "color_range", obs_module_text("ColorRange"),
 		OBS_COMBO_TYPE_LIST, OBS_COMBO_FORMAT_INT);
+	obs_property_list_add_int(color_range_list,
+				  obs_module_text("ColorRange.Default"),
+				  VIDEO_RANGE_DEFAULT);
 	obs_property_list_add_int(color_range_list,
 				  obs_module_text("ColorRange.Partial"),
 				  VIDEO_RANGE_PARTIAL);

+ 1 - 0
plugins/win-dshow/data/locale/en-US.ini

@@ -4,6 +4,7 @@ Device="Device"
 ColorSpace="Color Space"
 ColorSpace.Default="Default"
 ColorRange="Color Range"
+ColorRange.Default="Default"
 ColorRange.Partial="Partial"
 ColorRange.Full="Full"
 ConfigureAudio="Configure Audio"

+ 8 - 3
plugins/win-dshow/win-dshow.cpp

@@ -75,6 +75,7 @@ using namespace DShow;
 #define TEXT_COLOR_SPACE    obs_module_text("ColorSpace")
 #define TEXT_COLOR_DEFAULT  obs_module_text("ColorSpace.Default")
 #define TEXT_COLOR_RANGE    obs_module_text("ColorRange")
+#define TEXT_RANGE_DEFAULT  obs_module_text("ColorRange.Default")
 #define TEXT_RANGE_PARTIAL  obs_module_text("ColorRange.Partial")
 #define TEXT_RANGE_FULL     obs_module_text("ColorRange.Full")
 #define TEXT_DWNS           obs_module_text("DeactivateWhenNotShowing")
@@ -1049,8 +1050,11 @@ DShowInput::GetColorRange(obs_data_t *settings) const
 {
 	const char *range = obs_data_get_string(settings, COLOR_RANGE);
 
-	return astrcmpi(range, "full") == 0 ? VIDEO_RANGE_FULL
-					    : VIDEO_RANGE_PARTIAL;
+	if (astrcmpi(range, "full") == 0)
+		return VIDEO_RANGE_FULL;
+	if (astrcmpi(range, "partial") == 0)
+		return VIDEO_RANGE_PARTIAL;
+	return VIDEO_RANGE_DEFAULT;
 }
 
 inline bool DShowInput::Activate(obs_data_t *settings)
@@ -1139,7 +1143,7 @@ static void GetDShowDefaults(obs_data_t *settings)
 	obs_data_set_default_int(settings, VIDEO_FORMAT, (int)VideoFormat::Any);
 	obs_data_set_default_bool(settings, "active", true);
 	obs_data_set_default_string(settings, COLOR_SPACE, "default");
-	obs_data_set_default_string(settings, COLOR_RANGE, "partial");
+	obs_data_set_default_string(settings, COLOR_RANGE, "default");
 	obs_data_set_default_int(settings, AUDIO_OUTPUT_MODE,
 				 (int)AudioMode::Capture);
 }
@@ -1873,6 +1877,7 @@ static obs_properties_t *GetDShowProperties(void *obj)
 	p = obs_properties_add_list(ppts, COLOR_RANGE, TEXT_COLOR_RANGE,
 				    OBS_COMBO_TYPE_LIST,
 				    OBS_COMBO_FORMAT_STRING);
+	obs_property_list_add_string(p, TEXT_RANGE_DEFAULT, "default");
 	obs_property_list_add_string(p, TEXT_RANGE_PARTIAL, "partial");
 	obs_property_list_add_string(p, TEXT_RANGE_FULL, "full");