diff --git a/VapourSynth/libavsmash_source.c b/VapourSynth/libavsmash_source.c index c441025b..99d25fae 100644 --- a/VapourSynth/libavsmash_source.c +++ b/VapourSynth/libavsmash_source.c @@ -287,7 +287,9 @@ static const VSFrameRef *VS_CC vs_filter_get_frame( int n, int activation_reason vsapi->setFilterError( "lsmas: failed to output an alpha video frame.", frame_ctx ); return NULL; } - VSMap *props = vsapi->getFramePropsRW( vs_frame ); + VSMap *props = vsapi->getFramePropsRW( vs_frame2 ); + vsapi->propSetFrame( props, "_ColorRange", 0, paReplace ); // alpha clip always full range + props = vsapi->getFramePropsRW( vs_frame ); vsapi->propSetFrame( props, "_Alpha", vs_frame2, paAppend ); vsapi->freeFrame( vs_frame2 ); } diff --git a/VapourSynth/lwlibav_source.c b/VapourSynth/lwlibav_source.c index b8144988..f7caeb8f 100644 --- a/VapourSynth/lwlibav_source.c +++ b/VapourSynth/lwlibav_source.c @@ -274,7 +274,9 @@ static const VSFrameRef *VS_CC vs_filter_get_frame( int n, int activation_reason vsapi->setFilterError( "lsmas: failed to output an alpha video frame.", frame_ctx ); return NULL; } - VSMap *props = vsapi->getFramePropsRW( vs_frame ); + VSMap *props = vsapi->getFramePropsRW( vs_frame2 ); + vsapi->propSetFrame( props, "_ColorRange", 0, paReplace ); // alpha clip always full range + props = vsapi->getFramePropsRW( vs_frame ); vsapi->propSetFrame( props, "_Alpha", vs_frame2, paAppend ); vsapi->freeFrame( vs_frame2 ); }