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.

[Support] Josh5 - Unmanic - Library Optimiser

Featured Replies

Cool. Excited to try this out, how do I install while it’s at staging? 

  • Replies 1.6k
  • Views 438.1k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • @Ashe @trekkiedj @itimpi   Please see update first post also for an example of how I have it setup. I have also added a temporary solution to adding multiple library locations if anyone need

  • There should be a new update available. This has quite a number of changes to how ffmpeg is executed. It should resolve some issues with inotify and library scanning. For those people who created

  • Just as a notice here, I will soon be steeping away from using Unraid to develop and maintain my projects. I will still provide support for Unraid for all of my projects, but that will be moved and on

Posted Images

I have been using the staging branch for a while.  Just did a pull and I am not getting the dashboard.  getting  Traceback (most recent call last): File "/usr/local/lib/python3.6/dist-packages/tornado/web.py", line 1697, in _execute result = method(*self.path_args, **self.path_kwargs) File "/usr/local/lib/python3.6/dist-packages/unmanic/webserver/main.py", line 64, in get self.render("main/main.html", historic_task_list=self.historic_task_list, time_now=time.time(), session=self.session) File "/usr/local/lib/python3.6/dist-packages/tornado/web.py", line 856, in render html = self.render_string(template_name, **kwargs) File "/usr/local/lib/python3.6/dist-packages/tornado/web.py", line 1005, in render_string return t.generate(**namespace) File "/usr/local/lib/python3.6/dist-packages/tornado/template.py", line 361, in generate return execute() File "main/main_html.generated.py", line 34, in _tt_execute elif session.level > 0: # page_layout.html:119 TypeError: '>' not supported between instances of 'NoneType' and 'int'

Edited by dertbv

  • Author
26 minutes ago, dertbv said:

I have been using the staging branch for a while.  Just did a pull and I am not getting the dashboard.  getting  Traceback (most recent call last): File "/usr/local/lib/python3.6/dist-packages/tornado/web.py", line 1697, in _execute result = method(*self.path_args, **self.path_kwargs) File "/usr/local/lib/python3.6/dist-packages/unmanic/webserver/main.py", line 64, in get self.render("main/main.html", historic_task_list=self.historic_task_list, time_now=time.time(), session=self.session) File "/usr/local/lib/python3.6/dist-packages/tornado/web.py", line 856, in render html = self.render_string(template_name, **kwargs) File "/usr/local/lib/python3.6/dist-packages/tornado/web.py", line 1005, in render_string return t.generate(**namespace) File "/usr/local/lib/python3.6/dist-packages/tornado/template.py", line 361, in generate return execute() File "main/main_html.generated.py", line 34, in _tt_execute elif session.level > 0: # page_layout.html:119 TypeError: '>' not supported between instances of 'NoneType' and 'int'

Thanks for the report and the logs.

 

A fix will be available in the 'staging' tag again for download in about 10 mins.

17 minutes ago, Josh.5 said:

Thanks for the report and the logs.

 

A fix will be available in the 'staging' tag again for download in about 10 mins.

Thanks that fixed it.. 

 

I've moved over to staging - GPU is not working any thoughts? 

Screen Shot 2021-03-29 at 11.24.05 AM.png

Screen Shot 2021-03-29 at 11.21.29 AM.png

Screen Shot 2021-03-29 at 11.22.41 AM.png

Screen Shot 2021-03-29 at 11.21.40 AM.png

  • Author
I've moved over to staging - GPU is not working any thoughts? 
207861314_ScreenShot2021-03-29at11_24_05AM.thumb.png.13ae1173d785ef4945e9d84bf37722e1.png
789111672_ScreenShot2021-03-29at11_21_29AM.png.adc9aaa75ba884b993656f5f6f71093b.png
1758960849_ScreenShot2021-03-29at11_22_41AM.png.435dc39cdc410f02c9e4887f5dbf34c2.png
1070855141_ScreenShot2021-03-29at11_21_40AM.png.34d173200771508646a5650558549b6b.png
Are you getting errors, or is it converting files?
Just because you have hardware acceleration enabled, does not mean the CPU will not be used. The CPU is still used for decoding, audio encoding and remixing. If the task is only those, then it will use 100% CPU.

Sent from my Mi MIX 2 using Tapatalk

1 minute ago, Josh.5 said:

Are you getting errors, or is it converting files?
Just because you have hardware acceleration enabled, does not mean the CPU will not be used. The CPU is still used for decoding, audio encoding and remixing. If the task is only those, then it will use 100% CPU.

Sent from my Mi MIX 2 using Tapatalk
 

Understood- and yes, it is converting, but I guess at what point would the GPU kick in? When the video is actually being encoded?

  • Author
Understood- and yes, it is converting, but I guess at what point would the GPU kick in? When the video is actually being encoded?
That is correct.
If you like, enable debugging. Then when a file is converted, take a look at the history and view the details of that conversion. Post the first part of the FFMPEG log here
2 minutes ago, Josh.5 said:

That is correct.
If you like, enable debugging. Then when a file is converted, take a look at the history and view the details of that conversion. Post the first part of the FFMPEG log here

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/library/movies/12 Angry Men (1957)/12 Angry Men (1957).mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    encoder         : Lavf58.45.100
  Duration: 01:36:21.86, start: 0.000000, bitrate: 2589 kb/s
    Stream #0:0(eng): Video: hevc (hev1 / 0x31766568), yuv420p(tv), 1808x1080 [SAR 1:1 DAR 226:135], 1944 kb/s, 23.98 fps, 23.98 tbr, 16k tbn, 23.98 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(eng): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, mono, fltp, 640 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
    Side data:
      audio service type: main
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (ac3 (native) -> aac (native))
Press [q] to stop, [?] for help
Output #0, mp4, to '/tmp/unmanic/unmanic_file_conversion-1617037461.8777735/12 Angry Men (1957)-1617037461.8777893.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    encoder         : Lavf58.45.100
    Stream #0:0(eng): Video: hevc (hev1 / 0x31766568), yuv420p(tv), 1808x1080 [SAR 1:1 DAR 226:135], q=2-31, 1944 kb/s, 23.98 fps, 23.98 tbr, 16k tbn, 16k tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 69 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
      encoder         : Lavc58.91.100 aac
    Side data:
      audio service type: main

 

  • Author



Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/library/movies/12 Angry Men (1957)/12 Angry Men (1957).mp4': Metadata:   major_brand     : isom   minor_version   : 512   compatible_brands: isomiso2mp41   encoder         : Lavf58.45.100 Duration: 01:36:21.86, start: 0.000000, bitrate: 2589 kb/s   Stream #0:0(eng): Video: hevc (hev1 / 0x31766568), yuv420p(tv), 1808x1080 [sAR 1:1 DAR 226:135], 1944 kb/s, 23.98 fps, 23.98 tbr, 16k tbn, 23.98 tbc (default)   Metadata:     handler_name    : VideoHandler   Stream #0:1(eng): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, mono, fltp, 640 kb/s (default)   Metadata:     handler_name    : SoundHandler   Side data:     audio service type: mainStream mapping: Stream #0:0 -> #0:0 (copy) Stream #0:1 -> #0:1 (ac3 (native) -> aac (native))Press [q] to stop, [?] for helpOutput #0, mp4, to '/tmp/unmanic/unmanic_file_conversion-1617037461.8777735/12 Angry Men (1957)-1617037461.8777893.mp4': Metadata:   major_brand     : isom   minor_version   : 512   compatible_brands: isomiso2mp41   encoder         : Lavf58.45.100   Stream #0:0(eng): Video: hevc (hev1 / 0x31766568), yuv420p(tv), 1808x1080 [sAR 1:1 DAR 226:135], q=2-31, 1944 kb/s, 23.98 fps, 23.98 tbr, 16k tbn, 16k tbc (default)   Metadata:     handler_name    : VideoHandler   Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 69 kb/s (default)   Metadata:     handler_name    : SoundHandler     encoder         : Lavc58.91.100 aac   Side data:     audio service type: main

 



So you see how this log says:
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (ac3 (native) -> aac (native))

That basically shows that the video stream was already the correct format as configured in Unmanic's settings. Therefore it is just going to copy it from source to destination. Your GPU will not be touched in this task.
1 minute ago, Josh.5 said:


 

 


So you see how this log says:
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (ac3 (native) -> aac (native))

That basically shows that the video stream was already the correct format as configured in Unmanic's settings. Therefore it is just going to copy it from source to destination. Your GPU will not be touched in this task.

 

Ok thank you for the dev on this and the quick response/community!

 

  • Author
Ok thank you for the dev on this and the quick response/community!
 
No worries

Having a quick play with this, and the foundations look real solid and almost just what i'm after. I am curious though, any plans to add a manual scan button to the front page, and perhaps a 'start paused' type option? So we could select a single folder from the scan and start it before bed for example. I prefer to be more in control of what is happening is all, so being able to scan and encode a folder at a time without -everything- being encoded automatically would be great. Plus then I can run it max speed when I know nobody will be using it.

 

Haven't tested this part yet as running a test encode first, but assuming the advanced options is where I could change the video quality settings under 'customer ffmpeg options' to whatever I prefer? And I could only add video preferences and audio would pull the info from the 'audio encoding' tab?

  • Author



Having a quick play with this, and the foundations look real solid and almost just what i'm after. I am curious though, any plans to add a manual scan button to the front page, and perhaps a 'start paused' type option? So we could select a single folder from the scan and start it before bed for example. I prefer to be more in control of what is happening is all, so being able to scan and encode a folder at a time without -everything- being encoded automatically would be great. Plus then I can run it max speed when I know nobody will be using it.
 
Haven't tested this part yet as running a test encode first, but assuming the advanced options is where I could change the video quality settings under 'customer ffmpeg options' to whatever I prefer? And I could only add video preferences and audio would pull the info from the 'audio encoding' tab?


There is a manual scan button coming. It will be at the top of the pending tasks list.
No intent to have a start paused exactly, but I was going to add a scheduler of sorts at some point.
For now you are able to schedule Unmanic with docker and cron. I believe there are a few people in this thread that have done that by creating multiple Unmanic containers and a user script that starts and stops the containers at certain times during the day.

You are correct with the advanced FFMPEG options. This is the place to fine tune your requirements. You can add filters, etc here. And you will need to set the other options in the audio and video tabs.
If you want more control over the FFMPEG process, you will need to look at the new plugins feature currently available on the staging branch. Plugins are really easy to write if you know a little python.
21 hours ago, Josh.5 said:

For now you are able to schedule Unmanic with docker and cron. I believe there are a few people in this thread that have done that by creating multiple Unmanic containers and a user script that starts and stops the containers at certain times during the day.

 

@Yekul I did just that before GPU help was added. I tailored unManic to run around my peak Plex usage times. I don't want to insult your intelligence if you already know how but I will paste what I did here for others. 

 

I created two user scripts entries for "Start unManic" and "Stop unManic". You can create 'one' script but I don't like a script pending in the background. Probably doesn't hurt anything but why do it that way. IMO. I hated that there is a possibility that it has a chance of killing it when I file is almost finished converting. But you get over that quick. It is so quick with a GPU, it doesn't matter anymore.  Messing with a 90% done CPU transcode hurt my pride a little. 

 

Start

#!/bin/bash
#Start Docker
docker start unmanic

 

and

 

Stop

#!/bin/bash
#Start Docker
docker stop unmanic

 

I know cron but use corntab to generate them only because it displays the schedule in english so I know it's correct and I don't screw up.

 

Edited by rmeaux

No issues... Just wanted to thank you for continuing your development of this app. 

I'm currently refusing to use it on any of my 4k content as most of it is remux and I do not want to lose  an ounce of quality.  But using it on my Kids Movies library for example... god sent.

Do you ever plan on giving us more control on the actual transcoding functions?  I have no idea how to use ffmpeg commands, but I am familiar with handbrakes video settings.  I love having the ability to select things like H.265 10-bit or 12-bit.  RF settings, framerate adjustments, etc.  Any plans on giving us the ability to chose 8-bit,10-bit, or even 12-bit encoding, quality control, or anything of that nature?

Thanks again.

hi, ive been having ongoing issue with my unraid server whereby ram and cpu are running at 100%. Ive narrowed this is down to unmanic. if i kill the container all is good with the world. 

 

It has only started happening since the unraid version update. any advice? i really like this docker container.  image.thumb.png.c276edab325227e8d279ba41fbb4319a.pngany advic

 

image.thumb.png.b850c194731a875ced87a8afd308ede8.png

I  cant access the UI at all, don't know what's happened, I've deleted all files and started over several times tried staging and latest with and without GPU, bridged and host networks, im pulling my hair out


logs attached

 

 

unmanic.txt

Edited by mickh18

  • Author
41 minutes ago, mickh18 said:

I  cant access the UI at all, don't know what's happened, I've deleted all files and started over several times tried staging and latest with and without GPU, bridged and host networks, im pulling my hair out


logs attached

 

 

unmanic.txt 27.28 kB · 0 downloads

could you also post your config

  • Author
1 hour ago, dfox1787 said:

hi, ive been having ongoing issue with my unraid server whereby ram and cpu are running at 100%. Ive narrowed this is down to unmanic. if i kill the container all is good with the world. 

 

It has only started happening since the unraid version update. any advice? i really like this docker container.  image.thumb.png.c276edab325227e8d279ba41fbb4319a.pngany advic

 

image.thumb.png.b850c194731a875ced87a8afd308ede8.png

Cannot diagnose this without logs

  • Author
1 hour ago, Meller said:

No issues... Just wanted to thank you for continuing your development of this app. 

I'm currently refusing to use it on any of my 4k content as most of it is remux and I do not want to lose  an ounce of quality.  But using it on my Kids Movies library for example... god sent.

Do you ever plan on giving us more control on the actual transcoding functions?  I have no idea how to use ffmpeg commands, but I am familiar with handbrakes video settings.  I love having the ability to select things like H.265 10-bit or 12-bit.  RF settings, framerate adjustments, etc.  Any plans on giving us the ability to chose 8-bit,10-bit, or even 12-bit encoding, quality control, or anything of that nature?

Thanks again.

Yes. That is planned for a future update.

21 minutes ago, Josh.5 said:

could you also post your config

 

Many thanks for quick response, im looking into app data folder but nothing visible. tried reinstalling again 

 

Below screenshot and also docker template output upon install, i just cant figure this out

 

 

Command:root@localhost:# /usr/local/emhttp/plugins/dynamix.docker.manager/scripts/docker run -d --name='unmanic' --net='host' -e TZ="Europe/London" -e HOST_OS="Unraid" -e 'TCP_PORT_8888'='8888' -e 'PUID'='99' -e 'PGID'='100' -e 'NVIDIA_VISIBLE_DEVICES'='false' -v '/mnt/user/appdata/unmanic':'/config':'rw' -v '/mnt/user/media/movies':'/library/movies':'rw' -v '/mnt/user/media/tv':'/library/tv':'rw' -v '/mnt/user/transcode/unmanic':'/tmp/unmanic':'rw' 'josh5/unmanic'

ad7c21b71d2838341f57032be5656a733087da0847bc9155a1f99e71d3ae982c

The command finished successfully!

 

image.png.6a5031af4f6f67f6de7cd7b4c80ea24e.png

 

image.thumb.png.66d04a618701d3b801407ccea23fc330.png

1 hour ago, Josh.5 said:

Cannot diagnose this without logs

do you want the full unraid log or the container log

  • Author
 
Many thanks for quick response, im looking into app data folder but nothing visible. tried reinstalling again 
 
Below screenshot and also docker template output upon install, i just cant figure this out
 
 
Command:root@localhost:# /usr/local/emhttp/plugins/dynamix.docker.manager/scripts/docker run -d --name='unmanic' --net='host' -e TZ="Europe/London" -e HOST_OS="Unraid" -e 'TCP_PORT_8888'='8888' -e 'PUID'='99' -e 'PGID'='100' -e 'NVIDIA_VISIBLE_DEVICES'='false' -v '/mnt/user/appdata/unmanic':'/config':'rw' -v '/mnt/user/media/movies':'/library/movies':'rw' -v '/mnt/user/media/tv':'/library/tv':'rw' -v '/mnt/user/transcode/unmanic':'/tmp/unmanic':'rw' 'josh5/unmanic'
ad7c21b71d2838341f57032be5656a733087da0847bc9155a1f99e71d3ae982c

The command finished successfully!
 
image.png.6a5031af4f6f67f6de7cd7b4c80ea24e.png
 
image.thumb.png.66d04a618701d3b801407ccea23fc330.png
Could you please try modifying the permission on your appdata/unmanic directory to:

chown -R nobody:users
chmod -R a+rw


Then restart the container
  • Author
do you want the full unraid log or the container log
Both thanks.

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.