|
 |
|
|
What is SEFC and SESC?
MP3s may contain a block of data about the file like artist and title, track number, genre or even longer texts like comments.
This data block is the ID3 Tag. More information about ID3 tags can be found here: ID3.org.
As of introduction of the ID3v2 Tag even user data can be stored in v2 tags called frames.
These frames are identified by IDs like "TIT2" which stands for title. "SEFC" and "SESC" are such IDs too.
SEFC contains a value which represents the number of MPEG frames the MPEG file has.
This information can greatly increase speed when working with MPEG files as there is no need to count the frames when this information is needed for example when editing.
The good side is that storing this value does not increases file's size as it is only about a couple of bytes. This value's existence also gives exact Playtime values (which are then stored in TLEN frame).
SESC contains simplified FFT sample data (Stream Editor Sample Cache). It's like a cache for the decoded audio stream (like a thumbnail).
When displaying audio files graphicaly this cache can be used, so there is no need to decode the whole file and sample it afterwards.
This increases loading speed dramatically, but increses file size too by about +0.5% (usually smaller and MP3 Stream Editor stores this sample cache data compressed).
Note for programmers: Standard ID3v2 (zlib) compression is used at maximum rate. The data format is byte/sample representing stereo FFT data (left, right, left,...) or mono (data, data, data,...).
Some of programs making use of the SESC frame are: MP3 Stream Editor, TSampleDisplay3D, Filesystem Dialogs Library and Directory Opus Sample Display Plugin
SESP stands for Stream Editor Seek Points and is a simple textual description with a leading Zero byte for seeks in milliseconds. One line per data, that is $00 + TEXT + $0D $0A + TEXT + $0D $0A ...
Must start with 0, that is the first subsong starts at the beginning.
Can be altered manualy easely with MP3 Stream Editor's ID3v2 editor as simple text (altough there is a built in Subsong layout editor).
SESA (Stream Editor Subsong Artists) is a simple textual description with a leading Zero byte for each subsong's Artist.
SEST (Stream Editor Subsong Titles) is a simple textual description with a leading Zero byte for each subsong's Title.
SEAT (Stream Editor Album Titles) is a simple textual description with a leading Zero byte for each subsong's Album name.
Note for programmers: SESP, SESA, SEST and SEAT are linked in count and can be accesed as (TStringList in Delphi) Artist - Title - Position: SESA[i] - SEST[i] - SESP[i]. Also the SESP values are sorted starting with the lowest value (0 needed) and growing to higher values.
SEAC (Stream Editor Album Colors) contains two DWord (Delphi: Cardinal) values which represents two (Windows) BGR color values.
SEBR (Stream Editor Bit Rate) contains a value which represents the average bitrate of the file, in the format: Extended (10 Bytes) + String (8 Bytes).
You can extract the one you want, either the precise floating point value or the (converted to) string version.
|
|
|
|
|
|