I modified some code I found to render videos in a desired folder with handbrake. This allows me to use consistent settings so I don't miss things in the gui. The script will go through each file in the folder. This uses python 2.7.4
Make sure you change the locations in the config area. rootdir = location of video files to render outdir = output directory handbrakeloc = location of HandBrakeCLI.exe handbrakeparm = command line arguments for handbrake. items before --preset are input and output files, do not change.
This will remove files from the rootdir when done so until you are comfortable with what the script does work on copies of files or comment out os.remove(inFile) on line 42
import os import time import subprocess import sys
Comments
rootdir = location of video files to render
outdir = output directory
handbrakeloc = location of HandBrakeCLI.exe
handbrakeparm = command line arguments for handbrake. items before --preset are input and output files, do not change.
This will remove files from the rootdir when done so until you are comfortable with what the script does work on copies of files or comment out os.remove(inFile) on line 42
import os
import time
import subprocess
import sys
#config
rootdir = 'I:/Record/ToRender/'
outdir = 'I:/Record/Render/'
handbrakeloc = 'G:/Program Files/Handbrake/HandBrakeCLI.exe'
handbrakeparm = ' -i "{0}" -o "{1}" --preset="Normal" -O'
#scan folder
fileList = []
for root, subFolders, files in os.walk(rootdir):
for file in files:
theFile = os.path.join(root,file)
fileName, fileExtension = os.path.splitext(theFile)
if fileExtension.lower() in ('.avi', '.divx', '.flv', '.m4v', '.mkv', '.mov', '.mpg', '.mpeg', '.wmv'):
print 'Adding',theFile
fileList.append(theFile)
#set render string
runstr = handbrakeloc + handbrakeparm
#loop through file list
while fileList:
inFile = fileList.pop()
fileName, fileExtension = os.path.splitext(inFile)
outFile = fileName+'.mp4'
newBase = os.path.basename(fileName+'.mp4')
print 'Processing',inFile
returncode = subprocess.call(runstr.format(inFile,outFile))
time.sleep(5)
#cleanup
print 'Moving: ' + newBase
print 'Dest: ' + outdir
os.rename(outFile,os.path.join(outdir,newBase))
print 'Removing',inFile
os.remove(inFile)
raw_input("Press enter to exit ;)")