}
rgba_color color = parse_color( now, mlt_properties_get_int( producer_props, "resource" ) );
+ // Choose suitable out values if nothing specific requested
+ if ( *format == mlt_image_none )
+ *format = mlt_image_rgb24a;
+ if ( *width <= 0 )
+ *width = mlt_service_profile( MLT_PRODUCER_SERVICE(producer) )->width;
+ if ( *height <= 0 )
+ *height = mlt_service_profile( MLT_PRODUCER_SERVICE(producer) )->height;
+
// See if we need to regenerate
if ( strcmp( now, then ) || *width != current_width || *height != current_height || *format != current_format )
{
*p ++ = color.b;
}
break;
- case mlt_image_rgb24a:
- case mlt_image_opengl:
+ default:
while ( --i )
{
*p ++ = color.r;
*p ++ = color.a;
}
break;
- default:
- break;
}
}
else