Table of Contents

Class DpxDetails

Namespace
Egami.Formats.Extended.Dpx
Assembly
Egami.Formats.Extended.dll

Details only DPX has, kept in FormatDetails. The writer writes the text, film and television fields back.

public sealed class DpxDetails : FormatDetails
Inheritance
DpxDetails
Inherited Members

Examples

// What the header says: the element's descriptor, depth, packing and transfer, and the file, film and TV fields.
using Raster frame = Raster.Load("duck.dpx", context);
if (frame.Metadata.FormatDetails is DpxDetails dpx)
{
    Console.WriteLine($"{dpx.BitsPerSample}-bit, packing {dpx.Packing}, transfer {dpx.Transfer}, {(dpx.BigEndian ? "big" : "little")} endian");
    Console.WriteLine($"timecode {dpx.Timecode ?? "none"}, {dpx.FrameRate} fps, frame {dpx.FramePosition}");

    // The writer takes the fields back: change one and save.
    dpx.Timecode = "01:00:00:00";
    dpx.FrameRate = 24;
    frame.Save("tagged.dpx");
}

Properties

BigEndian

Gets or sets whether the file is big endian ("SDPX"); little-endian files start "XPDS".

public bool BigEndian { get; set; }

Property Value

bool

BitsPerSample

Gets or sets the stored bits a sample: 1, 8, 10, 12, 16, 32 or 64.

public int BitsPerSample { get; set; }

Property Value

int

Colorimetric

Gets or sets the colorimetric specification.

public DpxTransfer Colorimetric { get; set; }

Property Value

DpxTransfer

Gets or sets the copyright statement.

public string Copyright { get; set; }

Property Value

string

CreationTime

Gets or sets the creation time as the header gives it, "yyyy:mm:dd:hh:mm:ssLTZ".

public string CreationTime { get; set; }

Property Value

string

Creator

Gets or sets the creator.

public string Creator { get; set; }

Property Value

string

Description

Gets or sets the element's description.

public string Description { get; set; }

Property Value

string

Descriptor

Gets or sets the descriptor: 50 RGB, 51 RGBA, 52 ABGR, 6 luma, 4 alpha, 100 to 103 CbYCr and others.

public int Descriptor { get; set; }

Property Value

int

Element

Gets or sets the image element this image came from, from 0.

public int Element { get; set; }

Property Value

int

ElementCount

Gets or sets the number of image elements in the file.

public int ElementCount { get; set; }

Property Value

int

FileName

Gets or sets the file name the header records.

public string FileName { get; set; }

Property Value

string

FilmCount

Gets or sets the film edge code count (4 characters).

public string FilmCount { get; set; }

Property Value

string

FilmFormat

Gets or sets the film format, such as "Academy".

public string FilmFormat { get; set; }

Property Value

string

FilmManufacturer

Gets or sets the film manufacturer's id code (2 characters).

public string FilmManufacturer { get; set; }

Property Value

string

FilmOffset

Gets or sets the offset in perforations (2 characters).

public string FilmOffset { get; set; }

Property Value

string

FilmPrefix

Gets or sets the film edge code prefix (6 characters).

public string FilmPrefix { get; set; }

Property Value

string

FilmType

Gets or sets the film type (2 characters).

public string FilmType { get; set; }

Property Value

string

FrameId

Gets or sets the frame id, such as a shot name.

public string FrameId { get; set; }

Property Value

string

FramePosition

Gets or sets the frame's position in the sequence, or null when undefined.

public uint? FramePosition { get; set; }

Property Value

uint?

FrameRate

Gets or sets the frame rate, in frames a second, from the film header or else the television header.

public float? FrameRate { get; set; }

Property Value

float?

InputDevice

Gets or sets the input device name.

public string InputDevice { get; set; }

Property Value

string

Orientation

Gets or sets the image orientation code: 0 left to right and top to bottom; 1 to 3 flip it, 4 to 7 transpose it.

public int Orientation { get; set; }

Property Value

int

Packing

Gets or sets the packing: 0 packed, 1 filled to 32-bit words with the padding in the low bits (method A), 2 with it in the high bits (method B).

public int Packing { get; set; }

Property Value

int

Project

Gets or sets the project name.

public string Project { get; set; }

Property Value

string

RunLength

Gets or sets whether the element was run-length coded.

public bool RunLength { get; set; }

Property Value

bool

SequenceLength

Gets or sets the length of the sequence in frames, or null when undefined.

public uint? SequenceLength { get; set; }

Property Value

uint?

SlateInfo

Gets or sets the slate information.

public string SlateInfo { get; set; }

Property Value

string

Timecode

Gets or sets the SMPTE timecode, "hh:mm:ss:ff", or null when undefined.

public string? Timecode { get; set; }

Property Value

string

Transfer

Gets or sets the transfer characteristic.

public DpxTransfer Transfer { get; set; }

Property Value

DpxTransfer

UserBits

Gets or sets the SMPTE user bits, or null when undefined.

public uint? UserBits { get; set; }

Property Value

uint?

Version

Gets or sets the header version, such as "V2.0".

public string Version { get; set; }

Property Value

string

Methods

Copy()

Returns a deep copy.

public override FormatDetails Copy()

Returns

FormatDetails

The copy.