Jump to content
Djoss

[Support] Djoss - HandBrake

753 posts in this topic Last Reply

Recommended Posts

9 hours ago, Djoss said:

In the container settings, if you edit the "Output Directory" setting, do you have the access mode sets to "Read/Write"?

Yes. The access mode is set to read/write. 

Share this post


Link to post
Posted (edited)
On 5/14/2019 at 7:49 AM, DrAwesome said:

Yes. The access mode is set to read/write. 

Did you try to revert the Umask to the default value "000" ?

Edited by Djoss

Share this post


Link to post
1 hour ago, Djoss said:

Did you try to revert the Umask to the default value "000" ?

I have not done that. How can I change that?

 

I tried using the docker safe new permissions from common problems plugin, but that didn’t help. 

Share this post


Link to post
18 hours ago, Djoss said:

Did you try to revert the Umask to the default value "000" ?

After further investigation, my Umask value for the whole directory is set to 0000, which shouldn't cause an issue, as I understand it. 

 

 

Share this post


Link to post
On 5/13/2019 at 9:47 PM, Djoss said:

For the UI part, your should set the destination file under "/output" in the container.

OK, so I tried deleting the container and all cache data and even the directories themselves. I remade them, starting from scratch and opening up the permissions again to 777. I can now get the GUI version to work when setting the destination output to /output as described above, but the watch folder still does not work. Same error as before. This makes me think that maybe one of my routes is bad for the watch folder, but I can't see it myself. Any help?

Share this post


Link to post
15 hours ago, DrAwesome said:

OK, so I tried deleting the container and all cache data and even the directories themselves. I remade them, starting from scratch and opening up the permissions again to 777. I can now get the GUI version to work when setting the destination output to /output as described above, but the watch folder still does not work. Same error as before. This makes me think that maybe one of my routes is bad for the watch folder, but I can't see it myself. Any help?

What is the output of the following command?:

docker exec HandBrake ls -l /

 

Share this post


Link to post
1 hour ago, Djoss said:

What is the output of the following command?:


docker exec HandBrake ls -l /

 

 

Screen Shot 2019-05-17 at 8.03.35 AM.png

Share this post


Link to post
On 5/17/2019 at 8:05 AM, DrAwesome said:

 

Screen Shot 2019-05-17 at 8.03.35 AM.png

No sure why you are getting permission errors.  Everything looks good.

Other than changing mappings to /output and /storage, did you made other changes to the template?

As a last resort, your could try to re-create your docker.img to see if it helps.

Share this post


Link to post

When you encode a MKV -> MP4, there's a way to keep the forced subtitle ?

 

I don't see the option. I try to set it like a defaut one, but in Plex it won't load.

 

In the same time, why Handbrake don't keep the tracks name. In VLC, I see French Forced and after it's just French.

 

Thank,

Share this post


Link to post
On 6/26/2019 at 7:06 AM, Jobine said:

When you encode a MKV -> MP4, there's a way to keep the forced subtitle ?

 

I don't see the option. I try to set it like a defaut one, but in Plex it won't load.

 

In the same time, why Handbrake don't keep the tracks name. In VLC, I see French Forced and after it's just French.

 

Thank,

Note that mp4 container is less feature rich than mkv one...  According to this post, mp4 may not support forced subtitles: https://forums.plex.tv/t/no-forced-subtitles-with-mp4/68375/5

Share this post


Link to post

I'm trying to get handbrake to skip any file that has 265 in it's name. I've tried to edit the pre-compile script posted earlier in the thread but i'm a noob so no succes. This is the script i came up with. 
 

#!/bin/sh
#
# This is an example of a pre-conversion hook.  This script is always invoked
# with /bin/sh (shebang ignored).
#
# The first parameter is the full path where the video will be converted.
#
# The second parameter is the full path to the source file.
#
# The third argument is the name of the HandBrake preset that will be used to
# convert the video.
#

CONVERTED_FILE="$1"
SOURCE_FILE="$2"
PRESET="$3"

echo "pre-conversion: Output File = $CONVERTED_FILE"
echo "pre-conversion: Source File = $SOURCE_FILE"
echo "pre-conversion: Preset = $PRESET"

CODEC="265"

if [ ! -z $(grep "$CODEC" "$SOURCE_FILE") ];

then
            echo "pre-conversion: file conversion not required, moving file."
            mkdir -p "$(dirname "$CONVERTED_FILE")"
            mv "$SOURCE_FILE" "$CONVERTED_FILE"
        else
            echo "ERROR: Destination file has unexpected CODEC '$CODEC'."
        fi
        ;;
    *)
        # Remove unknown files.
        echo "pre-conversion: preventing file conversion by removing file."
        rm "$SOURCE_FILE"
esac

I've put it into ShellCheck but like i said, noob. Does anyone have a better way to make handbrake skip 265 (HEVC) files?

Share this post


Link to post
Posted (edited)
20 hours ago, casiooo said:

I'm trying to get handbrake to skip any file that has 265 in it's name. I've tried to edit the pre-compile script posted earlier in the thread but i'm a noob so no succes. This is the script i came up with. 
 


#!/bin/sh
#
# This is an example of a pre-conversion hook.  This script is always invoked
# with /bin/sh (shebang ignored).
#
# The first parameter is the full path where the video will be converted.
#
# The second parameter is the full path to the source file.
#
# The third argument is the name of the HandBrake preset that will be used to
# convert the video.
#

CONVERTED_FILE="$1"
SOURCE_FILE="$2"
PRESET="$3"

echo "pre-conversion: Output File = $CONVERTED_FILE"
echo "pre-conversion: Source File = $SOURCE_FILE"
echo "pre-conversion: Preset = $PRESET"

CODEC="265"

if [ ! -z $(grep "$CODEC" "$SOURCE_FILE") ];

then
            echo "pre-conversion: file conversion not required, moving file."
            mkdir -p "$(dirname "$CONVERTED_FILE")"
            mv "$SOURCE_FILE" "$CONVERTED_FILE"
        else
            echo "ERROR: Destination file has unexpected CODEC '$CODEC'."
        fi
        ;;
    *)
        # Remove unknown files.
        echo "pre-conversion: preventing file conversion by removing file."
        rm "$SOURCE_FILE"
esac

I've put it into ShellCheck but like i said, noob. Does anyone have a better way to make handbrake skip 265 (HEVC) files?

 

If you need the script to move the source file, try the following:

#!/bin/sh
#
# This is an example of a pre-conversion hook.  This script is always invoked
# with /bin/sh (shebang ignored).
#
# The first parameter is the full path where the video will be converted.
#
# The second parameter is the full path to the source file.
#
# The third argument is the name of the HandBrake preset that will be used to
# convert the video.
#

CONVERTED_FILE="$1"
SOURCE_FILE="$2"
PRESET="$3"

echo "pre-conversion: Output File = $CONVERTED_FILE"
echo "pre-conversion: Source File = $SOURCE_FILE"
echo "pre-conversion: Preset = $PRESET"

CODEC="265"

if echo "$SOURCE_FILE" | grep -q "$CODEC"
then
    echo "pre-conversion: file conversion not required, moving file."
    mkdir -p "$(dirname "$CONVERTED_FILE")"
    mv "$SOURCE_FILE" "$CONVERTED_FILE"
fi

 

Edited by Djoss

Share this post


Link to post
1 hour ago, Djoss said:

 

If you need the script to move the source file, try the following:


#!/bin/sh
#
# This is an example of a pre-conversion hook.  This script is always invoked
# with /bin/sh (shebang ignored).
#
# The first parameter is the full path where the video will be converted.
#
# The second parameter is the full path to the source file.
#
# The third argument is the name of the HandBrake preset that will be used to
# convert the video.
#

CONVERTED_FILE="$1"
SOURCE_FILE="$2"
PRESET="$3"

echo "pre-conversion: Output File = $CONVERTED_FILE"
echo "pre-conversion: Source File = $SOURCE_FILE"
echo "pre-conversion: Preset = $PRESET"

CODEC="265"

if ! echo "$SOURCE_FILE" | grep -q "$CODEC"
then
    echo "pre-conversion: file conversion not required, moving file."
    mkdir -p "$(dirname "$CONVERTED_FILE")"
    mv "$SOURCE_FILE" "$CONVERTED_FILE"
fi

 

Thanks. It doesn't seem to be working though. The log gives me this:

[autovideoconverter] Processing watch folder '/watch'...
[autovideoconverter] Waiting 5 seconds before processing '/watch/series/show s01e01 265.mkv'...
[autovideoconverter] Starting conversion of '/watch/series/show s01e01 265.mkv' using preset 'hevc'...
[autovideoconverter] 1 title(s) to process.
[autovideoconverter] Executing pre-conversion hook...
pre-conversion: Output File = /output/series/show s01e01 265.mkv
pre-conversion: Source File = /watch/series/show s01e01 265.mkv
pre-conversion: Preset = hevc
[autovideoconverter] Pre-conversion hook exited with 0
[autovideoconverter] Starting conversion of '/watch/series/show s01e01 265.mkv' using preset 'hevc'...
[autovideoconverter] 1 title(s) to process.
[autovideoconverter] Executing pre-conversion hook...
pre-conversion: Output File = /output/series/show s01e01 265.mkv
pre-conversion: Source File = /watch/series/show s01e01 265.mkv
pre-conversion: Preset = hevc
[autovideoconverter] Pre-conversion hook exited with 0

After that it waits a while and continues to transcode anyway.

Encoding /watch/series/show s01e01 265.mkv: 0.57 %
Encoding /watch/series/show s01e01 265.mkv: 1.18 % (179.45 fps, avg 176.87 fps, ETA 00h06m30s)
Encoding /watch/series/show s01e01 265.mkv: 1.78 % (185.19 fps, avg 179.23 fps, ETA 00h06m23s)
Encoding /watch/series/show s01e01 265.mkv: 2.31 % (155.28 fps, avg 171.28 fps, ETA 00h06m38s)
Encoding /watch/series/show s01e01 265.mkv: 2.82 % (147.48 fps, avg 166.73 fps, ETA 00h06m47s)

 

Share this post


Link to post

Oups logic was inverted: just remove the exclamation mark in the "if" condition.

Share this post


Link to post
1 hour ago, Djoss said:

Oups logic was inverted: just remove the exclamation mark in the "if" condition.

 

Thanks, that did the trick! 

Share this post


Link to post

I'm having issues getting the H.264 (Intel QSV) option to show up in Handbrake. I think I've done everything correctly, but I've obviously missed something, as it's not working.

 

My processor supports it: https://ark.intel.com/content/www/us/en/ark/products/126688/intel-core-i3-8100-processor-6m-cache-3-60-ghz.html

 

I've enabled the iGPU in my system bios. The driver seems to be loading properly - this is the readout from the terminal:

root@tower:/dev/dri# ls -l 

total 0 drwxrwxrwx 2 root root 80 Jul 13 16:58 by-path/ 

crw-rw---- 1 root video 226, 0 Jul 13 16:58 card0 

crwxrwxrwx 1 root video 226, 128 Jul 13 16:58 renderD128

I added the required lines (I think) to my /boot/config/go file

# Load the i915 driver. 
modprobe i915 
chmod -R 777 /dev/dri

I've entered

--device=/dev/dri:/dev/dri

under Extra Parameters in the container page.  I've tried both the regular and dev branches. I don't see anything in the logs indicating any errors... I'm not sure what I've missed. Help?

Share this post


Link to post
10 hours ago, that guy said:

I'm having issues getting the H.264 (Intel QSV) option to show up in Handbrake. I think I've done everything correctly, but I've obviously missed something, as it's not working.

 

My processor supports it: https://ark.intel.com/content/www/us/en/ark/products/126688/intel-core-i3-8100-processor-6m-cache-3-60-ghz.html

 

I've enabled the iGPU in my system bios. The driver seems to be loading properly - this is the readout from the terminal:


root@tower:/dev/dri# ls -l 

total 0 drwxrwxrwx 2 root root 80 Jul 13 16:58 by-path/ 

crw-rw---- 1 root video 226, 0 Jul 13 16:58 card0 

crwxrwxrwx 1 root video 226, 128 Jul 13 16:58 renderD128

I added the required lines (I think) to my /boot/config/go file


# Load the i915 driver. 
modprobe i915 
chmod -R 777 /dev/dri

I've entered


--device=/dev/dri:/dev/dri

under Extra Parameters in the container page.  I've tried both the regular and dev branches. I don't see anything in the logs indicating any errors... I'm not sure what I've missed. Help?

You can look at the container's log.  It should explain why Intel QSV is not working and what need to be done.

Share this post


Link to post
21 minutes ago, Djoss said:

You can look at the container's log.  It should explain why Intel QSV is not working and what need to be done.

This is all I see in the logs, simply stating it's not supported.  Intel says it is though... Is there something else I should be looking for?

 

Cannot load libnvidia-encode.so.1
Cannot load libnvidia-encode.so.1
Cannot load libnvidia-encode.so.1
Cannot load libnvidia-encode.so.1
[17:31:32] hb_init: starting libhb thread
[17:31:32] thread 15392a12fb10 started ("libhb")
HandBrake 1.2.2 (2019050500) - Linux x86_64 - https://handbrake.fr
4 CPUs detected
Opening /watch/Die Hard.mkv...
[17:31:32] CPU: Intel(R) Core(TM) i3-8100 CPU @ 3.60GHz
[17:31:32]  - Intel microarchitecture Kaby Lake
[17:31:32]  - logical processor count: 4
[17:31:32] Intel Quick Sync Video support: no

 

Share this post


Link to post
56 minutes ago, that guy said:

This is all I see in the logs, simply stating it's not supported.  Intel says it is though... Is there something else I should be looking for?

 


Cannot load libnvidia-encode.so.1
Cannot load libnvidia-encode.so.1
Cannot load libnvidia-encode.so.1
Cannot load libnvidia-encode.so.1
[17:31:32] hb_init: starting libhb thread
[17:31:32] thread 15392a12fb10 started ("libhb")
HandBrake 1.2.2 (2019050500) - Linux x86_64 - https://handbrake.fr
4 CPUs detected
Opening /watch/Die Hard.mkv...
[17:31:32] CPU: Intel(R) Core(TM) i3-8100 CPU @ 3.60GHz
[17:31:32]  - Intel microarchitecture Kaby Lake
[17:31:32]  - logical processor count: 4
[17:31:32] Intel Quick Sync Video support: no

 

 

It's earlier in the log, with messages starting with "[cont-init.d] 95-check-qsv.sh".  You can provide the whole log if you want.

Share this post


Link to post

not sure if this can be done. but is their a way to monitor automatic video converter progess with heimdall docker?   second  how many cores would be best to run with out maxing cpu out i currently dont have a nvidia card on hand.

Share this post


Link to post
Posted (edited)
13 hours ago, Djoss said:

 

It's earlier in the log, with messages starting with "[cont-init.d] 95-check-qsv.sh".  You can provide the whole log if you want.

I don't have any lines like that in my log...  appdata\HandBrake\log\hb\conversion.log, right?

It's attached, if that helps at all...  Thanks for the help so far, by the way!

 

Edited by that guy

Share this post


Link to post
5 hours ago, dirknina said:

not sure if this can be done. but is their a way to monitor automatic video converter progess with heimdall docker?

No, this is currently not supported.

5 hours ago, dirknina said:

second  how many cores would be best to run with out maxing cpu out i currently dont have a nvidia card on hand.

Using cpu shares could be easier.  See :

 

 

Share this post


Link to post
1 hour ago, that guy said:

I don't have any lines like that in my log...  appdata\HandBrake\log\hb\conversion.log, right?

It's attached, if that helps at all...  Thanks for the help so far, by the way!

conversion.log 1.95 MB · 0 downloads

By "container log" I meant the log that is accessible via the Docker page in unRAID.  Click on the little icon at the most right column.

Share this post


Link to post
4 hours ago, Djoss said:

By "container log" I meant the log that is accessible via the Docker page in unRAID.  Click on the little icon at the most right column.

Sorry, still new to this unraid stuff!

 

I guess this is what I'm looking for:

[cont-init.d] 95-check-qsv.sh: executing...
[cont-init.d] 95-check-qsv.sh: Processor: Intel® Core(TM) i3-8100 CPU @ 3.60GHz
[cont-init.d] 95-check-qsv.sh: Intel Quick Sync Video not supported: device directory /dev/dri not exposed to the container.
[cont-init.d] 95-check-qsv.sh: exited 0.

So it's not seeing the device, right?  Did I make a typo somewhere in my Extra Parameters or something?

Share this post


Link to post
56 minutes ago, that guy said:

Sorry, still new to this unraid stuff!

 

I guess this is what I'm looking for:


[cont-init.d] 95-check-qsv.sh: executing...
[cont-init.d] 95-check-qsv.sh: Processor: Intel® Core(TM) i3-8100 CPU @ 3.60GHz
[cont-init.d] 95-check-qsv.sh: Intel Quick Sync Video not supported: device directory /dev/dri not exposed to the container.
[cont-init.d] 95-check-qsv.sh: exited 0.

So it's not seeing the device, right?  Did I make a typo somewhere in my Extra Parameters or something?

 

Instead of using Extra Parameters, your can add a "Device" and set its value to "/dev/dri/".

Share this post


Link to post

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...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.