Table of Contents

Struct DVDAudioAttributes

Namespace
VisioForge.Core.Types.MediaInfo
Assembly
VisioForge.Core.dll

Represents the complete set of attributes for a DVD audio stream, including format, language, and technical specifications.

public struct DVDAudioAttributes

Inherited Members

Remarks

This structure encapsulates all the metadata associated with a DVD audio track as defined in the DVD-Video specification. It provides comprehensive information about the audio stream's encoding, language settings, and technical parameters. This information is typically extracted from the DVD's IFO (Information) files and is used by media players to properly decode and present audio options to users.

Properties

AppMode

Gets or sets the application mode that indicates the special purpose or features of this audio track.

public DVDAudioAppMode AppMode { readonly get; set; }

Property Value

DVDAudioAppMode

Remarks

The application mode helps players determine special handling requirements for the audio track, such as enabling karaoke features or optimizing surround sound processing.

AppModeData

Gets or sets additional data specific to the application mode.

public byte AppModeData { readonly get; set; }

Property Value

byte

Remarks

This byte contains mode-specific information. For karaoke mode, it might indicate the channel configuration for vocals. The interpretation depends on the AppMode value.

AudioFormat

Gets or sets the audio encoding format used for this track.

public DVDAudioFormat AudioFormat { readonly get; set; }

Property Value

DVDAudioFormat

Remarks

The audio format determines which decoder is needed to process the audio stream. Different formats offer various trade-offs between quality, compression, and features.

Frequency

Gets or sets the sampling frequency of the audio stream in Hz.

public int Frequency { readonly get; set; }

Property Value

int

Remarks

DVD-Video supports sampling rates of 48 kHz and 96 kHz. Higher sampling rates provide better audio quality but require more storage space. LPCM tracks may use 96 kHz, while compressed formats typically use 48 kHz.

HasMultichannelInfo

Gets or sets a value indicating whether this audio stream contains explicit multichannel information.

public bool HasMultichannelInfo { readonly get; set; }

Property Value

bool

Remarks

This flag indicates whether the audio stream contains discrete multichannel information (e.g., 5.1 or 7.1 surround) as opposed to stereo or mono. It helps players configure the appropriate audio output settings.

Language

Gets or sets the language of the audio track as a human-readable string.

public string Language { readonly get; set; }

Property Value

string

Remarks

This is usually derived from the LanguageID and provides a user-friendly representation of the audio track's language for display in player interfaces.

LanguageExtension

Gets or sets the language extension that indicates special audio track types.

public DVDAudioLangExt LanguageExtension { readonly get; set; }

Property Value

DVDAudioLangExt

Remarks

Language extensions identify special-purpose audio tracks that accompany the main content. These tracks provide alternative audio experiences like descriptive audio for visually impaired viewers or commentary tracks with behind-the-scenes information.

LanguageID

Gets or sets the Windows Language Code Identifier (LCID) for the audio track.

public int LanguageID { readonly get; set; }

Property Value

int

Remarks

The LCID is a 32-bit value that uniquely identifies a language and its regional variant. For example, 1033 represents English (United States), while 2057 represents English (United Kingdom). This allows for precise language identification including regional dialects.

NumberOfChannels

Gets or sets the number of audio channels in the stream.

public byte NumberOfChannels { readonly get; set; }

Property Value

byte

Remarks

Common configurations include:

  • 1: Mono
  • 2: Stereo
  • 6: 5.1 surround (front left/right, center, rear left/right, subwoofer)
  • 8: 7.1 surround (adds side left/right to 5.1) The actual speaker mapping depends on the audio format and DVD authoring.

Quantization

Gets or sets the bit depth (quantization) of the audio samples.

public byte Quantization { readonly get; set; }

Property Value

byte

Remarks

Quantization determines the dynamic range and precision of the audio. DVD supports 16-bit (standard), 20-bit, and 24-bit (high-end) quantization. Higher bit depths provide better dynamic range but increase data size. This property primarily applies to LPCM audio; compressed formats have their own internal precision.