remove old quicktime, replaced with current ffmpeg
[goodguy/history.git] / cinelerra-5.0 / cinelerra / ffmpeg.h
index 41941e730e61f50e449cadf2ddd2e0dcf3405ce5..931e9c4d8902990747613a304a56dca04fbc516f 100644 (file)
@@ -77,9 +77,12 @@ public:
        virtual int encode_activate();
        virtual int decode_activate();
        int read_packet();
+       int write_packet(FFPacket &pkt);
+       int flush();
        int decode(AVFrame *frame);
 
        virtual int decode_frame(AVFrame *frame, int &got_frame) = 0;
+       virtual int encode_frame(FFPacket &pkt, AVFrame *frame, int &got_frame) = 0;
        virtual int init_frame(AVFrame *frame) = 0;
        virtual int create_filter(const char *filter_spec,
                AVCodecContext *src_ctx, AVCodecContext *sink_ctx) = 0;
@@ -126,13 +129,8 @@ public:
        int reading, writing;
        int eof;
 
-       int st_eof() {
-               return eof;
-       }
-       void st_eof(int v) {
-               if( !v ) { flushed = 0;  need_packet = 1; }
-               eof = v;
-       }
+       int st_eof() { return eof; }
+       void st_eof(int v) { eof = v; }
 };
 
 class FFAudioStream : public FFStream {
@@ -158,6 +156,7 @@ public:
        virtual ~FFAudioStream();
        int load_history(uint8_t **data, int len);
        int decode_frame(AVFrame *frame, int &got_frame);
+       int encode_frame(FFPacket &pkt, AVFrame *frame, int &got_frame);
        int create_filter(const char *filter_spec,
                AVCodecContext *src_ctx, AVCodecContext *sink_ctx);
 
@@ -188,6 +187,7 @@ public:
        FFVideoStream(FFMPEG *ffmpeg, AVStream *strm, int idx);
        virtual ~FFVideoStream();
        int decode_frame(AVFrame *frame, int &got_frame);
+       int encode_frame(FFPacket &pkt, AVFrame *frame, int &got_frame);
        int create_filter(const char *filter_spec,
                AVCodecContext *src_ctx, AVCodecContext *sink_ctx);
 
@@ -240,7 +240,7 @@ public:
        int get_encoder(FILE *fp,
                char *format, char *codec, char *bsfilter, char *bsargs);
        int read_options(const char *options, AVDictionary *&opts);
-       int scan_options(const char *options, AVDictionary *&opts);
+       int scan_options(const char *options, AVDictionary *&opts, AVStream *st);
        int read_options(FILE *fp, const char *options, AVDictionary *&opts);
        int load_options(const char *options, AVDictionary *&opts);
        static int load_options(const char *path, char *bfr, int len);