mirror of
https://github.com/Almamu/linux-wallpaperengine.git
synced 2025-07-14 13:22:23 +08:00

Fixed README.md to properly reflect all dependencies in the command examples Added support for audio looping Signed-off-by: Alexis Maiquez <almamu@almamu.com>
39 lines
856 B
C++
39 lines
856 B
C++
#pragma once
|
|
|
|
#include "WallpaperEngine/Core/CVideo.h"
|
|
|
|
#include "WallpaperEngine/Audio/CAudioStream.h"
|
|
#include "WallpaperEngine/Render/CWallpaper.h"
|
|
#include <mpv/client.h>
|
|
#include <mpv/render_gl.h>
|
|
|
|
namespace WallpaperEngine::Render
|
|
{
|
|
class CVideo : public CWallpaper
|
|
{
|
|
public:
|
|
CVideo (Core::CVideo* video, CRenderContext* context, CAudioContext* audioContext);
|
|
|
|
Core::CVideo* getVideo ();
|
|
|
|
uint32_t getWidth () const override;
|
|
uint32_t getHeight () const override;
|
|
|
|
void setSize (int64_t width, int64_t height);
|
|
|
|
protected:
|
|
void renderFrame (glm::ivec4 viewport) override;
|
|
|
|
friend class CWallpaper;
|
|
|
|
static const std::string Type;
|
|
|
|
private:
|
|
mpv_handle* m_mpv;
|
|
mpv_render_context* m_mpvGl;
|
|
|
|
int64_t m_width;
|
|
int64_t m_height;
|
|
};
|
|
};
|