X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=nageru%2Fquicksync_encoder.h;h=c900540d7016cf025e8e4816ce0c68ebc270a3ad;hb=d20534ce9ba195aa21291debc74ba13c6772042c;hp=97109ce48ebb6bf985eb406d347c63576ae19716;hpb=bdc9f1ea04141e71906d486f9d254c3346835e72;p=nageru diff --git a/nageru/quicksync_encoder.h b/nageru/quicksync_encoder.h index 97109ce..c900540 100644 --- a/nageru/quicksync_encoder.h +++ b/nageru/quicksync_encoder.h @@ -50,7 +50,7 @@ class Mux; class QSurface; class QuickSyncEncoderImpl; class RefCountedFrame; -class X264Encoder; +class VideoCodecInterface; namespace movit { class ResourcePool; @@ -63,10 +63,11 @@ class ResourcePool; // This class is _not_ thread-safe, except where mentioned. class QuickSyncEncoder { public: - QuickSyncEncoder(const std::string &filename, movit::ResourcePool *resource_pool, QSurface *surface, const std::string &va_display, int width, int height, const AVOutputFormat *oformat, X264Encoder *http_encoder, X264Encoder *disk_encoder, DiskSpaceEstimator *disk_space_estimator); + QuickSyncEncoder(const std::string &filename, movit::ResourcePool *resource_pool, QSurface *surface, const std::string &va_display, int width, int height, const AVOutputFormat *oformat, VideoCodecInterface *http_encoder, VideoCodecInterface *disk_encoder, DiskSpaceEstimator *disk_space_estimator); ~QuickSyncEncoder(); - void set_stream_mux(Mux *mux); // Does not take ownership. Must be called unless x264 is used for the stream. + void set_http_mux(Mux *mux); // Does not take ownership. Must be called unless x264 is used for the stream. + void set_srt_mux(Mux *mux); // Does not take ownership. Must be called if SRT is to be used, unless x264 is used for the stream. void add_audio(int64_t pts, std::vector audio); // Thread-safe. bool is_zerocopy() const; // Thread-safe.