if ( *buffer )
memset( *buffer, 255, size );
break;
+ case mlt_image_glsl:
+ case mlt_image_glsl_texture:
+ *format = mlt_image_yuv422;
case mlt_image_yuv422:
size *= 2;
size += *width * 2;
mlt_color color = mlt_properties_get_color( producer_props, "resource" );
// Choose suitable out values if nothing specific requested
- if ( *format == mlt_image_none )
+ if ( *format == mlt_image_none || *format == mlt_image_glsl )
*format = mlt_image_rgb24a;
if ( *width <= 0 )
*width = mlt_service_profile( MLT_PRODUCER_SERVICE(producer) )->width;
self->image, self->pixbuf, current_idx, self->image_idx, self->pixbuf_idx, width );
// If we have a pixbuf and we need an image
- if ( self->pixbuf && ( !self->image || ( format != mlt_image_none && format != self->format ) ) )
+ if ( self->pixbuf && ( !self->image || ( format != mlt_image_none && format != mlt_image_glsl && format != self->format ) ) )
{
char *interps = mlt_properties_get( properties, "rescale.interp" );
if ( interps ) interps = strdup( interps );
pthread_mutex_unlock( &g_mutex );
// Convert image to requested format
- if ( format != mlt_image_none && format != self->format )
+ if ( format != mlt_image_none && format != mlt_image_glsl && format != self->format )
{
uint8_t *buffer = NULL;
// Get the image as requested
// *format = (mlt_image_format) mlt_properties_get_int( MLT_PRODUCER_PROPERTIES(producer), "_movit image_format" );
- *format = mlt_image_none;
- if ( mlt_properties_get_int( properties, "test_image" ) )
- *format = mlt_image_yuv422;
error = mlt_frame_get_image( frame, image, format, width, height, writable );
// Skip processing if requested.
self->current_image = NULL;
// If we have a qimage and need a new scaled image
- if ( self->qimage && ( !self->current_image || ( format != mlt_image_none && format != self->format ) ) )
+ if ( self->qimage && ( !self->current_image || ( format != mlt_image_none && format != mlt_image_glsl && format != self->format ) ) )
{
QString interps = mlt_properties_get( properties, "rescale.interp" );
bool interp = ( interps != "nearest" ) && ( interps != "none" );
}
// Convert image to requested format
- if ( format != mlt_image_none && format != self->format )
+ if ( format != mlt_image_none && format != mlt_image_glsl && format != self->format )
{
uint8_t *buffer = NULL;