8. iXML Production Recorder Metadata

8.1. Notes

iXML allows an XML document to be embedded in a WAV file.

The iXML website recommends a schema for recorder information but there is no official DTD and vendors mostly do their own thing, apart from hitting a few key xpaths. iXML is used by most location/production recorders to save slating information, timecode and sync points in a reliable way.

iXML is also used to link “families” of WAV files together, so WAV files recorded simultaneously or contiguously can be related by a receiving client.

print("iXML Project:", info.ixml.project)
print("iXML Scene:", info.ixml.scene)
print("iXML Take:", info.ixml.take)
print("iXML Tape:", info.ixml.tape)
print("iXML File Family Name:", info.ixml.family_name)
print("iXML File Family UID:", info.ixml.family_uid)

Result:

iXML Project: BMH
iXML Scene: A101
iXML Take: 1
iXML Tape: 18Y12M31
iXML File Family Name: None
iXML File Family UID: USSDVGR1112089007124001008206300

8.2. Class Reference

class wavinfo.wave_ixml_reader.WavIXMLFormat(xml)

iXML recorder metadata.

property family_name: str | None

The name of this file’s file family.

property family_uid: str | None

The globally-unique ID for this file family. This may be in the format of a GUID, or an EBU Rec 9 source identifier, or some other dumb number.

property project: str | None

The project/film name entered for the recording.

property raw_xml: ElementTree

The root entity of the iXML document.

property scene: str | None

Scene/slate.

property steinberg: SteinbergMetadata | None

Steinberg vendor iXML metadata if present.

property take: str | None

Take number.

property tape: str | None

Tape name.

property track_list

A description of each track.

Yields:

IXMLTrack for each track.

8.3. Steinberg-Specific iXML Metadata

class wavinfo.wave_ixml_reader.SteinbergMetadata(xml: ElementTree)

Vendor-specific Steinberg metadata.

class AudioSpeakerArrangement(value)

Steinberg speaker format enumeration.

property audio_speaker_arrangement: AudioSpeakerArrangement | None

AudioSpeakerArrangement property

property media_company: str | None

MediaCompany

property media_drop_frames: bool | None

MediaDropFrames

property media_duration: float | None

MediaDuration

property media_start_time: float | None

MediaStartTime

property media_track_title: str | None

MediaTrackTitle

classmethod present(xml: ElementTree) bool

Test if xml has Steinberg metadata. :param xml: an iXML ElementTree

property program_name: str | None

ProgramName

property program_version: str | None

ProgramVersion

property sample_format_size: int | None

AudioSampleFormatSize