Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Virt-Manager, Intel-GPU-Tools and more Dockers

Featured Replies

22 minutes ago, dee31797 said:

While not as easy as Handbrake, you can decode and encode with your GTX 750 on unraid with ffmpeg.

 


docker run --rm --runtime=nvidia -v "/unraid/your/videos:/input:rw" -e 'NVIDIA_DRIVER_CAPABILITIES'='all' -e 'NVIDIA_VISIBLE_DEVICES'='GPU-UUID-from-nvidia-pluginXXXX' djaydev/ffmpeg-ccextractor \
ffmpeg -hwaccel nvdec -i "/input/oldvideo.ts" -c:v hevc_nvenc -c:a copy "/input/newvideo.mp4"

Edit, I don't know if GTX 750 has nvdec components or not

just checked nvidia's site about that and it says it does support h.264 (AVCHD) decoding, so i guess i will give it a try.

well thanks for all the info and help.👍

  • Replies 446
  • Views 89.2k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • I have unhidden this thread, because existing users of the various containers may still need help with them and find the answers within.   But, this repository and all of the apps contained

  • You don't need to uninstall if it still works.  However you will never be able to reinstall should the need arise.  If there's other options available, I'd look at them.

  • Alternatives: Virt-manager https://hub.docker.com/r/patricol/virt-manager image- patricol/virt-manager:latest   Motioneye (official, made by motioneye dev) https://hub.docker.com/r/ccri

Posted Images

On 7/8/2019 at 10:41 AM, dee31797 said:

While not as easy as Handbrake, you can decode and encode with your GTX 750 on unraid with ffmpeg.

 


docker run --rm --runtime=nvidia -v "/unraid/your/videos:/input:rw" -e 'NVIDIA_DRIVER_CAPABILITIES'='all' -e 'NVIDIA_VISIBLE_DEVICES'='GPU-UUID-from-nvidia-pluginXXXX' djaydev/ffmpeg-ccextractor \
ffmpeg -hwaccel nvdec -i "/input/oldvideo.ts" -c:v hevc_nvenc -c:a copy "/input/newvideo.mp4"

Edit, I don't know if GTX 750 has nvdec components or not

 

Running this command on my system gives me the following error.  Any ideas?

 

docker run --rm --runtime=nvidia -v "/mnt/user/Downloads/handbrake/watch:/input:rw" -e 'NVIDIA_DRIVER_CAPABILITIES'='all' -e 'NVIDIA_VISIBLE_DEVICES'='GPU-90490eba-cd03-39f1-d641-3360df982f5a' djaydev/ffmpeg-ccextractor \
> ffmpeg -hwaccel nvdec -i "/input/test.mkv" -c:v hevc_nvenc -c:a copy "/input/test1.mvk"
docker: invalid reference format.
See 'docker run --help'.

 

  • Author
2 minutes ago, IamSpartacus said:

 

Running this command on my system gives me the following error.  Any ideas?

 


docker run --rm --runtime=nvidia -v "/mnt/user/Downloads/handbrake/watch:/input:rw" -e 'NVIDIA_DRIVER_CAPABILITIES'='all' -e 'NVIDIA_VISIBLE_DEVICES'='GPU-90490eba-cd03-39f1-d641-3360df982f5a' djaydev/ffmpeg-ccextractor \
> ffmpeg -hwaccel nvdec -i "/input/test.mkv" -c:v hevc_nvenc -c:a copy "/input/test1.mvk"
docker: invalid reference format.
See 'docker run --help'.

 

I copied your command into my unraid server and it worked (I had to change the GPU ID of course).  Do you have the nvidia plugin installed and the drivers loaded?

Just now, dee31797 said:

I copied your command into my unraid server and it worked (I had to change the GPU ID of course).  Do you have the nvidia plugin installed and the drivers loaded?

 

Yup.  NVENC works fine in your handbrake container and in both Plex and Emby.  Hmmmm.

  • Author
1 minute ago, IamSpartacus said:

 

Yup.  NVENC works fine in your handbrake container and in both Plex and Emby.  Hmmmm.

Maybe try it all on one line?

 

docker run --rm --runtime=nvidia -v /mnt/user/Downloads/handbrake/watch:/input:rw -e NVIDIA_DRIVER_CAPABILITIES=all -e NVIDIA_VISIBLE_DEVICES=GPU-6315e2bf-1c81-cc19-bfb3-a24978448a5e djaydev/ffmpeg-ccextractor ffmpeg -hwaccel nvdec -i /input/test.mkv -c:v hevc_nvenc -c:a copy /input/test1.mkv

 

4 minutes ago, dee31797 said:

Maybe try it all on one line?

 


docker run --rm --runtime=nvidia -v /mnt/user/Downloads/handbrake/watch:/input:rw -e NVIDIA_DRIVER_CAPABILITIES=all -e NVIDIA_VISIBLE_DEVICES=GPU-6315e2bf-1c81-cc19-bfb3-a24978448a5e djaydev/ffmpeg-ccextractor ffmpeg -hwaccel nvdec -i /input/test.mkv -c:v hevc_nvenc -c:a copy /input/test1.mkv

 

 

With or without the quotes like you have in your initial command?

 

EDIT:  Nvmd, it worked without the quotes.  I guess I needed to remove them in my above command?

Edited by IamSpartacus

  • Author
Just now, IamSpartacus said:

 

With or without the quotes like you have in your initial command? 

I did it with the quotes, you mainly need the quotes when there's spaces in between, in this case you don't need them.

 

I ran your command and it started up the container, I don't have a file there so it didnt convert anything but I didn't get the docker error before it tried.

 

@unraid:~# docker run --rm --runtime=nvidia -v "/mnt/user/Downloads/handbrake/watch:/input:rw" -e 'NVIDIA_DRIVER_CAPABILITIES'='all' -e 'NVIDIA_VISIBLE_DEVICES'='GPU-6315e2bf-1c81-cc19-bfb3-a24978448a5e' djaydev/ffmpeg-ccextractor \
> ffmpeg -hwaccel nvdec -i "/input/test.mkv" -c:v hevc_nvenc -c:a copy "/input/test1.mvk"

ffmpeg version 4.0.3 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 7 (Ubuntu 7.3.0-27ubuntu1~18.04)
  configuration: --disable-debug --disable-doc --disable-ffplay --enable-vaapi --enable-shared --enable-avresample --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-gnutls --enable-gpl --enable-libass --enable-libfreetype --enable-libvidstab --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx265 --enable-libxvid --enable-libx264 --enable-libkvazaar --enable-libaom --extra-libs=-lpthread --enable-postproc --enable-cuvid --enable-nvenc --enable-version3 --extra-cflags=-I/opt/ffmpeg/include --extra-ldflags=-L/opt/ffmpeg/lib --extra-libs=-ldl --prefix=/opt/ffmpeg
  libavutil      56. 14.100 / 56. 14.100
  libavcodec     58. 18.100 / 58. 18.100
  libavformat    58. 12.100 / 58. 12.100
  libavdevice    58.  3.100 / 58.  3.100
  libavfilter     7. 16.100 /  7. 16.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  1.100 /  5.  1.100
  libswresample   3.  1.100 /  3.  1.100
  libpostproc    55.  1.100 / 55.  1.100
/input/test.mkv: No such file or directory

3 minutes ago, dee31797 said:

I did it with the quotes, you mainly need the quotes when there's spaces in between, in this case you don't need them.

 

I ran your command and it started up the container, I don't have a file there so it didnt convert anything but I didn't get the docker error before it tried.

 

@unraid:~# docker run --rm --runtime=nvidia -v "/mnt/user/Downloads/handbrake/watch:/input:rw" -e 'NVIDIA_DRIVER_CAPABILITIES'='all' -e 'NVIDIA_VISIBLE_DEVICES'='GPU-6315e2bf-1c81-cc19-bfb3-a24978448a5e' djaydev/ffmpeg-ccextractor \
> ffmpeg -hwaccel nvdec -i "/input/test.mkv" -c:v hevc_nvenc -c:a copy "/input/test1.mvk"

ffmpeg version 4.0.3 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 7 (Ubuntu 7.3.0-27ubuntu1~18.04)
  configuration: --disable-debug --disable-doc --disable-ffplay --enable-vaapi --enable-shared --enable-avresample --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-gnutls --enable-gpl --enable-libass --enable-libfreetype --enable-libvidstab --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx265 --enable-libxvid --enable-libx264 --enable-libkvazaar --enable-libaom --extra-libs=-lpthread --enable-postproc --enable-cuvid --enable-nvenc --enable-version3 --extra-cflags=-I/opt/ffmpeg/include --extra-ldflags=-L/opt/ffmpeg/lib --extra-libs=-ldl --prefix=/opt/ffmpeg
  libavutil      56. 14.100 / 56. 14.100
  libavcodec     58. 18.100 / 58. 18.100
  libavformat    58. 12.100 / 58. 12.100
  libavdevice    58.  3.100 / 58.  3.100
  libavfilter     7. 16.100 /  7. 16.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  1.100 /  5.  1.100
  libswresample   3.  1.100 /  3.  1.100
  libpostproc    55.  1.100 / 55.  1.100
/input/test.mkv: No such file or directory

 

The one line worked.

 

What kind of FPS do you get with that command and what GPU are you using?  Trying to compare to my GTX 1660.

  • Author
4 minutes ago, IamSpartacus said:

 

The one line worked.

 

What kind of FPS do you get with that command and what GPU are you using?  Trying to compare to my GTX 1660.

Here's my ending stats with my GPU:

 

frame= 4505 fps=294 q=36.0 Lsize=   46690kB time=00:02:30.28 bitrate=2545.1kbits/s dup=22 drop=0 speed=9.81x

Just now, dee31797 said:

Here's my ending stats with my GPU:

 

frame= 4505 fps=294 q=36.0 Lsize=   46690kB time=00:02:30.28 bitrate=2545.1kbits/s dup=22 drop=0 speed=9.81x

 

And what kind of GPU are you using?

  • Author
Just now, IamSpartacus said:

 

And what kind of GPU are you using? 

Mobile GPU nvidia p3200

Just now, dee31797 said:

Mobile GPU nvidia p3200

 

Hmmm I wonder why my FPS is so low then.  It's been holding steady at 169 FPS the entire time.  I have heard the new Turing GPU's are a little slower and high quality but this seems really slow.

  • Author
2 minutes ago, IamSpartacus said:

 

Hmmm I wonder why my FPS is so low then.  It's been holding steady at 169 FPS the entire time.  I have heard the new Turing GPU's are a little slower and high quality but this seems really slow. 

wow fancy, which turing you got?  I want one because they can do B-frames, better file sizes at better quality levels.

1 minute ago, dee31797 said:

wow fancy, which turing you got?  I want one because they can do B-frames, better file sizes at better quality levels.

 

GTX 1660.  Tremendous value GPU for HW acceleration.  Can do 20 1080p > 720p transcodes or 5 4K > 720p transcodes at once.  Lower power usage.  All for $220.

Edited by IamSpartacus

Oh hmmm, it finished a lot quicker than I thought.  I was looking at the time going up and that was the time of the movie not the time left.  When it finished, I didn't see and ending stats like you showed though.

  • Author
3 minutes ago, IamSpartacus said:

Oh hmmm, it finished a lot quicker than I thought.  I was looking at the time going up and that was the time of the movie not the time left.  When it finished, I didn't see and ending stats like you showed though.

My test video is a mpeg2, ts container, 2mins 30secs long.  The codec you're decoding makes a difference in the FPS.

Edited by dee31797

could anyone guide me how to use this command, where to put and all, as i have never used docker run command ever before so i literally have no clue about it.

  • Author
Just now, Max said:

could anyone guide me how to use this command, where to put and all, as i have never used docker run command ever before so i literally have no clue about it. 

Hi @Max

Are you talking about the command from this post?  If so, you need to either SSH into unraid (same IP address as webUI) or use the >_ terminal icon from the webGUI to bring up the command line interface.  From there you can you paste in the command, but you need to edit the command to your personal server.  First, find your Nvidia GPU UUID in the Nvidia plugin under settings in the Unraid UI.  Lastly, you need to change the directory to where your videos for converting are, such as /mnt/user/myvideos/:input:rw. 

23 minutes ago, dee31797 said:

Hi @Max

Are you talking about the command from this post?  If so, you need to either SSH into unraid (same IP address as webUI) or use the >_ terminal icon from the webGUI to bring up the command line interface.  From there you can you paste in the command, but you need to edit the command to your personal server.  First, find your Nvidia GPU UUID in the Nvidia plugin under settings in the Unraid UI.  Lastly, you need to change the directory to where your videos for converting are, such as /mnt/user/myvideos/:input:rw. 

thanks but know im getting following error.

ffmpeg version 4.0.3 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 7 (Ubuntu 7.3.0-27ubuntu1~18.04)
  configuration: --disable-debug --disable-doc --disable-ffplay --enable-vaapi -enable-libvidstab --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enad --enable-postproc --enable-cuvid --enable-nvenc --enable-version3 --extra-cfl
  libavutil      56. 14.100 / 56. 14.100
  libavcodec     58. 18.100 / 58. 18.100
  libavformat    58. 12.100 / 58. 12.100
  libavdevice    58.  3.100 / 58.  3.100
  libavfilter     7. 16.100 /  7. 16.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  1.100 /  5.  1.100
  libswresample   3.  1.100 /  3.  1.100
  libpostproc    55.  1.100 / 55.  1.100
Unrecognized option 'hwaccel'.
Error splitting the argument list: Option not found

 

  • Author
1 minute ago, Max said:

thanks but know im getting following error. 


ffmpeg version 4.0.3 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 7 (Ubuntu 7.3.0-27ubuntu1~18.04)
  configuration: --disable-debug --disable-doc --disable-ffplay --enable-vaapi -enable-libvidstab --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enad --enable-postproc --enable-cuvid --enable-nvenc --enable-version3 --extra-cfl
  libavutil      56. 14.100 / 56. 14.100
  libavcodec     58. 18.100 / 58. 18.100
  libavformat    58. 12.100 / 58. 12.100
  libavdevice    58.  3.100 / 58.  3.100
  libavfilter     7. 16.100 /  7. 16.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  1.100 /  5.  1.100
  libswresample   3.  1.100 /  3.  1.100
  libpostproc    55.  1.100 / 55.  1.100
Unrecognized option 'hwaccel'.
Error splitting the argument list: Option not found

 

Please paste here the exact command you ran

4 minutes ago, dee31797 said:

Please paste here the exact command you ran

docker run --rm --runtime=nvidia -v "/unraid/user/Window Share/Handbrake/Watch:/input:rw" -e 'NVIDIA_DRIVER_CAPABILITIES'='all' -e 'NVIDIA_VISIBLE_DEVICES'='GPU-4daa28f9-2851-49be-7240-d485e0fa6aad' djaydev/ffmpeg-ccextractor \
ffmpeg -hwaccel nvdec -i "/input/oldvideo.ts" -c:v hevc_nvenc -c:a copy "/input/newvideo.mp4"

here it is.

  • Author
5 minutes ago, Max said:

docker run --rm --runtime=nvidia -v "/unraid/user/Window Share/Handbrake/Watch:/input:rw" -e 'NVIDIA_DRIVER_CAPABILITIES'='all' -e 'NVIDIA_VISIBLE_DEVICES'='GPU-4daa28f9-2851-49be-7240-d485e0fa6aad' djaydev/ffmpeg-ccextractor \
ffmpeg -hwaccel nvdec -i "/input/oldvideo.ts" -c:v hevc_nvenc -c:a copy "/input/newvideo.mp4"

here it is.

That looks good, what GPU do you have?

1 minute ago, dee31797 said:

That looks good, what GPU do you have?

gtx 750

  • Author
10 minutes ago, Max said:

gtx 750

This is a tough one, but I believe it's the folder, are you sure there's a video file here /unraid/user/Window Share/Handbrake/Watch?

  • Author
23 minutes ago, Max said:

gtx 750

Sorry Max, running ffmpeg from command line isn't as convenient as I initially thought.  There's a lot of options you need to understand and make sure they're correct before it'll work.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.