11 #include "cores/AudioEngine/Utils/AEStreamInfo.h" 12 #include "cores/VideoPlayer/Process/ProcessInfo.h" 20 #include <libavutil/pixfmt.h> 33 using CreateHWVideoCodec =
34 std::function<std::unique_ptr<CDVDVideoCodec>(
CProcessInfo& processInfo)>;
37 using CreateHWAudioCodec =
38 std::function<std::unique_ptr<CDVDAudioCodec>(
CProcessInfo& processInfo)>;
43 static std::unique_ptr<CDVDVideoCodec> CreateVideoCodec(
CDVDStreamInfo& hint,
51 static std::unique_ptr<CDVDAudioCodec> CreateAudioCodec(
CDVDStreamInfo& hint,
53 bool allowpassthrough,
54 bool allowdtshddecode,
55 CAEStreamInfo::DataType ptStreamType);
57 static std::unique_ptr<CDVDOverlayCodec> CreateOverlayCodec(
CDVDStreamInfo& hint);
59 static void RegisterHWVideoCodec(
const std::string&
id, CreateHWVideoCodec createFunc);
60 static void ClearHWVideoCodecs();
62 static void RegisterHWAccel(
const std::string&
id, CreateHWAccel createFunc);
63 static std::vector<std::string> GetHWAccels();
64 static void ClearHWAccels();
66 static void RegisterHWAudioCodec(
const std::string&
id, CreateHWAudioCodec createFunc);
67 static void ClearHWAudioCodecs();
71 static std::unique_ptr<CDVDVideoCodec> CreateVideoCodecHW(
const std::string&
id,
73 static std::unique_ptr<CDVDAudioCodec> CreateAudioCodecHW(
const std::string&
id,
76 static std::map<std::string, CreateHWVideoCodec> m_hwVideoCodecs;
77 static std::map<std::string, CreateHWAccel> m_hwAccels;
78 static std::map<std::string, CreateHWAudioCodec> m_hwAudioCodecs;
Definition: DVDStreamInfo.h:25
Definition: DVDCodecs.h:23
Definition: DVDFactoryCodec.h:40
Definition: DVDVideoCodec.h:248
Definition: DVDOverlayCodec.h:39
Definition: DVDDemux.h:124
Definition: ProcessInfo.h:26
Definition: DVDAudioCodec.h:48
Definition: DVDCodecs.h:15
Definition: DVDVideoCodec.h:110