* [FFmpeg-devel] [PATCH v2 1/2] doc/ffmpeg: update the documentation about qsv device creation
@ 2024-01-05 2:33 Xiang, Haihao
2024-01-05 2:33 ` [FFmpeg-devel] [PATCH v2 2/2] doc/ffmpeg: update the documentation about vaapi " Xiang, Haihao
2024-01-06 10:51 ` [FFmpeg-devel] [PATCH v2 1/2] doc/ffmpeg: update the documentation about qsv " Stefano Sabatini
0 siblings, 2 replies; 6+ messages in thread
From: Xiang, Haihao @ 2024-01-05 2:33 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Haihao Xiang
From: Haihao Xiang <haihao.xiang@intel.com>
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
---
doc/ffmpeg.texi | 26 ++++++++++++++++++++++++--
1 file changed, 24 insertions(+), 2 deletions(-)
diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
index 7246a46d2f..f095f402bd 100644
--- a/doc/ffmpeg.texi
+++ b/doc/ffmpeg.texi
@@ -1406,16 +1406,38 @@ If not specified, @samp{auto_any} is used.
platform-appropriate subdevice (@samp{dxva2} or @samp{d3d11va} or @samp{vaapi}) and then deriving a
QSV device from that.)
-Alternatively, @samp{child_device_type} helps to choose platform-appropriate subdevice type.
-On Windows @samp{d3d11va} is used as default subdevice type.
+The following options are recognized:
+@table @option
+@item child_device
+Specify a DRM render node on Linux or DirectX adapter on Windows
+@item child_device_type
+Choose platform-appropriate subdevice type. On Windows @samp{d3d11va} is used
+as default subdevice type.
+@end table
Examples:
@table @emph
+@item -init_hw_device qsv:hw,child_device=/dev/dri/renderD129
+Create a QSV device with @samp{MFX_IMPL_HARDWARE} on DRM render node /dev/dri/renderD129
+
+@item -init_hw_device qsv:hw,child_device=1
+Create a QSV device with @samp{MFX_IMPL_HARDWARE} on DirectX adapter 1. The subdevice
+type is @samp{d3d11va} if @code{--enable-libvpl} is specified at configuration time, the
+subdevice type is @samp{dxva2} if @code{--enable-libmfx} is specified at configuration time.
+
@item -init_hw_device qsv:hw,child_device_type=d3d11va
Choose the GPU subdevice with type @samp{d3d11va} and create QSV device with @samp{MFX_IMPL_HARDWARE}.
@item -init_hw_device qsv:hw,child_device_type=dxva2
Choose the GPU subdevice with type @samp{dxva2} and create QSV device with @samp{MFX_IMPL_HARDWARE}.
+
+@item -init_hw_device qsv:hw,child_device=1,child_device_type=d3d11va
+Create a QSV device with @samp{MFX_IMPL_HARDWARE} on DirectX adapter 1 with subdevice type @samp{d3d11va}
+
+@item -init_hw_device vaapi=va:/dev/dri/renderD129 -init_hw_device qsv=hw1@va
+Create a VAAPI device called @samp{va} on /dev/dri/renderD129, then derive a QSV device called @samp{hw1}
+from device @samp{va}
+
@end table
@item opencl
--
2.34.1
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 6+ messages in thread
* [FFmpeg-devel] [PATCH v2 2/2] doc/ffmpeg: update the documentation about vaapi device creation
2024-01-05 2:33 [FFmpeg-devel] [PATCH v2 1/2] doc/ffmpeg: update the documentation about qsv device creation Xiang, Haihao
@ 2024-01-05 2:33 ` Xiang, Haihao
2024-01-06 10:54 ` Stefano Sabatini
2024-01-06 10:51 ` [FFmpeg-devel] [PATCH v2 1/2] doc/ffmpeg: update the documentation about qsv " Stefano Sabatini
1 sibling, 1 reply; 6+ messages in thread
From: Xiang, Haihao @ 2024-01-05 2:33 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Haihao Xiang
From: Haihao Xiang <haihao.xiang@intel.com>
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
---
doc/ffmpeg.texi | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
index f095f402bd..8fb165c5df 100644
--- a/doc/ffmpeg.texi
+++ b/doc/ffmpeg.texi
@@ -1385,6 +1385,29 @@ If not specified, it will attempt to open the default X11 display (@emph{$DISPLA
and then the first DRM render node (@emph{/dev/dri/renderD128}), or the default
DirectX adapter on Windows.
+The following options are recognized:
+@table @option
+@item kernel_driver
+When @var{device} is not specified, use this option to specify the name of the kernel
+driver associated with the desired device. This option is only available when
+@emph{libdrm} works on Linux.
+@end table
+
+Examples:
+@table @emph
+@item -init_hw_device vaapi
+Create a vaapi device on the default device
+
+@item -init_hw_device vaapi:/dev/dri/renderD129
+Create a vaapi device on DRM render node /dev/dri/renderD129
+
+@item -init_hw_device vaapi:1
+Create a vaapi device on DirectX adapter 1
+
+@item -init_hw_device vaapi:,kernel_driver=i915
+Create a vaapi device on a device associated with kernel driver @samp{i915}
+@end table
+
@item vdpau
@var{device} is an X11 display name.
If not specified, it will attempt to open the default X11 display (@emph{$DISPLAY}).
--
2.34.1
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [FFmpeg-devel] [PATCH v2 1/2] doc/ffmpeg: update the documentation about qsv device creation
2024-01-05 2:33 [FFmpeg-devel] [PATCH v2 1/2] doc/ffmpeg: update the documentation about qsv device creation Xiang, Haihao
2024-01-05 2:33 ` [FFmpeg-devel] [PATCH v2 2/2] doc/ffmpeg: update the documentation about vaapi " Xiang, Haihao
@ 2024-01-06 10:51 ` Stefano Sabatini
2024-01-16 5:33 ` Xiang, Haihao
1 sibling, 1 reply; 6+ messages in thread
From: Stefano Sabatini @ 2024-01-06 10:51 UTC (permalink / raw)
To: FFmpeg development discussions and patches; +Cc: Haihao Xiang
On date Friday 2024-01-05 10:33:51 +0800, Xiang, Haihao wrote:
> From: Haihao Xiang <haihao.xiang@intel.com>
>
> Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
> ---
> doc/ffmpeg.texi | 26 ++++++++++++++++++++++++--
> 1 file changed, 24 insertions(+), 2 deletions(-)
>
> diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
> index 7246a46d2f..f095f402bd 100644
> --- a/doc/ffmpeg.texi
> +++ b/doc/ffmpeg.texi
> @@ -1406,16 +1406,38 @@ If not specified, @samp{auto_any} is used.
> platform-appropriate subdevice (@samp{dxva2} or @samp{d3d11va} or @samp{vaapi}) and then deriving a
> QSV device from that.)
>
> -Alternatively, @samp{child_device_type} helps to choose platform-appropriate subdevice type.
> -On Windows @samp{d3d11va} is used as default subdevice type.
> +The following options are recognized:
> +@table @option
> +@item child_device
> +Specify a DRM render node on Linux or DirectX adapter on Windows
missing dot at the end of complete sentence, here and below
> +@item child_device_type
> +Choose platform-appropriate subdevice type. On Windows @samp{d3d11va} is used
> +as default subdevice type.
Is this needed for non-Windows platforms?
> +@end table
>
> Examples:
> @table @emph
> +@item -init_hw_device qsv:hw,child_device=/dev/dri/renderD129
> +Create a QSV device with @samp{MFX_IMPL_HARDWARE} on DRM render node /dev/dri/renderD129
You can quote the device with @file{/dev/dri/renderD129}.
> +
> +@item -init_hw_device qsv:hw,child_device=1
> +Create a QSV device with @samp{MFX_IMPL_HARDWARE} on DirectX adapter 1. The subdevice
> +type is @samp{d3d11va} if @code{--enable-libvpl} is specified at configuration time, the
> +subdevice type is @samp{dxva2} if @code{--enable-libmfx} is specified at configuration time.
> +
> @item -init_hw_device qsv:hw,child_device_type=d3d11va
> Choose the GPU subdevice with type @samp{d3d11va} and create QSV device with @samp{MFX_IMPL_HARDWARE}.
>
> @item -init_hw_device qsv:hw,child_device_type=dxva2
> Choose the GPU subdevice with type @samp{dxva2} and create QSV device with @samp{MFX_IMPL_HARDWARE}.
> +
> +@item -init_hw_device qsv:hw,child_device=1,child_device_type=d3d11va
> +Create a QSV device with @samp{MFX_IMPL_HARDWARE} on DirectX adapter 1 with subdevice type @samp{d3d11va}
> +
> +@item -init_hw_device vaapi=va:/dev/dri/renderD129 -init_hw_device qsv=hw1@va
> +Create a VAAPI device called @samp{va} on /dev/dri/renderD129, then derive a QSV device called @samp{hw1}
> +from device @samp{va}
Looks good otherwise.
BTW, do you know why all hwaccels are not documented in a dedicated
file (hwaccels.texi or something)?
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [FFmpeg-devel] [PATCH v2 2/2] doc/ffmpeg: update the documentation about vaapi device creation
2024-01-05 2:33 ` [FFmpeg-devel] [PATCH v2 2/2] doc/ffmpeg: update the documentation about vaapi " Xiang, Haihao
@ 2024-01-06 10:54 ` Stefano Sabatini
2024-01-16 5:34 ` Xiang, Haihao
0 siblings, 1 reply; 6+ messages in thread
From: Stefano Sabatini @ 2024-01-06 10:54 UTC (permalink / raw)
To: FFmpeg development discussions and patches; +Cc: Haihao Xiang
On date Friday 2024-01-05 10:33:52 +0800, Xiang, Haihao wrote:
> From: Haihao Xiang <haihao.xiang@intel.com>
>
> Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
> ---
> doc/ffmpeg.texi | 23 +++++++++++++++++++++++
> 1 file changed, 23 insertions(+)
>
> diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
> index f095f402bd..8fb165c5df 100644
> --- a/doc/ffmpeg.texi
> +++ b/doc/ffmpeg.texi
> @@ -1385,6 +1385,29 @@ If not specified, it will attempt to open the default X11 display (@emph{$DISPLA
> and then the first DRM render node (@emph{/dev/dri/renderD128}), or the default
> DirectX adapter on Windows.
>
> +The following options are recognized:
> +@table @option
> +@item kernel_driver
> +When @var{device} is not specified, use this option to specify the name of the kernel
> +driver associated with the desired device. This option is only available when
> +@emph{libdrm} works on Linux.
Optional: might be good to specify a method to verify this condition.
> +@end table
> +
> +Examples:
> +@table @emph
> +@item -init_hw_device vaapi
> +Create a vaapi device on the default device
missing final dot here and below
> +
> +@item -init_hw_device vaapi:/dev/dri/renderD129
> +Create a vaapi device on DRM render node /dev/dri/renderD129
> +
> +@item -init_hw_device vaapi:1
> +Create a vaapi device on DirectX adapter 1
> +
> +@item -init_hw_device vaapi:,kernel_driver=i915
> +Create a vaapi device on a device associated with kernel driver @samp{i915}
> +@end table
> +
Looks good otherwise (but again, since hwaccels are probably
independent from ffmpeg they should be probably moved to a dedicated
manual).
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [FFmpeg-devel] [PATCH v2 1/2] doc/ffmpeg: update the documentation about qsv device creation
2024-01-06 10:51 ` [FFmpeg-devel] [PATCH v2 1/2] doc/ffmpeg: update the documentation about qsv " Stefano Sabatini
@ 2024-01-16 5:33 ` Xiang, Haihao
0 siblings, 0 replies; 6+ messages in thread
From: Xiang, Haihao @ 2024-01-16 5:33 UTC (permalink / raw)
To: ffmpeg-devel, stefasab
On Sa, 2024-01-06 at 11:51 +0100, Stefano Sabatini wrote:
> On date Friday 2024-01-05 10:33:51 +0800, Xiang, Haihao wrote:
> > From: Haihao Xiang <haihao.xiang@intel.com>
> >
> > Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
> > ---
> > doc/ffmpeg.texi | 26 ++++++++++++++++++++++++--
> > 1 file changed, 24 insertions(+), 2 deletions(-)
> >
> > diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
> > index 7246a46d2f..f095f402bd 100644
> > --- a/doc/ffmpeg.texi
> > +++ b/doc/ffmpeg.texi
> > @@ -1406,16 +1406,38 @@ If not specified, @samp{auto_any} is used.
> > platform-appropriate subdevice (@samp{dxva2} or @samp{d3d11va} or
> > @samp{vaapi}) and then deriving a
> > QSV device from that.)
> >
> > -Alternatively, @samp{child_device_type} helps to choose platform-
> > appropriate subdevice type.
> > -On Windows @samp{d3d11va} is used as default subdevice type.
> > +The following options are recognized:
> > +@table @option
>
> > +@item child_device
> > +Specify a DRM render node on Linux or DirectX adapter on Windows
>
> missing dot at the end of complete sentence, here and below
>
> > +@item child_device_type
> > +Choose platform-appropriate subdevice type. On Windows @samp{d3d11va} is
> > used
> > +as default subdevice type.
>
> Is this needed for non-Windows platforms?
>
> > +@end table
> >
> > Examples:
> > @table @emph
> > +@item -init_hw_device qsv:hw,child_device=/dev/dri/renderD129
>
> > +Create a QSV device with @samp{MFX_IMPL_HARDWARE} on DRM render node
> > /dev/dri/renderD129
>
> You can quote the device with @file{/dev/dri/renderD129}.
>
> > +
> > +@item -init_hw_device qsv:hw,child_device=1
> > +Create a QSV device with @samp{MFX_IMPL_HARDWARE} on DirectX adapter 1. The
> > subdevice
> > +type is @samp{d3d11va} if @code{--enable-libvpl} is specified at
> > configuration time, the
> > +subdevice type is @samp{dxva2} if @code{--enable-libmfx} is specified at
> > configuration time.
> > +
> > @item -init_hw_device qsv:hw,child_device_type=d3d11va
> > Choose the GPU subdevice with type @samp{d3d11va} and create QSV device
> > with @samp{MFX_IMPL_HARDWARE}.
> >
> > @item -init_hw_device qsv:hw,child_device_type=dxva2
> > Choose the GPU subdevice with type @samp{dxva2} and create QSV device with
> > @samp{MFX_IMPL_HARDWARE}.
> > +
> > +@item -init_hw_device qsv:hw,child_device=1,child_device_type=d3d11va
> > +Create a QSV device with @samp{MFX_IMPL_HARDWARE} on DirectX adapter 1 with
> > subdevice type @samp{d3d11va}
> > +
> > +@item -init_hw_device vaapi=va:/dev/dri/renderD129 -init_hw_device
> > qsv=hw1@va
> > +Create a VAAPI device called @samp{va} on /dev/dri/renderD129, then derive
> > a QSV device called @samp{hw1}
> > +from device @samp{va}
>
> Looks good otherwise.
>
> BTW, do you know why all hwaccels are not documented in a dedicated
> file (hwaccels.texi or something)?
Thanks for your comment, I updated the patch in v3
https://ffmpeg.org/pipermail/ffmpeg-devel/2024-January/319688.html .
BTW I don't know why there isn't a dedicated file for hwaccels.
Thanks
Haihao
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [FFmpeg-devel] [PATCH v2 2/2] doc/ffmpeg: update the documentation about vaapi device creation
2024-01-06 10:54 ` Stefano Sabatini
@ 2024-01-16 5:34 ` Xiang, Haihao
0 siblings, 0 replies; 6+ messages in thread
From: Xiang, Haihao @ 2024-01-16 5:34 UTC (permalink / raw)
To: ffmpeg-devel
On Sa, 2024-01-06 at 11:54 +0100, Stefano Sabatini wrote:
> On date Friday 2024-01-05 10:33:52 +0800, Xiang, Haihao wrote:
> > From: Haihao Xiang <haihao.xiang@intel.com>
> >
> > Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
> > ---
> > doc/ffmpeg.texi | 23 +++++++++++++++++++++++
> > 1 file changed, 23 insertions(+)
> >
> > diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
> > index f095f402bd..8fb165c5df 100644
> > --- a/doc/ffmpeg.texi
> > +++ b/doc/ffmpeg.texi
> > @@ -1385,6 +1385,29 @@ If not specified, it will attempt to open the default
> > X11 display (@emph{$DISPLA
> > and then the first DRM render node (@emph{/dev/dri/renderD128}), or the
> > default
> > DirectX adapter on Windows.
> >
> > +The following options are recognized:
> > +@table @option
> > +@item kernel_driver
> > +When @var{device} is not specified, use this option to specify the name of
> > the kernel
>
> > +driver associated with the desired device. This option is only available
> > when
> > +@emph{libdrm} works on Linux.
>
> Optional: might be good to specify a method to verify this condition.
>
> > +@end table
> > +
> > +Examples:
> > +@table @emph
> > +@item -init_hw_device vaapi
> > +Create a vaapi device on the default device
>
> missing final dot here and below
>
> > +
> > +@item -init_hw_device vaapi:/dev/dri/renderD129
> > +Create a vaapi device on DRM render node /dev/dri/renderD129
> > +
> > +@item -init_hw_device vaapi:1
> > +Create a vaapi device on DirectX adapter 1
> > +
> > +@item -init_hw_device vaapi:,kernel_driver=i915
> > +Create a vaapi device on a device associated with kernel driver @samp{i915}
> > +@end table
> > +
>
> Looks good otherwise (but again, since hwaccels are probably
> independent from ffmpeg they should be probably moved to a dedicated
> manual).
>
Thanks for your comment, I updated this patch in v3
https://ffmpeg.org/pipermail/ffmpeg-devel/2024-January/319689.html
BRs
Haihao
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2024-01-16 5:34 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-05 2:33 [FFmpeg-devel] [PATCH v2 1/2] doc/ffmpeg: update the documentation about qsv device creation Xiang, Haihao
2024-01-05 2:33 ` [FFmpeg-devel] [PATCH v2 2/2] doc/ffmpeg: update the documentation about vaapi " Xiang, Haihao
2024-01-06 10:54 ` Stefano Sabatini
2024-01-16 5:34 ` Xiang, Haihao
2024-01-06 10:51 ` [FFmpeg-devel] [PATCH v2 1/2] doc/ffmpeg: update the documentation about qsv " Stefano Sabatini
2024-01-16 5:33 ` Xiang, Haihao
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git