X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fmodules%2Fmod_yuv420p%2Ftrgt_yuv.cpp;h=bad2dcaf40d9f4b26f4b0f2b8af65ac2cfa87a56;hb=9459638ad6797b8139f1e9f0715c96076dbf0890;hp=8dcfb5ec9316be657aa9ccae4c0eb0edcf703e3c;hpb=cc54c38609ee9745ad678e5e9b9d7d2912be9c95;p=synfig.git diff --git a/synfig-core/trunk/src/modules/mod_yuv420p/trgt_yuv.cpp b/synfig-core/trunk/src/modules/mod_yuv420p/trgt_yuv.cpp index 8dcfb5e..bad2dca 100644 --- a/synfig-core/trunk/src/modules/mod_yuv420p/trgt_yuv.cpp +++ b/synfig-core/trunk/src/modules/mod_yuv420p/trgt_yuv.cpp @@ -6,6 +6,7 @@ ** ** \legal ** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley +** Copyright (c) 2007 Chris Moore ** ** This package is free software; you can redistribute it and/or ** modify it under the terms of the GNU General Public License as @@ -64,7 +65,7 @@ SYNFIG_TARGET_SET_CVS_ID(yuv,"$Id$"); yuv::yuv(const char *FILENAME): filename(FILENAME), - file( (filename=="-")?stdout:fopen(filename.c_str(),"wb") ), + file( (filename=="-")?stdout:fopen(filename.c_str(),POPEN_BINARY_WRITE_TYPE) ), dithering(true) { // YUV420P doesn't have an alpha channel @@ -76,6 +77,18 @@ yuv::~yuv() } bool +yuv::init() +{ + if (!file) + return false; + + fprintf(file.get(), "YUV4MPEG2 W%d H%d F%d:1 Ip\n", + desc.get_w(), desc.get_h(), + round_to_int(desc.get_frame_rate())); + return true; +} + +bool yuv::set_rend_desc(RendDesc *given_desc) { given_desc->clear_flags(); @@ -93,8 +106,9 @@ yuv::set_rend_desc(RendDesc *given_desc) } bool -yuv::start_frame(synfig::ProgressCallback *callback) +yuv::start_frame(synfig::ProgressCallback */*callback*/) { + fprintf(file.get(), "FRAME\n"); return static_cast(file); }