You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-11-23 21:54:53 +02:00
doc/encoders: Document MediaFoundation encoders
This commit is contained in:
@@ -3414,11 +3414,100 @@ Maximum quantization parameter for B frame.
|
|||||||
@section MediaFoundation
|
@section MediaFoundation
|
||||||
|
|
||||||
This provides wrappers to encoders (both audio and video) in the
|
This provides wrappers to encoders (both audio and video) in the
|
||||||
MediaFoundation framework. It can access both SW and HW encoders.
|
MediaFoundation framework. It supports both software and hardware encoders
|
||||||
|
through the following codecs:
|
||||||
|
|
||||||
|
@itemize
|
||||||
|
@item h264_mf
|
||||||
|
@item hevc_mf
|
||||||
|
@item av1_mf
|
||||||
|
@end itemize
|
||||||
|
|
||||||
Video encoders can take input in either of nv12 or yuv420p form
|
Video encoders can take input in either of nv12 or yuv420p form
|
||||||
(some encoders support both, some support only either - in practice,
|
(some encoders support both, some support only either - in practice,
|
||||||
nv12 is the safer choice, especially among HW encoders).
|
nv12 is the safer choice, especially among HW encoders).
|
||||||
|
|
||||||
|
Hardware-accelerated encoding is supported via D3D11, including hardware
|
||||||
|
scaling capabilities through the scale_d3d11 filter.
|
||||||
|
|
||||||
|
To list all available options for the MediaFoundation encoders, use:
|
||||||
|
@command{ffmpeg -h encoder=h264_mf}
|
||||||
|
|
||||||
|
@subsection Options
|
||||||
|
|
||||||
|
@table @option
|
||||||
|
@item rate_control
|
||||||
|
Select rate control mode. Available modes:
|
||||||
|
|
||||||
|
@table @samp
|
||||||
|
@item default
|
||||||
|
Default mode
|
||||||
|
@item cbr
|
||||||
|
CBR mode
|
||||||
|
@item pc_vbr
|
||||||
|
Peak constrained VBR mode
|
||||||
|
@item u_vbr
|
||||||
|
Unconstrained VBR mode
|
||||||
|
@item quality
|
||||||
|
Quality mode
|
||||||
|
@item ld_vbr
|
||||||
|
Low delay VBR mode (requires Windows 8+)
|
||||||
|
@item g_vbr
|
||||||
|
Global VBR mode (requires Windows 8+)
|
||||||
|
@item gld_vbr
|
||||||
|
Global low delay VBR mode (requires Windows 8+)
|
||||||
|
@end table
|
||||||
|
|
||||||
|
@item scenario
|
||||||
|
Select usage scenario. Available scenarios:
|
||||||
|
|
||||||
|
@table @samp
|
||||||
|
@item default
|
||||||
|
Default scenario
|
||||||
|
@item display_remoting
|
||||||
|
Display remoting scenario
|
||||||
|
@item video_conference
|
||||||
|
Video conference scenario
|
||||||
|
@item archive
|
||||||
|
Archive scenario
|
||||||
|
@item live_streaming
|
||||||
|
Live streaming scenario
|
||||||
|
@item camera_record
|
||||||
|
Camera record scenario
|
||||||
|
@item display_remoting_with_feature_map
|
||||||
|
Display remoting with feature map scenario
|
||||||
|
@end table
|
||||||
|
|
||||||
|
@item quality
|
||||||
|
Set encoding quality (0-100). -1 means default quality.
|
||||||
|
|
||||||
|
@item hw_encoding
|
||||||
|
Force hardware encoding (0-1). Default is 0 (disabled).
|
||||||
|
|
||||||
|
@end table
|
||||||
|
|
||||||
|
@subsection Examples
|
||||||
|
|
||||||
|
Hardware encoding:
|
||||||
|
@example
|
||||||
|
ffmpeg -i input.mp4 -c:v h264_mf -hw_encoding 1 output.mp4
|
||||||
|
@end example
|
||||||
|
|
||||||
|
Hardware-accelerated decoding with hardware encoding:
|
||||||
|
@example
|
||||||
|
ffmpeg -hwaccel d3d11va -i input.mp4 -c:v h264_mf -hw_encoding 1 output.mp4
|
||||||
|
@end example
|
||||||
|
|
||||||
|
Hardware-accelerated decoding and encoding with scaling:
|
||||||
|
@example
|
||||||
|
ffmpeg -hwaccel d3d11va -hwaccel_output_format d3d11 -i input.mp4 -c:v h264_mf -hw_encoding 1 -vf scale_d3d11=1920:1080 output.mp4
|
||||||
|
@end example
|
||||||
|
|
||||||
|
Hardware decoding and encoding with quality setting:
|
||||||
|
@example
|
||||||
|
ffmpeg -hwaccel d3d11va -hwaccel_output_format d3d11 -i input.mp4 -c:v hevc_mf -hw_encoding 1 -quality 80 output.mp4
|
||||||
|
@end example
|
||||||
|
|
||||||
@section Microsoft RLE
|
@section Microsoft RLE
|
||||||
|
|
||||||
Microsoft RLE aka MSRLE encoder.
|
Microsoft RLE aka MSRLE encoder.
|
||||||
|
|||||||
Reference in New Issue
Block a user