flingo64 / PhotoStation-Upload-Lr-Plugin

Photo StatLr (aka PhotoStation Upload) is a Lightroom Publish and Export Service Plugin that enables the export /publishing of photos and videos from Lr to a Synology Photo Station. It uploads the photos/videos and all required thumbnails. It can download comments and ratings and do a real two-way synch of various metadata (tags, ratings, labels).
http://messmer-online.de/index.php/software/11-photo-statlr
GNU General Public License v3.0
209 stars 21 forks source link

Add profile for Intel Quicksync (tested with ffmpeg 4.1.1) #38

Closed stepman0 closed 5 years ago

stepman0 commented 5 years ago

Hi, thanks to your new feature regarding video conversion I could add a profile for using Intel Quicksync.

I tested it with ffmpeg 4.1.1 - works.

I adjusted the quality to achieve a Bitrate of about 5MBit/s

flingo64 commented 5 years ago

I would be interested interested in, but couldn't get it to work on my Win 10 w/ intel UHD630 (+ NVIDIA GeForce) using ffmpeg 4.1.1 Windows 64Bit/Static Binary package. Here is the debug output of my ffmpeg version

ffmpeg version 4.1.1 Copyright (c) 2000-2019 the FFmpeg developers

built with gcc 8.2.1 (GCC) 20190212

configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth

libavutil 56. 22.100 / 56. 22.100

libavcodec 58. 35.100 / 58. 35.100

libavformat 58. 20.100 / 58. 20.100

libavdevice 58. 5.100 / 58. 5.100

libavfilter 7. 40.101 / 7. 40.101

libswscale 5. 3.100 / 5. 3.100

libswresample 3. 3.100 / 3. 3.100

libpostproc 55. 3.100 / 55. 3.100

Do I need to compile a special version with support for Intel QuickSync?

Anyway, let's put it at the end of the existing list of conversion presets, because the presets are referred to by their index. Inserting at first place will shift all existing presets and the Export settings will reference a different preset the next time.

stepman0 commented 5 years ago

I used the version from the ffmpeg website. My system only has UHD620, no Nvidia - maybe this has some effect.

For testing, I used ffmpeg in powershell, maybe you can give it a try: .\ffmpeg.exe -hwaccel qsv -i INPUT.MOV -y -strict experimental -acodec aac -ar 44100 -b:a 64k -ac 2 -vf format=yuv420p -c:v h264_qsv -global_quality 36 -look_ahead 1 -preset veryslow -r 30 -s 1280x720 -aspect 1280:720 -passlogfile passlog.txt OUTPUT.mp4

flingo64 commented 5 years ago

OK, I restarted Lr using right-click "Execute with Graphic processor --> integrated graphic" and Bingo! Quite impressive: converting a video in original size is 5.5 times faster than the HIGH setting (using CPU), which is nearly as fast as using the HIGH CUDA setting (using NVIDIA CUDA nvenc encoder). The generation of a resized additional video on the other hand takes almost the same time for HIGH (CPU), HIGH-CUDA (NVIDIA) or QSV(intel HD). Looking a CPU/GPU load reveals that there seems to be not that much HW acceralation when the video is resized. Please put the preset at the end of the presets list, then I will merge it.