X-Git-Url: http://git.cinelerra-gg.org/git/?p=goodguy%2Fhistory.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fiec61883output.C;h=919b95b410766bb3d07bbc8c73dbad360b2a01af;hp=9a54a1154bfd63ddaefda22b9f21648f5a88c0c8;hb=a19a685a46ddc630010788707d9e5b9d2342af46;hpb=2e48b660e37eb5c661264d601211e16cb6cd6e89 diff --git a/cinelerra-5.1/cinelerra/iec61883output.C b/cinelerra-5.1/cinelerra/iec61883output.C index 9a54a115..919b95b4 100644 --- a/cinelerra-5.1/cinelerra/iec61883output.C +++ b/cinelerra-5.1/cinelerra/iec61883output.C @@ -97,6 +97,7 @@ IEC61883Output::~IEC61883Output() if(temp_frame2) delete temp_frame2; if(video_encoder) dv_delete(video_encoder); if(audio_encoder) dv_delete(audio_encoder); + if(encoder) dv_delete(encoder); if(buffer_lock) delete buffer_lock; if(position_lock) delete position_lock; if(frame) iec61883_dv_close(frame); @@ -126,6 +127,7 @@ void IEC61883Output::reset() position_lock = 0; video_encoder = 0; audio_encoder = 0; + encoder = 0; audio_buffer = 0; audio_samples = 0; temp_frame = 0; @@ -190,13 +192,13 @@ int IEC61883Output::open(int port, // Create buffers buffer = new char*[total_buffers]; + bzero(buffer, sizeof(char*) * total_buffers); for(int i = 0; i < length; i++) buffer[i] = new char[DV_PAL_SIZE]; buffer_size = new int[total_buffers]; buffer_valid = new int[total_buffers]; bzero(buffer_size, sizeof(int) * total_buffers); bzero(buffer_valid, sizeof(int) * total_buffers); - bzero(buffer, sizeof(char*) * total_buffers); video_lock = new Condition(0, "IEC61883Output::video_lock"); audio_lock = new Condition(0, "IEC61883Output::audio_lock"); start_lock = new Condition(0, "IEC61883Output::start_lock");