X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fguicast%2Fvframe.C;h=36418704aa8d277c2a2bb4751a529b9c4e1178f9;hb=89ad004d909a8ae5dba635a2a11f9290aa14b352;hp=1eec314bb0c7757468a98cdb23f65953cd10934e;hpb=30bdb85eb33a8ee7ba675038a86c6be59c43d7bd;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/guicast/vframe.C b/cinelerra-5.1/guicast/vframe.C index 1eec314b..36418704 100644 --- a/cinelerra-5.1/guicast/vframe.C +++ b/cinelerra-5.1/guicast/vframe.C @@ -790,6 +790,11 @@ int VFrame::write_png(const char *path) png_cmodel = PNG_COLOR_TYPE_RGB; break; + case BC_RGBA8888: + case BC_YUVA8888: + png_cmodel = PNG_COLOR_TYPE_RGB_ALPHA; + break; + case BC_A8: png_cmodel = PNG_COLOR_TYPE_GRAY; break; @@ -1042,7 +1047,7 @@ int VFrame::copy_from(VFrame *frame) return 0; } -int VFrame::transfer_from(VFrame *that, int bg_color) +int VFrame::transfer_from(VFrame *that, int bg_color, int in_x, int in_y, int in_w, int in_h) { if( this->get_color_model() == that->get_color_model() && this->get_w() == that->get_w() && this->get_h() == that->get_h() ) @@ -1083,7 +1088,7 @@ int VFrame::transfer_from(VFrame *that, int bg_color) BC_CModels::transfer(outp, this->get_color_model(), 0, 0, this->get_w(), this->get_h(), this->get_w(), inp, that->get_color_model(), - 0, 0, that->get_w(), that->get_h(), that->get_w(), + in_x, in_y, in_w, in_h, that->get_w(), bg_color); #endif return 0;