X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.0%2Fcinelerra%2Ffiledv.h;fp=cinelerra-5.0%2Fcinelerra%2Ffiledv.h;h=0000000000000000000000000000000000000000;hb=30bdb85eb33a8ee7ba675038a86c6be59c43d7bd;hp=5424883052214950d90a802704c731f94a23f7fd;hpb=52fcc46226f9df46f9ce9d0566dc568455a7db0b;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.0/cinelerra/filedv.h b/cinelerra-5.0/cinelerra/filedv.h deleted file mode 100644 index 54248830..00000000 --- a/cinelerra-5.0/cinelerra/filedv.h +++ /dev/null @@ -1,143 +0,0 @@ - -/* - * CINELERRA - * Copyright (C) 2004 Richard Baverstock - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - */ - -#ifndef FILEDV_H -#define FILEDV_H - -#include "../config.h" -#include "filebase.h" -#include "file.inc" - -#ifdef DV_USE_FFMPEG -#include -#endif - -#include - - -class FileDV : public FileBase -{ -public: - FileDV(Asset *asset, File *file); - ~FileDV(); - - static void get_parameters(BC_WindowBase *parent_window, - Asset *asset, - BC_WindowBase* &format_window, - int audio_options, - int video_options); - - int reset_parameters_derived(); - int open_file(int rd, int wr); - - static int check_sig(Asset *asset); - int close_file_derived(); - - int64_t get_video_position(); - int64_t get_audio_position(); - - int set_video_position(int64_t x); - int set_audio_position(int64_t x); - - int audio_samples_copy(double **buffer, int64_t len); - - int write_samples(double **buffer, int64_t len); - int write_frames(VFrame ***frames, int len); - - int read_compressed_frame(VFrame *buffer); - int write_compressed_frame(VFrame *buffers); - - int64_t compressed_frame_size(); - - int read_samples(double *buffer, int64_t len); - int read_frame(VFrame *frame); - - int colormodel_supported(int colormodel); - - int can_copy_from(Edit *edit, int64_t position); - - static int get_best_colormodel(Asset *asset, int driver); - - int get_audio_frame(int64_t pos); - int get_audio_offset(int64_t pos); - -private: - FILE *stream; - - Mutex *stream_lock; - Mutex *decoder_lock; - Mutex *video_position_lock; - - dv_decoder_t *decoder; - dv_encoder_t *encoder; - dv_encoder_t *audio_encoder; - - int64_t audio_position; - int64_t video_position; - - unsigned char *video_buffer; - unsigned char *audio_buffer; - - int16_t **audio_sample_buffer; - int audio_sample_buffer_start; - int audio_sample_buffer_end; - int audio_sample_buffer_len; - int audio_sample_buffer_maxsize; - - int audio_frames_written; - - int output_size; - int isPAL; -}; - - -class DVConfigAudio: public BC_Window -{ -public: - DVConfigAudio(BC_WindowBase *parent_window, Asset *asset); - ~DVConfigAudio(); - - void create_objects(); - int close_event(); - -private: - Asset *asset; - BC_WindowBase *parent_window; -}; - - - -class DVConfigVideo: public BC_Window -{ -public: - DVConfigVideo(BC_WindowBase *parent_window, Asset *asset); - ~DVConfigVideo(); - - void create_objects(); - int close_event(); - -private: - Asset *asset; - BC_WindowBase *parent_window; -}; - - -#endif