X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fmodules%2Fvmfx%2Fproducer_pgm.c;h=c0b342c2920623c9907ed34dd949ae12e108e77b;hb=facc6328e46eb0c973c6293390a14258abf071d4;hp=6713317cff4a1de08aac8922c40f1f9cb0a75abe;hpb=b1616107824f9c1b2e83c97d9a8d3b0cc700ef5f;p=mlt diff --git a/src/modules/vmfx/producer_pgm.c b/src/modules/vmfx/producer_pgm.c index 6713317c..c0b342c2 100644 --- a/src/modules/vmfx/producer_pgm.c +++ b/src/modules/vmfx/producer_pgm.c @@ -45,8 +45,8 @@ mlt_producer producer_pgm_init( mlt_profile profile, mlt_service_type type, cons this->close = ( mlt_destructor )producer_close; mlt_properties_set( properties, "resource", resource ); mlt_properties_set_data( properties, "image", image, 0, mlt_pool_release, NULL ); - mlt_properties_set_int( properties, "real_width", width ); - mlt_properties_set_int( properties, "real_height", height ); + mlt_properties_set_int( properties, "meta.media.width", width ); + mlt_properties_set_int( properties, "meta.media.height", height ); } else { @@ -66,7 +66,7 @@ static int read_pgm( char *name, uint8_t **image, int *width, int *height, int * { uint8_t *input = NULL; int error = 0; - FILE *f = fopen( name, "r" ); + FILE *f = fopen( name, "rb" ); char data[ 512 ]; // Initialise @@ -155,13 +155,13 @@ static int read_pgm( char *name, uint8_t **image, int *width, int *height, int * static int producer_get_image( mlt_frame this, uint8_t **buffer, mlt_image_format *format, int *width, int *height, int writable ) { mlt_producer producer = mlt_frame_pop_service( this ); - int real_width = mlt_properties_get_int( MLT_FRAME_PROPERTIES( this ), "real_width" ); - int real_height = mlt_properties_get_int( MLT_FRAME_PROPERTIES( this ), "real_height" ); + int real_width = mlt_properties_get_int( MLT_FRAME_PROPERTIES( this ), "meta.media.width" ); + int real_height = mlt_properties_get_int( MLT_FRAME_PROPERTIES( this ), "meta.media.height" ); int size = real_width * real_height; uint8_t *image = mlt_pool_alloc( size * 2 ); uint8_t *source = mlt_properties_get_data( MLT_PRODUCER_PROPERTIES( producer ), "image", NULL ); - mlt_properties_set_data( MLT_FRAME_PROPERTIES( this ), "image", image, size * 2, mlt_pool_release, NULL ); + mlt_frame_set_image( this, image, size * 2, mlt_pool_release ); *width = real_width; *height = real_height; @@ -183,7 +183,6 @@ static int producer_get_frame( mlt_producer producer, mlt_frame_ptr frame, int i mlt_properties properties = MLT_FRAME_PROPERTIES( *frame ); // Pass the data on the frame properties - mlt_properties_pass_list( properties, MLT_PRODUCER_PROPERTIES( producer ), "real_width,real_height" ); mlt_properties_set_int( properties, "has_image", 1 ); mlt_properties_set_int( properties, "progressive", 1 ); mlt_properties_set_double( properties, "aspect_ratio", 1 );