00001 #ifndef VIDEOOUT_NULL_H_
00002 #define VIDEOOUT_NULL_H_
00003
00004 #include <qmutex.h>
00005
00006 #include "videooutbase.h"
00007
00008 class VideoOutputNull : public VideoOutput
00009 {
00010 public:
00011 VideoOutputNull();
00012 ~VideoOutputNull();
00013
00014 bool Init(int width, int height, float aspect, WId winid,
00015 int winx, int winy, int winw, int winh, WId embedid = 0);
00016
00017 bool SetupDeinterlace(bool, const QString &ovrf = "")
00018 { (void)ovrf; return false; }
00019
00020 void PrepareFrame(VideoFrame *buffer, FrameScanType);
00021 void Show(FrameScanType );
00022
00023 void CreatePauseFrame(void);
00024 bool InputChanged(const QSize &input_size,
00025 float aspect,
00026 MythCodecID av_codec_id,
00027 void *codec_private);
00028 void Zoom(ZoomDirection direction);
00029
00030 void EmbedInWidget(WId wid, int x, int y, int w, int h);
00031 void StopEmbedding(void);
00032
00033 int GetRefreshRate(void);
00034
00035 void DrawUnusedRects(bool sync = true);
00036
00037 void UpdatePauseFrame(void);
00038 void ProcessFrame(VideoFrame *frame, OSD *osd,
00039 FilterChain *filterList,
00040 NuppelVideoPlayer *pipPlayer);
00041
00042 static QStringList GetAllowedRenderers(MythCodecID myth_codec_id,
00043 const QSize &video_dim);
00044
00045 private:
00046 QMutex global_lock;
00047 VideoFrame av_pause_frame;
00048 };
00049
00050 #endif