I have done research in every possible place to get GPU offloading to work on a Windows implementation of Subsonic.
I've replaced ffmpeg.exe with a newer version that supports GPU encoding.
I've tried creating transcoding rules.
Ignoring what I put in, the logged ffmpeg command still uses CPU.
I've tried setting this to take MKV files and convert to MP4:
ffmpeg -hwaccel cuda -hwaccel_output_format cuda -ss %o -i %s -s %wx%h -c:v h264_nvenc -c:a aac -b:v 7740k -maxrate %bk -b:a 128k -bufsize 256k -map 0:0 -map 0:1 -ac 2 -preset fast -v error -
But despite having an explicit rule, it ignores it and uses the below equivalent:
ffmpeg -ss %o
-i %s -s %wx%h -c:v libx264 -c:a aac -b:v 7740k -maxrate %bk -b:a 128k -bufsize 256k -map 0:0 -map 0:1 -ac 2 -preset superfast -v error -force_key_frames expr:gte(t,n_forced*10) -start_number 0 -hls_time 10 -hls_list_size 0 -hls_segment_filename ..\hls\[random]\%d.ts ..\hls\[random]\out.m3u8
I'd like to see the ffmpeg executable included with subsonic to have a version with GPU options enabled, and in the UI there be a drop down selection for which encoder the user would like to use.