mirror of https://github.com/ErsatzTV/ErsatzTV.git
16 changed files with 112 additions and 11 deletions
@ -0,0 +1,15 @@ |
|||||||
|
using ErsatzTV.FFmpeg.Format; |
||||||
|
|
||||||
|
namespace ErsatzTV.FFmpeg.Encoder.Amf; |
||||||
|
|
||||||
|
public class EncoderH264Amf : EncoderBase |
||||||
|
{ |
||||||
|
public override string Name => "h264_amf"; |
||||||
|
public override StreamKind Kind => StreamKind.Video; |
||||||
|
|
||||||
|
public override FrameState NextState(FrameState currentState) => currentState with |
||||||
|
{ |
||||||
|
VideoFormat = VideoFormat.H264, |
||||||
|
FrameDataLocation = FrameDataLocation.Hardware |
||||||
|
}; |
||||||
|
} |
||||||
@ -0,0 +1,15 @@ |
|||||||
|
using ErsatzTV.FFmpeg.Format; |
||||||
|
|
||||||
|
namespace ErsatzTV.FFmpeg.Encoder.Amf; |
||||||
|
|
||||||
|
public class EncoderHevcAmf : EncoderBase |
||||||
|
{ |
||||||
|
public override string Name => "hevc_amf"; |
||||||
|
public override StreamKind Kind => StreamKind.Video; |
||||||
|
|
||||||
|
public override FrameState NextState(FrameState currentState) => currentState with |
||||||
|
{ |
||||||
|
VideoFormat = VideoFormat.Hevc, |
||||||
|
FrameDataLocation = FrameDataLocation.Hardware |
||||||
|
}; |
||||||
|
} |
||||||
@ -0,0 +1,11 @@ |
|||||||
|
namespace ErsatzTV.FFmpeg.Option.HardwareAcceleration; |
||||||
|
|
||||||
|
public class AmfHardwareAccelerationOption : GlobalOption |
||||||
|
{ |
||||||
|
public override IList<string> GlobalOptions => new List<string> { "-hwaccel", "dxva2" }; |
||||||
|
|
||||||
|
public override FrameState NextState(FrameState currentState) => currentState with |
||||||
|
{ |
||||||
|
FrameDataLocation = FrameDataLocation.Software |
||||||
|
}; |
||||||
|
} |
||||||
Loading…
Reference in new issue