bug-vcdimager
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[VCDImager Bugs/Devel] VCDImager structure sizes


From: Gary Royal
Subject: [VCDImager Bugs/Devel] VCDImager structure sizes
Date: Mon, 13 Jan 2003 18:26:05 -0000

First, my apologies if this is posted to the wrong list. My questions aren't
related to bugs per se, but to certain low-level implementation details of
VCDImager that aren't documented anywhere that I'm aware of. Since debugging
requires intimate knowledge of the underlying code, this seemed to be the
best place to ask.

I'm writing a bitrate calculator for SVCD. I'm trying to figure out how many
sectors are occupied by 'invisible' structures that must be accounted for in
order to determine the number of free sectors available for program content.

1. Disc Structure - Sector Overhead

Based on my study of the VCDImager manual, I *think* this is how the disc is
laid out -- let me describe it in mixed XML/BNF notation:
<svcd>
  <lead-in>
  <pre-gap>
  <iso>
    <stuff>
    <segment item>+
    <user data file>*
  </iso>
  <sequence item>*
  <post-gap>
  <lead-out>
</svcd>

<lead-in>, <lead-out> := ? sectors
<pre-gap>, <post-gap> := 150 sectors
<segment item> := <150 form 2 sectors>+
<user data file> := <form 1 sector>+
<sequence item> := <pre-gap> <form 2 sector>+

<stuff>
  <PVD, directory, pointers etc.> := 75 sectors
  <karaoke> := 75 sectors
  <video cd info> := ? sectors
</stuff>

Assumptions:
1. A segment item is "granular" to 150 form 2 sectors, or 350400 bytes
2. A sequence item is granular to 1 form 2 sector, or 2336 bytes
3. A user data file is granular to 1 form 1 sector, or 2048 bytes

If my understanding is correct (please explain if/where I'm wrong about
this), the only thing I'm missing is the number of sectors consumed by
<lead-in>, <lead-out> and <video cd info>, which I assume are 75 sectors in
length, respectively, for a total of 675 sectors minimum overhead per disc.

2. Disc Structure - Mode 2 Form 2 Sector Size

To the best of my understanding, CD-ROM XA mode 2 form 2 sectors have a
payload of 2324 bytes, i.e.

2352 (sector size)
less 12 (sync)
less 4 (header)
less 8 (subheader)
less 4 (EDC)
= 2324 (payload)

But VCDImager writes sectors with a payload of 2336 bytes, i.e.

2352 (sector size)
less 12 (sync)
less 4 (EDC)
= 2336 (payload)

The difference is slight, but the fact it exists at all is curious: is mode
2 form 2 sector size variable between different authoring programs, or is
VCDImager unique in this regard?

3. OGT bandwidth

Extremely little documentation about OGT streams can be found on the web at
large. Does anyone happen to know the bandwidth consumed by an OGT channel
in kbps? Without knowing the maximum size of the largest bitmap per channel,
how much space per channel would you reserve from the maximum bitrate to
accomodate them?




reply via email to

[Prev in Thread] Current Thread [Next in Thread]