libobs: Fix video warnings

This commit is contained in:
jpark37 2019-08-30 22:13:03 -07:00
parent 05888fc3aa
commit 42bf026a49
3 changed files with 27 additions and 13 deletions

View file

@ -29,14 +29,10 @@ static inline enum AVPixelFormat
get_ffmpeg_video_format(enum video_format format)
{
switch (format) {
case VIDEO_FORMAT_NONE:
return AV_PIX_FMT_NONE;
case VIDEO_FORMAT_I420:
return AV_PIX_FMT_YUV420P;
case VIDEO_FORMAT_NV12:
return AV_PIX_FMT_NV12;
case VIDEO_FORMAT_YVYU:
return AV_PIX_FMT_NONE;
case VIDEO_FORMAT_YUY2:
return AV_PIX_FMT_YUYV422;
case VIDEO_FORMAT_UYVY:
@ -61,6 +57,11 @@ get_ffmpeg_video_format(enum video_format format)
return AV_PIX_FMT_YUVA422P;
case VIDEO_FORMAT_YUVA:
return AV_PIX_FMT_YUVA444P;
case VIDEO_FORMAT_NONE:
case VIDEO_FORMAT_YVYU:
case VIDEO_FORMAT_AYUV:
/* not supported by FFmpeg */
return AV_PIX_FMT_NONE;
}
return AV_PIX_FMT_NONE;

View file

@ -1355,7 +1355,6 @@ enum convert_type {
CONVERT_422,
CONVERT_422_A,
CONVERT_422_PACK,
CONVERT_422_Y,
CONVERT_444,
CONVERT_444_A,
CONVERT_444_A_PACK,

View file

@ -268,8 +268,8 @@ static inline gs_texture_t *render_output_texture(struct obs_core_video *video)
return target;
}
static void render_convert_plane(gs_effect_t *effect, gs_texture_t *texture,
gs_texture_t *target, const char *tech_name)
static void render_convert_plane(gs_effect_t *effect, gs_texture_t *target,
const char *tech_name)
{
gs_technique_t *tech = gs_effect_get_technique(effect, tech_name);
@ -317,8 +317,7 @@ static void render_convert_texture(struct obs_core_video *video,
if (video->convert_textures[0]) {
gs_effect_set_texture(image, texture);
gs_effect_set_vec4(color_vec0, &vec0);
render_convert_plane(effect, texture,
video->convert_textures[0],
render_convert_plane(effect, video->convert_textures[0],
video->conversion_techs[0]);
if (video->convert_textures[1]) {
@ -327,8 +326,7 @@ static void render_convert_texture(struct obs_core_video *video,
if (!video->convert_textures[2])
gs_effect_set_vec4(color_vec2, &vec2);
gs_effect_set_float(width_i, video->conversion_width_i);
render_convert_plane(effect, texture,
video->convert_textures[1],
render_convert_plane(effect, video->convert_textures[1],
video->conversion_techs[1]);
if (video->convert_textures[2]) {
@ -337,8 +335,7 @@ static void render_convert_texture(struct obs_core_video *video,
gs_effect_set_float(width_i,
video->conversion_width_i);
render_convert_plane(
effect, texture,
video->convert_textures[2],
effect, video->convert_textures[2],
video->conversion_techs[2]);
}
}
@ -640,6 +637,23 @@ static void set_gpu_converted_data(struct obs_core_video *video,
break;
}
case VIDEO_FORMAT_NONE:
case VIDEO_FORMAT_YVYU:
case VIDEO_FORMAT_YUY2:
case VIDEO_FORMAT_UYVY:
case VIDEO_FORMAT_RGBA:
case VIDEO_FORMAT_BGRA:
case VIDEO_FORMAT_BGRX:
case VIDEO_FORMAT_Y800:
case VIDEO_FORMAT_BGR3:
case VIDEO_FORMAT_I422:
case VIDEO_FORMAT_I40A:
case VIDEO_FORMAT_I42A:
case VIDEO_FORMAT_YUVA:
case VIDEO_FORMAT_AYUV:
/* unimplemented */
;
}
}
}