diff options
| author | liamwhite <liamwhite@users.noreply.github.com> | 2023-05-28 13:17:58 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-05-28 13:17:58 -0400 |
| commit | bf3f4502114fb8f05531608b519d3c4e83a1e9a2 (patch) | |
| tree | 0f380da3bc450bb5c78943c16955bd9f38dda365 /src/video_core/host1x/codecs/codec.h | |
| parent | 09743fa6814746a24bec0c438ed2ed0c0a6dd2d1 (diff) | |
| parent | 7701a00a0277ad59c1b743b9aa14c6861624b847 (diff) | |
Merge pull request #10283 from danilaml/support-interlaced-videos
Add support for deinterlaced video playback
Diffstat (limited to 'src/video_core/host1x/codecs/codec.h')
| -rw-r--r-- | src/video_core/host1x/codecs/codec.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/video_core/host1x/codecs/codec.h b/src/video_core/host1x/codecs/codec.h index 0d45fb7fe..06fe00a4b 100644 --- a/src/video_core/host1x/codecs/codec.h +++ b/src/video_core/host1x/codecs/codec.h @@ -15,6 +15,7 @@ extern "C" { #pragma GCC diagnostic ignored "-Wconversion" #endif #include <libavcodec/avcodec.h> +#include <libavfilter/avfilter.h> #if defined(__GNUC__) || defined(__clang__) #pragma GCC diagnostic pop #endif @@ -61,17 +62,24 @@ public: private: void InitializeAvCodecContext(); + void InitializeAvFilters(AVFrame* frame); + void InitializeGpuDecoder(); bool CreateGpuAvDevice(); bool initialized{}; + bool filters_initialized{}; Host1x::NvdecCommon::VideoCodec current_codec{Host1x::NvdecCommon::VideoCodec::None}; const AVCodec* av_codec{nullptr}; AVCodecContext* av_codec_ctx{nullptr}; AVBufferRef* av_gpu_decoder{nullptr}; + AVFilterContext* av_filter_src_ctx{nullptr}; + AVFilterContext* av_filter_sink_ctx{nullptr}; + AVFilterGraph* av_filter_graph{nullptr}; + Host1x::Host1x& host1x; const Host1x::NvdecCommon::NvdecRegisters& state; std::unique_ptr<Decoder::H264> h264_decoder; |
