InterDVDProject๏ƒ

Inherits: Resource < RefCounted < Object

Authoring graph for a VIDEO_TS / AUDIO_TS disc.

Description๏ƒ

Compiled disc graph consumed by the IFO writer. Prefer an InterDVDDisc scene tree; export calls InterDVDDisc.build_project(). A saved .tres still works when blazium/inter_dvd/project is set. Encode fields on this resource are used during bake/mux.

Properties๏ƒ

int

ac3_bitrate_k

192

int

ac3_channels

2

float

pip_blackdetect_sec

2.5

float

pip_blackdetect_pix_th

0.12

String

audio_language

"en"

int

bake_warmup_frames

2

String

disc_title

""

InterDVDPGC

first_play

int

gop_size

15

String

menu_language

"en"

Array[InterDVDMenu]

menus

[]

int

parental_level

1

String

provider_id

"BLAZIUM INTER-DVD"

int

region_mask

1

String

serial

""

String

subtitle_language

"en"

int

title_safe_bottom

432

Array[InterDVDPGC]

titles

[]

String

volume_id

"BLAZIUM_DVD"

String

author

""

String

autorun_icon

""

String

autorun_label

""

String

autorun_open

""

String

copyright

""

String

copyright_file

""

String

credits

""

String

credits_file

""

PackedStringArray

extras

PackedStringArray()

String

extras_dir

""

String

license

""

String

license_file

""

String

publisher

""

String

readme

""

String

readme_file

""

String

studio

""

String

version

""

String

website

""

Methods๏ƒ

InterDVDPGC

add_title_from_video(path: String)

Array[InterDVDPGC]

add_titles_from_videos(paths: PackedStringArray)

InterDVDCell

add_chapter_from_video(title_n: int, path: String)

InterDVDPGC

add_title_from_scene(scene: PackedScene, duration_sec: float = 4.0)

InterDVDMenu

add_title_menu()

InterDVDPGC

add_menu_title()

InterDVDPGC

ensure_first_play(title_n: int = 1)

int

language_be16(language: String) static

String

sanitize_volume_id(id: String) static

void

reset_encode_defaults()

void

seed_from_project_settings()


Property Descriptions๏ƒ

int ac3_bitrate_k = 192 ๐Ÿ”—

  • void set_ac3_bitrate_k(value: int)

  • int get_ac3_bitrate_k()

AC3 encode bitrate in kbps. Used during bake/mux.


int ac3_channels = 2 ๐Ÿ”—

  • void set_ac3_channels(value: int)

  • int get_ac3_channels()

AC3 channel count (1โ€“6). Used during bake/mux.


float pip_blackdetect_sec = 2.5 ๐Ÿ”—

  • void set_pip_blackdetect_sec(value: float)

  • float get_pip_blackdetect_sec()

Seconds scanned for PiP lead-in black.


float pip_blackdetect_pix_th = 0.12 ๐Ÿ”—

  • void set_pip_blackdetect_pix_th(value: float)

  • float get_pip_blackdetect_pix_th()

PiP black-detect pixel threshold.


String audio_language = "en" ๐Ÿ”—

  • void set_audio_language(value: String)

  • String get_audio_language()

Default ISO 639-1 code for title audio attributes.


int bake_warmup_frames = 2 ๐Ÿ”—

  • void set_bake_warmup_frames(value: int)

  • int get_bake_warmup_frames()

Viewport frames skipped before the first captured bake frame.


String disc_title = "" ๐Ÿ”—

  • void set_disc_title(value: String)

  • String get_disc_title()

Human title written into TXTDT_MGI (libdvdnav get_title_string).


InterDVDPGC first_play ๐Ÿ”—

Optional First Play PGC (FPC). Use ensure_first_play() to write JumpTT to the main title. If empty, export jumps to the title menu when one has buttons, otherwise to title 1.


int gop_size = 15 ๐Ÿ”—

  • void set_gop_size(value: int)

  • int get_gop_size()

MPEG GOP size passed to ffmpeg -g.


String menu_language = "en" ๐Ÿ”—

  • void set_menu_language(value: String)

  • String get_menu_language()

ISO 639-1 code written on VMGM/VTSM PGCI_UT language units.


Array[InterDVDMenu] menus = [] ๐Ÿ”—

InterDVDMenu.MENU_TITLE menus are concatenated into VIDEO_TS.VOB (VMGM). Other menus mux into VTS_NN_0.VOB for InterDVDMenu.title_set_nr.


int parental_level = 1 ๐Ÿ”—

  • void set_parental_level(value: int)

  • int get_parental_level()

Default parental level.


String provider_id = "BLAZIUM INTER-DVD" ๐Ÿ”—

  • void set_provider_id(value: String)

  • String get_provider_id()

32-byte VMGI provider identifier.


int region_mask = 1 ๐Ÿ”—

  • void set_region_mask(value: int)

  • int get_region_mask()

Region mask written into the VMG.


String serial = "" ๐Ÿ”—

Optional disc serial string (max 15 characters) stored with TXTDT.


String subtitle_language = "en" ๐Ÿ”—

  • void set_subtitle_language(value: String)

  • String get_subtitle_language()

Default ISO 639-1 code for subtitle attributes when SPU PES is muxed.


int title_safe_bottom = 432 ๐Ÿ”—

  • void set_title_safe_bottom(value: int)

  • int get_title_safe_bottom()

NTSC title-safe bottom scanline for HLI clamp (buttons below this are lifted).


Array[InterDVDPGC] titles = [] ๐Ÿ”—

Title PGCs (one VTS). Every cell on each title is muxed; use add_title_from_video() to add a clip.


String volume_id = "BLAZIUM_DVD" ๐Ÿ”—

ISO9660 volume label written into disc.interdvd.json and the toolchain ISO volume.


String author = "" ๐Ÿ”—

Disc metadata author (blazium.interdvd.meta/v1).


String autorun_icon = "" ๐Ÿ”—

  • void set_autorun_icon(value: String)

  • String get_autorun_icon()

Optional AUTORUN.INF icon path.


String autorun_label = "" ๐Ÿ”—

  • void set_autorun_label(value: String)

  • String get_autorun_label()

Optional AUTORUN.INF label.


String autorun_open = "" ๐Ÿ”—

  • void set_autorun_open(value: String)

  • String get_autorun_open()

Optional AUTORUN.INF open target.


Copyright text packed by the toolchain.


  • void set_copyright_file(value: String)

  • String get_copyright_file()

Copyright file copied onto the disc root.


String credits = "" ๐Ÿ”—

Credits text packed by the toolchain.


String credits_file = "" ๐Ÿ”—

  • void set_credits_file(value: String)

  • String get_credits_file()

Credits file copied onto the disc root.


PackedStringArray extras = PackedStringArray() ๐Ÿ”—

Host paths to pack beside VIDEO_TS, each host or host:disc.

Note: The returned array is copied and any changes to it will not update the original property value. See PackedStringArray for more details.


String extras_dir = "" ๐Ÿ”—

  • void set_extras_dir(value: String)

  • String get_extras_dir()

Host folder whose children are merged onto the disc root.


String license = "" ๐Ÿ”—

License text packed by the toolchain.


String license_file = "" ๐Ÿ”—

  • void set_license_file(value: String)

  • String get_license_file()

License file copied onto the disc root.


String publisher = "" ๐Ÿ”—

ISO9660 publisher identifier.


String readme = "" ๐Ÿ”—

Readme text packed by the toolchain.


String readme_file = "" ๐Ÿ”—

  • void set_readme_file(value: String)

  • String get_readme_file()

Readme file copied onto the disc root.


String studio = "" ๐Ÿ”—

Studio name in disc metadata.


String version = "" ๐Ÿ”—

Disc version string.


String website = "" ๐Ÿ”—

Studio or product website.


Method Descriptions๏ƒ

InterDVDPGC add_title_from_video(path: String) ๐Ÿ”—

Creates a title PGC with one cell whose InterDVDCell.source_path is path, appends it to titles, and returns the title.


Array[InterDVDPGC] add_titles_from_videos(paths: PackedStringArray) ๐Ÿ”—

Calls add_title_from_video() for each non-empty path and returns the titles that were added.


InterDVDCell add_chapter_from_video(title_n: int, path: String) ๐Ÿ”—

Appends a video cell (chapter) to title title_n (1-based). 0 means the last title. If there are no titles yet, creates title 1 from path.


InterDVDPGC add_title_from_scene(scene: PackedScene, duration_sec: float = 4.0) ๐Ÿ”—

Creates a title PGC with one cell that bakes scene for duration_sec seconds and appends it to titles.


InterDVDMenu add_title_menu() ๐Ÿ”—

Appends a VMGM InterDVDMenu.MENU_TITLE menu (still time 0) with a Play button that jumps to title 1.


InterDVDPGC add_menu_title() ๐Ÿ”—

Appends a VLC-safe title PGC named Menu with a Jump Title button to title 1. Prefer this over JumpSS/CallSS from the title domain when returning to a menu.


InterDVDPGC ensure_first_play(title_n: int = 1) ๐Ÿ”—

Creates or updates first_play so First Play JumpTT goes to title_n (the main title). Returns the First Play PGC.


int language_be16(language: String) static ๐Ÿ”—

Packs an ISO 639-1 code into the 16-bit IFO language field (en is 0x656E).


String sanitize_volume_id(id: String) static ๐Ÿ”—

Uppercase ISO9660 volume label: A-Z0-9_, max 32 characters. Empty input becomes BLAZIUM_DVD.


void reset_encode_defaults() ๐Ÿ”—

Resets encode and region fields to engine defaults (region 1, AC3 192 kbps stereo, GOP 15, title-safe 432, warmup 2).


void seed_from_project_settings() ๐Ÿ”—

Alias of reset_encode_defaults().