Encoding for Digital Cinema

General questions or discussion about HandBrake, Video and/or audio transcoding, trends etc.
Post Reply
N1ckFG
Posts: 1
Joined: Thu Jan 14, 2010 7:45 pm

Encoding for Digital Cinema

Post by N1ckFG » Sun Jan 24, 2010 8:39 pm

I'm really pleased with Handbrake's quality, and would like to promote it here in Toronto as a great way to encode cross-platform digital cinema files for low-end theatrical exhibition, requiring nothing more than a dual-core or Ion laptop with VLC Player. I've had good results with an altered version of the Apple Universal preset (pasted below), tweaked a bit and using Blu-ray-type bitrates of 20,000-40,000mbps.

In my experience, though, people doing theatrical exhibition tend to be a bit conservative--so it'll be hard to get a set of best practices to catch on unless the process is dead simple. I'm thinking that including a digital cinema preset along these lines in Handbrake's standard set might be a big help. Would you consider adding something like this to the next release?

Best,
Nick Fox-Gieg

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
	<dict>
		<key>AudioList</key>
		<array>
			<dict>
				<key>AudioBitrate</key>
				<string>192</string>
				<key>AudioEncoder</key>
				<string>AAC (CoreAudio)</string>
				<key>AudioMixdown</key>
				<string>Stereo</string>
				<key>AudioSamplerate</key>
				<string>48</string>
				<key>AudioTrack</key>
				<integer>1</integer>
				<key>AudioTrackDRCSlider</key>
				<real>0.0</real>
				<key>AudioTrackDescription</key>
				<string>English (PCM_S16)</string>
			</dict>
		</array>
		<key>ChapterMarkers</key>
		<integer>0</integer>
		<key>Default</key>
		<integer>2</integer>
		<key>FileFormat</key>
		<string>MP4 file</string>
		<key>Folder</key>
		<false/>
		<key>Mp4HttpOptimize</key>
		<integer>1</integer>
		<key>Mp4LargeFile</key>
		<integer>1</integer>
		<key>Mp4iPodCompatible</key>
		<integer>1</integer>
		<key>PictureAutoCrop</key>
		<integer>1</integer>
		<key>PictureBottomCrop</key>
		<integer>0</integer>
		<key>PictureDeblock</key>
		<integer>0</integer>
		<key>PictureDecomb</key>
		<integer>0</integer>
		<key>PictureDecombCustom</key>
		<string></string>
		<key>PictureDecombDeinterlace</key>
		<integer>1</integer>
		<key>PictureDeinterlace</key>
		<integer>0</integer>
		<key>PictureDeinterlaceCustom</key>
		<string></string>
		<key>PictureDenoise</key>
		<integer>0</integer>
		<key>PictureDenoiseCustom</key>
		<string></string>
		<key>PictureDetelecine</key>
		<integer>0</integer>
		<key>PictureDetelecineCustom</key>
		<string></string>
		<key>PictureHeight</key>
		<integer>1080</integer>
		<key>PictureKeepRatio</key>
		<integer>1</integer>
		<key>PictureLeftCrop</key>
		<integer>0</integer>
		<key>PicturePAR</key>
		<integer>0</integer>
		<key>PictureRightCrop</key>
		<integer>0</integer>
		<key>PictureTopCrop</key>
		<integer>0</integer>
		<key>PictureWidth</key>
		<integer>1920</integer>
		<key>PresetBuildNumber</key>
		<string>2009112300</string>
		<key>PresetDescription</key>
		<string>20mbps</string>
		<key>PresetName</key>
		<string>(import) Nick's HD</string>
		<key>Type</key>
		<integer>1</integer>
		<key>UsesMaxPictureSettings</key>
		<integer>0</integer>
		<key>UsesPictureFilters</key>
		<integer>0</integer>
		<key>UsesPictureSettings</key>
		<integer>0</integer>
		<key>VideoAvgBitrate</key>
		<string>20000</string>
		<key>VideoEncoder</key>
		<string>H.264 (x264)</string>
		<key>VideoFramerate</key>
		<string>Same as source</string>
		<key>VideoGrayScale</key>
		<integer>0</integer>
		<key>VideoQualitySlider</key>
		<real>18</real>
		<key>VideoQualityType</key>
		<integer>1</integer>
		<key>VideoTargetSize</key>
		<string>700</string>
		<key>VideoTurboTwoPass</key>
		<integer>0</integer>
		<key>VideoTwoPass</key>
		<integer>1</integer>
		<key>x264Option</key>
		<string>cabac=0:ref=2:me=umh:b-adapt=2:weightb=0:trellis=0:weightp=0:subq=9:bframes=2</string>
	</dict>
</array>
</plist>


mduell
Veteran User
Posts: 6620
Joined: Sat Apr 21, 2007 8:54 pm

Re: Encoding for Digital Cinema

Post by mduell » Mon Jan 25, 2010 8:20 pm

1) Why are you starting with the crippling of Apple Universal if your playback target is VLC? Apple Universal is for when you're targeting Apple's devices with their various shortcomings.

2) Why the audio mixdown (stereo!) and AAC encoding? With those video bitrate targets you're not too concerned about filesize, why not keep the 5.1? Or at worst DPL2 mixdown.

3) Why a bitrate target rather than a quality (RF) target? Especially for this application it seems unwise to waste or underprovision bits.

A much better idea than your ill-considered preset (which would likely never be included in HB even if it were more reasonable on the above) would be to recommend using the High Profile preset that already ships with Handbrake. It targets capable device playback, high quality audio, and well thought out video quality settings.

creamyhorror
Regular User
Posts: 134
Joined: Mon Jan 04, 2010 2:00 pm

Re: Encoding for Digital Cinema

Post by creamyhorror » Tue Jan 26, 2010 7:56 pm

Also, VLC is a lousy choice for HD (esp. 1080p) H.264 playback. Unless the CPU is relatively powerful, you may end up with jerkiness, desyncing or framedropping due to VLC's single-core decoding on more demanding videos.

On Windows you have much better options, like MPC-HomeCinema. MPlayer OSX Extended will serve well for Macs.

Post Reply