Oma: Difference between revisions

From MultimediaWiki
Jump to navigation Jump to search
m (Repair ATRAC3 link.)
(Revamp OpenMG description, part 1.)
 
Line 3: Line 3:
* Samples: http://samples.mplayerhq.hu/oma/
* Samples: http://samples.mplayerhq.hu/oma/


Container format used to encapsulate [[ATRAC3]] and [[ATRAC3plus]] for use with Sony's portable players. Files ending with .omg are protected with the [[OpenMG]] [[DRM]] system.


The OMA file format contains a payload scrambled with a 32-bit value [http://www.waider.ie/hacks/workshop/c/mple/FILE_FORMAT_v2.txt]. The format is known to carry MP3 and ATRAC3 audio. The metadata format is a variant of ID3v2 and uses standard ID3v2 frame types, such as TIT2, TPE1, TALB and TCON. In addition to these standard frame types, TXXX and GEOB frames contain OpenMG-specific metadata.
The OpenMG Audio (further OMA) container format is used to encapsulate digital music content for use with Sony's portable players. Files ending with .omg are protected with the [[OpenMG]] [[DRM]] system.
 
The format is known to carry audio streams encoded with:
 
* [[ATRAC3]]
* [[ATRAC3plus]]
* [[ATRAC Advanced Lossless]]
* [[MP3]]
* [[PCM|Linear PCM]]
* [[WMA]] (confirmation required)
 
 
== File structure ==
 
A typical OMA file consists of the following three parts:
* metadata container
* extended audio header
* actual sound data
 
=== Metadata container ===
 
The metadata container carries overall music info. Except for starting with "ea3" instead of "ID3", it's fully compatible with the ID3v2 format. It uses standard ID3v2 frame types, such as TIT2, TPE1, TALB and TCON. In addition to these standard frame types, TXXX and GEOB frames contain OpenMG-specific metadata.


   TXX  OMG_TRACK  "track number (ASCII)"
   TXX  OMG_TRACK  "track number (ASCII)"
Line 16: Line 36:
                       REFID
                       REFID
   GEOB  OMG_OLINF  binary blob  
   GEOB  OMG_OLINF  binary blob  
=== Extended audio header ===
Extended audio header contains information about the encapsulated OpenMG audio. This includes codec type, codec specific info (packet size, sample rate, channels and so on) as well as DRM related info (file encryption, content id).
=== Sound data ===
Encrypted or plain-text sound data organized in packets follows the extended audio header.
== Further reading ==
The OMA file format contains a payload scrambled with a 32-bit value [http://www.waider.ie/hacks/workshop/c/mple/FILE_FORMAT_v2.txt].


[[Category:Container Formats]]
[[Category:Container Formats]]

Latest revision as of 08:27, 29 November 2018


The OpenMG Audio (further OMA) container format is used to encapsulate digital music content for use with Sony's portable players. Files ending with .omg are protected with the OpenMG DRM system.

The format is known to carry audio streams encoded with:


File structure

A typical OMA file consists of the following three parts:

  • metadata container
  • extended audio header
  • actual sound data

Metadata container

The metadata container carries overall music info. Except for starting with "ea3" instead of "ID3", it's fully compatible with the ID3v2 format. It uses standard ID3v2 frame types, such as TIT2, TPE1, TALB and TCON. In addition to these standard frame types, TXXX and GEOB frames contain OpenMG-specific metadata.

 TXX   OMG_TRACK  "track number (ASCII)"
 TXX   OMG_AGENR  "content description (ASCII)"
 TXX   OMG_ATPE1  "leader performer (ASCII)"
 GEOB  OMG_BLKSI  contains a metadata structure. observed strings include:
                     KEYRING
                     EKB
                     SHARE_P_SID
                     REFID
 GEOB  OMG_OLINF  binary blob 

Extended audio header

Extended audio header contains information about the encapsulated OpenMG audio. This includes codec type, codec specific info (packet size, sample rate, channels and so on) as well as DRM related info (file encryption, content id).

Sound data

Encrypted or plain-text sound data organized in packets follows the extended audio header.

Further reading

The OMA file format contains a payload scrambled with a 32-bit value [1].