mpv/video/filter
Philip Langdale 989d873d6e filters: lavfi: allow hwdec_interop selection for filters
Today, lavfi filters are provided a hw_device from the first
hwdec_interop that was loaded, regardless of whether it's the right one
or not. In most situations where a hardware based filter is used, we
need more control over the device.

In this change, a `hwdec_interop` option is added to the lavfi wrapper
filter configuration and this is used to pick the correct hw_device to
inject into the filter or graph (in the case of a graph, all filters
get the same device).

Note that this requires the use of the explicit lavfi syntax to allow
for the extra configuration.

eg:

```
mpv --vf=hwupload
```

becomes

```
mpv --vf=lavfi=[hwupload]:hwdec_interop=cuda-nvdec
```

or

```
mpv --vf=lavfi-bridge=[hwupload]:hwdec_interop=cuda-nvdec
```
2022-09-21 09:39:34 -07:00
..
refqueue.c video: rewrite filtering glue code 2018-01-30 03:10:27 -08:00
refqueue.h video: rewrite filtering glue code 2018-01-30 03:10:27 -08:00
vf_d3d11vpp.c vo: hwdec: do hwdec interop lookup by image format 2022-09-21 09:39:34 -07:00
vf_fingerprint.c options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
vf_format.c vf_format: support forwarding/stripping film grain metadata 2022-04-05 15:02:18 +02:00
vf_gpu.c options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
vf_sub.c vf_sub: restore OSD if removed 2021-05-07 15:01:15 +02:00
vf_vapoursynth.c video: change chroma_w/chroma_h fields to use shift instead of size 2020-04-23 13:24:35 +02:00
vf_vavpp.c filters: lavfi: allow hwdec_interop selection for filters 2022-09-21 09:39:34 -07:00
vf_vdpaupp.c filters: lavfi: allow hwdec_interop selection for filters 2022-09-21 09:39:34 -07:00