Code Monkey home page Code Monkey logo

handbrake-docs's Introduction

HandBrake Documentation Build

HandBrake's documentation exists to provide a well researched, reasonably tested, and clearly written layperson's guide to using HandBrake.

The main focus of the project is and must always be to serve normal people using HandBrake, regardless of their technical expertise, by describing common workflows using plain language and visual guides. These docs are neither written nor designed for engineers. They are for everyone, especially non-engineer humans.

The documentation is available in two public forms:

Most people should use the first resource, which is the official published documentation. If you want to learn how to use HandBrake, go there now! Official HandBrake Documentation

Contributing and Translations

We welcome most contributions. While it is our goal to allow everyone to contribute, contributions not meeting the project's goals or standards may be rejected. For this reason, we suggest communicating your interests before making any broad changes.

Please read the published documentation's Contributing article for more information, and this repository's contributing guidelines for information specific to the documentation project.

handbrake-docs's People

Contributors

brad0 avatar bradleysepos avatar coreydaley avatar d4rkne55 avatar dependabot[bot] avatar dtparr avatar ferdnyc avatar ftpmorph avatar galad87 avatar infininight avatar jbeich avatar jbruchon avatar jescodinghere avatar jstebbins avatar nomis101 avatar oalzuabi avatar pseudosavant avatar psion007 avatar raderb avatar rdittrich97 avatar robxnano avatar rossolson avatar ry8806 avatar savef avatar sr55 avatar tachi107 avatar thedevking avatar tingping avatar tinsjourney avatar trclst avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

handbrake-docs's Issues

Adding a Service Worker

As it is kind of 'in the news' (so to speak), I would like to propose that we add a Service Worker to the documentation site.

Tl;dr, I read it yesterday and I'm kind of excited ๐Ÿ˜„.

excited

Because these files are generated by marsh build into the public directory and the source is written in Markdown, it raises another question, where should the requisite script tag and sw.js file go? I'm thinking it belongs somewhere in templates/mark1/partials/ with The Service Worker itself in source/docs.

Thoughts?

FPS Same as Source issue

If the original file has 59FPS and I used Constant Framerate, Same as Source, why is my average framerate 389fps?
screen shot 2018-11-30 at 12 23 14 am

V 1.0.7 not handling queued ISO files correctly

Handbrake will process the first ISO file in the queue correctly but fails with error 3 on the subsequent file, even when the ISO is unencrypted or uncorrupted. Manual handling of ISO files is only option for now - unless someone knows of a workaround?

Logfile as follows:

HandBrake 1.0.7 (2017040900) - 64bit
OS: Microsoft Windows NT 6.1.7601 Service Pack 1 - 64bit
CPU: Intel(R) Core(TM)2 Duo CPU T9900 @ 3.06GHz
Ram: 8152 MB,
GPU Information:
Mobile Intel(R) 4 Series Express Chipset Family - 8.15.10.2869
Mobile Intel(R) 4 Series Express Chipset Family - 8.15.10.2869
Screen: 1366x768
Temp Dir: C:\Users\Olly\AppData\Local\Temp
Install Dir: F:\Program Files\HandBrake
Data Dir: C:\Users\Olly\AppData\Roaming\HandBrake Team\HandBrake\1.0.7.0


Starting Encode ...

[22:08:51] hb_init: starting libhb thread
[22:08:51] 1 job(s) to process
[22:08:51] json job:
{
"Audio": {
"AudioList": [
{
"Bitrate": 192,
"DRC": 0.0,
"Encoder": 65536,
"Gain": 0.0,
"Mixdown": 4,
"NormalizeMixLevel": false,
"Samplerate": 48000,
"Track": 0,
"DitherMethod": 0
}
],
"CopyMask": [
1073807360,
1073743872,
1074003968,
1073750016,
1090519040,
1074790400,
1074266112,
1107296256
],
"FallbackEncoder": 65536
},
"Destination": {
"ChapterList": [],
"ChapterMarkers": false,
"File": "I:\Life-2.mp4",
"Mp4Options": {
"IpodAtom": false,
"Mp4Optimize": false
},
"Mux": 131072
},
"Filters": {
"FilterList": [
{
"ID": 11,
"Settings": {
"crop-bottom": "72",
"crop-left": "0",
"crop-right": "0",
"crop-top": "72",
"height": "432",
"width": "720"
}
},
{
"ID": 6,
"Settings": {
"mode": "1"
}
}
]
},
"PAR": {
"Num": 64,
"Den": 45
},
"Metadata": {},
"SequenceID": 0,
"Source": {
"Angle": 1,
"Range": {
"Type": "chapter",
"Start": 1,
"End": 1
},
"Title": 2,
"Path": "F:\FFOutput\LIFE.ISO"
},
"Subtitle": {
"Search": {
"Burn": true,
"Default": false,
"Enable": true,
"Forced": true
},
"SubtitleList": []
},
"Video": {
"Encoder": 65536,
"Level": "3.1",
"TwoPass": false,
"Turbo": false,
"ColorMatrixCode": 0,
"Options": "",
"Preset": "ultrafast",
"Profile": "high",
"Quality": 16.0,
"Tune": "animation",
"OpenCL": false,
"HWDecode": false,
"QSV": {
"Decode": false,
"AsyncDepth": 0
}
}
}
[22:08:51] CPU: Intel(R) Core(TM)2 Duo CPU T9900 @ 3.06GHz
[22:08:51] - logical processor count: 2
[22:08:51] Intel Quick Sync Video support: no
[22:08:51] hb_scan: path=F:\FFOutput\LIFE.ISO, title_index=2
src/libbluray/disc/disc.c:352: error opening file BDMV\index.bdmv
src/libbluray/disc/disc.c:352: error opening file BDMV\BACKUP\index.bdmv
[22:08:51] bd: not a bd - trying as a stream/file instead
libdvdnav: Using dvdnav version 5.0.1
libdvdread: Encrypted DVD support unavailable.
*** Zero check failed in src/ifo_read.c:570
for vmgi_mat->zero_3 = 0x00000000010000000000000000000000000000
libdvdnav: DVD Title: LIFE
libdvdnav: DVD Serial Number: 00CAF144DVDSHRNK
libdvdnav: DVD Title (Alternative):
libdvdnav: DVD disk reports itself with Region mask 0x00000000. Regions: 1 2 3 4 5 6 7 8
libdvdread: Encrypted DVD support unavailable.
*** Zero check failed in src/ifo_read.c:570
for vmgi_mat->zero_3 = 0x00000000010000000000000000000000000000
[22:08:51] scan: DVD has 1 title(s)
[22:08:51] scan: scanning title 2
[22:08:51] Invalid VTS (title set) number: 0
[22:08:51] libhb: scan thread found 0 valid title(s)
[22:08:51] libhb: work result = 3

Encode Completed ...

Why? Just why?

Listen. I'm grateful and all that Handbrake exists. It seems to be a great program, and its free! Who could ask for more? But is it really responsible to create stuff that just does not work right? I mean, take for example the "XBOX 360" featured file formatting for converting an MKV file into something useable for an XBOX 360. I mean, has anyone actually tested it out? I doubt it. Any MP4 (M4V) file that gets created - while playing fine on a PC - does not play on an XBOX 360. sigh Same old S#!+. Nothing ever works right. Especially if it has a Microsoft label on it. Albeit, Handbrake does not have a Microsoft label on it. But it might as well.

Subtitles auto-conversion

Why are you converting SRT subtitles automatically to SSA/ASS? It's rude. You should at least provide an option to have them just passed trough.

Not everyone likes SSA/ASS, because it's abused for "hard" positioning the subtitles, usually somewhere over the movie even if there would be blank space below.

How to Apply Some X264 Parameter in Advanced Option String?

I know some parameter name and value in mediainfo must adjusted to comply with handbrake option string. Such as:

keyint_min=30 become mint-keyint=30 in handbrake
deblock=1:1:2 become deblock=1,1|2
psy_rd=1.00:1.00 become psy-rd=1|1

But, how apply this parameter in handbrake advanced option string?
chroma_qp_offset=-2
cplxblur=20.0
qblur=0.5

Because after encoding finished and I check video files result using mediainfo, these parameter become:
chroma_qp_offset=-6
cplxblur and qblur is not defined (not mentioned) in mediainfo

Thank you for help

DRC only relevant to AC3?

If DRC is only relevant to AC3 sources then why is the option enabled for other formats? Would it not be more user friendly to disable the DRC option for non-AC3 formats?

[Suggestion] Per tab instructions on Documentation

Hi!, I would like to suggest that each tab that the program has when someone encodes, has it's own page, instead of an "objective" wiki, where it tells you how to do what, a "focus" wiki, where each page talks about a part of the program, in this case the Tabs.
For example, lets take the "Picture" tab:
"Here you can set the image size of your encode, and crop it."
And an explanation per line in display:
"Source" The size WxH of the source file you've selected.
"Width""Height" The size in pixels of the OUTPUT, you can use the "anamorphic" for the settings around this.

And so on.
Thanks. Any questions feel free to reply here.
Great software.

Building for Windows Documentation

I've been switching from using a VM to using the new Ubuntu app built on Windows Subsystem for Linux. This runs Ubuntu 16.04.3 LTS.

Following the current documentation at https://handbrake.fr/docs/en/latest/developer/build-windows.html revealed a couple of errors and perhaps deficiencies.

Problems with Dependencies

  • Using a fresh installation, the quoted dependencies can't be installed without first issuing a sudo apt-get update command - otherwise yasm is not visible. It would be good practice to bring the installed system up-to-date at the same time i.e. sudo apt-get upgrade && sudo apt autoremove after the update.

    I think these commands should be included in the documentation

  • The actual list of dependencies doesn't include those needed to run the mingw-w64-build script. Further packages needed, of those listed in the script as requirements, are bison bzip2 flex g++ gunzip pax.

  • Although libtool is listed as a dependency, it is not recognised by the configure script unless libtool-bin is also installed. Although the script has facilities for building this (and pkg-config) if missing, this didn't work for me.

The sufficient dependencies to add to a fresh install that I found were bison cmake curl flex g++ gcc git intltool libtool libtool-bin m4 make patch pax pkg-config python tar wget yasm. (Some of these e.g. git are in fact installed in the released system.)

I think the list in the documentation should be updated. (The list for building for Ubuntu at https://handbrake.fr/docs/en/latest/developer/install-dependencies-ubuntu.html provides another view - it doesn't include pax for example.)

I imagine these results would be the same in a fresh native install of Ubuntu.

Controlling the build

The documentation gives no guidance on controlling the build.

  • For users wishing to build a release version of HandBrake for example to include the fdk-aac encoder, I think a mention of the use of the git tag facility as used by HandBrake should be included i.e.
    git tag (this lists the tags)
    git checkout tags/1.0.3 (or whichever version you want from the list),
  This allows the specific version of HandBrake to be built.
  • Similarly, the options available with configure aren't mentioned. The facility to list usage by calling ./configure -h might be included. In any case the specific case of building to include the fdk-aac encoder, i.e. the --enable-fdk-aac option, could be explicitly mentioned given that is probably a motivation for building your own

Using Windows Filestore

If the option of using the Windows Ubuntu app is documented, the following might also be noted.

MS recommend using Windows filestore (DrvFs) for this sort of work i.e. placing the source somewhere in the regular Windows user NTFS space and linking to this from the Linux world, rather than cloning HandBrake to ~/HandBrake. This has the advantage of being able to build the GUI from the same clone as the dll, rather than maintaining two workspaces. (That was a reason for me to do this anyway.)

There are a couple of problems with this currently.

  • When using GNU tar to extract source, the original file times of the source files are not maintained. This plays havoc with subsequent attempts to make. I've raised a bug report with MS and they will eventually fix this. In the meantime, you can use the port of bsdtar from http://gnuwin32.sourceforge.net/packages/libarchive.htm by quoting the path e.g. --gtar=/mnt/c/SW/GnuWin32/GnuWin32/bin/bsdtar.exe to configure.

  • Also, there is some problem with using concurrency. The build works if make is not asked to run more than 1 job at a time i.e. --launch-jobs=1 or a call of make without any options works. I've not tried to diagnose this - it may be a fault in the build system exposed by the different scheduling running against the Windows Linux kernel implementation.

Whether either of these issues ought to be documented in the HandBrake build for Windows documentation I don't know.

I've only used a toolchain built-in Linux filestore (VolFs) i.e. scripts/mingw-w64-build x86_64 ~/hbtoolchain

Building using MSYS2

For building for Windows, an alternative to build from a single workspace is to use gcc from the MSYS2 environment. This isn't currently documented for Handbrake and since the build system supports it, perhaps this ought to be documented here too.

After installing MSYS2 from http://www.msys2.org/ and updating with

pacman -Syu
pacman -Su

I added the following packages:

pacman -S base-devel cmake diffutils gcc git make mingw-w64-cross mingw-w64-cross-toolchain mingw-w64-x86_64-gcc mingw-w64-x86_64-yasm yasm

And then ran

git clone https://github.com/HandBrake/HandBrake.git && cd HandBrake
./configure --cross=x86_64-w64-mingw32 --enable-qsv --enable-fdk-aac --launch-jobs=10 --launch

This is all in an MSYS shell rather than a MINGW64 shell - the latter fails in configure unable to find x86_64-w64-mingw32-ar

[wishlist] recursive mode when adding a folder with subfolders

the problem: parent folder have videos, 100 child folder have videos.

  • drag parent folder to app ( wait a lot... )
  • add to queue > add all ( very anyoying - please put this add all outside too! )
  • drag child folder 1
  • add to queue > add all
  • drag child folder 2
  • add to queue > add all
    ( repeat this 100 times )...

I wish the app could get videos from all folders inside, when drag the parent folder.... having to do this manually is very very time consuming !! The ' really want to create a folder is another annoying bug !!

I even tried to go to parent folder, display a *.mp4 and drag these files to the app, but the app is not smart enough to figure it out where the file belongs to :(

Unable to build tools

I am new to the project and getting set up. I cloned the project according to the instructions, sync'd it to my account and added the submodules (git submodule init and git submodule update), however, I am unable to run any of the build scripts (e.g, build-tools, marsh build). This may be a side effect of the changes introduced in 1.0 and the docs themselves lagging behind, but it may be that I just missed a step.

screen shot 2016-12-30 at 10 42 34 am

How does encoding speed affect file size?

The prose of this article doesn't mention how encoding speed of general presets affects final file size:

https://handbrake.fr/docs/en/latest/technical/official-presets.html

But the chart in that article seems to indicate that faster speeds should always make for a smaller file, and slower makes larger.

Is this correct? I'd expect the choice of quality (1080p vs 720p etc) would determine larger vs smaller file sizes. Why should a slow (deliberate? careful?) pass not make for a smaller (more well configured?) file?

Thank you.

GUI allows for Invalid TrueHD Audio Passthru and MP4 Container Selection

I was excited to see HandBrake add support for TrueHD recently (thanks!).
Unfortunately I had a couple failed transcodings in which I selected TrueHD 7.1 using and MP4 in which I was left with no Audio or mixdown AC3 5.1. I was thinking this was a buggy new feature, but after some digging did I find that TrueHD is only supported with MKV container.

It seems the GUI allows for Invalid TrueHD Audio Passthru and MP4 Container Selection.

It would be great the handbrake GUI prevented selection of TrueHD Passthru while using the MP4 container, or at least throw a warning about it.

Allow to select interface language

I just upgraded to 1.2.0, and noticed that language of UI has changed to German from English that was before - my system has mixed English/Russian locale, and Germany is only location of the AppStore.

It would be nice to allow selection of the language for UI.

x

x

Am I missing something?

I am not sure why I cannot pick drive, or folder, and the software wont go deeper into directory levels? I am willing to help contribute this functionality if guided a little. This seems like very simple functionality yet totally over looked. I may be missing something so I would appreciate some feed back on the topic.

I would also like the ability to keep folder structure even when moving files to the trans coded directory.

Thanks,

Feature request. Concatenate multiple similar video fragments to one. Enchancement.

I frequently use your app. It would be nice to concatenate multiple similar video fragments to one. ๐Ÿ˜Œ

Usually i have footage from my training session (qigong) in 4 fragments, taken by photo\video camera. Cameras split video to 2Gb or 4Gb chunks, depending of model.
I use Handbrake as i used avconv before to convert them to Mpeg4 AVC HQ 1000 kbps archive. And for uploading to http://youtube.com I got to have one single file.
And i have to join them some way. Now join 4 fragments in second avconv run ๐Ÿ˜ฉ, also making it streaming optimized.

Much thanks in advance! ๐Ÿ‘ ๐Ÿ˜„

Misidentification of Audio (number of audio channels)

Issue:

On version 1.0.7 (build 2017040900), occasionally Handbrake will misidentify the number of audio channels on AC3 encoded audio. It only appears to happen on certain files. In this case, the audio is 5.1 channel (6 channel) AC3, and is being identified as 2.0 AC-3. I don't believe this can be classified as an error, or even a true "misidentification". It may just be a case of Handbrake being too good at its job, in which case this becomes a feature request to have Handbrake present the user with either option or alternative options.

In MediaInfo, this appears as Channel(s): 6-channel vs Channel(s)_Original: 2-channel. I'm not a software developer and realize it can get tremendously complex, but I assume this means Handbrake scans whatever parameter MediaInfo is associating with Channel(s)_Original vs scanning Channel(s), or scanning both. MediaInfo report attached.

Conditions:

This appears to happen when the "original" audio was 2-channel, and converted to 6-channel. Handbrake seems to detect the original audio configuration, instead of the "reworked" audio.

Workaround:

This is not a huge issue, as you can easily use MKV tools to extract and sync them to the newly encoded video (effectively replacing the audio from the old file into the new file), but it would be nice to see a fix if possible.

Request:

If possible, it would be nice to see the ability to select either version in Handbrake if feasible and time permits. Thank you!

screen shot 2017-07-03 at 10 41 40 am

Media_info_output_handbrake_issue.txt

program wont remember subtitles defaults

every time i start a session after i load a video subtitles are always turned on and forced burn in....
i click reload defaults and it has always changes to on .... burn in... i have to before a session always configure the defaults to subtitles off and reload defaults.... when i quit the program and launch again subtitles are back on, burn in

v1.1.0 - 64bit - Subtitles are a total mess over here

Hi, I created a preset and the subtitles behavior selection looks like this

a1

what gives me this

75bd9552-0cf4-4ec7-8e4a-e281d203e78f

which is wrong regarding Burn in. For whatever reason Brun in is also protected and can't be deselected. If I chose Default then Burn in goes away. Odd behavior.

d93b7519-a915-45e0-bcc5-23d67333061d

So I changed the preset to this

a3

and got this

a4

so I decided to delete the last one resulting in this

a5

But the result in the end in e.g. VLC is this

a6

and the german subtitle is burned in again.

What the heck is going on?

Thx!

Add Performance article including decoding speed information.

I'd like an article on video decoding speed/performance to sit alongside the encoding one.
Even if it's just a stub article with a few bullet points to keep in mind.


One of the issues I face is that I often try to balance out video decoding performance when creating web apps, whether as a PWA, Cordova or in Electron.

Particularly as I tend to work on Electron apps for conferences that tend to be interactive and sometimes we want to add videos.

I have built a rough understanding of video decoding performance, but to be honest, I still feel like I am blindly stumbling through the settings in Handbrake.

I'm not the only one that wonders about decode performance it seems either. I often try to share what little I know, sometimes even having to advise designers on such a complex topic.

It's vaguely mentioned in the encoding article, but I think an page aimed at decoding performance specifically would immensely useful and show up during google search results.

Reuse translations

Why is there a new translation for each version in Transifex? This makes it much longer to translate a new version, if you have to start from the beginning when a new version is coming out, instead of reusing translations.

qBittorrent presets

A really useful feature would be the ability to set the maximum bit rates for both audio and video.

My friends and I encode our movies at 160 audio and 900 video, anything less and "pass" is the obvious choice.
It would be nice to set maximums that would automatically fall back to pass if less than the maximum setting.
The same way width and height maximums work.

Thanks,

Regards,

Bill,

Add Project Goals article

Per @jstebbins' comment I have added the following to the About HandBrake article:

HandBrake is a post-production tool. Its primary purpose is to convert videos from supported source formats to MP4 or MKV format. If you wish to make changes to your Source video, please use an appropriate video editing software.

I suggest we also add a standalone Project Goals article next to the Project History article (which needs revised also). Opening this issue for discussion of project goals and scope. Feel free to brainstorm. The is/isn't sections on About HandBrake are a good starting point.

Audio/Video out of sync Version 1.0.7 (2017040900) - 64bit

I've been using Version 0.10.5.0 - 64bit to convert MPEG2 to MP4 video, using the normal profile. This has been working well. However, when the latest update was announced, I upgraded to 1.0.7 (2017040900) - 64bit. Since then, after the above conversion process, using WMP the audio and video have been out of sync by 2-3 seconds or more. However, when I reinstalled the old version, I no longer had this sync problem. Appears changes in the new version have caused this sync issue with WMP (and possibly other video players). I think this issue deserves further study, as I was blaming the player for the problem rather than the new version of HandBrake.

Attached are logs using both versions as noted above.
Coronation Street (recorded Apr 14, 2017, Old HB)-1.m4v 5-31-2017 8-59-38 PM.txt
Coronation Street (recorded Apr 14, 2017, Cbutdt)-1.m4v 05-31-2017 19-19-37.txt

GUI screenshots and consistency

Will there be a way to submit GUI screenshots for all OS versions in the future?
it could be done like languages, so the user or the provided user agent can select the relevant OS ;)

this would allow for consistency across the wiki and it allows every user to submit (kind of)

something I noticed, is that the front page handbrake.fr uses Windows screenshot, but the wiki provides Mac OSX screenshots (atleast the ones I saw)

it's nothing super important, but if the wiki expands further, consistency of the content might be something that's nice to have

this could also allow for OS specific explanations in the future
or even leaving out topics that are only relevant for another OS

another thing: do we want a consistent gui resolution for the screenshots?

In general there could be some guidelines for this that could be added to the contribute md in the future

I'm not trying to make it overly complicated though
it shouldn't get too bureaucratically, the effort to add explanations should be kept low enough
I just wanted to add my two cents on what could be improved ;)

How to convert/add subtitle to video without altering any settings?

I just want to convert a video to .mp4 or add subtitle to it, while maintaining quality and all settings untouched. How can I do this? I don't want to touch the preset... because I don't know which is best and I don't know current video's quality so I'm afraid the presets will scale down its quality.

Or is it I just need to select the preset with highest quality and everything will remain untouched?

Improve permissions for Flatpak instructions.

A user on IRC pointed out that some Flatpak commands do not run without sudo. Other commands add --user, which I believe removes the need for sudo.

It would be good to clarify any commands that do not work out of the box on a standard user account by either prefixing with sudo or adding --user, whichever is most appropriate.

Add build system documentation.

We used to have documentation about the build system itself in HandBrake's doc directory (see attached). It needs to be revised and integrated into the developer documentation here.

doc.zip

Update translations for 1.2.0 release.

English content changes:

diff -Naur source/docs/en/1.1.0/cli/cli-guide.markdown source/docs/en/1.2.0/cli/cli-guide.markdown
--- source/docs/en/1.1.0/cli/cli-guide.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/cli/cli-guide.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -1,606 +1,20 @@
 ---
 Type:            article
-State:           [ draft ]
-Title:           CLI Guide
+Title:           CLI guide
 Project:         HandBrake
 Project_URL:     https://handbrake.fr/
 Project_Version: 1.1.0
 Language:        English
 Language_Code:   en
-Authors:         [ Scott (s55) ]
+Authors:         [ Bradley Sepos <[email protected]> (BradleyS), Scott (s55) ]
 Copyright:       2018 HandBrake Team
 License:         Creative Commons Attribution-ShareAlike 4.0 International
 License_Abbr:    CC BY-SA 4.0
 License_URL:     https://handbrake.fr/docs/license.html
+Redirect_URL:    command-line-reference.html
 ---
 
-CLI Guide
-=============================
+CLI guide
+=========
 
-The following details all the available options in HandBrakeCLI
-
-You can access this information at any time by running the following command:
-
-> HandBrakeCLI --help
-
-### The HandBrakeCLI Help Output
-
-    Usage: HandBrakeCLI [options] -i <source> -o <destination>
-
-    General Options --------------------------------------------------------------
-
-       -h, --help              Print help
-       --version               Print version
-       -v, --verbose[=number]  Be verbose (optional argument: logging level)
-       -Z. --preset <string>   Select preset by name (case-sensitive)
-                               Enclose names containing spaces in double quotation
-                               marks (e.g. "Preset Name")
-       -z, --preset-list       List available presets
-       --preset-import-file <filespec>
-                               Import presets from a json preset file.
-                               'filespec' may be a list of files separated
-                               by spaces, or it may use shell wildcards.
-       --preset-import-gui     Import presets from GUI config preset file.
-       --preset-export <string>
-                               Create a new preset from command line options and
-                               write a json representation of the preset to the
-                               console or a file if '--preset-export-file' is
-                               specified. The required argument will be the name
-                               of the new preset.
-       --preset-export-file <filename>
-                               Write new preset generated by '--preset-export'
-                               to file 'filename'.
-       --preset-export-description <string>
-                               Add a description to the new preset created with
-                               '--preset-export'
-       --queue-import-file <filename>
-                               Import an encode queue file created by the GUI
-           --no-dvdnav         Do not use dvdnav for reading DVDs
-
-
-    Source Options ---------------------------------------------------------------
-
-       -i, --input <string>    Set input file or device ("source")
-       -t, --title <number>    Select a title to encode (0 to scan all titles
-                               only, default: 1)
-           --min-duration      Set the minimum title duration (in seconds).
-                               Shorter titles will be ignored (default: 10).
-           --scan              Scan selected title only.
-           --main-feature      Detect and select the main feature title.
-       -c, --chapters <string> Select chapters (e.g. "1-3" for chapters
-                               1 to 3 or "3" for chapter 3 only,
-                               default: all chapters)
-           --angle <number>    Select the video angle (DVD or Blu-ray only)
-           --previews <number:boolean>
-                               Select how many preview images are generated,
-                               and whether to store to disk (0 or 1).
-                               (default: 10:0)
-       --start-at-preview <number>
-                               Start encoding at a given preview.
-       --start-at <string:number>
-                               Start encoding at a given duration (in seconds),
-                               frame, or pts (on a 90kHz clock)
-                               (e.g. duration:10, frame:300, pts:900000)
-       --stop-at  <string:number>
-                               Stop encoding at a given duration (in seconds),
-                               frame, or pts (on a 90kHz clock)
-                               (e.g. duration:10, frame:300, pts:900000)
-
-
-    Destination Options ----------------------------------------------------------
-
-       -o, --output <filename> Set destination file name
-       -f, --format <string>   Select container format:
-                                   av_mp4
-                                   av_mkv
-                               default: auto-detected from destination file name)
-       -m, --markers           Add chapter markers
-           --no-markers        Disable preset chapter markers
-       -O, --optimize          Optimize MP4 files for HTTP streaming (fast start,
-                               s.s. rewrite file to place MOOV atom at beginning)
-           --no-optimize       Disable preset 'optimize'
-       -I, --ipod-atom         Add iPod 5G compatibility atom to MP4 container
-           --no-ipod-atom      Disable iPod 5G atom
-
-
-    Video Options ----------------------------------------------------------------
-
-       -e, --encoder <string>  Select video encoder:
-                                   x264
-                                   x265
-                                   mpeg4
-                                   mpeg2
-                                   VP8
-                                   VP9
-                                   theora
-           --encoder-preset <string>
-                               Adjust video encoding settings for a particular
-                               speed/efficiency tradeoff (encoder-specific)
-       --encoder-preset-list <string>
-                               List supported --encoder-preset values for the
-                               specified video encoder
-           --encoder-tune <string>
-                               Adjust video encoding settings for a particular
-                               type of source or situation (encoder-specific)
-       --encoder-tune-list <string>
-                               List supported --encoder-tune values for the
-                               specified video encoder
-       -x, --encopts <string>  Specify advanced encoding options in the same
-                               style as mencoder (all encoders except theora):
-                               option1=value1:option2=value2
-           --encoder-profile <string>
-                               Ensure compliance with the requested codec
-                               profile (encoder-specific)
-       --encoder-profile-list <string>
-                               List supported --encoder-profile values for the
-                               specified video encoder
-           --encoder-level <string>
-                               Ensures compliance with the requested codec
-                               level (encoder-specific)
-       --encoder-level-list <string>
-                               List supported --encoder-level values for the
-                               specified video encoder
-       -q, --quality <float>   Set video quality (e.g. 22.0)
-       -b, --vb <number>       Set video bitrate in kbit/s (default: 1000)
-       -2, --two-pass          Use two-pass mode
-           --no-two-pass       Disable two-pass mode
-       -T, --turbo             When using 2-pass use "turbo" options on the
-                               first pass to improve speed
-                               (works with x264 and x265)
-           --no-turbo          Disable 2-pass mode's "turbo" first pass
-       -r, --rate <float>      Set video framerate
-                               (5/10/12/15/20/23.976/24/25/29.97/
-                               30/48/50/59.94/60/72/75/90/100/120
-                               or a number between 1 and 1000).
-                               Be aware that not specifying a framerate lets
-                               HandBrake preserve a source's time stamps,
-                               potentially creating variable framerate video
-       --vfr, --cfr, --pfr     Select variable, constant or peak-limited
-                               frame rate control. VFR preserves the source
-                               timing. CFR makes the output constant rate at
-                               the rate given by the -r flag (or the source's
-                               average rate if no -r is given). PFR doesn't
-                               allow the rate to go over the rate specified
-                               with the -r flag but won't change the source
-                               timing if it's below that rate.
-                               If none of these flags are given, the default
-                               is --pfr when -r is given and --vfr otherwise
-
-
-    Audio Options ----------------------------------------------------------------
-
-           --audio-lang-list <string>
-                               Specify a comma separated list of audio
-                               languages you would like to select from the
-                               source title. By default, the first audio
-                               matching each language will be added to your
-                               output. Provide the language's ISO 639-2 code
-                               (e.g. fre, eng, spa, dut, et cetera)
-                               Use code 'und' (Unknown) to match all languages.
-           --all-audio         Select all audio tracks matching languages in
-                               the specified language list (--audio-lang-list).
-                               Any language if list is not specified.
-           --first-audio       Select first audio track matching languages in
-                               the specified language list (--audio-lang-list).
-                               Any language if list is not specified.
-       -a, --audio <string>    Select audio track(s), separated by commas
-                               ("none" for no audio, "1,2,3" for multiple
-                               tracks, default: first one).
-                               Multiple output tracks can be used for one input.
-       -E, --aencoder <string> Select audio encoder(s):
-                                   none
-                                   av_aac
-                                   ca_aac
-                                   ca_haac
-                                   copy:aac
-                                   ac3
-                                   copy:ac3
-                                   eac3
-                                   copy:eac3
-                                   copy:truehd
-                                   copy:dts
-                                   copy:dtshd
-                                   mp3
-                                   copy:mp3
-                                   vorbis
-                                   flac16
-                                   flac24
-                                   copy:flac
-                                   opus
-                                   copy
-                               "copy:<type>" will pass through the corresponding
-                               audio track without modification, if pass through
-                               is supported for the audio type.
-                               Separate tracks by commas.
-                               Defaults:
-                                   av_mp4   ca_aac/av_aac
-                                   av_mkv   ca_aac/mp3
-           --audio-copy-mask <string>
-                               Set audio codecs that are permitted when the
-                               "copy" audio encoder option is specified
-                               (aac/ac3/eac3/truehd/dts/dtshd/mp3/flac)
-                               Separated by commas for multiple allowed options.
-           --audio-fallback <string>
-                               Set audio codec to use when it is not possible
-                               to copy an audio track without re-encoding.
-       -B, --ab <number>       Set audio track bitrate(s) in kbit/s.
-                               (default: determined by the selected codec, mixdown,
-                               and samplerate combination).
-                               Separate tracks by commas.
-       -Q, --aq <float>        Set audio quality metric.
-                               Separate tracks by commas.
-       -C, --ac <float>        Set audio compression metric.
-                               (available depending on selected codec)
-                               Separate tracks by commas.
-       -6, --mixdown <string>  Format(s) for audio downmixing/upmixing:
-                                   mono
-                                   left_only
-                                   right_only
-                                   stereo
-                                   dpl1
-                                   dpl2
-                                   5point1
-                                   6point1
-                                   7point1
-                                   5_2_lfe
-                               Separate tracks by commas.
-                               Defaults:
-                                   none             up to dpl2
-                                   av_aac           up to dpl2
-                                   ca_aac           up to dpl2
-                                   ca_haac          up to dpl2
-                                   ac3              up to 5point1
-                                   eac3             up to 5point1
-                                   mp3              up to dpl2
-                                   vorbis           up to dpl2
-                                   flac16           up to 7point1
-                                   flac24           up to 7point1
-                                   opus             up to 7point1
-           --normalize-mix     Normalize audio mix levels to prevent clipping.
-                  <string>     Separate tracks by commas.
-                               0 = Disable Normalization (default)
-                               1 = Enable Normalization
-       -R, --arate             Set audio samplerate(s)
-                               (8/11.025/12/16/22.05/24/32/44.1/48 kHz)
-                               Separate tracks by commas.
-       -D, --drc <float>       Apply extra dynamic range compression to the
-                               audio, making soft sounds louder. Range is 1.0
-                               to 4.0 (too loud), with 1.5 - 2.5 being a useful
-                               range.
-                               Separate tracks by commas.
-           --gain <float>      Amplify or attenuate audio before encoding.  Does
-                               NOT work with audio passthru (copy). Values are
-                               in dB.  Negative values attenuate, positive
-                               values amplify. A 1 dB difference is barely
-                               audible.
-           --adither <string>  Select dithering to apply before encoding audio:
-                                   auto (default)
-                                   none
-                                   rectangular
-                                   triangular
-                                   triangular_hp
-                                   triangular_ns
-                               Separate tracks by commas.
-                               Supported by encoder(s):
-                                   flac16
-       -A, --aname <string>    Set audio track name(s).
-                               Separate tracks by commas.
-
-
-    Picture Options --------------------------------------------------------------
-
-       -w, --width  <number>   Set storage width in pixels
-       -l, --height <number>   Set storage height in pixels
-           --crop   <top:bottom:left:right>
-                               Set picture cropping in pixels
-                               (default: automatically remove black bars)
-           --loose-crop        Always crop to a multiple of the modulus
-           --no-loose-crop     Disable preset 'loose-crop'
-       -Y, --maxHeight <number>
-                               Set maximum height in pixels
-       -X, --maxWidth  <number>
-                               Set maximum width in pixels
-       --non-anamorphic        Set pixel aspect ratio to 1:1
-       --auto-anamorphic       Store pixel aspect ratio that maximizes storage
-                               resolution
-       --loose-anamorphic      Store pixel aspect ratio that is as close as
-                               possible to the source video pixel aspect ratio
-       --custom-anamorphic     Store pixel aspect ratio in video stream and
-                               directly control all parameters.
-       --display-width <number>
-                               Set display width in pixels, for custom anamorphic.
-                               This determines the display aspect during playback,
-                               which may differ from the storage aspect.
-       --keep-display-aspect   Preserve the source's display aspect ratio
-                               when using custom anamorphic
-       --no-keep-display-aspect
-                               Disable preset 'keep-display-aspect'
-       --pixel-aspect <par_x:par_y>
-                               Set pixel aspect for custom anamorphic
-                               (--display-width and --pixel-aspect are mutually
-                               exclusive.
-       --itu-par               Use wider ITU pixel aspect values for loose and
-                               custom anamorphic, useful with underscanned sources
-       --no-itu-par            Disable preset 'itu-par'
-       --modulus <number>      Set storage width and height modulus
-                               Dimensions will be made divisible by this number.
-                               (default: set by preset, typically 2)
-       -M, --color-matrix <string>
-                               Set the color space signaled by the output:
-                                   2020
-                                   709
-                                   601
-                                   ntsc (same as 601)
-                                   pal
-                               (default: auto-detected from source)
-
-
-    Filters Options --------------------------------------------------------------
-
-       --comb-detect[=string]  Detect interlace artifacts in frames.
-                               If not accompanied by the decomb or deinterlace
-                               filters, this filter only logs the interlaced
-                               frame count to the activity log.
-                               If accompanied by the decomb or deinterlace
-                               filters, it causes these filters to selectively
-                               deinterlace only those frames where interlacing
-                               is detected.
-                               Presets:
-                                   permissive
-                                   fast
-                               Custom Format:
-                                   mode=m:spatial-metric=s:motion-thresh=m:
-                                   spatial-thresh=s:filter-mode=f:block-thresh=b:
-                                   block-width=b:block-height=b:disable=d
-                               Default:
-                                   mode=3:spatial-metric=2:motion-thresh=1:
-                                   spatial-thresh=1:filter-mode=2:block-thresh=40:
-                                   block-width=16:block-height=16
-       --no-comb-detect        Disable preset comb-detect filter
-       -d, --deinterlace[=string]
-                               Deinterlace video using libav yadif.
-                               Presets:
-                                   skip-spatial
-                                   bob
-                               Custom Format:
-                                   mode=m:parity=p
-                               Default:
-                                   mode=3
-           --no-deinterlace    Disable preset deinterlace filter
-       -5, --decomb[=string]   Deinterlace video using a combination of yadif,
-                               blend, cubic, or EEDI2 interpolation.
-                               Presets:
-                                   bob
-                                   eedi2
-                                   eedi2bob
-                               Custom Format:
-                                   mode=m:magnitude-thresh=m:variance-thresh=v:
-                                   laplacian-thresh=l:dilation-thresh=d:
-                                   erosion-thresh=e:noise-thresh=n:
-                                   search-distance=s:postproc=p:parity=p
-                               Default:
-                                   mode=7
-       --no-decomb             Disable preset decomb filter
-       -9, --detelecine[=string]
-                               Detelecine (ivtc) video with pullup filter
-                               Note: this filter drops duplicate frames to
-                               restore the pre-telecine framerate, unless you
-                               specify a constant framerate
-                               (--rate 29.97 --cfr)
-                               Custom Format:
-                                   skip-left=s:skip-right=s:skip-top=s:
-                                   skip-bottom=s:strict-breaks=s:plane=p:parity=p:
-                                   disable=d
-                               Default:
-                                   skip-left=1:skip-right=1:skip-top=4:
-                                   skip-bottom=4:plane=0
-       --no-detelecine         Disable preset detelecine filter
-       -8, --hqdn3d[=string]   Denoise video with hqdn3d filter
-                               Presets:
-                                   ultralight
-                                   light
-                                   medium
-                                   strong
-                               Custom Format:
-                                   y-spatial=y:cb-spatial=c:cr-spatial=c:
-                                   y-temporal=y:cb-temporal=c:cr-temporal=c
-                               Default:
-                                   y-spatial=3:cb-spatial=2:cr-spatial=2:
-                                   y-temporal=2:cb-temporal=3:cr-temporal=3
-       --no-hqdn3d             Disable preset hqdn3d filter
-       --denoise[=string]      Legacy alias for '--hqdn3d'
-       --nlmeans[=string]      Denoise video with NLMeans filter
-                               Presets:
-                                   ultralight
-                                   light
-                                   medium
-                                   strong
-                               Custom Format:
-                                   y-strength=y:y-origin-tune=y:y-patch-size=y:
-                                   y-range=y:y-frame-count=y:y-prefilter=y:
-                                   cb-strength=c:cb-origin-tune=c:cb-patch-size=c:
-                                   cb-range=c:cb-frame-count=c:cb-prefilter=c:
-                                   cr-strength=c:cr-origin-tune=c:cr-patch-size=c:
-                                   cr-range=c:cr-frame-count=c:cr-prefilter=c
-                               Default:
-                                   y-strength=6:y-origin-tune=1:y-patch-size=7:
-                                   y-range=3:y-frame-count=2:y-prefilter=0:
-                                   cb-strength=6:cb-origin-tune=1:cb-patch-size=7:
-                                   cb-range=3:cb-frame-count=2:cb-prefilter=0
-       --no-nlmeans            Disable preset NLMeans filter
-       --nlmeans-tune <string> Tune NLMeans filter to content type
-                               Tunes:
-                                   none
-                                   film
-                                   grain
-                                   highmotion
-                                   animation
-                                   tape
-                                   sprite
-                               Applies to NLMeans presets only (does not affect
-                               custom settings)
-       --unsharp[=string]      Sharpen video with unsharp filter
-                               Presets:
-                                   ultralight
-                                   light
-                                   medium
-                                   strong
-                                   stronger
-                                   verystrong
-                               Custom Format:
-                                   y-strength=y:y-size=y:cb-strength=c:cb-size=c:
-                                   cr-strength=c:cr-size=c
-                               Default:
-                                   y-strength=0.25:y-size=7:cb-strength=0.25:
-                                   cb-size=7
-       --no-unsharp            Disable preset unsharp filter
-       --unsharp-tune <string> Tune unsharp filter
-                               Tunes:
-                                   none
-                                   ultrafine
-                                   fine
-                                   medium
-                                   coarse
-                                   verycoarse
-                               Applies to unsharp presets only (does not affect
-                               custom settings)
-       --lapsharp[=string]     Sharpen video with lapsharp filter
-                               Presets:
-                                   ultralight
-                                   light
-                                   medium
-                                   strong
-                                   stronger
-                                   verystrong
-                               Custom Format:
-                                   y-strength=y:y-kernel=y:cb-strength=c:
-                                   cb-kernel=c:cr-strength=c:cr-kernel=c
-                               Default:
-                                   y-strength=0.2:y-kernel=isolap:cb-strength=0.2:
-                                   cb-kernel=isolap
-       --no-lapsharp           Disable preset lapsharp filter
-       --lapsharp-tune <string>
-                               Tune lapsharp filter
-                               Tunes:
-                                   none
-                                   film
-                                   grain
-                                   animation
-                                   sprite
-                               Applies to lapsharp presets only (does not affect
-                               custom settings)
-       -7, --deblock[=string]  Deblock video with pp7 filter
-                               Custom Format:
-                                   qp=q:mode=m:disable=d
-                               Default:
-                                   qp=5
-       --no-deblock            Disable preset deblock filter
-       --rotate[=string]       Rotate image or flip its axes.
-                               angle rotates clockwise, can be one of:
-                                   0, 90, 180, 270
-                               hflip=1 flips the image on the x axis (horizontally).
-                               Custom Format:
-                                   angle=a:hflip=h:disable=d
-                               Default:
-                                   angle=180:hflip=0
-       --pad <string>          Pad image with borders (e.g. letterbox).
-                               The padding color may be set (default black).
-                               Color may be an HTML color name or RGB value.
-                               The position of image in pad may also be set.
-                               Custom Format:
-                                   width=w:height=h:color=c:x=x:y=y
-       -g, --grayscale         Grayscale encoding
-       --no-grayscale          Disable preset 'grayscale'
-
-
-    Subtitles Options ------------------------------------------------------------
-
-      --subtitle-lang-list <string>
-                               Specify a comma separated list of subtitle
-                               languages you would like to select from the
-                               source title. By default, the first subtitle
-                               matching each language will be added to your
-                               output. Provide the language's ISO 639-2 code
-                               (e.g. fre, eng, spa, dut, et cetera)
-          --all-subtitles      Select all subtitle tracks matching languages in
-                               the specified language list
-                               (--subtitle-lang-list).
-                               Any language if list is not specified.
-          --first-subtitle     Select first subtitle track matching languages in
-                               the specified language list
-                               (--subtitle-lang-list).
-                               Any language if list is not specified.
-      -s, --subtitle <string>  Select subtitle track(s), separated by commas
-                               More than one output track can be used for one
-                               input. "none" for no subtitles.
-                               Example: "1,2,3" for multiple tracks.
-                               A special track name "scan" adds an extra first
-                               pass. This extra pass scans subtitles matching
-                               the language of the first audio or the language 
-                               selected by --native-language.
-                               The one that's only used 10 percent of the time
-                               or less is selected. This should locate subtitles
-                               for short foreign language segments. Best used in
-                               conjunction with --subtitle-forced.
-      -F, --subtitle-forced[=string]
-                               Only display subtitles from the selected stream
-                               if the subtitle has the forced flag set. The
-                               values in 'string' are indexes into the
-                               subtitle list specified with '--subtitle'.
-                               Separate tracks by commas.
-                               Example: "1,2,3" for multiple tracks.
-                               If "string" is omitted, the first track is
-                               forced.
-          --subtitle-burned[=number]
-                               "Burn" the selected subtitle into the video
-                               track. If "subtitle" is omitted, the first
-                               track is burned. "subtitle" is an index into
-                               the subtitle list specified with '--subtitle'
-                               or "native" to burn the subtitle track that may
-                               be added by the 'native-language' option.
-          --subtitle-default[=number or "none"]
-                               Flag the selected subtitle as the default
-                               subtitle to be displayed upon playback.  Setting
-                               no default means no subtitle will be displayed
-                               automatically. 'number' is an index into the
-                               subtitle list specified with '--subtitle'.
-                               "none" may be used to override an automatically
-                               selected default subtitle track.
-      -N, --native-language <string>
-                               Specify your language preference. When the first
-                               audio track does not match your native language
-                               then select the first subtitle that does. When
-                               used in conjunction with --native-dub the audio
-                               track is changed in preference to subtitles.
-                               Provide the language's ISO 639-2 code
-                               (e.g. fre, eng, spa, dut, et cetera)
-          --native-dub         Used in conjunction with --native-language
-                               requests that if no audio tracks are selected the
-                               default selected audio track will be the first
-                               one that matches the --native-language. If there
-                               are no matching audio tracks then the first
-                               matching subtitle track is used instead.
-         --srt-file <string>   SubRip SRT filename(s), separated by commas.
-         --srt-codeset <string>
-                               Character codeset(s) that the SRT file(s) are
-                               encoded as, separated by commas.
-                               If not specified, 'latin1' is assumed.
-                               Command 'iconv -l' provides a list of valid codesets.
-         --srt-offset <string> Offset (in milliseconds) to apply to the SRT
-                               file(s), separated by commas. If not specified,
-                               zero is assumed. Offsets may be negative.
-         --srt-lang <string>   SRT track language as an ISO 639-2 code
-                               (e.g. fre, eng, spa, dut, et cetera)
-                               If not specified, then 'und' is used.
-                               Separate by commas.
-         --srt-default[=number]
-                               Flag the selected SRT as the default subtitle
-                               to be displayed during playback.
-                               Setting no default means no subtitle will be
-                               automatically displayed. If 'number' is omitted,
-                               the first SRT is the default.
-                               'number' is a 1-based index into the 'srt-file' list
-         --srt-burn[=number]   "Burn" the selected SRT subtitle into
-                               the video track.
-                               If 'number' is omitted, the first SRT is burned.
-                               'number' is a 1-based index into the 'srt-file' list
+This article has been moved to [Command Line Reference](command-line-reference.html).
diff -Naur source/docs/en/1.1.0/cli/command-line-reference.markdown source/docs/en/1.2.0/cli/command-line-reference.markdown
--- source/docs/en/1.1.0/cli/command-line-reference.markdown	1969-12-31 19:00:00.000000000 -0500
+++ source/docs/en/1.2.0/cli/command-line-reference.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -0,0 +1,609 @@
+---
+Type:            article
+Title:           Command line reference
+Project:         HandBrake
+Project_URL:     https://handbrake.fr/
+Project_Version: 1.1.0
+Language:        English
+Language_Code:   en
+Authors:         [ Bradley Sepos <[email protected]> (BradleyS), Scott (s55) ]
+Copyright:       2018 HandBrake Team
+License:         Creative Commons Attribution-ShareAlike 4.0 International
+License_Abbr:    CC BY-SA 4.0
+License_URL:     https://handbrake.fr/docs/license.html
+---
+
+Command line reference
+======================
+
+The following details all the available options in the command line interface. This information may be accessed at any time by running `HandBrakeCLI --help`.
+
+    Usage: HandBrakeCLI [options] -i <source> -o <destination>
+    
+    General Options --------------------------------------------------------------
+
+       -h, --help              Print help
+       --version               Print version
+       --json                  Log title, progress, and version info in
+                               JSON format
+       -v, --verbose[=number]  Be verbose (optional argument: logging level)
+       -Z. --preset <string>   Select preset by name (case-sensitive)
+                               Enclose names containing spaces in double quotation
+                               marks (e.g. "Preset Name")
+       -z, --preset-list       List available presets
+       --preset-import-file <filespec>
+                               Import presets from a json preset file.
+                               'filespec' may be a list of files separated
+                               by spaces, or it may use shell wildcards.
+       --preset-import-gui     Import presets from GUI config preset file.
+       --preset-export <string>
+                               Create a new preset from command line options and
+                               write a json representation of the preset to the
+                               console or a file if '--preset-export-file' is
+                               specified. The required argument will be the name
+                               of the new preset.
+       --preset-export-file <filename>
+                               Write new preset generated by '--preset-export'
+                               to file 'filename'.
+       --preset-export-description <string>
+                               Add a description to the new preset created with
+                               '--preset-export'
+       --queue-import-file <filename>
+                               Import an encode queue file created by the GUI
+           --no-dvdnav         Do not use dvdnav for reading DVDs
+    
+    
+    Source Options ---------------------------------------------------------------
+    
+       -i, --input <string>    Set input file or device ("source")
+       -t, --title <number>    Select a title to encode (0 to scan all titles
+                               only, default: 1)
+           --min-duration      Set the minimum title duration (in seconds).
+                               Shorter titles will be ignored (default: 10).
+           --scan              Scan selected title only.
+           --main-feature      Detect and select the main feature title.
+       -c, --chapters <string> Select chapters (e.g. "1-3" for chapters
+                               1 to 3 or "3" for chapter 3 only,
+                               default: all chapters)
+           --angle <number>    Select the video angle (DVD or Blu-ray only)
+           --previews <number:boolean>
+                               Select how many preview images are generated,
+                               and whether to store to disk (0 or 1).
+                               (default: 10:0)
+       --start-at-preview <number>
+                               Start encoding at a given preview.
+       --start-at <string:number>
+                               Start encoding at a given duration (in seconds),
+                               frame, or pts (on a 90kHz clock)
+                               (e.g. duration:10, frame:300, pts:900000)
+       --stop-at  <string:number>
+                               Stop encoding at a given duration (in seconds),
+                               frame, or pts (on a 90kHz clock)
+                               (e.g. duration:10, frame:300, pts:900000)
+    
+    
+    Destination Options ----------------------------------------------------------
+    
+       -o, --output <filename> Set destination file name
+       -f, --format <string>   Select container format:
+                                   av_mp4
+                                   av_mkv
+                               default: auto-detected from destination file name)
+       -m, --markers           Add chapter markers
+           --no-markers        Disable preset chapter markers
+       -O, --optimize          Optimize MP4 files for HTTP streaming (fast start,
+                               s.s. rewrite file to place MOOV atom at beginning)
+           --no-optimize       Disable preset 'optimize'
+       -I, --ipod-atom         Add iPod 5G compatibility atom to MP4 container
+           --no-ipod-atom      Disable iPod 5G atom
+           --align-av          Add audio silence or black video frames to start
+                               of streams so that all streams start at exactly
+                               the same time
+       --inline-parameter-sets Create adaptive streaming compatible output.
+                               Inserts parameter sets (SPS and PPS) inline
+                               in the video stream before each IDR.
+    
+    
+    Video Options ----------------------------------------------------------------
+    
+       -e, --encoder <string>  Select video encoder:
+                                   x264
+                                   x264_10bit
+                                   x265
+                                   x265_10bit
+                                   x265_12bit
+                                   mpeg4
+                                   mpeg2
+                                   VP8
+                                   VP9
+                                   theora
+           --encoder-preset <string>
+                               Adjust video encoding settings for a particular
+                               speed/efficiency tradeoff (encoder-specific)
+       --encoder-preset-list <string>
+                               List supported --encoder-preset values for the
+                               specified video encoder
+           --encoder-tune <string>
+                               Adjust video encoding settings for a particular
+                               type of source or situation (encoder-specific)
+       --encoder-tune-list <string>
+                               List supported --encoder-tune values for the
+                               specified video encoder
+       -x, --encopts <string>  Specify advanced encoding options in the same
+                               style as mencoder (all encoders except theora):
+                               option1=value1:option2=value2
+           --encoder-profile <string>
+                               Ensure compliance with the requested codec
+                               profile (encoder-specific)
+       --encoder-profile-list <string>
+                               List supported --encoder-profile values for the
+                               specified video encoder
+           --encoder-level <string>
+                               Ensures compliance with the requested codec
+                               level (encoder-specific)
+       --encoder-level-list <string>
+                               List supported --encoder-level values for the
+                               specified video encoder
+       -q, --quality <float>   Set video quality (e.g. 22.0)
+       -b, --vb <number>       Set video bitrate in kbit/s (default: 1000)
+       -2, --two-pass          Use two-pass mode
+           --no-two-pass       Disable two-pass mode
+       -T, --turbo             When using 2-pass use "turbo" options on the
+                               first pass to improve speed
+                               (works with x264 and x265)
+           --no-turbo          Disable 2-pass mode's "turbo" first pass
+       -r, --rate <float>      Set video framerate
+                               (5/10/12/15/20/23.976/24/25/29.97/
+                               30/48/50/59.94/60/72/75/90/100/120
+                               or a number between 1 and 1000).
+                               Be aware that not specifying a framerate lets
+                               HandBrake preserve a source's time stamps,
+                               potentially creating variable framerate video
+       --vfr, --cfr, --pfr     Select variable, constant or peak-limited
+                               frame rate control. VFR preserves the source
+                               timing. CFR makes the output constant rate at
+                               the rate given by the -r flag (or the source's
+                               average rate if no -r is given). PFR doesn't
+                               allow the rate to go over the rate specified
+                               with the -r flag but won't change the source
+                               timing if it's below that rate.
+                               If none of these flags are given, the default
+                               is --pfr when -r is given and --vfr otherwise
+    
+    
+    Audio Options ----------------------------------------------------------------
+    
+           --audio-lang-list <string>
+                               Specify a comma separated list of audio
+                               languages you would like to select from the
+                               source title. By default, the first audio
+                               matching each language will be added to your
+                               output. Provide the language's ISO 639-2 code
+                               (e.g. fre, eng, spa, dut, et cetera)
+                               Use code 'und' (Unknown) to match all languages.
+           --all-audio         Select all audio tracks matching languages in
+                               the specified language list (--audio-lang-list).
+                               Any language if list is not specified.
+           --first-audio       Select first audio track matching languages in
+                               the specified language list (--audio-lang-list).
+                               Any language if list is not specified.
+       -a, --audio <string>    Select audio track(s), separated by commas
+                               ("none" for no audio, "1,2,3" for multiple
+                               tracks, default: first one).
+                               Multiple output tracks can be used for one input.
+       -E, --aencoder <string> Select audio encoder(s):
+                                   none
+                                   ca_aac
+                                   ca_haac
+                                   copy:aac
+                                   ac3
+                                   copy:ac3
+                                   eac3
+                                   copy:eac3
+                                   copy:truehd
+                                   copy:dts
+                                   copy:dtshd
+                                   mp3
+                                   copy:mp3
+                                   vorbis
+                                   flac16
+                                   flac24
+                                   copy:flac
+                                   opus
+                                   copy
+                               "copy:<type>" will pass through the corresponding
+                               audio track without modification, if pass through
+                               is supported for the audio type.
+                               Separate tracks by commas.
+                               Defaults:
+                                   av_mp4   ca_aac
+                                   av_mkv   ca_aac
+           --audio-copy-mask <string>
+                               Set audio codecs that are permitted when the
+                               "copy" audio encoder option is specified
+                               (aac/ac3/eac3/truehd/dts/dtshd/mp3/flac)
+                               Separated by commas for multiple allowed options.
+           --audio-fallback <string>
+                               Set audio codec to use when it is not possible
+                               to copy an audio track without re-encoding.
+       -B, --ab <number>       Set audio track bitrate(s) in kbit/s.
+                               (default: determined by the selected codec, mixdown,
+                               and samplerate combination).
+                               Separate tracks by commas.
+       -Q, --aq <float>        Set audio quality metric.
+                               Separate tracks by commas.
+       -C, --ac <float>        Set audio compression metric.
+                               (available depending on selected codec)
+                               Separate tracks by commas.
+       -6, --mixdown <string>  Format(s) for audio downmixing/upmixing:
+                                   mono
+                                   left_only
+                                   right_only
+                                   stereo
+                                   dpl1
+                                   dpl2
+                                   5point1
+                                   6point1
+                                   7point1
+                                   5_2_lfe
+                               Separate tracks by commas.
+                               Defaults:
+                                   none             up to dpl2
+                                   ca_aac           up to dpl2
+                                   ca_haac          up to dpl2
+                                   ac3              up to 5point1
+                                   eac3             up to 5point1
+                                   mp3              up to dpl2
+                                   vorbis           up to dpl2
+                                   flac16           up to 7point1
+                                   flac24           up to 7point1
+                                   opus             up to 7point1
+           --normalize-mix     Normalize audio mix levels to prevent clipping.
+                  <string>     Separate tracks by commas.
+                               0 = Disable Normalization (default)
+                               1 = Enable Normalization
+       -R, --arate             Set audio samplerate(s)
+                               (8/11.025/12/16/22.05/24/32/44.1/48 kHz)
+                               or "auto". Separate tracks by commas.
+       -D, --drc <float>       Apply extra dynamic range compression to the
+                               audio, making soft sounds louder. Range is 1.0
+                               to 4.0 (too loud), with 1.5 - 2.5 being a useful
+                               range.
+                               Separate tracks by commas.
+           --gain <float>      Amplify or attenuate audio before encoding.  Does
+                               NOT work with audio passthru (copy). Values are
+                               in dB.  Negative values attenuate, positive
+                               values amplify. A 1 dB difference is barely
+                               audible.
+           --adither <string>  Select dithering to apply before encoding audio:
+                                   auto (default)
+                                   none
+                                   rectangular
+                                   triangular
+                                   triangular_hp
+                                   triangular_ns
+                               Separate tracks by commas.
+                               Supported by encoder(s):
+                                   flac16
+       -A, --aname <string>    Set audio track name(s).
+                               Separate tracks by commas.
+    
+    
+    Picture Options --------------------------------------------------------------
+    
+       -w, --width  <number>   Set storage width in pixels
+       -l, --height <number>   Set storage height in pixels
+           --crop   <top:bottom:left:right>
+                               Set picture cropping in pixels
+                               (default: automatically remove black bars)
+           --loose-crop        Always crop to a multiple of the modulus
+           --no-loose-crop     Disable preset 'loose-crop'
+       -Y, --maxHeight <number>
+                               Set maximum height in pixels
+       -X, --maxWidth  <number>
+                               Set maximum width in pixels
+       --non-anamorphic        Set pixel aspect ratio to 1:1
+       --auto-anamorphic       Store pixel aspect ratio that maximizes storage
+                               resolution
+       --loose-anamorphic      Store pixel aspect ratio that is as close as
+                               possible to the source video pixel aspect ratio
+       --custom-anamorphic     Store pixel aspect ratio in video stream and
+                               directly control all parameters.
+       --display-width <number>
+                               Set display width in pixels, for custom anamorphic.
+                               This determines the display aspect during playback,
+                               which may differ from the storage aspect.
+       --keep-display-aspect   Preserve the source's display aspect ratio
+                               when using custom anamorphic
+       --no-keep-display-aspect
+                               Disable preset 'keep-display-aspect'
+       --pixel-aspect <par_x:par_y>
+                               Set pixel aspect for custom anamorphic
+                               (--display-width and --pixel-aspect are mutually
+                               exclusive.
+       --itu-par               Use wider ITU pixel aspect values for loose and
+                               custom anamorphic, useful with underscanned sources
+       --no-itu-par            Disable preset 'itu-par'
+       --modulus <number>      Set storage width and height modulus
+                               Dimensions will be made divisible by this number.
+                               (default: set by preset, typically 2)
+       -M, --color-matrix <string>
+                               Set the color space signaled by the output:
+                                   2020
+                                   709
+                                   601
+                                   ntsc (same as 601)
+                                   pal
+                               (default: auto-detected from source)
+    
+    
+    Filters Options --------------------------------------------------------------
+    
+       --comb-detect[=string]  Detect interlace artifacts in frames.
+                               If not accompanied by the decomb or deinterlace
+                               filters, this filter only logs the interlaced
+                               frame count to the activity log.
+                               If accompanied by the decomb or deinterlace
+                               filters, it causes these filters to selectively
+                               deinterlace only those frames where interlacing
+                               is detected.
+                               Presets:
+                                   permissive
+                                   fast
+                               Custom Format:
+                                   mode=m:spatial-metric=s:motion-thresh=m:
+                                   spatial-thresh=s:filter-mode=f:block-thresh=b:
+                                   block-width=b:block-height=b:disable=d
+                               Default:
+                                   mode=3:spatial-metric=2:motion-thresh=1:
+                                   spatial-thresh=1:filter-mode=2:block-thresh=40:
+                                   block-width=16:block-height=16
+       --no-comb-detect        Disable preset comb-detect filter
+       -d, --deinterlace[=string]
+                               Deinterlace video using FFmpeg yadif.
+                               Presets:
+                                   skip-spatial
+                                   bob
+                               Custom Format:
+                                   mode=m:parity=p
+                               Default:
+                                   mode=3
+           --no-deinterlace    Disable preset deinterlace filter
+       -5, --decomb[=string]   Deinterlace video using a combination of yadif,
+                               blend, cubic, or EEDI2 interpolation.
+                               Presets:
+                                   bob
+                                   eedi2
+                                   eedi2bob
+                               Custom Format:
+                                   mode=m:magnitude-thresh=m:variance-thresh=v:
+                                   laplacian-thresh=l:dilation-thresh=d:
+                                   erosion-thresh=e:noise-thresh=n:
+                                   search-distance=s:postproc=p:parity=p
+                               Default:
+                                   mode=7
+       --no-decomb             Disable preset decomb filter
+       -9, --detelecine[=string]
+                               Detelecine (ivtc) video with pullup filter
+                               Note: this filter drops duplicate frames to
+                               restore the pre-telecine framerate, unless you
+                               specify a constant framerate
+                               (--rate 29.97 --cfr)
+                               Custom Format:
+                                   skip-left=s:skip-right=s:skip-top=s:
+                                   skip-bottom=s:strict-breaks=s:plane=p:parity=p:
+                                   disable=d
+                               Default:
+                                   skip-left=1:skip-right=1:skip-top=4:
+                                   skip-bottom=4:plane=0
+       --no-detelecine         Disable preset detelecine filter
+       -8, --hqdn3d[=string]   Denoise video with hqdn3d filter
+                               Presets:
+                                   ultralight
+                                   light
+                                   medium
+                                   strong
+                               Custom Format:
+                                   y-spatial=y:cb-spatial=c:cr-spatial=c:
+                                   y-temporal=y:cb-temporal=c:cr-temporal=c
+                               Default:
+                                   y-spatial=3:cb-spatial=2:cr-spatial=2:
+                                   y-temporal=2:cb-temporal=3:cr-temporal=3
+       --no-hqdn3d             Disable preset hqdn3d filter
+       --denoise[=string]      Legacy alias for '--hqdn3d'
+       --nlmeans[=string]      Denoise video with NLMeans filter
+                               Presets:
+                                   ultralight
+                                   light
+                                   medium
+                                   strong
+                               Custom Format:
+                                   y-strength=y:y-origin-tune=y:y-patch-size=y:
+                                   y-range=y:y-frame-count=y:y-prefilter=y:
+                                   cb-strength=c:cb-origin-tune=c:cb-patch-size=c:
+                                   cb-range=c:cb-frame-count=c:cb-prefilter=c:
+                                   cr-strength=c:cr-origin-tune=c:cr-patch-size=c:
+                                   cr-range=c:cr-frame-count=c:cr-prefilter=c:
+                                   threads=t
+                               Default:
+                                   y-strength=6:y-origin-tune=1:y-patch-size=7:
+                                   y-range=3:y-frame-count=2:y-prefilter=0:
+                                   cb-strength=6:cb-origin-tune=1:cb-patch-size=7:
+                                   cb-range=3:cb-frame-count=2:cb-prefilter=0
+       --no-nlmeans            Disable preset NLMeans filter
+       --nlmeans-tune <string> Tune NLMeans filter to content type
+                               Tunes:
+                                   none
+                                   film
+                                   grain
+                                   highmotion
+                                   animation
+                                   tape
+                                   sprite
+                               Applies to NLMeans presets only (does not affect
+                               custom settings)
+       --unsharp[=string]      Sharpen video with unsharp filter
+                               Presets:
+                                   ultralight
+                                   light
+                                   medium
+                                   strong
+                                   stronger
+                                   verystrong
+                               Custom Format:
+                                   y-strength=y:y-size=y:cb-strength=c:cb-size=c:
+                                   cr-strength=c:cr-size=c
+                               Default:
+                                   y-strength=0.25:y-size=7:cb-strength=0.25:
+                                   cb-size=7
+       --no-unsharp            Disable preset unsharp filter
+       --unsharp-tune <string> Tune unsharp filter
+                               Tunes:
+                                   none
+                                   ultrafine
+                                   fine
+                                   medium
+                                   coarse
+                                   verycoarse
+                               Applies to unsharp presets only (does not affect
+                               custom settings)
+       --lapsharp[=string]     Sharpen video with lapsharp filter
+                               Presets:
+                                   ultralight
+                                   light
+                                   medium
+                                   strong
+                                   stronger
+                                   verystrong
+                               Custom Format:
+                                   y-strength=y:y-kernel=y:cb-strength=c:
+                                   cb-kernel=c:cr-strength=c:cr-kernel=c
+                               Default:
+                                   y-strength=0.2:y-kernel=isolap:cb-strength=0.2:
+                                   cb-kernel=isolap
+       --no-lapsharp           Disable preset lapsharp filter
+       --lapsharp-tune <string>
+                               Tune lapsharp filter
+                               Tunes:
+                                   none
+                                   film
+                                   grain
+                                   animation
+                                   sprite
+                               Applies to lapsharp presets only (does not affect
+                               custom settings)
+       -7, --deblock[=string]  Deblock video with pp7 filter
+                               Custom Format:
+                                   qp=q:mode=m:disable=d
+                               Default:
+                                   qp=5
+       --no-deblock            Disable preset deblock filter
+       --rotate[=string]       Rotate image or flip its axes.
+                               angle rotates clockwise, can be one of:
+                                   0, 90, 180, 270
+                               hflip=1 flips the image on the x axis (horizontally).
+                               Custom Format:
+                                   angle=a:hflip=h:disable=d
+                               Default:
+                                   angle=180:hflip=0
+       --pad <string>          Pad image with borders (e.g. letterbox).
+                               The padding color may be set (default black).
+                               Color may be an HTML color name or RGB value.
+                               The position of image in pad may also be set.
+                               Custom Format:
+                                   width=w:height=h:color=c:x=x:y=y
+       -g, --grayscale         Grayscale encoding
+       --no-grayscale          Disable preset 'grayscale'
+    
+    
+    Subtitles Options ------------------------------------------------------------
+    
+      --subtitle-lang-list <string>
+                               Specify a comma separated list of subtitle
+                               languages you would like to select from the
+                               source title. By default, the first subtitle
+                               matching each language will be added to your
+                               output. Provide the language's ISO 639-2 code
+                               (e.g. fre, eng, spa, dut, et cetera)
+          --all-subtitles      Select all subtitle tracks matching languages in
+                               the specified language list
+                               (--subtitle-lang-list).
+                               Any language if list is not specified.
+          --first-subtitle     Select first subtitle track matching languages in
+                               the specified language list
+                               (--subtitle-lang-list).
+                               Any language if list is not specified.
+      -s, --subtitle <string>  Select subtitle track(s), separated by commas
+                               More than one output track can be used for one
+                               input. "none" for no subtitles.
+                               Example: "1,2,3" for multiple tracks.
+                               A special track name "scan" adds an extra first
+                               pass. This extra pass scans subtitles matching
+                               the language of the first audio or the language 
+                               selected by --native-language.
+                               The one that's only used 10 percent of the time
+                               or less is selected. This should locate subtitles
+                               for short foreign language segments. Best used in
+                               conjunction with --subtitle-forced.
+      -F, --subtitle-forced[=string]
+                               Only display subtitles from the selected stream
+                               if the subtitle has the forced flag set. The
+                               values in 'string' are indexes into the
+                               subtitle list specified with '--subtitle'.
+                               Separate tracks by commas.
+                               Example: "1,2,3" for multiple tracks.
+                               If "string" is omitted, the first track is
+                               forced.
+          --subtitle-burned[=number]
+                               "Burn" the selected subtitle into the video
+                               track. If "subtitle" is omitted, the first
+                               track is burned. "subtitle" is an index into
+                               the subtitle list specified with '--subtitle'
+                               or "native" to burn the subtitle track that may
+                               be added by the 'native-language' option.
+          --subtitle-default[=number or "none"]
+                               Flag the selected subtitle as the default
+                               subtitle to be displayed upon playback.  Setting
+                               no default means no subtitle will be displayed
+                               automatically. 'number' is an index into the
+                               subtitle list specified with '--subtitle'.
+                               "none" may be used to override an automatically
+                               selected default subtitle track.
+      -N, --native-language <string>
+                               Specify your language preference. When the first
+                               audio track does not match your native language
+                               then select the first subtitle that does. When
+                               used in conjunction with --native-dub the audio
+                               track is changed in preference to subtitles.
+                               Provide the language's ISO 639-2 code
+                               (e.g. fre, eng, spa, dut, et cetera)
+          --native-dub         Used in conjunction with --native-language
+                               requests that if no audio tracks are selected the
+                               default selected audio track will be the first
+                               one that matches the --native-language. If there
+                               are no matching audio tracks then the first
+                               matching subtitle track is used instead.
+         --srt-file <string>   SubRip SRT filename(s), separated by commas.
+         --srt-codeset <string>
+                               Character codeset(s) that the SRT file(s) are
+                               encoded as, separated by commas.
+                               If not specified, 'latin1' is assumed.
+                               Command 'iconv -l' provides a list of valid codesets.
+         --srt-offset <string> Offset (in milliseconds) to apply to the SRT
+                               file(s), separated by commas. If not specified,
+                               zero is assumed. Offsets may be negative.
+         --srt-lang <string>   SRT track language as an ISO 639-2 code
+                               (e.g. fre, eng, spa, dut, et cetera)
+                               If not specified, then 'und' is used.
+                               Separate by commas.
+         --srt-default[=number]
+                               Flag the selected SRT as the default subtitle
+                               to be displayed during playback.
+                               Setting no default means no subtitle will be
+                               automatically displayed. If 'number' is omitted,
+                               the first SRT is the default.
+                               'number' is a 1-based index into the 'srt-file' list
+         --srt-burn[=number]   "Burn" the selected SRT subtitle into
+                               the video track.
+                               If 'number' is omitted, the first SRT is burned.
+                               'number' is a 1-based index into the 'srt-file' list
diff -Naur source/docs/en/1.1.0/developer/build-bsd.markdown source/docs/en/1.2.0/developer/build-bsd.markdown
--- source/docs/en/1.1.0/developer/build-bsd.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/developer/build-bsd.markdown	2018-12-15 15:43:31.000000000 -0500
@@ -30,11 +30,6 @@
 
     git clone https://github.com/HandBrake/HandBrake.git && cd HandBrake
 
-List available tags in the HandBrake 1.1.x release series, and check out the most recent.
-
-    git tag --list | grep ^1\.1\.
-    git checkout refs/tags/$(git tag -l | grep -E '^1\.1\.[0-9]+$' | tail -n 1)
-
 Build HandBrake. To build the command line interface only, disable the graphical interface by appending `--disable-gtk`.
 
     ./configure --launch-jobs=$(sysctl -n hw.ncpu) --launch
diff -Naur source/docs/en/1.1.0/developer/build-linux.markdown source/docs/en/1.2.0/developer/build-linux.markdown
--- source/docs/en/1.1.0/developer/build-linux.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/developer/build-linux.markdown	2018-12-15 15:43:35.000000000 -0500
@@ -37,10 +37,10 @@
 
     git clone https://github.com/HandBrake/HandBrake.git && cd HandBrake
 
-List available tags in the HandBrake 1.1.x release series, and check out the most recent.
+List available tags in the HandBrake 1.2.x release series, and check out the most recent.
 
-    git tag --list | grep ^1\.1\.
-    git checkout refs/tags/$(git tag -l | grep -E '^1\.1\.[0-9]+$' | tail -n 1)
+    git tag --list | grep ^1\.2\.
+    git checkout refs/tags/$(git tag -l | grep -E '^1\.2\.[0-9]+$' | tail -n 1)
 
 Build HandBrake. To enable experimental support for Intel QSV via the [Intel Media SDK](https://github.com/Intel-Media-SDK/MediaSDK/releases), append `--enable-qsv`. To build the command line interface only, disable the graphical interface by appending `--disable-gtk`.
 
diff -Naur source/docs/en/1.1.0/developer/build-mac.markdown source/docs/en/1.2.0/developer/build-mac.markdown
--- source/docs/en/1.1.0/developer/build-mac.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/developer/build-mac.markdown	2018-12-15 15:43:34.000000000 -0500
@@ -16,9 +16,9 @@
 Building HandBrake for Mac
 ==========================
 
-Building HandBrake for Mac requires an Apple computer with a 64-bit Intel processor running OS X 10.11.5 El Capitan or later, and the following dependencies.
+Building HandBrake for Mac requires an Apple computer with a 64-bit Intel processor running OS X 10.13.6 High Sierra or later[^mojave-dark-mode], and the following dependencies.
 
-- [Xcode](https://developer.apple.com/xcode/) 8.2.1 or later
+- [Xcode](https://developer.apple.com/xcode/) 10 or later
   - free Apple Developer registration required, or install from the Mac App Store
 - [Command Line Tools for Xcode](https://developer.apple.com/download/more/)
   - free Apple Developer registration required, or install using `xcode-select --install`
@@ -43,10 +43,10 @@
 
     git clone https://github.com/HandBrake/HandBrake.git && cd HandBrake
 
-List available tags in the HandBrake 1.1.x release series, and check out the most recent.
+List available tags in the HandBrake 1.2.x release series, and check out the most recent.
 
-    git tag --list | grep ^1\.1\.
-    git checkout refs/tags/$(git tag -l | grep -E '^1\.1\.[0-9]+$' | tail -n 1)
+    git tag --list | grep ^1\.2\.
+    git checkout refs/tags/$(git tag -l | grep -E '^1\.2\.[0-9]+$' | tail -n 1)
 
 You may build and install the additional dependencies using the included script. Feel free to choose a different output path, if desired.
 
@@ -68,6 +68,8 @@
 
     rm -rf build
 
+[^mojave-dark-mode]: HandBrake must be built on macOS 10.4 Mojave or later to enable Dark Mode toolbar icons. Building on earlier macOS, even with latest Xcode, will result in Light Mode toolbar icons being displayed in Dark Mode.
+
 [^xcode-install]: Make sure Xcode is installed at `/Applications/Xcode.app`. When using an Xcode Beta release, you may need to rename `Xcode-beta.app` to `Xcode.app`.
 
 [^xcode-cli-tools]: When installing Command Line Tools for Xcode using the package installer (instead of `xcode-select --install`), make sure to install the package that corresponds to the installed Xcode version. A mismatch between the installed Xcode and Command Line Tools versions may cause problems.
diff -Naur source/docs/en/1.1.0/developer/build-windows.markdown source/docs/en/1.2.0/developer/build-windows.markdown
--- source/docs/en/1.1.0/developer/build-windows.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/developer/build-windows.markdown	2018-12-15 15:43:33.000000000 -0500
@@ -18,9 +18,9 @@
 
 ## Command line interface and LibHB
 
-Building the HandBrake [CLI](abbr:Command Line Interface) and LibHB (`hb.dll`) for Windows requires Linux and a recent [MinGW-w64](https://mingw-w64.org/) toolchain. Ubuntu 18.04 LTS (Bionic Beaver) and 16.04 LTS (Xenial Xerus) are recommended; other distros may work as well. In all cases, we recommend you build the MinGW-w64 toolchain using our instructions and the included script, as most packaged versions have issues that can produce non-functioning builds.
+Building the HandBrake [CLI](abbr:Command Line Interface) and LibHB (`hb.dll`) for Windows requires Linux and a recent [MinGW-w64](https://mingw-w64.org/) toolchain. Ubuntu 18.04 LTS (Bionic Beaver) is recommended; other distros may work as well. In all cases, we recommend you build the MinGW-w64 toolchain using our instructions and the included script, as most packaged versions have issues that can produce non-functioning builds.
 
-The following instructions are for Ubuntu 18.04 LTS (Bionic Beaver) and 16.04 LTS (Xenial Xerus).
+The following instructions are for Ubuntu 18.04 LTS (Bionic Beaver).
 
 Dependencies:
 
@@ -35,6 +35,7 @@
 - libtool-bin
 - m4
 - make
+- nasm
 - patch
 - pkg-config
 - python
@@ -42,10 +43,6 @@
 - yasm
 - zlib1g-dev
 
-Additional dependencies not available in the Ubuntu 16.04 LTS base repository:
-
-- nasm 2.13 or later
-
 Additional MinGW-w64 toolchain dependencies:
 
 - bison
@@ -58,22 +55,7 @@
 Install dependencies.
 
     sudo apt-get update
-    sudo apt-get install automake autoconf build-essential cmake curl gcc git intltool libtool libtool-bin m4 make patch pkg-config python tar yasm zlib1g-dev
-
-For Ubuntu 18.04 (Bionic Beaver), install `nasm` from the base repository.
-
-    sudo apt-get install nasm
-
-For Ubuntu 16.04 LTS (Xenial Xerus), the `nasm` version in the base repository is too old, so compile from source.
-
-    curl -O https://www.nasm.us/pub/nasm/releasebuilds/2.13.02/nasm-2.13.02.tar.bz2
-    tar -xf nasm-2.13.02.tar.bz2
-    cd nasm-2.13.02
-    ./configure --prefix=/usr/local --enable-sections --enable-lto
-    make -j$(nproc)
-    sudo make install
-    source ~/.bashrc
-    cd ..
+    sudo apt-get install automake autoconf build-essential cmake curl gcc git intltool libtool libtool-bin m4 make nasm patch pkg-config python tar yasm zlib1g-dev
 
 Install the additional dependencies required to build the MinGW-w64 toolchain.
 
@@ -83,10 +65,10 @@
 
     git clone https://github.com/HandBrake/HandBrake.git && cd HandBrake
 
-List available tags in the HandBrake 1.1.x release series, and check out the most recent.
+List available tags in the HandBrake 1.2.x release series, and check out the most recent.
 
-    git tag --list | grep ^1\.1\.
-    git checkout refs/tags/$(git tag -l | grep -E '^1\.1\.[0-9]+$' | tail -n 1)
+    git tag --list | grep ^1\.2\.
+    git checkout refs/tags/$(git tag -l | grep -E '^1\.2\.[0-9]+$' | tail -n 1)
 
 Build the MinGW-w64 toolchain using the included script, where `username` is your user name. Feel free to choose a different output path, if desired.
 
@@ -96,7 +78,7 @@
 
 Build HandBrake. For higher quality audio, enable the FDK AAC encoder by appending `--enable-fdk-aac`. Builds including FDK AAC must be for personal use only and may not be distributed.[^fdk-aac-license]
 
-    ./configure --cross=x86_64-w64-mingw32 --enable-qsv --launch-jobs=$(nproc) --launch
+    ./configure --cross=x86_64-w64-mingw32 --enable-qsv --enable-vce --enable-nvenc --launch-jobs=$(nproc) --launch
 
 When complete, you will find `HandBrakeCLI.exe` in the `build` directory and `hb.dll` in `build/libhb`.
 
diff -Naur source/docs/en/1.1.0/developer/flatpak-repo.markdown source/docs/en/1.2.0/developer/flatpak-repo.markdown
--- source/docs/en/1.1.0/developer/flatpak-repo.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/developer/flatpak-repo.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -14,25 +14,8 @@
 License_URL:     https://handbrake.fr/docs/license.html
 ---
 
-Maintaining a HandBrake flatpak repository
-==========================================
-
-## These instructions do not currently work
-
-The flatpak gnome runtime sdk does not currently include nasm.  HandBrake requires nasm during the build process, so following these instructions will result in a build error.  Hopefully the gnome runtime will get updated in the not too distant future to include nasm (and yasm as well).  The freedesktop runtime has already been updated to include these.
-
-See: [NASM flatpak issue](https://github.com/flatpak/freedesktop-sdk-images/issues/8)
-
-## Creating a new empty flatpak repository
-This would be done once to set up the repo users update their HandBrake flatpaks from. This repo gets served via http to users.
-
-Initialize a new repository  
-
-    ostree init --mode=archive-z2 --repo=<repo-dir>
-
-Add the new repository to your flatpak remotes  
-
-    flatpak --user remote-add --gpg-import=<pub-gpg-key> <repo-name> <repo-dir>
+Creating HandBrake flatpak bundles and repository
+=================================================
 
 ## Install dependencies
 Install flatpak and flatpak-builder
@@ -43,47 +26,125 @@
 
     flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
 
-Install flatpak gnome SDK.
+Install flatpak freedesktop SDK.
 
-    flatpak install flathub org.gnome.Sdk//3.26
+    flatpak install flathub org.freedesktop.Sdk//1.6
 
-Install flatpak gnome runtime platform.
+Install flatpak freedesktop runtime platform.
 
-    flatpak install flathub org.gnome.Platform//3.26
+    flatpak install flathub org.freedesktop.Platform//1.6
 
 ## Create a new HandBrake flatpak bundle
 This may be done on a different machine than the repo.
 
-From the HandBrake source tree, update build versions by running configure  
+From the HandBrake source tree, update build versions by running configure
 
-    ./configure --prefix=/app --flatpak
+    ./configure --flatpak
 
-Build flatpaks for GUI and CLI.  
-Results will be in build/pkg/flatpak/  
+Build signed flatpak packages for GUI and CLI.
+
+    cd build
+    make pkg.create.flatpak PGP_ID=<optional signing key id>
+
+Or to build unsigned flatpak packages.
 
     cd build
     make pkg.create.flatpak
 
-## Importing flatpak bundles into the repository
-For each build, a GUI and CLI flatpak bundle is imported.
+After the build completes, the flatpak packages for the GUI and CLI can be found in:
+
+    pkg/flatpak/*.flatpak
+
+And an OSTree repository where the packages have been committed and signed with the above PGP ID can be found in:
+
+    pkg/flatpak/HandBrake-Flatpak.repo
+
+If PGP_ID is omitted, the OSTree commit will be unsigned.
 
-Import a bundle  
+## Install flatpak bundle
+To use the flatpak bundle directly instead of importing it into a repository and then installing from the repository:
 
-    flatpak build-import-bundle <repo-dir> <flatpak-bundle>
+    flatpak install <flatpak-bundle>
 
-Update the flatpak repo index  
+## Add OSTree repo to flatpak repo list (Optional)
+This is only for test purposes currently.  Ultimately, we might want to establish an "official" repo location that we publish new bundles to.  Currently, the repo is just a product of the build and is not meant to be reused across builds.
 
-    flatpak build-update-repo --generate-static-deltas <repo-dir>
+Add the new repository to your flatpak remotes
 
-Regenerate and gpg-sign ostree summary  
+    flatpak --user remote-add <repo-name> <repo-dir>
 
-    ostree summary --repo=<repo-dir> --gpg-sign=<key-id> -u
+Of if the repos was generated without PGP signed commits
 
-## Check repo and application
-List contents of the repo  
+    flatpak --user remote-add --no-gpg-verify <repo-name> <repo-dir>
+
+## Check repo and application (Optional)
+List contents of the repo
 
     flatpak --user remote-ls <repo-name>
 
-Install the application (if you wish to test it)  
+Install the application (if you wish to test it)
 
     flatpak --user install <repo-name> <app-name>
+
+# Maintaining a separate OSTree repository
+There are situations where you don't want to keep your repository on the same server as you built the flatpak on.  Rather than exporting the entire repo-dir that is built by flatpak-builder, you can import your bundles into a seperate OSTree repository.
+
+## Create a new empty repository
+
+```
+ostree init --mode=archive-z2 --reop=<repo-dir>
+```
+
+## Add flatpakrepo file to the repository
+This file is used by flatpak clients to add your repoitory to their list of remotes.
+
+Create a file named \<yourproject\>.flatpakrepo in \<repo-dir\>.  The format looks like this:
+
+```
+[Flatpak Repo]
+Title=Yourproject
+Url=https://dl.yourproject.org:8080/repo/
+Homepage=https://yourproject.org/
+Comment=Repository of yourproject
+Description=Repository of yourproject
+Icon=https://dl.yourproject.org/repo/logo.svg
+GPGKey=<base64 encoded raw public gpg>
+```
+
+Note that the port above is optional and defaults to 80. I use 8080 for test purposes.
+
+To base64 encode the gpg signing key
+
+```
+gpg2 --export <key-id> > key.gpg
+base64 --wrap=0 < key.gpg > key.base64
+```
+
+## Importing flatpak bundles into the repository
+
+```
+flatpak build-import-bundle --gpg-sign=<key-id> <repo-dir> <flatpak-bundle>
+```
+
+## Update repository summary information
+
+```
+flatpak build-update-repo --generate-static-deltas --gpg-sign=<key-id>
+```
+
+## Host your repository with a web server
+For test purposes, I just use pythons builtin web server.
+
+```
+python3 -m http.server 8080 --directory <repo-dir>
+```
+
+Note, requires python 3.7 or above.
+
+## Publish the location of \<yourproject\>.flatpakrepo
+Users can add your repository to their list of remotes with:
+
+```
+flatpak remote-add --if-not-exists yourproject https://dl.yourproject.org:8080/repo/yourproject.flatpakrepo
+```
+
diff -Naur source/docs/en/1.1.0/developer/install-dependencies-arch.markdown source/docs/en/1.2.0/developer/install-dependencies-arch.markdown
--- source/docs/en/1.1.0/developer/install-dependencies-arch.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/developer/install-dependencies-arch.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -16,7 +16,7 @@
 Installing dependencies on Arch
 ===============================
 
-The following instructions are for [Arch](https://www.archlinux.org) 2016.12.01 (HandBrake [CLI](abbr:Command Line Interface) only).
+The following instructions are for [Arch](https://www.archlinux.org) 2018.05.01 (HandBrake [CLI](abbr:Command Line Interface) only).
 
 Basic requirements to run commands:
 
@@ -42,14 +42,17 @@
 - libvorbis
 - libvpx
 - libxml2
+- nasm
 - opus
 - python2
+- speex
 - x264
 - x265
+- xz
 - yasm
 
 Install dependencies.
 
-    sudo pacman -S base-devel cmake flac fontconfig freetype2 fribidi git harfbuzz jansson lame libass libbluray libogg libsamplerate libtheora libvorbis libvpx libxml2 opus python2 x264 x265 yasm
+    sudo pacman -S base-devel cmake flac fontconfig freetype2 fribidi git harfbuzz jansson lame libass libbluray libogg libsamplerate libtheora libvorbis libvpx libxml2 nasm opus python2 speex x264 x265 xz yasm
 
 Arch is now prepared to build HandBrake. See [Building HandBrake for Linux](build-linux.html) for further instructions.
diff -Naur source/docs/en/1.1.0/developer/install-dependencies-centos.markdown source/docs/en/1.2.0/developer/install-dependencies-centos.markdown
--- source/docs/en/1.1.0/developer/install-dependencies-centos.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/developer/install-dependencies-centos.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -16,14 +16,13 @@
 Installing dependencies on CentOS
 =================================
 
-Instructions are available for installing dependencies on [CentOS](https://centos.org) 6 and 7.
-
 ## CentOS 7
 
-The following instructions are for CentOS 7 x86_64 (HandBrake [CLI](abbr:Command Line Interface) only).
+The following instructions are for [CentOS](https://centos.org) 7.5 x86_64 (HandBrake [CLI](abbr:Command Line Interface) only).
 
 Basic requirements to run commands:
 
+- curl
 - sudo (for normal user accounts)
 
 Dependencies:
@@ -37,12 +36,15 @@
 - libsamplerate-devel
 - libtheora-devel
 - libvorbis-devel
-- opus-devel
+- speex-devel
+- xz-devel
 
 Additional dependencies not available in the base repository:
 
 - lame-devel [RPM Fusion]
 - libass-devel [EPEL]
+- nasm [NASM]
+- opus-devel [EPEL EL6]
 - x264-devel [RPM Fusion]
 - yasm [EPEL]
 
@@ -50,13 +52,22 @@
 
     sudo yum update
     sudo yum groupinstall "Development Tools" "Additional Development"
-    sudo yum install fribidi-devel git jansson-devel libogg-devel libsamplerate-devel libtheora-devel libvorbis-devel opus-devel
+    sudo yum install fribidi-devel git jansson-devel libogg-devel libsamplerate-devel libtheora-devel libvorbis-devel opus-devel speex-devel xz-devel
 
 Install the [EPEL](https://fedoraproject.org/wiki/EPEL) repository and related additional dependencies.
 
     sudo yum install epel-release
     sudo yum install libass-devel yasm
 
+The `opus-devel` package provided by CentOS 7 is too old. Install a newer version provided by EPEL for CentOS 6[^opus-el6].
+
+    sudo yum localinstall $(curl -L -s 'https://dl.fedoraproject.org/pub/epel/6/x86_64/Packages/o/' | grep -Eo 'opus-[^">]+\.x86_64\.rpm' | sort -u | awk '{ print "https://dl.fedoraproject.org/pub/epel/6/x86_64/Packages/o/"$0 }')
+
+The `nasm` package provided by CentOS 7 is too old. Install a newer version provided by the NASM project[^nasm-repo].
+
+    sudo curl -L 'https://nasm.us/nasm.repo' -o /etc/yum.repos.d/nasm.repo
+    sudo yum install nasm
+
 The `lame-devel` and `x264-devel` packages are now provided by the RPM Fusion repository. If you previously installed the [ZMREPO](https://zmrepo.zoneminder.com) repository for these packages, remove them and the repository before continuing.
 
     # Only necessary if previously installed ZMREPO
@@ -70,76 +81,6 @@
 
 CentOS is now prepared to build the HandBrake [CLI](abbr:Command Line Interface). See [Building HandBrake for Linux](build-linux.html) for further instructions.
 
-## CentOS 6
-
-The following instructions are for CentOS 6 x86_64 (HandBrake [CLI](abbr:Command Line Interface) only).
-
-Basic requirements to run commands:
-
-- curl
-- sudo (for normal user accounts)
-
-Dependencies:
-
-- Development tools
-- Additional Development
-- cmake
-- git
-- libicu-devel
-- libogg-devel
-- libsamplerate-devel
-- libtheora-devel
-- libvorbis-devel
-
-Additional dependencies not available in the base repository:
-
-- fribidi-devel [EPEL]
-- harfbuzz-devel [spec file]
-- jansson-devel [EPEL]
-- lame-devel [RPM Fusion]
-- libass-devel [EPEL]
-- opus-devel [EPEL]
-- python27 [SCL]
-- x264-devel [RPM Fusion]
-- yasm [EPEL]
-
-Install dependencies.
-
-    sudo yum groupinstall "Development tools" "Additional Development"
-    sudo yum install cmake git libicu-devel libogg-devel libsamplerate-devel libtheora-devel libvorbis-devel
-
-Install the [Software Collections (SCL)](https://wiki.centos.org/AdditionalResources/Repositories/SCL) repository and Python 2.7.x[^python-centos-6].
-
-    sudo yum install centos-release-scl
-    sudo yum install python27
-
-Install the [EPEL](https://fedoraproject.org/wiki/EPEL) repository and related additional dependencies.
-
-    sudo yum install epel-release
-    sudo yum install fribidi-devel jansson-devel libass-devel opus-devel yasm
-
-Install the [RPM Fusion](http://rpmfusion.org) Free repository and related additional dependencies.
-
-    sudo yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-6.noarch.rpm
-    sudo yum install lame-devel x264-devel
-
-Download the HarfBuzz spec file from the CentOS 7 [rpms/harfbuzz](https://git.centos.org/summary/rpms!harfbuzz.git) git repository and remove the `graphite2-devel` dependency.
-
-    sudo mkdir -p /root/rpmbuild/SPECS
-    sudo curl -o /root/rpmbuild/SPECS/harfbuzz.spec 'https://git.centos.org/raw/rpms/harfbuzz.git/f5bd1f4920ed0fc56cd21547294f7c34deeb4e4f/SPECS!harfbuzz.spec'
-    sudo sed -i'' -e '/BuildRequires:[ ]*graphite2-devel/d' -e '/%configure/s/ --with-graphite2//' /root/rpmbuild/SPECS/harfbuzz.spec
-
-Download, build, and install HarfBuzz (provides the `harfbuzz-devel` package).
-
-    sudo mkdir -p /root/rpmbuild/SOURCES
-    sudo curl -o /root/rpmbuild/SOURCES/harfbuzz-0.9.36.tar.bz2 'https://www.freedesktop.org/software/harfbuzz/release/harfbuzz-0.9.36.tar.bz2'
-    sudo rpmbuild -ba /root/rpmbuild/SPECS/harfbuzz.spec
-    sudo find /root/rpmbuild/RPMS/x86_64 -name harfbuzz-*.rpm -exec sudo yum localinstall {} \;
-
-Launch a new shell with Python 2.7 enabled.
-
-    scl enable python27 bash
-
-CentOS is now prepared to build the HandBrake [CLI](abbr:Command Line Interface). See [Building HandBrake for Linux](build-linux.html) for further instructions.
+[^opus-el6]: Installing newer packages than those available in the base repository may lead to incompatibility with other software expecting specific package versions.
 
-[^python-centos-6]: Installing Python from CentOS [SCL](https://wiki.centos.org/AdditionalResources/Repositories/SCL) does not impact the default system Python; newer versions are installed alongside and in addition to the system version.
+[^nasm-repo]: Installing newer packages than those available in the base repository may lead to incompatibility with other software expecting specific package versions.
diff -Naur source/docs/en/1.1.0/developer/install-dependencies-debian.markdown source/docs/en/1.2.0/developer/install-dependencies-debian.markdown
--- source/docs/en/1.1.0/developer/install-dependencies-debian.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/developer/install-dependencies-debian.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -16,10 +16,11 @@
 Installing dependencies on Debian
 =================================
 
-The following instructions are for [Debian](https://www.debian.org) 9.3 (Stretch).
+The following instructions are for [Debian](https://www.debian.org) 9.4 (Stretch) x86_64.
 
 Basic requirements to run commands:
 
+- curl
 - sudo (for normal user accounts)
 
 Dependencies:
@@ -36,10 +37,12 @@
 - libfribidi-dev
 - libharfbuzz-dev
 - libjansson-dev
+- liblzma-dev
 - libmp3lame-dev
 - libogg-dev
 - libopus-dev
 - libsamplerate-dev
+- libspeex-dev
 - libtheora-dev
 - libtool
 - libtool-bin
@@ -55,6 +58,10 @@
 - yasm
 - zlib1g-dev
 
+Additional dependencies not available in the base repository:
+
+- nasm [Debian sid]
+
 Graphical interface dependencies:
 
 - intltool
@@ -71,10 +78,17 @@
 Install dependencies.
 
     sudo apt-get update
-    sudo apt-get install autoconf automake build-essential cmake git libass-dev libbz2-dev libfontconfig1-dev libfreetype6-dev libfribidi-dev libharfbuzz-dev libjansson-dev libmp3lame-dev libogg-dev libopus-dev libsamplerate-dev libtheora-dev libtool libtool-bin libvorbis-dev libx264-dev libxml2-dev m4 make patch pkg-config python tar yasm zlib1g-dev
+    sudo apt-get install autoconf automake build-essential cmake git libass-dev libbz2-dev libfontconfig1-dev libfreetype6-dev libfribidi-dev libharfbuzz-dev libjansson-dev liblzma-dev libmp3lame-dev libogg-dev libopus-dev libsamplerate-dev libspeex-dev libtheora-dev libtool libtool-bin libvorbis-dev libx264-dev libxml2-dev m4 make patch pkg-config python tar yasm zlib1g-dev
+
+The `nasm` package provided by Debian 9 is too old. Install a newer version provided by Debian sid (unstable/development distribution)[^nasm-sid].
+
+    sudo curl -L 'http://ftp.debian.org/debian/pool/main/n/nasm/nasm_2.13.03-1_amd64.deb' -o /var/cache/apt/archives/nasm_2.13.03-1_amd64.deb
+    sudo dpkg -i /var/cache/apt/archives/nasm_2.13.03-1_amd64.deb
 
 To build the GTK [GUI](abbr:Graphical User Interface), install the graphical interface dependencies.
 
     sudo apt-get install intltool libappindicator-dev libdbus-glib-1-dev libglib2.0-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgtk-3-dev libgudev-1.0-dev libnotify-dev libwebkitgtk-3.0-dev
 
 Debian is now prepared to build HandBrake. See [Building HandBrake for Linux](build-linux.html) for further instructions.
+
+[^nasm-sid]: Installing newer packages than those available in the base repository may lead to incompatibility with other software expecting specific package versions.
diff -Naur source/docs/en/1.1.0/developer/install-dependencies-fedora.markdown source/docs/en/1.2.0/developer/install-dependencies-fedora.markdown
--- source/docs/en/1.1.0/developer/install-dependencies-fedora.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/developer/install-dependencies-fedora.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -45,10 +45,13 @@
 - libxml2-devel
 - m4
 - make
+- nasm
 - opus-devel
 - patch
 - python
+- speex-devel
 - tar
+- xz-devel
 - yasm
 - zlib-devel
 
@@ -72,7 +75,7 @@
 
     sudo yum update
     sudo yum groupinstall "Development Tools" "Development Libraries"
-    sudo yum install bzip2-devel cmake fontconfig-devel freetype-devel fribidi-devel gcc-c++ git harfbuzz-devel jansson-devel lame-devel libass-devel libogg-devel libsamplerate-devel libtheora-devel libtool libvorbis-devel libxml2-devel m4 make opus-devel patch python tar yasm zlib-devel
+    sudo yum install bzip2-devel cmake fontconfig-devel freetype-devel fribidi-devel gcc-c++ git harfbuzz-devel jansson-devel lame-devel libass-devel libogg-devel libsamplerate-devel libtheora-devel libtool libvorbis-devel libxml2-devel m4 make nasm opus-devel patch python speex-devel tar xz-devel yasm zlib-devel
 
 Install the [RPM Fusion](http://rpmfusion.org) Free repository and related additional dependencies.
 
diff -Naur source/docs/en/1.1.0/developer/install-dependencies-freebsd.markdown source/docs/en/1.2.0/developer/install-dependencies-freebsd.markdown
--- source/docs/en/1.1.0/developer/install-dependencies-freebsd.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/developer/install-dependencies-freebsd.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -51,9 +51,12 @@
 - libvorbis
 - libx264
 - libxml2
+- lzma
+- nasm
 - opus
 - pkgconf
 - python
+- speex
 - yasm
 
 Graphical interface dependencies:
@@ -77,7 +80,7 @@
 
 Install dependencies.
 
-    sudo pkg install autoconf automake bash bzip2 cmake flac fontconfig freetype2 fribidi git gcc m4 gmake patch gtar harfbuzz jansson libass libiconv libogg libsamplerate libtheora libtool libvorbis libx264 libxml2 opus pkgconf python yasm
+    sudo pkg install autoconf automake bash bzip2 cmake flac fontconfig freetype2 fribidi git gcc lzma m4 gmake patch gtar harfbuzz jansson libass libiconv libogg libsamplerate libtheora libtool libvorbis libx264 libxml2 nasm opus pkgconf python speex yasm
 
 Build and install the `lame` source port.
 
diff -Naur source/docs/en/1.1.0/developer/install-dependencies-gentoo.markdown source/docs/en/1.2.0/developer/install-dependencies-gentoo.markdown
--- source/docs/en/1.1.0/developer/install-dependencies-gentoo.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/developer/install-dependencies-gentoo.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -34,12 +34,15 @@
 - libsamplerate
 - libtheora
 - libvorbis
+- app-arch/lzma
+- nasm
 - opus
+- speex
 - x264
 
 Install dependencies.
 
-    sudo emerge --ask fribidi dev-vcs/git harfbuzz jansson lame libass libogg libsamplerate libtheora libvorbis opus x264
+    sudo emerge --ask fribidi dev-vcs/git harfbuzz jansson lame libass libogg libsamplerate libtheora libvorbis app-arch/lzma nasm opus speex x264
 
 Gentoo is now prepared to build HandBrake. See [Building HandBrake for Linux](build-linux.html) for further instructions.
 
diff -Naur source/docs/en/1.1.0/developer/install-dependencies-ubuntu.markdown source/docs/en/1.2.0/developer/install-dependencies-ubuntu.markdown
--- source/docs/en/1.1.0/developer/install-dependencies-ubuntu.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/developer/install-dependencies-ubuntu.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -16,7 +16,7 @@
 Installing dependencies on Ubuntu
 =================================
 
-The following instructions are for [Ubuntu](https://www.ubuntu.com) 18.04 LTS (Bionic Beaver), 16.04 LTS (Xenial Xerus), and Ubuntu 14.04 LTS (Trusty Tahr).
+The following instructions are for [Ubuntu](https://www.ubuntu.com) 18.04 LTS (Bionic Beaver).
 
 Basic requirements to run commands:
 
@@ -36,17 +36,21 @@
 - libfribidi-dev
 - libharfbuzz-dev
 - libjansson-dev
+- liblzma-dev
 - libmp3lame-dev
 - libogg-dev
 - libopus-dev
 - libsamplerate-dev
+- libspeex-dev
 - libtheora-dev
 - libtool
+- libtool-bin
 - libvorbis-dev
 - libx264-dev
 - libxml2-dev
 - m4
 - make
+- nasm
 - patch
 - pkg-config
 - python
@@ -54,12 +58,9 @@
 - yasm
 - zlib1g-dev
 
-Additional Ubuntu 18.04 LTS and 16.04 LTS dependencies:
-
-- libtool-bin
-
 Graphical interface dependencies:
 
+- gstreamer1.0-libav
 - intltool
 - libappindicator-dev
 - libdbus-glib-1-dev
@@ -71,25 +72,13 @@
 - libnotify-dev
 - libwebkitgtk-3.0-dev
 
-Additional Ubuntu 18.04 LTS graphical interface dependencies:
-
-- gstreamer1.0-libav
-
 Install dependencies.
 
     sudo apt-get update
-    sudo apt-get install autoconf automake build-essential cmake git libass-dev libbz2-dev libfontconfig1-dev libfreetype6-dev libfribidi-dev libharfbuzz-dev libjansson-dev libmp3lame-dev libogg-dev libopus-dev libsamplerate-dev libtheora-dev libtool libvorbis-dev libx264-dev libxml2-dev m4 make patch pkg-config python tar yasm zlib1g-dev
-
-If you are running Ubuntu 18.04 LTS or 16.04 LTS, install the additional dependencies.
-
-    sudo apt-get install libtool-bin
+    sudo apt-get install autoconf automake build-essential cmake git libass-dev libbz2-dev libfontconfig1-dev libfreetype6-dev libfribidi-dev libharfbuzz-dev libjansson-dev liblzma-dev libmp3lame-dev libogg-dev libopus-dev libsamplerate-dev libspeex-dev libtheora-dev libtool libtool-bin libvorbis-dev libx264-dev libxml2-dev m4 make nasm patch pkg-config python tar yasm zlib1g-dev
 
 To build the GTK [GUI](abbr:Graphical User Interface), install the graphical interface dependencies.
 
-    sudo apt-get install intltool libappindicator-dev libdbus-glib-1-dev libglib2.0-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgtk-3-dev libgudev-1.0-dev libnotify-dev libwebkitgtk-3.0-dev
-
-If you are running Ubuntu 18.04 LTS, install the additional graphical interface dependencies.
-
-    sudo apt-get install gstreamer1.0-libav
+    sudo apt-get install gstreamer1.0-libav intltool libappindicator-dev libdbus-glib-1-dev libglib2.0-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgtk-3-dev libgudev-1.0-dev libnotify-dev libwebkitgtk-3.0-dev
 
 Ubuntu is now prepared to build HandBrake. See [Building HandBrake for Linux](build-linux.html) for further instructions.
diff -Naur source/docs/en/1.1.0/get-handbrake/download-and-install.markdown source/docs/en/1.2.0/get-handbrake/download-and-install.markdown
--- source/docs/en/1.1.0/get-handbrake/download-and-install.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/get-handbrake/download-and-install.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -38,7 +38,7 @@
 
 When installing on Linux using the official PPA, download integrity is verified automatically. Similarly, the integrity of source code managed using `git` is verified automatically.
 
-To verify an official source distribution tarball, consult your Linux distribution's documentation for instructions on how to verify checksums.
+To verify an official source distribution tarball or Flatpak bundle, consult your Linux distribution's documentation for instructions on how to verify checksums.
 
 <!-- /.system-linux -->
 
@@ -100,13 +100,9 @@
 
 Install your distribution's `flatpak` package before running the following commands.
 
-From the command line, install the Flathub repostitory.
-
-    flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
-
 Install the latest HandBrake release from Flathub.
 
-    flatpak --user install flathub fr.handbrake.ghb
+    flatpak --user install https://flathub.org/repo/appstream/fr.handbrake.ghb.flatpakref
 
 You can later update the HandBrake Flatpak to the latest release on Flathub by running the following.
 
@@ -132,6 +128,22 @@
 
 HandBrake is now installed. You may eject the disk image and move it to the Trash.
 
+### Mac Gatekeeper
+
+The first time you attempt to launch HandBrake, your Mac may present this message to you[^gatekeeper-disabled]:
+
+![Mac Gatekeeper message](../../images/mac/gatekeeper-message-1.1.0.png "Gatekeeper may present this message when launching HandBrake for the first time.")
+
+This message doesn't mean anything is wrong; rather, it indicates that HandBrake is not part of Apple's paid program to validate Mac applications. Select `OK` to dismiss the Gatekeeper message.
+
+Hold down the `Control` key and select the HandBrake icon to bring up the shortcut menu. Select `Open` and your Mac will ask whether you are certain you wish to open HandBrake. Confirm that you want to trust HandBrake by again selecting `Open`.[^gatekeeper-instructions]
+
+![Opening HandBrake using Finder's shortcut menu](../../images/mac/shortcut-menu-open-1.1.0.png "Launching HandBrake using the Open option in the Finder's shortcut menu will bypass the initial Gatekeeper message.")
+
+![Gatekeeper message with Open option](../../images/mac/gatekeeper-message-quarantine-1.1.0.png "Gatekeeper may also present this message when launching HandBrake for the first time. Selecting Open will tell Gatekeeper to trust HandBrake.")
+
+Now HandBrake is up and running. You should not have to repeat this process in the near future.
+
 <!-- /.system-macos -->
 <!-- .system-windows -->
 
@@ -153,6 +165,18 @@
 
 You will find shortcuts for launching HandBrake placed on both the Windows Desktop and Start Menu.
 
+### Windows SmartScreen
+
+When installing on Windows 8 or 10 with Windows SmartScreen enabled, you may see a message indicating that the HandBrake installer is not recognized by Windows.
+
+![Windows SmartScreen](../../images/windows/smartscreen-1-1.0.0.png "Windows SmartScreen may present this message. Select More info to see more options.")
+
+HandBrake is not "signed" by Microsoft. This message doesn't mean anything is wrong; rather, it indicates that HandBrake is not part of Microsoft's paid program to validate Windows applications.
+
+By selecting `More info`, you will be able to select `Run anyway` to continue the installation.
+
+![Windows SmartScreen - Run Anyway](../../images/windows/smartscreen-2-1.0.0.png "Select Run anyway to dismiss the SmartScreen message and continue installing HandBrake.")
+
 <!-- /.system-windows -->
 
 ## Launching HandBrake
@@ -178,3 +202,7 @@
 [^third-party-utilities-1]: HandBrake is not associated with any third-party checksum utilities. Only use software from vendors you trust.
 
 [^third-party-utilities-2]: HandBrake is not associated with any third-party checksum utilities. Only use software from vendors you trust.
+
+[^gatekeeper-disabled]: If Gatekeeper is disabled on your Mac, you may not see this message.
+
+[^gatekeeper-instructions]: These instructions are taken directly from Apple's Gatekeeper support documents. You can learn more about Gatekeeper [here](https://support.apple.com/kb/PH21769?locale=en_US) and [here](https://support.apple.com/en-us/HT202491).
diff -Naur source/docs/en/1.1.0/get-handbrake/where-to-get-handbrake.markdown source/docs/en/1.2.0/get-handbrake/where-to-get-handbrake.markdown
--- source/docs/en/1.1.0/get-handbrake/where-to-get-handbrake.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/get-handbrake/where-to-get-handbrake.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -24,7 +24,11 @@
 
 <!-- .system-linux -->
 
-Ubuntu Linux users should install the [official release PPA](https://launchpad.net/~stebbins/+archive/ubuntu/handbrake-releases) or the [official snapshots PPA](https://launchpad.net/~stebbins/+archive/ubuntu/handbrake-git-snapshots). The PPA may work, but is not tested, on other Debian-compatible distributions. Users of other BSD- and *nix-like distributions may compile from source.
+Ubuntu Linux users should install the [official release PPA](https://launchpad.net/~stebbins/+archive/ubuntu/handbrake-releases) or the [official snapshots PPA](https://launchpad.net/~stebbins/+archive/ubuntu/handbrake-git-snapshots). The PPA may work, but is not tested, on other Debian-compatible distributions.
+
+[Nightly builds](https://handbrake.fr/nightly.php) for Linux are also available as Flatpak bundles.
+
+Users of other BSD- and *nix-like distributions may compile from source.
 
 <!-- /.system-linux -->
 
diff -Naur source/docs/en/1.1.0/help/activity-log.markdown source/docs/en/1.2.0/help/activity-log.markdown
--- source/docs/en/1.1.0/help/activity-log.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/help/activity-log.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -106,7 +106,10 @@
 
 <!-- image, activity log window on linux -->
 
-On Linux, logs are stored at `Datadir/ghb`, where `Datadir` is the system default data directory (typically `$(HOME)/.config`).
+On Linux, logs are stored in one of two locations, where `~` is your home directory:
+
+- The `ghb` directory at your system's default data path (usually `~/.config`), for the official PPA and self-compiled builds
+- The `fr.handbrake.ghb/config/ghb` directory at your system's Flatpack data path (usually `~/.var/app`), for the official Flatpak bundle
 
 The full path to the log directory is shown at the top of the Activity Log window.
 
diff -Naur source/docs/en/1.1.0/help/troubleshooting-common-issues.markdown source/docs/en/1.2.0/help/troubleshooting-common-issues.markdown
--- source/docs/en/1.1.0/help/troubleshooting-common-issues.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/help/troubleshooting-common-issues.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -72,7 +72,6 @@
 Additionally, you may download one of the following Microsoft .NET Framework standalone installers.
 
 - [Microsoft .NET Framework 4.7.1](https://www.microsoft.com/en-us/download/details.aspx?id=56116) for Windows 7 SP1, Windows 8.1, Windows 10, and Windows Server
-- [Microsoft .NET Framework 4.6](https://support.microsoft.com/en-us/help/3045557/microsoft-net-framework-4-6-offline-installer-for-windows) for Windows Vista SP2
 
 ### General troubleshooting
 
@@ -81,12 +80,8 @@
 1. Restart your computer
 2. Install the latest version of Microsoft .NET Framework available for your Windows version
 3. Delete your HandBrake configuration data and presets (replace username with your own)
-    - Windows Vista:
-      - C:\Users\username\Application Data\HandBrake
-      - C:\Users\username\Local Settings\Application Data\HandBrake
-    - Windows 7 and later 
-      - C:\Users\username\AppData\Roaming\HandBrake
-      - C:\Users\username\AppData\Local\HandBrake
+    - C:\Users\username\AppData\Roaming\HandBrake
+    - C:\Users\username\AppData\Local\HandBrake
 4. Install/reinstall the latest version of HandBrake; see [Downloading and installing HandBrake](../get-handbrake/download-and-install.html)
 
 If the above does not solve your issue, someone may be able to help via HandBrake's [Community support](community-support.html) channels.
diff -Naur source/docs/en/1.1.0/index.markdown source/docs/en/1.2.0/index.markdown
--- source/docs/en/1.1.0/index.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/index.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -16,7 +16,7 @@
 Welcome
 =======
 
-Welcome to the English documentation for HandBrake 1.1.0 through 1.1.2.
+Welcome to the English documentation for HandBrake 1.2.0.
 
 Here are some quick links to get you started:
 
diff -Naur source/docs/en/1.1.0/introduction/about.markdown source/docs/en/1.2.0/introduction/about.markdown
--- source/docs/en/1.1.0/introduction/about.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/introduction/about.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -27,7 +27,7 @@
 
 HandBrake takes videos you already have and makes new ones that work on your mobile phone, tablet, TV media player, game console, computer, or web browserโ€”nearly anything that supports modern video formats.
 
-HandBrake works with most common video files and formats, including ones created by consumer and professional video cameras, mobile devices such as phones and tablets, game and computer screen recordings, and DVD and Blu-ray discs. HandBrake leverages tools such as Libav, x264, and x265 to create new MP4 or MKV video files from these `Sources`.
+HandBrake works with most common video files and formats, including ones created by consumer and professional video cameras, mobile devices such as phones and tablets, game and computer screen recordings, and DVD and Blu-ray discs. HandBrake leverages tools such as FFmpeg, x264, and x265 to create new MP4 or MKV video files from these `Sources`.
 
 HandBrake **does**:
 
diff -Naur source/docs/en/1.1.0/table-of-contents.markdown source/docs/en/1.2.0/table-of-contents.markdown
--- source/docs/en/1.1.0/table-of-contents.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/table-of-contents.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -52,13 +52,13 @@
 
 - [Using the queue](advanced/queue.html)
   *Set up multiple encode jobs at once*
-- [Point-to-point encoding](advanced/point-to-point.html)
-- [Custom presets](advanced/custom-presets.html)
-- [Audio and subtitle defaults](advanced/audio-subtitle-defaults.html)
-- [Resizing video](advanced/resizing-video.html)
-- [Preserving surround sound](advanced/surround-sound.html)
-- [Adding subtitles](advanced/subtitles.html)
-- [Adding chapter markers](advanced/chapter-markers.html)
+- [Point-to-point encoding](advanced/point-to-point.html)<span class="notice draft"><span>draft</span></span>
+- [Custom presets](advanced/custom-presets.html)<span class="notice draft"><span>draft</span></span>
+- [Audio and subtitle defaults](advanced/audio-subtitle-defaults.html)<span class="notice draft"><span>draft</span></span>
+- [Resizing video](advanced/resizing-video.html)<span class="notice draft"><span>draft</span></span>
+- [Preserving surround sound](advanced/surround-sound.html)<span class="notice draft"><span>draft</span></span>
+- [Adding subtitles](advanced/subtitles.html)<span class="notice draft"><span>draft</span></span>
+- [Adding chapter markers](advanced/chapter-markers.html)<span class="notice draft"><span>draft</span></span>
 
 <!-- - [Managing Audio Tracks](advanced/managing-audio.html) -->
 <!-- - [Post-processing metadata](advanced/post-processing.html) -->
@@ -85,14 +85,14 @@
 
 <!-- ## Advanced workflows part 2
 
-- [Understanding source types](advanced/video-sources.html)
-- [Selecting a container format and encoders](advanced/containers.html)
-- [Selecting a video angle](advanced/video-angles.html)
-- [Working with frame rates](advanced/frame-rates.html)
-- [Adjusting audio quality](advanced/audio-quality.html)
-- [Progressive download support](advanced/web-optimised.html)
-- [Compatibility with legacy devices](advanced/old-ipod-support.html)
-- [Automatically naming files](advanced/automatic-file-naming.html)
+- [Understanding source types](advanced/video-sources.html)<span class="notice draft"><span>draft</span></span>
+- [Selecting a container format and encoders](advanced/containers.html)<span class="notice draft"><span>draft</span></span>
+- [Selecting a video angle](advanced/video-angles.html)<span class="notice draft"><span>draft</span></span>
+- [Working with frame rates](advanced/frame-rates.html)<span class="notice draft"><span>draft</span></span>
+- [Adjusting audio quality](advanced/audio-quality.html)<span class="notice draft"><span>draft</span></span>
+- [Progressive download support](advanced/web-optimised.html)<span class="notice draft"><span>draft</span></span>
+- [Compatibility with legacy devices](advanced/old-ipod-support.html)<span class="notice draft"><span>draft</span></span>
+- [Automatically naming files](advanced/automatic-file-naming.html)<span class="notice draft"><span>draft</span></span>
 -->
 
 ## Getting help
@@ -107,15 +107,15 @@
 
 ## More information
 
-- [Project history](about/history.html)
+- [Project history](about/history.html)<span class="notice draft"><span>draft</span></span>
 - [Contributing](contributing/contribute.html)
   *How you can get involved*
 
 
 ## CLI documentation
 
-- [CLI guide](cli/cli-guide.html)
-- [CLI options list](cli/cli-options.html)
+- [Command line reference](cli/command-line-reference.html)
+- [CLI options list](cli/cli-options.html)<span class="notice draft"><span>draft</span></span>
 
 
 ## Technical documentation
@@ -127,25 +127,27 @@
 - [Official presets](technical/official-presets.html)
   *Technical summary of the official presets*
 - Video
-  - [Video encoders](technical/video-codecs.html)
-  - [Video encoding speed](technical/video-encoding-performance.html)
-  - [Constant quality versus average bit rate](technical/video-cq-vs-abr.html)
-  - [x264 presets and tunes](technical/video-x264-presets-tunes.html)
-  - [x264 profile and level](technical/video-x264-profiles-levels.html)
-  - [Video angles](technical/video-angles.html)
-  - [Anamorphic video](technical/anamorphic-guide.html)
-  - [Modulus](technical/modulus.html)
-  - [Frame rate](technical/frame-rates.html)
-  - [Intel QuickSync Video (QSV) options](technical/video-qsv-options.html)
+  - [Video encoders](technical/video-codecs.html)<span class="notice draft"><span>draft</span></span>
+  - [Video encoding speed](technical/video-encoding-performance.html)<span class="notice draft"><span>draft</span></span>
+  - [Constant quality versus average bit rate](technical/video-cq-vs-abr.html)<span class="notice draft"><span>draft</span></span>
+  - [x264 presets and tunes](technical/video-x264-presets-tunes.html)<span class="notice draft"><span>draft</span></span>
+  - [x264 profile and level](technical/video-x264-profiles-levels.html)<span class="notice draft"><span>draft</span></span>
+  - [Video angles](technical/video-angles.html)<span class="notice draft"><span>draft</span></span>
+  - [Anamorphic video](technical/anamorphic-guide.html)<span class="notice draft"><span>draft</span></span>
+  - [Modulus](technical/modulus.html)<span class="notice draft"><span>draft</span></span>
+  - [Frame rate](technical/frame-rates.html)<span class="notice draft"><span>draft</span></span>
+  - [Intel QuickSync Video (QSV) options](technical/video-qsv-options.html)<span class="notice draft"><span>draft</span></span>
+  - [AMD VCE](technical/video-vce.html)<span class="notice draft"><span>draft</span></span>
+  - [NVidia NVENC](technical/video-nvenc.html)<span class="notice draft"><span>draft</span></span>
 - Audio
-  - [Dynamic range compression](technical/dynamic-range-compression.html)
-  - [Audio quality](technical/audio-quality.html)
+  - [Dynamic range compression](technical/dynamic-range-compression.html)<span class="notice draft"><span>draft</span></span>
+  - [Audio quality](technical/audio-quality.html)<span class="notice draft"><span>draft</span></span>
 - Files and compatibility
-  - [Container formats](technical/containers.html)
-  - [iPod 5th Generation support](technical/old-ipod-support.html)
-  - [Automatic file naming](technical/automatic-file-naming.html)
+  - [Container formats](technical/containers.html)<span class="notice draft"><span>draft</span></span>
+  - [iPod 5th Generation support](technical/old-ipod-support.html)<span class="notice draft"><span>draft</span></span>
+  - [Automatic file naming](technical/automatic-file-naming.html)<span class="notice draft"><span>draft</span></span>
 - Filters
-  - [Filters summary](technical/filters-summary.html)
+  - [Filters summary](technical/filters-summary.html)<span class="notice draft"><span>draft</span></span>
 
 <!--
 - [Web optimized](technical/web-optimised.html)
@@ -164,5 +166,5 @@
   - [Building HandBrake for Mac](developer/build-mac.html)
   - [Building HandBrake for Windows](developer/build-windows.html)
 - Packaging HandBrake
-  - [Flatpak apps for Linux](developer/flatpak-repo.html)
+  - [Flatpak apps for Linux](developer/flatpak-repo.html)<span class="notice draft"><span>draft</span></span>
     *Fully-contained applications compatible with multiple Linux distributions*
diff -Naur source/docs/en/1.1.0/technical/audio-codecs.markdown source/docs/en/1.2.0/technical/audio-codecs.markdown
--- source/docs/en/1.1.0/technical/audio-codecs.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/technical/audio-codecs.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -42,7 +42,7 @@
     -   Advanced Audio Coding (AAC) is one of the most popular formats available
         in HandBrake and is widly supported by media players and mobile devices.
 
-    -   On Linux and Windows, HandBrake uses the LibAV AAC encoder.
+    -   On Linux and Windows, HandBrake uses the FFmpeg AAC encoder.
 
     -   On Mac, HandBrake uses Apple's CoreAudio AAC encoder. It's known to be
         much better quality and is the default option for Mac users.
@@ -66,11 +66,11 @@
 
 -   AC3:
 
-    -   HandBrake can encode to AC3 using LibAV.
+    -   HandBrake can encode to AC3 using FFmpeg.
 
     -   This is not the same as Passthru. You can encode any audio track to AC3.
 
--   Flac 16 and 24bit (Libav)
+-   Flac 16 and 24bit (FFmpeg)
 
     -   Loss-less audio compression.
 
diff -Naur source/docs/en/1.1.0/technical/official-presets.markdown source/docs/en/1.2.0/technical/official-presets.markdown
--- source/docs/en/1.1.0/technical/official-presets.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/technical/official-presets.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -155,24 +155,26 @@
 | Production Proxy 1080p    | MP4  | H.264 | AAC stereo | 1/4 2160p 4K   | Proxy           | Intra-only  | 1        | Fast              | Average   |
 | Production Proxy 540p     | MP4  | H.264 | AAC stereo | 1/4 1080p HD   | Proxy           | Intra-only  | 1        | Very Fast         | Small     |
 
-## Legacy presets
+## Compatible replacements for deprecated or removed presets
 
-HandBrake's Legacy `Presets` are retained from previous HandBrake releases for compatibility with existing workflows and scripts.
+From time to time, official `Presets` may be deprecated or removed. Compatible replacements are listed here.
 
-| Preset              | Type | Video | Audio                            | Max Resolution | Encoding Speed |
-|---------------------|------|-------|----------------------------------|----------------|----------------|
-| Normal              | MP4  | H.264 | AAC stereo                       | 1080p          | Very fast      |
-| High Profile        | MP4  | H.264 | AAC stereo; Dolby Digital (AC-3) | 1080p          | Medium         |
-| Universal           | MP4  | H.264 | AAC stereo; Dolby Digital (AC-3) | 576p/480p      | Very fast      |
-| iPod                | MP4  | H.264 | AAC stereo                       | 240p           | Ultra fast     |
-| iPhone & iPod touch | MP4  | H.264 | AAC stereo                       | 540p           | Medium         |
-| iPad                | MP4  | H.264 | AAC stereo                       | 720p           | Medium         |
-| AppleTV             | MP4  | H.264 | AAC stereo; Dolby Digital (AC-3) | 540p           | Medium         |
-| AppleTV 2           | MP4  | H.264 | AAC stereo; Dolby Digital (AC-3) | 720p           | Medium         |
-| AppleTV 3           | MP4  | H.264 | AAC stereo; Dolby Digital (AC-3) | 1080p          | Medium         |
-| Android             | MP4  | H.264 | AAC stereo                       | 480p           | Medium         |
-| Android Tablet      | MP4  | H.264 | AAC stereo                       | 720p           | Medium         |
-| Windows Phone 8     | MP4  | H.264 | AAC stereo                       | 720p           | Medium         |
+### Legacy 0.10.x presets
+
+| Preset              | Compatible Preset                | Notes                                                                                                                                   |
+|---------------------|----------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| Normal              | General > Fast 1080p30           | Decomb filter, peak limited to 30 FPS, slightly decreased video bit rate, improved motion quality, foreign audio search.                |
+| High Profile        | General > HQ 1080p30 Surround    | Peak limited to 30 FPS, reduced video bit rate spikes, foreign audio search.                                                            |
+| Universal           | None                             | General > Fast 576p25/480p30 may be suitable replacements where compatibility with ancient devices and surround sound are not required. |
+| iPod                | Devices > Apple 240p30           | Decomb filter, foreign audio search.                                                                                                    |
+| iPhone & iPod touch | Devices > Apple 540p30 Surround  | Decomb filter, slightly increased video bit rate, surround sound, foreign audio search.                                                 |
+| iPad                | Devices > Apple 720p30 Surround  | Decomb filter, slightly decreased video bit rate, surround sound, foreign audio search.                                                 |
+| AppleTV             | Devices > Apple 540p30 Surround  | Decomb filter, foreign audio search.                                                                                                    |
+| AppleTV 2           | Devices > Apple 720p30 Surround  | Decomb filter, slightly decreased video bit rate, foreign audio search.                                                                 |
+| AppleTV 3           | Devices > Apple 1080p30 Surround | Decomb filter, slightly decreased video bit rate, foreign audio search.                                                                 |
+| Android             | Devices > Android 576p25/480p30  | Decomb filter, peak limited to 25 FPS (Android 576p25 only), slightly increased video bit rate, foreign audio search, chapter markers.  |
+| Android Tablet      | Devices > Android 720p30         | Decomb filter, slightly increased video bit rate, foreign audio search, chapter markers.                                                |
+| Windows Phone 8     | None                             | Devices > Windows Mobile 720p30 may be suitable with anamorphic off and audio bit rate reduced to 128 kbps.                             |
 
 [^high-quality-settings-less-compatible]: Higher quality General `Presets` may include settings that are incompatible with older or slower devices.
 
diff -Naur source/docs/en/1.1.0/technical/source-formats.markdown source/docs/en/1.2.0/technical/source-formats.markdown
--- source/docs/en/1.1.0/technical/source-formats.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/technical/source-formats.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -16,7 +16,7 @@
 Source formats
 ==============
 
-One of HandBrake's strengths is its ability to open a wide variety of video formats. HandBrake uses [Libav](https://libav.org/) under the hood and generally can open whatever Libav will, in addition to disc-based formats like DVD and Blu-ray.
+One of HandBrake's strengths is its ability to open a wide variety of video formats. HandBrake uses [FFmpeg](https://ffmpeg.org/) under the hood and generally can open whatever FFmpeg will, in addition to disc-based formats like DVD and Blu-ray.
 
 **Note:** HandBrake does not defeat or circumvent [copy protection](https://en.wikipedia.org/wiki/Copy_protection) of any kind. It does not work with video files employing [Digital Rights Management](https://en.wikipedia.org/wiki/Digital_rights_management) (DRM). See [About HandBrake](../about.html) for more information about what HandBrake *does* and *does not*.
 
diff -Naur source/docs/en/1.1.0/technical/system-requirements.markdown source/docs/en/1.2.0/technical/system-requirements.markdown
--- source/docs/en/1.1.0/technical/system-requirements.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/technical/system-requirements.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -74,34 +74,73 @@
 
 ## Software
 
+The following describes the level of support available for the current HandBrake version as indicated by the status for each system version.
+
+| Status      | Description                                                                                                                                              |
+|-------------|----------------------------------------------------------------------------------------------------------------------------------------------------------|
+| Supported   | HandBrake is tested working on these system versions. The HandBrake Team and community members provide volunteer support, and issue reports are welcome. |
+| Deprecated  | HandBrake should work on these system versions. Support is near end of life. Limited functionality and other issues will likely not be addressed.        |
+| Unsupported | HandBrake does not work on these system versions. No support will be provided. Please update to enjoy the latest features and bug fixes.                 |
+
 <!-- .system-linux -->
 
-### Linux
+### Linux and BSD
 
 #### Ubuntu (Official PPA)
 
-Several major versions are supported, see [Where to get HandBrake](../get-handbrake/where-to-get-handbrake.html) for PPA details.
+- Recent Ubuntu LTS versions are generally supported
+- HandBrake is typically updated for non-LTS versions until their end of life
+- See [Where to get HandBrake](../get-handbrake/where-to-get-handbrake.html) for additional PPA details
+
+| Ubuntu Version     | Status              | Last Compatible Version |
+|--------------------|---------------------|-------------------------|
+| 18.04 LTS Bionic   | Supported           |                         |
+| 16.04 LTS Xenial   | Supported           |                         |
+| 14.04 LTS Trusty   | Unsupported         | HandBrake 1.1.2         |
 
-#### Other Linux
+#### Flatpak
 
-For any other distribution, you must [compile from source](../developer/build-linux.html). 
+Requires a recent Linux distribution and `flatpak` package.
 
+#### Other
+
+For other distributions, compile from source using the [Linux instructions](../developer/build-linux.html) or [BSD instructions](../developer/build-bsd.html).
 
 <!-- /.system-linux -->
 <!-- .system-macos -->
 
 ### Mac
 
-- OS X 10.7 Lion or later
+- macOS 10.10 Yosemite and later
 - [VLC](https://www.videolan.org/vlc/) is recommended for previewing/playing MKV (Matroska) media files
 
+| macOS Version      | Status              | Last Compatible Version | Notes                              |
+|--------------------|---------------------|-------------------------|------------------------------------|
+| 10.14 Mojave       | Supported           |                         | Requires HandBrake 1.1.2 or later. |
+| 10.13 High Sierra  | Supported           |                         |                                    |
+| 10.12 Sierra       | Supported           |                         |                                    |
+| 10.11 El Capitan   | Deprecated in 1.2.0 |                         |                                    |
+| 10.10 Yosemite     | Deprecated in 1.2.0 |                         |                                    |
+| 10.9 Mavericks     | Unsupported         | HandBrake 1.1.2         |                                    |
+| 10.8 Mountain Lion | Unsupported         | HandBrake 1.1.2         |                                    |
+| 10.7 Lion          | Unsupported         | HandBrake 1.1.2         |                                    |
+| 10.6 Snow Leopard  | Unsupported         | HandBrake 0.10.5        |                                    |
+
 <!-- /.system-macos -->
 <!-- .system-windows -->
 
 ### Windows
 
 - Windows 7 Service Pack 1 (64-bit) or later
-- Microsoft .NET Framework 4.6.1 or later
+- Microsoft .NET Framework 4.7.1 or later
 - [VLC](https://www.videolan.org/vlc/) is recommended for previewing/playing media files
 
+| Windows Version | Status              | Last Compatible Version |
+|-----------------|---------------------|-------------------------|
+| Windows 10      | Supported           |                         |
+| Windows 8.1     | Supported           |                         |
+| Windows 7 SP1   | Deprecated in 1.1.0 |                         |
+| Windows Vista   | Unsupported         | HandBrake 1.0.7         |
+| Windows XP      | Unsupported         | HandBrake 0.9.9         |
+
 <!-- /.system-windows -->
diff -Naur source/docs/en/1.1.0/technical/video-encoding-performance.markdown source/docs/en/1.2.0/technical/video-encoding-performance.markdown
--- source/docs/en/1.1.0/technical/video-encoding-performance.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/technical/video-encoding-performance.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -29,10 +29,11 @@
 
 ### Hardware
 
-The hardware you run on can have a large effect on performance. HandBrake can scale well up to 6 CPU cores with diminishing returns thereafter.  
-So a 4 Core CPU can be nearly twice as fast as a Dual Core equivalent. 
+The hardware you run on can have a large effect on performance. HandBrake can scale well up to 6 to 8 CPU cores with diminishing returns thereafter.
+So a 4 core CPU can be nearly twice as fast as a dual Core equivalent, however a 16 core may not be twice as fast as an 8 core but may still offer significant increases in performance. 
+The CPU scaling curve does vary greatly by source and settings used.
 
-HandBrake also supports encoding in Hardware with Intel QuickSync. This uses dedicated ASIC hardware on the processor to encode the video which leaves much of the CPU free for other tasks. This offers very high performance encoding at a reasonable quality if you have a Haswell or newer Intel Processor with HD Graphics on-board.
+HandBrake also supports encoding in ASIC hardware with Intel QuickSync, Nvidia NVEnc, and AMD VCE.
 
 See our [System Requirements](../technical/system-requirements.html) for details on recommended hardware for running HandBrake.
 
diff -Naur source/docs/en/1.1.0/technical/video-nvenc.markdown source/docs/en/1.2.0/technical/video-nvenc.markdown
--- source/docs/en/1.1.0/technical/video-nvenc.markdown	1969-12-31 19:00:00.000000000 -0500
+++ source/docs/en/1.2.0/technical/video-nvenc.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -0,0 +1,87 @@
+---
+Type:            article
+State:           [ draft ]
+Title:           Nvidia NVEnc Encoder
+Project:         HandBrake
+Project_URL:     https://handbrake.fr/
+Project_Version: 1.1.0
+Language:        English
+Language_Code:   en
+Authors:         [ Scott (s55) ]
+Copyright:       2018 HandBrake Team
+License:         Creative Commons Attribution-ShareAlike 4.0 International
+License_Abbr:    CC BY-SA 4.0
+License_URL:     https://handbrake.fr/docs/license.html
+---
+
+Nvidia NVEnc Encoder
+==========================
+
+Supported Hardware and Configurations 
+--------------
+- Nvidia GeForce 10 and 20 Series graphics cards are supported. 
+- Driver "399.24" or later must be installed. 
+- Windows 7 SP1 and Later. (Linux *may* work but via the command line interface only)
+
+
+Please note, these are not hard limits and the feature *may* work on older series and operating systems, but this is not officially supported.
+
+Enabling support
+--------------
+Support for the NVEnc encoder can be enabled in preferences under the video tab. If your system is not supported, the option will be greyed out.
+
+
+Performance
+--------------
+Take note that only the encode portion of the encode pipeline is done on the Nvidia ASIC hardware. 
+Every stage prior and after in the pipeline including (decoding, filters, a/v sync, muxing etc.) all happen on the CPU. As a result, it is normal to have high, or 100% CPU utilisation during encodes. 
+
+It is common, particularly on lower end hardware that the CPU may be a bottleneck for the Nvidia encoder. To minimise this effect, turn off any filters that you do not require. 
+
+
+Using the Advanced Options
+--------------
+NvEnc does have a limited set of advanced encoder options that can be used.  Generally speaking is is not recommended to change these parameters. The built-in presets offer a good range of options.
+
+From the command line, you can use the --encopts parameter as follows:
+
+    --encopts="option1=value1:option2=value2"
+
+
+From the graphical user interface, just set the options in the dedicated options text box on the Video tab.
+
+    option1=value1:option2=value2
+
+Option Types
+--------------
+The following value types are supported (each option only accepts one value type):
+
+- integer
+  A number that can be written without a fractional or decimal component.
+
+- boolean
+  0 means off (or disabled).
+  1 means on (or enabled).
+ 
+- string
+  Takes a setting defined as s string. See comment for details. 
+
+  
+Available Options
+--------------
+
+| Option           | Type        | H.264 | H.265 | Comment                                                                        |
+|------------------|-------------|------------------------------------------------------------------------------------------------|
+| coder            | string      |   X   |       | Options: auto, cabac, cavlc                                                    |
+| temporal-aq      | boolean     |   X   |   X   |                                                                                |
+| spatial-aq       | boolean     |   X   |   X   | For H.265, use "spatial_aq" for H.265 encodes. Note the underscore             |
+| aq-strength      | int         |   X   |   X   | When Spatial AQ is enabled, the scale is from 1 (low) - 15 (aggressive)        |
+| nonref_p         | boolean     |   X   |   X   | Enable automatic insertion of non-reference P-frames                           |
+| strict_gop       | boolean     |   X   |   X   | Minimise GOP to GOP rate fluctuations                                          |
+| weighted_pred    | boolean     |   X   |   X   |                                                                                |
+| rc-lookahead     | int         |   X   |   X   | 0 to 27                                                                        |
+| b_adapt          | boolean     |   X   |       | Set this to 0 to disable adaptive B-frame decision when lookahead is enabled   |
+| no-scenecut      | boolean     |   X   |   X   | 1 = Disable adaptive I-frame insertion at scene cuts when using lookahead      |
+
+
+
diff -Naur source/docs/en/1.1.0/technical/video-qsv-options.markdown source/docs/en/1.2.0/technical/video-qsv-options.markdown
--- source/docs/en/1.1.0/technical/video-qsv-options.markdown	2018-12-15 15:42:57.000000000 -0500
+++ source/docs/en/1.2.0/technical/video-qsv-options.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -20,7 +20,7 @@
 Using the Advanced Options
 --------------
 
-From the command line, you can use the --encopts paramater as follows:
+From the command line, you can use the --encopts parameter as follows:
 
 	--encopts="option1=value1:option2=value2"
 
diff -Naur source/docs/en/1.1.0/technical/video-vce.markdown source/docs/en/1.2.0/technical/video-vce.markdown
--- source/docs/en/1.1.0/technical/video-vce.markdown	1969-12-31 19:00:00.000000000 -0500
+++ source/docs/en/1.2.0/technical/video-vce.markdown	2018-12-15 15:43:30.000000000 -0500
@@ -0,0 +1,83 @@
+---
+Type:            article
+State:           [ draft ]
+Title:           AMD VCE Encoder
+Project:         HandBrake
+Project_URL:     https://handbrake.fr/
+Project_Version: 1.1.0
+Language:        English
+Language_Code:   en
+Authors:         [ Scott (s55) ]
+Copyright:       2018 HandBrake Team
+License:         Creative Commons Attribution-ShareAlike 4.0 International
+License_Abbr:    CC BY-SA 4.0
+License_URL:     https://handbrake.fr/docs/license.html
+---
+
+AMD VCE Encoder
+==========================
+
+Supported Hardware and Configurations 
+--------------
+- AMD Radeon RX 400 Series, Vega or better
+- Windows 10
+
+Please note, these are not hard limits and the feature *may* work on older cards and operating systems, but this is not officially supported.
+
+Enabling support
+--------------
+Support for the VCE encoder can be enabled in preferences under the video tab. If your system is not supported, the option will be greyed out.
+
+
+Performance
+--------------
+Take note that only the encode portion of the encode pipeline is done on the AMD hardware. 
+Every stage prior and after in the pipeline including (decoding, filters, a/v sync, muxing etc.) all happen on the CPU. As a result, it is normal to have high, or 100% CPU utilisation during encodes. 
+
+It is common, particularly on lower end hardware that the CPU may be a bottleneck for the encoder. To minimise this effect, turn off any filters that you do not require. 
+
+
+Using the Advanced Options
+--------------
+VCE does have a limited set of advanced encoder options that can be used.  Generally speaking is is not recommended to change these parameters. The built-in presets offer a good range of options.
+
+From the command line, you can use the --encopts parameter as follows:
+
+    --encopts="option1=value1:option2=value2"
+
+
+From the graphical user interface, just set the options in the dedicated options text box on the Video tab.
+
+    option1=value1:option2=value2
+
+Option Types
+--------------
+The following value types are supported (each option only accepts one value type):
+
+- integer
+  A number that can be written without a fractional or decimal component.
+
+- boolean
+  0 means off (or disabled).
+  1 means on (or enabled).
+ 
+- string
+  Takes a setting defined as s string. See comment for details. 
+
+
+Available Options
+--------------
+
+| Option           | Type        | H.264 | H.265 | Comment                                                                        |
+|------------------|-------------|------------------------------------------------------------------------------------------------|
+| preanalysis      | boolean     |   X   |   X   |                                                                                |
+| vbaq             | boolean     |   X   |   X   |                                                                                |
+| enforce_hrd      | boolean     |   X   |   X   |                                                                                |
+| max_au_size      | int         |   X   |   X   |                                                                                |
+| me_half_pel      | boolean     |   X   |   X   |                                                                                |
+| me_quarter_pel   | boolean     |   X   |   X   |                                                                                |
+| coder            | string      |       |   X   | Options: auto, cabac, cavlc                                                    |
+| bf_delta_qp      | boolean     |       |   X   | B-Picture Delta QP                                                             |
+| bf_ref           | boolean     |       |   X   | Enable Reference to B-Frames                                                   |
+| bf_ref_delta_qp  | boolean     |       |   X   | Reference B-Picture Delta QP                                                   |
+| intra_refresh_mb | int         |       |   X   |                                                                                |

Corrections

From the last sentence in the Project History section:

Today, HandBrake is will hosted by titer the the development team remains in contact however he is not active in the day to day running or development of the project.

I'm pretty certain the "will" and double "the" in the above are mistakes, and the italicized words below were my best guesses as to what they should be (they shouldn't be italicized in the docs, obviously). For the additional punctuation, i.e. the semi-colon and comma, the former is debatable, but some kind of break is needed there (could be a period with the "However" starting a new sentence).

Today, HandBrake is still hosted by titer and the development team remains in contact; however, he is not active in the day to day running or development of the project.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.