X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=h264encode.h;h=2bbbed50f57069dfe4249eb0c31713d3d2d38cdc;hb=d7bba4abb3d56893399578f0540b9ded0a28380f;hp=e4ef1aba01377788a980749dae3ba2b07fef8e79;hpb=7a6878b637f9b323a83411d155437752cd83eff0;p=nageru diff --git a/h264encode.h b/h264encode.h index e4ef1ab..2bbbed5 100644 --- a/h264encode.h +++ b/h264encode.h @@ -27,9 +27,12 @@ #define _H264ENCODE_H extern "C" { +#include #include } #include +#include +#include #include #include #include @@ -45,13 +48,14 @@ extern "C" { #include "ref_counted_frame.h" #include "ref_counted_gl_sync.h" +class HTTPD; class QSurface; #define SURFACE_NUM 16 /* 16 surfaces for source YUV */ class H264Encoder { public: - H264Encoder(QSurface *surface, int width, int height, const char *output_filename); + H264Encoder(QSurface *surface, int width, int height, HTTPD *httpd); ~H264Encoder(); //void add_frame(FrameAllocator::Frame frame, GLsync fence); @@ -108,9 +112,8 @@ private: std::map> pending_audio_frames; // under frame_queue_mutex QSurface *surface; - AVFormatContext *avctx; - AVStream *avstream_video; - AVStream *avstream_audio; + AVCodecContext *context_audio; + HTTPD *httpd; }; #endif