... | @@ -3,16 +3,22 @@ |
... | @@ -3,16 +3,22 @@ |
|
I like the idea of the `hwaccel` param to `av.open` to allow for some magic, e.g.:
|
|
I like the idea of the `hwaccel` param to `av.open` to allow for some magic, e.g.:
|
|
|
|
|
|
```
|
|
```
|
|
av.open(..., hwaccel=True) # automatically set up what it can.
|
|
av.open(..., hwaccel=True or 'auto') # automatically set up what it can.
|
|
av.open(..., hwaccel='CUDA') # use cuda with default options
|
|
av.open(..., hwaccel='CUDA') # use cuda with default options
|
|
av.open(..., hwaccel='/dev/gpu0') # use whatever device type with the given device
|
|
av.open(..., hwaccel='/dev/gpu0') # use whatever device type with the given device
|
|
av.open(..., hwaccel=dict(type='CUDA', device='/dev/gpu0', ...)) # more options
|
|
av.open(..., hwaccel=dict(type='CUDA', device='/dev/gpu0', ...)) # more options
|
|
```
|
|
```
|
|
|
|
|
|
|
|
If there are no options to pass, consider using a tuple to pass the device:
|
|
|
|
|
|
|
|
```
|
|
|
|
av.open(..., hwaccel=('CUDA', '/dev/gpu0'))
|
|
|
|
```
|
|
|
|
|
|
## TODO
|
|
## TODO
|
|
- [x] `av.hwdevice.HWDeviceType` enum
|
|
- [x] `av.hwdevice.HWDeviceType` enum
|
|
- [x] `av.codec.hwconfig.HWConfig`
|
|
- [x] `av.codec.hwconfig.HWConfig`
|
|
- [x] `av.codec.Codec.hardware_configs` tuple of `HWConfig`
|
|
- [x] `av.codec.Codec.hardware_configs` tuple of `HWConfig`
|
|
- [ ] Determine that there are even options to bother passing.
|
|
- [ ] Determine that there are even options to bother passing; it doesn't look like it.
|
|
- [ ] Design the `av.open` interface.
|
|
- [ ] Design the `av.open` interface.
|
|
- [ ] Implement it. |
|
- [ ] Implement it. |