CD转录报告.md

CD 转录报告 — 《法国·朋友 France·Friends》(CD 面)

流程参照 dl-hub/66-VCD转录/ 的 VCD 转录任务,但这盘是纯音频 CD,不是 VCD——内核 sr 驱动的限制相同(Illegal mode for this track),绕行方式不同:音频用 cdparanoia(它自己走 SCSI 通道),数据盘才需要 SG_IO 原始读取。


一、光盘识别

项目值
介质纯音频 CD(CD-DA),无数据轨
判据READ CD(0xBE) 读 LBA 0/16/100/1000… 全部返回 2352B,且均无同步头/模式字节(纯 PCM)→ 无 ISO9660 数据轨
轨数 / 总长11 轨 / 34:52.7(156,950 帧)
采样44.1 kHz / 16 bit / 立体声(1411 kbps)
可读性0 个坏扇区、0 次 skip、0 次 scratch(cdparanoia -Z 完整校验全过)
CDDB disc id8e082d0b(GNUDB 未收录)
MusicBrainz disc idFVyIQKWpDsSPFFX_DzGOAW8tPdg(未收录)

元数据来源:MusicBrainz 与 GNUDB 都没有这张碟(小厂 1980 年代中法合璧碟,符合预期)。曲目名是从封底照片(用户提供,已转正归档)读出的。


二、产出(01-无损FLAC-按曲目命名/)

命名规则:<轨号>-<英文曲名>(<中文曲名>).flac

#曲目英文名时长体积
01朋友Friends3:18.017.8 MB
02日光机场 · 听海Place De Sun Airport / Listen To The Sea3:52.319.0 MB
03忧郁之河River Of The Blues3:06.818.7 MB
04傻瓜The Fool3:15.019.7 MB
05是你变了吗Have You Changed3:24.315.3 MB
06绝口不提!爱你Stop Saying I Love You3:14.920.0 MB
07流浪到淡水Otala3:06.917.7 MB
08听海Listen To The Sea2:55.117.0 MB
09爱我Love Me Forever3:13.317.4 MB
10孩子气The Childish One3:01.812.8 MB
11用情Giving All My Love2:24.412.4 MB

每轨已写入元数据:album=《法国·朋友 France·Friends》、artist=理查德·克莱德曼(理察·克莱德曼)领衔五位 Delphine 音乐家 + 法国天使之音合唱团、track、date=1985、genre=Instrumental / Chanson。 MD5SUMS.txt 为逐轨 MD5。

完整性验证(11/11 通过)


三、音质验证:音频天花板彻底解决

频谱对比

(上=CD 无损轨 01《朋友》,下=此前网上视频的音轨;同一片段 showspectrum)

CD 无损网上视频音轨
格式44.1 kHz/16 bit FLAC 1411 kbpsAAC 66 kbps
高频延伸满到 22 kHz(21 kHz 处仍有实质能量)8 kHz 以上整片空,10–14 kHz 已是 −68 dB
结论可用于声画合成、可做母版只能凑合听

这正是此前修复项目里"音频没救"的那半——现在救回来了。把本案第 01 轨换进《朋友》修复版,声画就能同时升级。


四、与同专辑 VCD 曲目的关系(封底一并读出)

封底的 VCD 部分 9 首(附赠高画质 VCD,"达芬五大巨星影音写真"):

#曲目备注
01Ballade Pour Adeline 艾德琳的诗(广场)克莱德曼代表作
02Diva 迪娃Avec N. de Angelis
03Forgetting 遗忘All Delphine Artists
04Friends 朋友All Delphine Artists —— 即本次高清修复的那支 MV(合唱版)
05Place De Sun Airport / Listen To The Sea 日光机场 / 听海
06Aquarello 水彩画With Toquinho
07Desperado 亡命之徒
08Piano Concerto No.1 Tchaikovsky 柴可夫斯基第一钢琴协奏曲
09Memory 记忆

⚠️ 重要:VCD 第 04 首《朋友》标注为 "All Delphine Artists"——即合唱版,正是此前从 B 站/优酷拿到的那支 320×240 MV。→ 这张 VCD 就是那支 MV 的母盘,它的画质(MPEG-1 352×288)可能优于网络流传版。建议后续把 VCD 面也转录一次,看能否替换现有 240p 源。


五、技术要点与踩坑

  1. 这台光驱的 TOC/内核驱动不可靠(与 VCD 那盘同因):内核 sr 用 READ(10) 读会报 Illegal mode for this track(ASC 0x64),dmesg 可见;ffmpeg -i /dev/sr0 也直接 I/O error。
  2. 纯音频 CD 反而不需要 SG_IO 原始抓取:cdparanoia 自己走 SCSI 通道,-Z 完整校验一把过。VCD 那种 Form-2 数据扇区才必须手写 READ CD。
  3. cdparanoia 是唯一可靠工具(本机原本没装,已 apt install):cdparanoia -Q 读 TOC、-Z 带完整校验抓轨。
  4. DSH 机没有 numpy/scipy:写的"音频内容比对"脚本(自相似矩阵法,用于无元数据时猜曲目)改为纯标准库 FFT 实现,避免装依赖。
  5. 封底照片方向:用户上传的是 2680×5760 竖拍图,需逆时针旋转 90°(transpose=2)才是正的;顺时针反而倒置。
  6. 抓轨期间关闭内核轮询(events_poll_msecs=-1)可避免 udisks/播放器抢设备。

六、复现

# 读 TOC(内核/ffmpeg 都不可用,用 cdparanoia 或 SG_IO)
cdparanoia -Q -d /dev/sr0
sudo python3 99-脚本/cd_toc2.py /dev/sr0        # SG_IO READ TOC(绕开内核)
sudo python3 99-脚本/cd_probe.py /dev/sr0       # 逐 LBA 判介质/扇区类型

# 逐轨无损转录(含完整校验)+ 编码 FLAC
bash 99-脚本/rip_cd.sh <输出目录> 1 11
# 命名 / 写元数据 / 校验 / MD5
bash 99-脚本/finalize_cd.sh

# 无元数据时可做内容比对(视频歌曲 ↔ CD 各轨)
python3 99-脚本/match_video_to_cd.py --video <视频> --cd-dir <FLAC目录>

附:目录结构

68-CD转录/
├── 01-无损FLAC-按曲目命名/     11 轨 FLAC + MD5SUMS.txt(188 MB)
├── 99-脚本/                    rip_cd.sh / finalize_cd.sh / cd_toc2.py / cd_probe.py / cd_discid.py
├── 对比图-频谱-CD无损-vs-视频音轨.png
├── 封底照片-原始.jpg / 封底照片-已转正.jpg / 封底-CD曲目区-放大.png
└── 本报告
下载此文件