2

Questions:

  1. Install Handbrake cli
  2. Create script to convert all files further down file tree from script
  3. Get example options from GUI
  4. Automate because I'm lazy [actually I just value my time :)]
FreeSoftwareServers
  • 1,109
  • 1
  • 13
  • 31

1 Answers1

2
  1. Installing Just handbrake CLI, I use a headless server and windows front end!

For Newest Builds Recommended as Stables released yearly...

sudo add-apt-repository ppa:stebbins/handbrake-snapshots && sudo apt-get update && sudo apt-get install handbrake-cli

For Stable Releases

sudo add-apt-repository ppa:stebbins/handbrake-releases && sudo apt-get update && sudo apt-get install handbrake-cli
  1. Uncomment the line you wish to use and the file type. You can add many more "presets/FLAGS", this is just an idea. The original script had issues when converting MP4 files to MP4 due to naming conflicts.

    #!/bin/bash
    
    #Uncomment a Preset FLAGS and Uncomment a file type (mkv,avi,mp4)!
    
    # This Script Goes in Root Folder of TV show -- Example Folder Structure
    # /Stargate/Season\ 1/Epiosde.avi
    # /Stargate/Season\ 2/Epiosde.avi
    # /Stargate/handbrake.script
    # Outputs all Files back inside same dir's and does all folders inside Startgate DIR
    # /Stargate/Season\ 1/Epiosde.mp4
    # /Stargate/Season\ 2/Epiosde.mp4
    
    # FLAGS = flags for CLI can be got from GUI under Activity Log (In some versions) or from https://trac.handbrake.fr/wiki/CLIGuide (Flags can not have spaces, IE: No Presets, and can't have "'s, but you can just delete them, like --decomb="bob", the CLI accepts --decomb=bob
    
    ###Encode AC3 5.1
    
    #export FLAGS="-f mp4 -O --decomb=bob --loose-anamorphic --modulus 2 -e x264 -q 20 --vfr -E ac3 -6 5point1 -R 48 -B 448 --audio-fallback ac3 --encoder-preset=veryfast  --verbose=1"
    
    ###COPY AC3 5.1
    
    #export FLAGS="-f mp4 -O --decomb=bob --loose-anamorphic --modulus 2 -e x264 -q 20 --vfr -E copy:ac3 --audio-fallback ac3 --encoder-preset=veryfast  --verbose=1"
    
    ###Denoise & Encode AC3 5.1
    
    #export FLAGS="-f mp4 -O --decomb=bob --nlmeans=medium --loose-anamorphic --modulus 2 -e x264 -q 20 --vfr -E ac3 -6 5point1 -R 48 -B 448 --audio-fallback ac3 --encoder-preset=veryfast  --verbose=1"
    
    ###Denoise & COPY AC3 5.1
    
    #export FLAGS="-f mp4 -O --decomb=bob --nlmeans=medium --loose-anamorphic --modulus 2 -e x264 -q 20 --vfr -E copy:ac3 --audio-fallback ac3 --encoder-preset=veryfast  --verbose=1"
    
    if [ -z "$1" ] ; then
        TRANSCODEDIR="."
    else
        TRANSCODEDIR="$1"
    fi
        ###To use [&& find . -name '*.***' -delete] Uncomment and delete once to add to previous line of code
        ###Removes source files after completing ALL conversions. Use at your own risk!
    
        #AVI
        #find "$TRANSCODEDIR"/* -type f -name "*.avi" -exec bash -c 'HandBrakeCLI -i "$1" -o "${1%\.*}".mp4 $FLAGS' __ {} \; 
    #&& find . -name '*.avi' -delete
    
        #MKV 
        #find "$TRANSCODEDIR"/* -type f -name "*.mkv" -exec bash -c 'HandBrakeCLI -i "$1" -o "${1%\.*}".mp4 $FLAGS' __ {} \; 
    #&& find . -name '*.mkv' -delete
    
        #MP4 
        #find "$TRANSCODEDIR"/* -type f -name "*.mp4" -exec bash -c 'HandBrakeCLI -i "$1" -o "${1%\.*}"-new.mp4 $FLAGS' __ {} \;
    ##&&find . -type f -not -name '*-new.mp4' -name '*.mp4' -delete && rename 's/-new//' *.mp4
    
  2. I Used the windows program and tested till I found my perfect settings then run it on a file and click activity window >> encode log >> (AT BEGINNING OF LOG) this is what I got.

    CLI Query:  -i "C:\Users\donut\Downloads\TobeConverted\Love & Other Drugs (2010).avi" -t 1 --angle 1 -c 1 -o "C:\Users\donut\Downloads\ConvertedMedia\Love & Other Drugs (2010).mp4"  -f mp4  -w 720 --crop 68:70:0:0 --loose-anamorphic  --modulus 2 -e x264 -q 20 --vfr -a 1 -E ac3 -6 5point1 -R Auto -B 384 -D 0 --gain 0 --audio-fallback ac3 --markers="C:\Users\donut\AppData\Local\Temp\Love & Other Drugs (2010)-1-chapters.csv" --encoder-preset=veryfast  --encoder-level="5.2"  --encoder-profile=high  --verbose=1
    

The simple version is

HandBrakeCLI -i source [flags] -o destination [flags]

So I had to remove

--markers="C:\Users\donut\AppData\Local\Temp\Love & Other Drugs (2010)-1-chapters.csv"
  1. My Alias for unattended use.

    alias handfolder="sudo cp /media/handbrake.script ./ && sudo nano ./handbrake.script ; nohup ./handbrake.script > handbrake.nohup &"
    

where the script is named handbrake.script and placed in /media/handbrake.script. Use this alias when in the bottom of the directories you want to recursively convert!

FreeSoftwareServers
  • 1,109
  • 1
  • 13
  • 31
  • Original script from http://www.surlyjake.com/blog/2010/08/10/script-to-run-handbrake-recursively-through-a-folder-tree/ – FreeSoftwareServers Jul 04 '15 at 09:11
  • I just upgraded to Newest Windows Nightly Build and CLI query was not in the Activity Window, so if your following this guide and using Windows GUI just for that purpose, get latest Stable! I made a post in HandBrake forum to hopefully have this addressed. – FreeSoftwareServers Jul 08 '15 at 02:13