[Cin] Testing Nvidia Nvenc encoding
Андрей Спицын
spitsyn.andrey at gmail.com
Sun Dec 29 14:13:02 CET 2024
The nvidia driver version 470 has problems with latest kernel version 6.12,
but patch is available. I tested it with gtx 650.
Best regards,
Andrey
вс, 29 дек. 2024 г., 16:07 Terje J. Hanssen via Cin <
cin at lists.cinelerra-gg.org>:
>
>
>
> Den 28.12.2024 01:51, skrev Terje J. Hanssen:
>
>
>
>
> Den 27.12.2024 22:25, skrev Andrew Randrianasulu:
>
>
>
> пт, 27 дек. 2024 г., 23:56 Terje J. Hanssen <terjejhanssen at gmail.com>:
>
>>
>>
>>
>> Den 27.12.2024 21:37, skrev Terje J. Hanssen:
>>
>>
>>
>>
>> Den 27.12.2024 21:07, skrev Andrew Randrianasulu:
>>
>>
>>
>> пт, 27 дек. 2024 г., 22:55 Phyllis Smith <phylsmith2017 at gmail.com>:
>>
>>> Andrew, are you saying that nv-codec-headers at 10.0.26.0 in the current
>>> CinGG work with your GT710? and that the newest 12.2.72.0 does not? If so,
>>> then maybe we should not upgrade. When I look at the support matrix (url
>>> below) it does not mention the GT710.
>>>
>>
>> Do not worry, I only used proprietary driver from live dvd to see if
>> nvenc ever work at all. I normally use built-in nouveau, even if it does
>> not support encoding block on any hw.
>>
>> Do not consider my oddball machine support as showstopper - I definitely
>> can roll my own build ;)
>>
>> https://gssparks.github.io/post/can-a-geforce-gt710-nvenc/
>>
>> yeah, gt710 is sort of two-cards-under-same-name, mine is Kepler based so
>> it worked ....
>>
>>
>> A side comment:
>> Before I rebuilt my legacy SM workstation, I replaced a GT730 with GTX960
>> on the MSI mobo (from my upgraded Chieftec workstation)
>>
>> https://www.asus.com/motherboards-components/graphics-cards/asus/gt730-sl-2gd3-brk-evo/
>>
>>
>>
>> And then, about 6 months ago, I had the following drivers for GT 730
>> enabled on Leap15.5 and Slowroll respectively:
>>
>> Device-1: NVIDIA GK208B [GeForce GT 730] driver: nvidia v: 470.256.02
>>
>> isn't 470 < 550 ?
>
>
> Clearly, yes.
>
>
>
> Just to verify by searching for gt730 (or gt710), GF 700 series, GF730,
> Linux 64-bit :
> https://www.nvidia.com/en-us/drivers/
>
> Driver Version:470.256.02
> Release Date:Tue Jun 04, 2024
>
> If Linux 32-bit ARM:
>
> Driver Version:390.157
> Release Date:Tue Nov 22, 2022
>
>
>
>
> The opensuse SDB:NVIDIA lists the following driver series for different NV
> devices/families
> https://en.opensuse.org/SDB:NVIDIA_drivers#Determination_of_driver_version
>
> Note: NVIDIA driver versions are mapped to the following naming convention
> listed below. You will need this information when you are ready to install
> via commandline/zypper.
>
> - G03 = driver v340 = legacy driver (via a community user
> <https://software.opensuse.org/search?baseproject=ALL&q=g03>)
> - G04 = driver v390 = legacy driver (Fermi devices)
> - G05 = driver v470 = driver for Kepler devices
> - G06 = driver v550 = driver for Maxwell, Pascal devices and up
>
> Note: Some OEMs use different chip familys (Kepler, Fermi) for the same
> product, as example GeForce 730.
> *Warning:* Legacy drivers G03 and G04 won't work with the actual kernel
> 6.6.x series. Use free nouveau drivers instead!
>
>
> But I do not think opening desktop case just for this test actually good
> idea ...
>
> do not worry, ff nvidia headers quite small tarball, I always can fish old
> one from one of my backups ....
>
>
> Yeah, I don't use the gt730 anymore, as gtx960 was some more powerful.
>
>
>
>
>
>
>
>
> Device-1: NVIDIA GK208B [GeForce GT 730] driver: nouveau v: kernel
>>
>>
>>
>>
>>
>>
>>
>>
>>> https://developer.nvidia.com/video-encode-and-decode-gpu-support-matrix-new
>>> BUT when I do a compare of the old one we have currently and the latest
>>> at this website:
>>>
>>> https://github.com/FFmpeg/nv-codec-headers/releases/tag/n12.2.72.0
>>> I get the following differences which DO NOT say anything about dropping
>>> support for any previous Nvidia graphics boards.
>>> Below list the comparison which shows what was changed from the older
>>> version to the latest
>>>
>>>> *Bump for (in-dev) 10.0.26.1*
>>>> Fix macOS build
>>>> Add linker functions and types
>>>> Fix CUdeviceptr definition for ARM64 CPU
>>>> *Bump for (in-dev) 10.0.26.2*
>>>> Update headers from Video SDK 11.0
>>>> *Bump for (in-dev) 11.0.10.1*
>>>> Add cuModuleGetGlobal
>>>> Add texture alignment device attributes
>>>> add cuMemcpy
>>>>
>>> *Bump for (in-dev) 11.0.10.2*
>>>> Fix UB lshift in nvenc struct version macros
>>>> Add more memory functions
>>>> Update headers from Video SDK 11.1
>>>> Add timeline semaphore type
>>>> Add CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_TIMELINE_SEMAPHORE_WIN32
>>>> Add a subset of CUDA EGLStreams interop API
>>>> Update forgotten version number in README
>>>> Fix codestyle
>>>> Add D3D11 interop functions
>>>> *Release 11.1.5.2*
>>>> Prepare for SDK 12.0 update
>>>> Preliminary update of nvEncodeAPI to SDK 12.0
>>>>
>>> Add missing SDK 12.0 bits
>>>> Update for final release of Video Codec SDK 12.0.16
>>>> Remove AV1 High Profile GUID
>>>> Update README
>>>> Add cuArrayCreate
>>>> *Bump for (in-dev) 12.0.16.1*
>>>> Add functions to identify devices in more ways
>>>> Add missing cuStreamWaitEvent function
>>>> Update headers from Video SDK 12.1
>>>> Add cuDriverGetVersion
>>>> Add cuCtxGetCurrent function
>>>> *Bump for (in-dev) 12.1.14.1*
>>>> Update headers from Video SDK 12.2
>>>>
>>>
>>>
>>> On Thu, Dec 26, 2024 at 7:20 PM Andrew Randrianasulu <
>>> randrianasulu at gmail.com> wrote:
>>>
>>>>
>>>>
>>>> пт, 27 дек. 2024 г., 05:09 Phyllis Smith <phylsmith2017 at gmail.com>:
>>>>
>>>>> Great so it will be included in the next release. Thank you very much.
>>>>>
>>>>
>>>> Can you also please copypaste min driver notes into our release notes
>>>> so it will be easier for me to track it in case my older gt710 still stuck
>>>> at older driver version (not a blocker, I surely can swap headers back to
>>>> 2020 version locally).
>>>>
>>>> Thanks and sorry for relative inactivity. I hope to pick up some steam
>>>> ..... may he after formal New Year date?
>>>>
>>>> Have (good) holidays!
>>>>
>>>>
>>>>
>>>>> On Thu, Dec 26, 2024, 17:10 Terje J. Hanssen <terjejhanssen at gmail.com>
>>>>> wrote:
>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Den 26.12.2024 23:15, skrev Phyllis Smith:
>>>>>>
>>>>>> Here is the AppImage with the latest nvencoders for Nvidia graphics
>>>>>> that goes with ffmpeg.
>>>>>>
>>>>>> https://cinelerra-gg.org/download/testing/cin-x86_64_nvencupdate.AppImage
>>>>>> For comparison, here is the appimage containing the original
>>>>>> nvencoders from 2020.
>>>>>>
>>>>>> https://cinelerra-gg.org/download/images/CinGG-20241031-x86_64.AppImage
>>>>>>
>>>>>>
>>>>>> I've did a quick test with h64_nvenc.mp4 and h265_nvenc.mp4
>>>>>> (w/setting format=Not Interlaced)
>>>>>> Both AppImages works with similar fps speeds on my Nvidia GF GTX 960.
>>>>>>
>>>>>>
>>>>>> I am not sure if encoding with formats h264_nvenc.mp4,
>>>>>> h265_nvenc.mp4, or h264_nvenc.qt actually work from an AppImage that was
>>>>>> created on a computer that does not have an Nvidea graphics card or its
>>>>>> software. But for some reason, I do not think that that matters and it
>>>>>> should work.
>>>>>>
>>>>>>
>>>>>> Yes, nvenc works (as it correspondingly was expected to do with
>>>>>> onevpl for Intel qsv/hw).
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Thu, Dec 26, 2024 at 2:11 PM Terje J. Hanssen <
>>>>>> terjejhanssen at gmail.com> wrote:
>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Den 24.12.2024 13:29, skrev Terje J. Hanssen:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Den 24.12.2024 00:58, skrev Phyllis Smith:
>>>>>>>
>>>>>>> Downloaded latest version of nv-codec-headers release and built
>>>>>>> CinGG with it and no problems here. Unfortunately the 4 different
>>>>>>> computers I attempted to test on did not have the correct Nvidia hardware
>>>>>>> or software. Why? I do not know but will try one more later.
>>>>>>>
>>>>>>>
>>>>>>> According to the
>>>>>>> *Readme *https://github.com/FFmpeg/nv-codec-headers
>>>>>>>
>>>>>>> *FFmpeg version of headers required to interface with Nvidias codec
>>>>>>> APIs.*
>>>>>>> *Corresponds to Video Codec SDK version 12.0.16.*
>>>>>>> *Minimum required driver versions:*
>>>>>>> *Linux: 550.54.14 or newer*
>>>>>>>
>>>>>>> As shown in my previous post, the legacy (2015) NV-GF GTX 960 runs
>>>>>>> with the following nv driver version on Slowroll:
>>>>>>>
>>>>>>> Graphics:
>>>>>>> Device-1: Intel HD Graphics 530 driver: i915 v: kernel
>>>>>>> Device-2: NVIDIA GM206 [GeForce GTX 960] driver: nvidia v: 550.135
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> If you want and have a test download, I can give it a try on my
>>>>>>> legacy GF GTX 960 SkyLake workstation, to see if your new AppImage (still)
>>>>>>> works as previously.
>>>>>>>
>>>>>>>
>>>>>>> On Sat, Dec 21, 2024 at 4:04 PM Andrew Randrianasulu <
>>>>>>> randrianasulu at gmail.com> wrote:
>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> вс, 22 дек. 2024 г., 01:53 Phyllis Smith <phylsmith2017 at gmail.com>:
>>>>>>>>
>>>>>>>>> Andrew,
>>>>>>>>>
>>>>>>>>>> most likely our nv headers drifted from that
>>>>>>>>>> ffmpeg-7.0/proprietary driver assumes at runtime.
>>>>>>>>>>
>>>>>>>>> I have been wondering about nv-codec-headers as we are at:
>>>>>>>>>
>>>>>>>>> https://github.com/FFmpeg/nv-codec-headers/releases/tag/n10.0.26.0
>>>>>>>>> but I am unsure about updating to:
>>>>>>>>>
>>>>>>>>> https://github.com/FFmpeg/nv-codec-headers/releases/tag/n12.2.72.0
>>>>>>>>> because if you look at:
>>>>>>>>> https://github.com/FFmpeg/nv-codec-headers/releases/
>>>>>>>>> the release versions go from 12.xx to 8.x and it is really weird
>>>>>>>>> AND there is no year on the release dates but just day and month.
>>>>>>>>> Since it is such an important part of ffmpeg inside CinGG, I am
>>>>>>>>> concerned but will at least try the 12.2.72.0 just to see what it does.
>>>>>>>>>
>>>>>>>>
>>>>>>>> in theory it should give users of new nvidia hardware av1 encoding
>>>>>>>> ...... but not sure how it will work with older drivers and hardware.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>
>>>>>>>>>> you can try to install something like nv-codec-headers and then
>>>>>>>>>> add
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>
>>
>
> --
> Cin mailing list
> Cin at lists.cinelerra-gg.org
> https://lists.cinelerra-gg.org/mailman/listinfo/cin
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20241229/5f0f92f3/attachment-0001.htm>
More information about the Cin
mailing list