|
@@ -176,7 +176,7 @@ struct DShowInput {
|
|
VideoConfig videoConfig;
|
|
VideoConfig videoConfig;
|
|
AudioConfig audioConfig;
|
|
AudioConfig audioConfig;
|
|
|
|
|
|
- obs_source_frame frame;
|
|
|
|
|
|
+ obs_source_frame2 frame;
|
|
obs_source_audio audio;
|
|
obs_source_audio audio;
|
|
|
|
|
|
WinHandle semaphore;
|
|
WinHandle semaphore;
|
|
@@ -327,7 +327,7 @@ void DShowInput::DShowLoop()
|
|
obs_data_t *settings;
|
|
obs_data_t *settings;
|
|
settings = obs_source_get_settings(source);
|
|
settings = obs_source_get_settings(source);
|
|
if (!Activate(settings)) {
|
|
if (!Activate(settings)) {
|
|
- obs_source_output_video(source,
|
|
|
|
|
|
+ obs_source_output_video2(source,
|
|
nullptr);
|
|
nullptr);
|
|
}
|
|
}
|
|
if (block)
|
|
if (block)
|
|
@@ -468,7 +468,7 @@ void DShowInput::OnEncodedVideoData(enum AVCodecID id,
|
|
#if LOG_ENCODED_VIDEO_TS
|
|
#if LOG_ENCODED_VIDEO_TS
|
|
blog(LOG_DEBUG, "video ts: %llu", frame.timestamp);
|
|
blog(LOG_DEBUG, "video ts: %llu", frame.timestamp);
|
|
#endif
|
|
#endif
|
|
- obs_source_output_video(source, &frame);
|
|
|
|
|
|
+ obs_source_output_video2(source, &frame);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -537,7 +537,7 @@ void DShowInput::OnVideoData(const VideoConfig &config,
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
|
|
|
|
- obs_source_output_video(source, &frame);
|
|
|
|
|
|
+ obs_source_output_video2(source, &frame);
|
|
|
|
|
|
UNUSED_PARAMETER(endTime); /* it's the enndd tiimmes! */
|
|
UNUSED_PARAMETER(endTime); /* it's the enndd tiimmes! */
|
|
UNUSED_PARAMETER(size);
|
|
UNUSED_PARAMETER(size);
|
|
@@ -1040,15 +1040,13 @@ inline bool DShowInput::Activate(obs_data_t *settings)
|
|
return false;
|
|
return false;
|
|
|
|
|
|
enum video_colorspace cs = GetColorSpace(settings);
|
|
enum video_colorspace cs = GetColorSpace(settings);
|
|
-
|
|
|
|
- video_range_type range = GetColorRange(settings);
|
|
|
|
- frame.full_range = range == VIDEO_RANGE_FULL;
|
|
|
|
|
|
+ frame.range = GetColorRange(settings);
|
|
|
|
|
|
if (device.Start() != Result::Success)
|
|
if (device.Start() != Result::Success)
|
|
return false;
|
|
return false;
|
|
|
|
|
|
bool success = video_format_get_parameters(
|
|
bool success = video_format_get_parameters(
|
|
- cs, range,
|
|
|
|
|
|
+ cs, frame.range,
|
|
frame.color_matrix,
|
|
frame.color_matrix,
|
|
frame.color_range_min,
|
|
frame.color_range_min,
|
|
frame.color_range_max);
|
|
frame.color_range_max);
|
|
@@ -1063,7 +1061,7 @@ inline bool DShowInput::Activate(obs_data_t *settings)
|
|
inline void DShowInput::Deactivate()
|
|
inline void DShowInput::Deactivate()
|
|
{
|
|
{
|
|
device.ResetGraph();
|
|
device.ResetGraph();
|
|
- obs_source_output_video(source, nullptr);
|
|
|
|
|
|
+ obs_source_output_video2(source, nullptr);
|
|
}
|
|
}
|
|
|
|
|
|
/* ------------------------------------------------------------------------- */
|
|
/* ------------------------------------------------------------------------- */
|