Step 1: Splitting and Standardizing the Video

This is the foundational step of your 3D Blu-ray project. Because 3D Blu-rays use a specific "Multiview Video Coding" (MVC) extension of the H.264 codec, you cannot simply throw a Side-by-Side (SBS) file onto a disc. You must first separate the eyes into two distinct, standards-compliant video streams.

The Concept

We are taking a single "Full SBS" file (which contains both eyes side-by-side in one wide frame) and slicing it down the middle. Because your source might be a cinema-style "Ultrawide" format (like 3840x800), we must also add black bars (padding) to the top and bottom to reach the mandatory Blu-ray height of 1080 pixels.

Visualizing the split and pad process Figure 1: Visual process of splitting Full SBS into two 1080p streams with padding.

The Command

Run this in your terminal:

ffmpeg -i input.mkv -filter_complex "[0:v]split=2[l_raw][r_raw]; \
 [l_raw]crop=1920:ih:0:0,pad=1920:1080:0:(1080-ih)/2:black[leftout]; \
 [r_raw]crop=1920:ih:1920:0,pad=1920:1080:0:(1080-ih)/2:black[rightout]" \
-map "[leftout]" -c:v libx264 -crf 16 -preset slow -r 23.976 -pix_fmt yuv420p left_eye.mkv \
-map "[rightout]" -c:v libx264 -crf 16 -preset slow -r 23.976 -pix_fmt yuv420p right_eye.mkv

You want to use the command in 1 line when using command prompt instead:

ffmpeg -i input.mkv -filter_complex "[0:v]split=2[l_raw][r_raw];[l_raw]crop=1920:ih:0:0,pad=1920:1080:0:(1080-ih)/2:black[leftout];[r_raw]crop=1920:ih:1920:0,pad=1920:1080:0:(1080-ih)/2:black[rightout]" -map "[leftout]" -c:v libx264 -crf 16 -preset slow -r 23.976 -vsync cfr -pix_fmt yuv420p left_eye.mkv -map "[rightout]" -c:v libx264 -crf 16 -preset slow -r 23.976 -vsync cfr -pix_fmt yuv420p right_eye.mkv

Command Breakdown

Parameter What it does Why it's important
split=2Duplicates input in memory.Guarantees exact same starting frame.
crop=1920:ih:x:yCuts 1920px wide box.Separates left from right eye.
pad=1920:1080Adds black bars.Mandatory 1080p compliance.
-crf 16Sets quality level.Master quality preservation.
-preset slowHigher compression quality.Prevents 3D macroblocking.

Verification: The "Perfect Sync" Check

Ensure both files have the exact same number of frames to prevent player crashes.

ffprobe -v error -select_streams v:0 -show_entries stream=nb_frames -of default=nokey=1:noprint_wrappers=1 left_eye.mkv
ffprobe -v error -select_streams v:0 -show_entries stream=nb_frames -of default=nokey=1:noprint_wrappers=1 right_eye.mkv

Why this ensures 100% Compatibility

  • Resolution: Satisfies the BD-ROM physical specification.
  • Timing: Eliminates "drift" between eyes.
  • Bitstream: Standard x264 inside mkv is the preferred input for Cinevision.

Step 2: Extracting Master-Quality Audio

In this phase, we move from video to high-fidelity audio. Professional Blu-ray authoring requires "Elementary Streams"—clean, individual audio files stripped of their containers.

Part A: The MakeMKV Pull

Extract the data off the physical disc without changing a single bit of quality.

  1. Open the Disc: Launch MakeMKV and click the Optical Drive icon.
  2. Select the Title: Find the largest Title (main movie).
  3. Uncheck Video: You handled this in Step 1.
  4. Select Audio: Check high-definition tracks (DTS-HD MA, TrueHD, etc.).
  5. Output: Click "Make MKV" to create your backup.mkv.
MakeMKV interface showing audio tracks Figure 2: Selecting only the HD audio tracks in MakeMKV.

Part B: Extracting the Audio with FFmpeg

Professional authoring tools are extremely picky—they cannot read an MKV file directly. We need to perform "surgery" to pull out the raw audio data. Before we do that, we must identify exactly which audio track we want to grab.

1. Preliminary: Find your Track Number

Movies often have multiple audio tracks (different languages or commentary). We need to find the Stream Index of the one you want. Run this command:

ffprobe -v error -show_streams -select_streams a backup.mkv

Look at the results and find the language you need. The "Index" number determines your -map setting:

  • If your track is the first one listed: Use -map 0:a:0
  • If your track is the second one listed: Use -map 0:a:1
  • (And so on...)

2. Run the Extraction Command

Choose the command below that matches the type of audio you selected in MakeMKV. If your track index wasn't 0, remember to update the -map part!

Scenario 1: TrueHD or Atmos (The "Split" Method)

Blu-ray standards require TrueHD to be split into two files: a lossless .mlp and a compatible .ac3 core.

ffmpeg -i backup.mkv -map 0:a:0 -c copy movie.mlp -map 0:a:0 -c copy movie.ac3

Scenario 2: DTS-HD Master Audio

DTS-HD is simpler; the high-res audio and the "core" surround sound live in one file.

ffmpeg -i backup.mkv -map 0:a:0 -c copy movie.dts

Scenario 3: EAC3 (7.1 Dolby Digital Plus)

Commonly used for high-bitrate surround sound that isn't TrueHD.

ffmpeg -i backup.mkv -map 0:a:0 -c copy movie.ec3

Scenario 4: Standard AC3 (5.1 or 2.0 Stereo)

The universal standard for basic surround or stereo tracks.

ffmpeg -i backup.mkv -map 0:a:0 -c copy movie.ac3

Technical Cheat Sheet

If Audio is... Use Extension Why?
Atmos / TrueHD.ac3 + .mlpPlays on Atmos setups and legacy receivers.
DTS-HD MA.dtsContains both Lossless and Digital Surround core.
7.1 DD+.ec3Standard for high-bitrate Dolby Digital Plus.
Stereo / 5.1.ac3Universal standard for standard definition audio.

Part C: The MUI Generator (The "Scenarist Bridge")

Once you have extracted your files, you need to prepare the high-definition tracks. While standard AC3 files can be imported into Scenarist directly, Lossless HD formats (TrueHD/Atmos and DTS-HD MA) must be processed through the MUI Generator to create a "VES" (Video Elementary Stream) asset.

For TrueHD / Atmos

  1. Launch MUI Generator: Open the tool from your Scenarist suite.
  2. Input: Load your movie.ac3 file.
  3. Settings: Select "Dolby Lossless" from the dropdown menu. This tells the generator to automatically find the matching movie.mlp file in that folder and bind them together.
  4. Execute: The tool will generate a .ves and a .mui file.

For DTS-HD Master Audio

  1. Launch MUI Generator: Open the tool.
  2. Input: Load your movie.dts file.
  3. Settings: Ensure the type is set to "DTS-HD".
  4. Execute: This will create the .ves and .mui files needed for import.
  5. If Scenarist complains about the bitrate, open the .ves file in notepad and ensure PeakBitrate uses a dot, not a comma. (This is a classic legacy bug in Sonic software (CineVision/Scenarist). If your Windows "Regional Settings" are set to a country that uses a comma as a decimal separator)
  6. WARNING: Professional encoders add a 21ms "padding" to DTS-HD files. Scenarist automatically removes this. If your audio was extracted from an MKV, it lacks this padding. The Result: Your audio will be 21ms out of sync (late) unless you either re-encode with the DTS-HD Master Audio Suite (MAS) or manually adjust the "Time Info" offset in Scenarist's Clip Editor to compensate.

For Standard AC3 (5.1 or Stereo)

No MUI Generator needed. You can drag and drop your .ac3 file directly into the Data Tab of Scenarist. It is a "native" format that the software understands without a proxy file.

Direct Import Tip: In Scenarist, always go to the Data Tab to import your assets. Import the .ves file for HD audio, or the .ac3 file for standard audio. Once imported, they will be available to drag into your Track Editor.

Step 3: Extracting and Preparing Subtitles

Subtitles on a Blu-ray are not text files; they are high-quality images (bitmaps). To prepare them for professional authoring, we must extract them and "deconstruct" them into a format Scenarist can read.

Part A: Identifying Subtitle Tracks

Before extracting, you need to find which Stream Index belongs to the subtitles you want (e.g., English, forced subtitles, etc.). Use ffprobe to scan your MakeMKV backup:

ffprobe -v error -show_streams -select_streams s backup.mkv

Look for the index number and the TAG:language:

  • If the subtitles you want are the first subtitle stream listed: Use -map 0:s:0
  • If they are the second: Use -map 0:s:1 (and so on).

Part B: Extracting to .SUP Format

Once you have the index, we pull the raw bitstream out of the MKV container using the .sup extension—the standard raw format for Blu-ray subtitles.

The Command:

ffmpeg -i backup.mkv -map 0:s:0 -c copy movie_subs.sup

(Note: Replace 0:s:0 with the index you found in Part A).

Part C: Converting for Scenarist (The XML/PNG Method)

Scenarist cannot import a .sup file directly. It requires a series of images (PNGs) and a timing script (XML). To do this, we use BDSup2Sub++.

⚠️ CAUTION: You must use the ++ version of BDSup2Sub. The regular Java-based version often lacks the stability and specific export features required for professional authoring.
  1. Load the Asset: Open your movie_subs.sup file in BDSup2Sub++.
  2. Verify Frame Rate: Upon loading, ensure the "Source FPS" matches your video (usually 23.976). If it doesn't, change the "Output FPS" to match.
  3. Check for Delay: If your subtitles need to be offset (e.g., if the movie starts 2 seconds late), you can apply a global delay in the Edit menu before exporting.
  4. Set Output Format: In the "Output Format" dropdown menu, select XML/PNG.
  5. Export: Go to File > Export. Create a dedicated folder for this specific subtitle track (e.g., /SUBS_ENGLISH/).

The Result: The folder will now be filled with hundreds of PNG images and one .xml file containing all timing and positioning data.

ℹ️ IMPORTANT: Keep in mind that this folder or the .xml file cannot be dragged into CineVision’s Data tab yet. This is just the "deconstruction" phase.

Step 4: Extracting Chapters for Scenarist

Chapters are essential for navigation. Professional authoring tools like Scenarist are extremely specific about how they receive this data. You cannot simply import a text list; it must be a precisely formatted, single-line CSV string.

Part A: The Primary Source (MakeMKV Backup)

The most efficient way to get Scenarist-ready timecodes is using ffprobe on the MKV you created in Step 2. This file contains the precise timestamps from the original Blu-ray.

Run this command to see the chapters:

ffprobe -i backup.mkv -print_format csv -show_chapters -loglevel error

Part B: The Backup Source (SBS Video)

If you don't have the original disc backup, you can extract the chapters from your Full SBS MKV. Note that if the SBS was edited or trimmed, these chapters will be more accurate to your current video length than the original disc data would be.

Run this command:

ffprobe -i input_sbs.mkv -print_format csv -show_chapters -loglevel error

Part C: Formatting for the Scenarist CSV

Regardless of which source you used, Scenarist demands a very specific single-line format. It will not accept a vertical list or a standard text file. You must assemble the output into a .csv file following these rules:

1. The Mandatory Header

Your CSV file must start with the frame rate and the clock type. For a standard 3D Blu-ray, this is:

23.976,NonDrop,

2. The Timecode Formatting

Scenarist requires the format HH:MM:SS:FF (Hours:Minutes:Seconds:Frames).

  • The Millisecond Trap: Many tools output HH:MM:SS.ms (milliseconds). You must replace that last decimal with a colon and a frame number (00-23).
  • The First Chapter: You must always start the list with 00:00:00:00.

3. Final Assembly

Combine your header and your timestamps into one continuous line separated by commas. There should be no spaces or line breaks.

Final Result Example:
Your chapters.csv should look exactly like this:
23.976,NonDrop,00:00:00:00,00:13:48:15,00:23:36:03,00:31:34:18,00:40:02:01,00:48:27:19
ℹ️ PRO TIP: If your movie has 24 chapters, all 24 timecodes must sit on that same single line after the header. Scenarist will fail to import if the file contains multiple lines.

Step 5: Encoding for 3D (CineVision)

Part A: The 3D Bitrate Calculator

3D Blu-ray encoding is a balancing act. Use the tool below to calculate your Target Bitrate for CineVision and the TS Rates for Scenarist.

CineVision (Encoding)

Base Target: -- Mbps
Base Max: -- Mbps
Dep. Target: -- Mbps
Dep. Max: -- Mbps

Scenarist (Muxing)

Base TS Rate: -- bps
Dep. TS Rate: -- bps

*Calculated with a 15% muxing buffer.

Part B: CineVision Settings (Truth vs. Myths)

Many legacy PDF guides contain advice rooted in the software instabilities of the early 2010s. Below is the breakdown of modern "Truths" versus "Bad Advice," followed by the optimized settings list.

1. The Truth (What to Follow)

  • Scan Mode & Pixel Format: You must set Scan Mode to Progressive and Pixel Format to YV12. 3D Blu-rays are inherently progressive; encoding as interlaced will cause a critical failure during Scenarist import.
  • GOP Structure: Setting B-frames to 3 and Reference Frames to 4 is the gold standard. This provides the best compression while staying within hardware playback limits.
  • Motion Search: Setting this to Exhaustive is essential for quality. It is the slowest mode, but it ensures the encoder accurately maps the similarities between the Left and Right eyes to save bitrate.
  • Bitrate Buffering: Never max out your bitrate to the theoretical limit. Always leave a safety margin to prevent "Buffer Underflow" errors in the final muxing stage.

2. The "Bad" (What to Ignore)

  • The "No Pyramid B-frames" Myth: Some tutorials claim you should disable "Pyramid B-frame structure." This is incorrect for modern, stable environments. Pyramid B-frames (hierarchical B-frames) significantly improve compression efficiency and should remain ON.
  • It is common to see a "Buffer Underflow" error during the final muxing stage in Scenarist. Many users assume they need to go back to CineVision (advanced settings) to "increase the buffer," but this is a mistake. This happens due to a fault TSRecordingRate in Scenarist. You should leave both buffer sizes at 30000kbits in CineVision!

  • 3. The "Perfect" CineVision Settings List

    Use these specific settings to ensure a 100% compliant encode that imports perfectly into Scenarist:

    Tab Setting Recommended Value
    Video Scan Mode / Pixel Format Progressive / YV12
    Bit Rate Type / Max Bitrate VBR (2-Pass) / 40,000 kbps (Total)
    Picture Structure B-Frames / B-Pyramid 3 / ON
    Motion Search Reference Frames / Mode 4 / Exhaustive
    Advanced GOP Size 24 (or "Auto")

    Part C: Finalizing the Encode and Managing the "Speed Limit"

    Before you hit the "Start" button in CineVision, you need to understand the Transport Rate. Think of the Blu-ray player as a pipe: it can only handle a certain amount of data per second.

    1. The 64.8 Mbps Speed Limit: The total transport rate of a 3D Blu-ray (the combined bitrate of your Video + all Audio tracks + Subtitles) cannot exceed 64.8 Mbps. The Balancing Act: If you are only including one English DTS-HD track, you can afford a very high video bitrate. The Warning: If you are adding five different languages or multiple lossless tracks, those audio streams "eat" into your speed limit. If the total data flow gets too high, Scenarist will throw a Buffer Underflow error because the "pipe" is full. The Strategy: Use the calculator from Part A to ensure your settings are safe. It’s better to have a slightly lower bitrate than a disc that crashes your player.

    2. The Final Push in CineVision: Once you have imported your Left and Right eye views and applied the "Perfect Settings" we discussed, it’s time to encode. Start the Encode: Go to File > Encode > Session. CineVision will now begin the heavy lifting of creating your 3D MVC streams. Seal the Deal: Once the encoding bars reach 100%, you aren't quite done. You must go to File > Finalize Session. This step "wraps" the data into the final files that Scenarist can read.

    3. The "Clean Up" (What to Keep): CineVision creates a lot of temporary "junk" files during the process. To keep your project folder organized, you only need to keep two files for the next step: The Base View: Look for the file ending in .mvc (This is your Left Eye). The Dependent View: Look for the file ending in _d.mvc (This is your Right Eye data). Everything else in that folder can be deleted. You now have the "Master Video Assets" ready for the final authoring stage.


    Step 6: Authoring in Scenarist BD