Skip to main content

WAVE sound file metadata parser.

Project description

Documentation Status

wavinfo

The wavinfo package allows you to probe WAVE files and extract extended metadata, with an emphasis on production metadata.

wavinfo reads:

  • Broadcast-WAVE metadata, compliant with EBU Tech 3285v2 (2011), including embedded program loudness and coding history, if extant. This also includes the SMPTE 330M UMID Unique Materials Identifier.
  • iXML production recorder metadata, including project, scene, and take tags, recorder notes and file family information.
  • Most of the common RIFF INFO metadata fields.
  • The wav format is also parsed, so you can access the basic sample rate and channel count information.

In progress:

  • iXML STEINBERG sound library attributes.
  • Pro Tools embedded regions.

This module is presently under construction and not sutiable for production at this time.

Demonstration

The entry point for wavinfo is the WavInfoReader class.

from wavinfo import WavInfoReader

path = '../tests/test_files/A101_1.WAV'

info = WavInfoReader(path)

Basic WAV Data

The length of the file in frames (interleaved samples) and bytes is available, as is the contents of the format chunk.

(info.data.frame_count, info.data.byte_count)
>>> (240239, 1441434)
(info.fmt.sample_rate, info.fmt.channel_count, info.fmt.block_align, info.fmt.bits_per_sample)
>>> (48000, 2, 6, 24)

Broadcast WAV Extension

print(info.bext.description)
print("----------")
print("Originator:", info.bext.originator)
print("Originator Ref:", info.bext.originator_ref)
print("Originator Date:", info.bext.originator_date)
print("Originator Time:", info.bext.originator_time)
print("Time Reference:", info.bext.time_reference)
print(info.bext.coding_history)
sSPEED=023.976-ND
sTAKE=1
sUBITS=$12311801
sSWVER=2.67
sPROJECT=BMH
sSCENE=A101
sFILENAME=A101_1.WAV
sTAPE=18Y12M31
sTRK1=MKH516 A
sTRK2=Boom
sNOTE=

----------
Originator: Sound Dev: 702T S#GR1112089007
Originator Ref: USSDVGR1112089007124001008206301
Originator Date: 2018-12-31
Originator Time: 12:40:00
Time Reference: 2190940753
A=PCM,F=48000,W=24,M=stereo,R=48000,T=2 Ch

iXML Production Recorder Metadata

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)
iXML Project: BMH
iXML Scene: A101
iXML Take: 1
iXML Tape: 18Y12M31
iXML File Family Name: None
iXML File Family UID: USSDVGR1112089007124001008206300

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wavinfo-0.3.tar.gz (6.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wavinfo-0.3-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file wavinfo-0.3.tar.gz.

File metadata

  • Download URL: wavinfo-0.3.tar.gz
  • Upload date:
  • Size: 6.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.2

File hashes

Hashes for wavinfo-0.3.tar.gz
Algorithm Hash digest
SHA256 bbed1cf9db1a84f3dbb8cdf49c4350aa0ebec4966da88cf77e940d985fb55ddf
MD5 1a6bfaf2a1ed1e6d23a9ad231e9b1a46
BLAKE2b-256 996a64d30c339f315b9e45ebbc83366a0934eaebefb1fcab0b1b3a98b3d28cfd

See more details on using hashes here.

File details

Details for the file wavinfo-0.3-py3-none-any.whl.

File metadata

  • Download URL: wavinfo-0.3-py3-none-any.whl
  • Upload date:
  • Size: 8.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.2

File hashes

Hashes for wavinfo-0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 6b999116e0cd43267adb4ef06fd1355f20fba26eafe0f9ef832f32b84303adb9
MD5 66904dc09a8d7e6d4a78d8a1f85de2ac
BLAKE2b-256 bd0d40c83be8511e937f00b11d725e7cf597fc1bd3019064612774a6aa86a8f7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page