CVD Preservation, Ripping and Identification
Why CVD needs a two-layer archive
China Video Disc (CVD) shares the fragile sector model of VCD and SVCD. Form 2 sectors carry no Layer-2 ECC-only EDC and the CD’s CIRC. VCDImager warns that (S)VCD MPEG tracks “are more easily affected by scratches.” A preservation copy that only saves files from a mounted volume is therefore not an archive: it loses raw sector layout, error context and often wraps the MPEG in RIFF-CDXA that later tools misread as a plain program stream.
A good CVD archive has two layers. First, a raw, bit-exact disc image. Second, extracted playable MPEG program streams plus a structural description of the disc (INFO/ENTRIES/TRACKS, PBC, volume labels). The image answers “what was on the pressed or burned CD?”; the extracted streams answer “what can we play and remux tomorrow?” Copying files from a mounted disc satisfies neither question by itself.
Raw imaging
| Tool | Command / method | Notes |
|---|---|---|
| cdrdao | cdrdao read-cd --read-raw --datafile disc.bin --device /dev/sr0 disc.toc then toc2cue disc.toc disc.cue |
2,352-byte raw sectors |
| CDRWin / IsoBuster / ImgBurn (Windows) | Read to BIN/CUE in raw mode | Record read errors |
| Any workflow | Keep a log of read errors and retries | Form 2 errors are not ECC-corrected |
Raw mode matters because Form 2 payloads are not reconstructed by the same ECC path DVD and Mode 1 data enjoy. Retries and a written error log are part of the archival object, not optional debugging. Prefer imaging before heavy playback testing that might leave a marginal disc worse than you found it. On drives that struggle with Mode 2 Form 2, note the drive model in the read log: future re-reads may need a different mechanism even when the BIN already exists.
Structural extraction
vcdxrip “disassembles a given VCD or SVCD disc into a XML description and the contained MPEG program streams.” Run it against the image (vcdxrip --bin-file=disc.bin --cue-file=disc.cue) or against the drive. The resulting XML plus MPEG files can be edited and rebuilt with vcdxbuild. An Ubuntu Forums tip notes vcdxrip --nofiles extracts just the AVSEQ tracks as .mpg when you only need the elementary playback objects.
Do not trust a plain file copy. On Windows, copying /MPEG2/AVSEQnn.MPG or /MPEGAV/*.DAT yields RIFF-CDXA-wrapped data. VCDImager’s documentation is blunt: people tend to think of these as MPEG files, but they are not. Strip the wrapper with cdxa2mpeg, or better, use vcdxrip so structure and streams stay paired. IsoBuster users can open the MPEG2 folder and choose “Extract but filter only M2F2 Mpg frames.” VCDGear also extracts MPEG from CDXA files. Those tools are recovery aids; the raw BIN/CUE remains the preservation master.
When both a pressed commercial disc and a hobbyist CD-R are in the same collection, keep extraction recipes identical so that later comparison of INFO.SVD, TRACKS.SVD and program-stream widths is not confused by tool differences. Rebuild tests with vcdxbuild are useful for verifying that the XML description is complete, but a successful rebuild does not replace the original raw image.
Identifying CVD vs SVCD vs XSVCD
| Check | CVD | SVCD (Philips/IEC) | XSVCD |
|---|---|---|---|
| INFO.SVD system ID | “SUPERVCD” | “SUPERVCD” | “SUPERVCD” |
| Video width (ffprobe) | 352 | 480 | 480 (or other) |
| Bitrate | ≤ ~2.6 Mbps | ≤ ~2.6 Mbps | Often higher |
| Subtitle stream | CVD-style private_stream_1 (VLC: “CVD subtitles”) | OGT 0x70-series | Either |
| TRACKS.SVD | vcd-info may print “CVD interpretation (probably)” | IEC layout | Usually IEC |
| Sequence folder | /MPEG2 or /MPEGAV | /MPEG2 | Either |
| Disc type | Pressed (commercial, 1998-1999) or CD-R | Pressed or CD-R | Usually CD-R |
Only the resolution is decisive for the CVD-versus-Philips-SVCD distinction in practice. Folder names and TRACKS.SVD layout are suggestive, not conclusive: a 352-wide “XSVCD” made in the West in 2003 is structurally a CVD. Commercial Chinese discs from mid-1998 labelled CVD, or Super VCD discs from late 1998 carrying 352-wide video, are the true period objects. System ID “SUPERVCD” appears on all three columns and therefore cannot settle the question alone.
Operational checklist: dump structure with vcd-info against the CUE or BIN; probe each extracted track with ffprobe -show_streams -show_format; open the same streams in VLC and note whether it reports CVD subtitles; photograph packaging and matrix/IFPI/SID codes before the disc is filed away. When vcd-info hints at a “CVD interpretation,” treat that as supporting evidence beside the 352-wide measurement, not as a substitute for it.
Archival packaging and documentation
- Keep the raw BIN/CUE (or TOC) and its read log.
- Keep
vcd-infooutput as a text file. - Keep
ffprobe -show_streams -show_format -of jsonoutput for each track. - Photograph the disc (both sides), inlay, case and any matrix / IFPI / SID codes.
- Hash the BIN and every extracted MPEG (SHA-256).
- Make lossless access copies:
ffmpeg -i avseq01.mpg -c copy -map 0 out.mkvkeeps video, audio and subtitle streams together. Transcode only for convenience copies. - Record provenance: where bought, price, whether bundled with a player, and which brand of player actually plays it.
- For 1998-1999 commercial discs, also record whether the disc plays on players from different brands-evidence relevant to the contemporary “interference code” compatibility disputes.
Lossless Matroska access copies are for day-to-day playback and subtitle checks in VLC; they do not replace the raw image. If a private subtitle stream exists, -map 0 is what keeps it. Dropping to a video+audio-only remux for “simplicity” is a preservation error when CVD-style or OGT packets were present on the original. Hashing both the BIN and the extracted MPEGs lets you detect silent re-rips later without reopening every tool log.
Identification pitfalls
Hobbyist CD-Rs labelled SVCD, XVCD or XSVCD may be 352-wide CVD-structured discs, 480-wide IEC SVCDs, or over-rate XSVCDs. Commercial packaging that says 超级VCD may still carry 352-wide video from the Chaoji transition period. Conversely, a Western “SVCD” burn at 480-wide with OGT subtitles is not a period Chinese CVD even if a Chaoji player plays it. Bitrate above the ~2.6 Mbps community ceiling suggests XSVCD or a non-compliant hobby encode regardless of folder names.
PC Explorer copies that “play in VLC” can still be CDXA-wrapped; always confirm with a proper rip or cdxa2mpeg before declaring an archival MPEG. Players that ignore CVD-style subtitles can make a disc look subtitle-free when VLC would report otherwise. Standalone “plays / does not play” notes should name the player brand and model: 1998 interference-era discs may fail on rivals’ Chaoji machines while succeeding on the issuing brand. Guangming Daily and Wenzhai Bao coverage of late-1998 compatibility contests and “interference codes” is why cross-brand play notes belong in the archive package, not only in forum anecdotes.
Putting the workflow together
A minimal responsible pipeline for a newly acquired CVD or Super VCD candidate is: photograph and note provenance; raw-image with error log; vcdxrip (or IsoBuster M2F2 extract) to clean MPEGs plus XML; vcd-info and ffprobe sidecars; SHA-256 hashes; lossless MKV access copy; VLC subtitle check; optional hardware play notes across brands for commercial 1998-1999 discs. Only after that stack exists should the physical disc be treated as replaceable for routine viewing.
Preservation of CVD is therefore less glamorous than format archaeology and more like careful CD-XA work: protect the Form 2 sectors, refuse mounted-file illusions, measure 352 versus 480, and keep private subtitle streams attached to the program stream. Identification follows measurement; nostalgia labels on the jewel case do not. When later catalogue posts ask whether a survivor is “true period CVD,” the answer should be readable from this package-width, subtitle flavour, press-versus-burn medium, and any selective playback failures-without inventing titles the disc face never carried.
The same discipline applies when a disc arrives as a BIN/CUE from someone else. Re-run vcd-info and ffprobe yourself; verify hashes if the donor provides them; and do not assume their “CVD” label survived a width check. Community encodes from the early 2000s often used SatStorm’s 2,520 kbps half-D1 recipe under an SVCD authoring path-structurally CVD-like, commercially unrelated to 1998 Chinese pressings. Archival notes should say which case you have, in plain language, so the next reader does not merge hobbyist CD-Rs with period Chaoji stock.
Further reading on historic video formats
If you want to learn more about historic video formats, get The History of Physical Video Formats from the Frontier by Stephen Driver on Amazon:
