summaryrefslogtreecommitdiffstats
path: root/video/hwdec.h
diff options
context:
space:
mode:
Diffstat (limited to 'video/hwdec.h')
-rw-r--r--video/hwdec.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/video/hwdec.h b/video/hwdec.h
index 69fb86a277..a78bc09517 100644
--- a/video/hwdec.h
+++ b/video/hwdec.h
@@ -5,7 +5,7 @@
struct mp_image_pool;
-// keep in sync with --hwdec option (see mp_hwdec_names)
+// (for some legacy stuff)
enum hwdec_type {
HWDEC_NONE = 0,
HWDEC_AUTO,
@@ -34,9 +34,6 @@ enum hwdec_type {
#define HWDEC_IS_AUTO(x) ((x) == HWDEC_AUTO || (x) == HWDEC_AUTO_COPY)
-// hwdec_type names (options.c)
-extern const struct m_opt_choice_alternatives mp_hwdec_names[];
-
struct mp_hwdec_ctx {
enum hwdec_type type; // (never HWDEC_NONE or HWDEC_IS_AUTO)
const char *driver_name; // NULL if unknown/not loaded
@@ -79,6 +76,14 @@ void hwdec_devices_destroy(struct mp_hwdec_devices *devs);
struct mp_hwdec_ctx *hwdec_devices_get(struct mp_hwdec_devices *devs,
enum hwdec_type type);
+struct AVBufferRef;
+
+// Like hwdec_devices_get(), but search by AV_HWDEVICE_TYPE_* type.
+// Contains a wrapped AVHWDeviceContext.
+// Beware that this creates a _new_ reference.
+struct AVBufferRef *hwdec_devices_get_lavc(struct mp_hwdec_devices *devs,
+ int av_hwdevice_type);
+
// For code which still strictly assumes there is 1 (or none) device.
struct mp_hwdec_ctx *hwdec_devices_get_first(struct mp_hwdec_devices *devs);