Commit Graph

5 Commits (8b640fae24b4c34be12d9e6e55b008038c4cadac)

Author SHA1 Message Date
jp9000 41a3a30655 win-mf: Deprecate AMD Media Foundation H.264 encoder 2016-11-03 14:24:53 -07:00
jp9000 17132ba27f win-mf: Deprecate MF NVENC encoder 2016-04-19 09:20:27 -07:00
jp9000 81313dfd35 win-mf: Deprecate MF QSV encoder 2016-04-19 08:29:23 -07:00
jp9000 8280dbc596 win-mf: Do not register encoder if it can't create
It seems that certain encoders (quicksync) do not have proper back-end
support in the windows media foundation libraries for certain CPUs.
Quicksync doesn't appear to support CPUs that are not haswell (4xxx) or
above.  It's really annoying, but there's not much we can do about it
until we implement our own custom quicksync implementation.

This check simply makes it attempt to spawn an encoder to check to see
whether the encoder can actually be created before registering an
encoder.
2015-09-17 16:52:53 -07:00
jp9000 afa2985f64 win-mf: Add media foundation h264 encoder
Implements hardware encoders through the Media Foundation interface
provided by Microsoft.

Supports:
- Quicksync (Intel)
- VCE (AMD)
- NVENC (NVIDIA, might only be supported through MF on Windows 10)

Notes:
- NVENC and VCE do not appear to have proper CBR implementations.  This
  isn't a fault of our code, but the Media Foundation libraries.
  Quicksync however appears to be fine.
2015-09-16 15:16:26 -07:00