From 299428d943c17f05b67326ddee47c15a5bde3952 Mon Sep 17 00:00:00 2001 From: Andreas Voegele Date: Tue, 12 Jan 2016 00:18:04 +0700 Subject: audio/mkcue: Added (generates cue sheets from a CD TOC). Signed-off-by: Willy Sudiarto Raharjo --- audio/mkcue/fix_msf_offset.diff | 46 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 audio/mkcue/fix_msf_offset.diff (limited to 'audio/mkcue/fix_msf_offset.diff') diff --git a/audio/mkcue/fix_msf_offset.diff b/audio/mkcue/fix_msf_offset.diff new file mode 100644 index 0000000000..ccebb70b02 --- /dev/null +++ b/audio/mkcue/fix_msf_offset.diff @@ -0,0 +1,46 @@ +Description: Don't assume MSF offset is always 150 (#439790) +Author: Martin Michlmayr +Last-Update: 2007-10-21 +Index: mkcue-1/mkcue.cc +=================================================================== +--- mkcue-1.orig/mkcue.cc 2004-10-27 07:20:30.000000000 +0100 ++++ mkcue-1/mkcue.cc 2012-11-10 13:34:34.986131069 +0000 +@@ -12,6 +12,9 @@ + + #include "diskid.h" + ++/* http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=439790 */ ++#define MSF_OFFSET 150 ++ + void + DiskId::ReportError(char *err) + { +@@ -54,16 +57,12 @@ + } + + puts("FILE \"dummy.wav\" WAVE"); +- puts(" TRACK 01 AUDIO"); +- puts(" INDEX 01 00:00:00"); + + #define min(x, y) ((x) < (y) ? (x) : (y)) +- for (track = cdinfo.FirstTrack + 1; ++ for (track = cdinfo.FirstTrack; + track <= min(trackcount, cdinfo.LastTrack); + track++) { +- /* There is frequently (always?) an offset of 150 sectors, so +- * subtract the first track's offset. */ +- cdinfo.FrameOffset[track] -= cdinfo.FrameOffset[1]; ++ cdinfo.FrameOffset[track] -= MSF_OFFSET; + + minutes = seconds = sectors = 0; + sectors = cdinfo.FrameOffset[track] % 75; +@@ -76,6 +75,9 @@ + } + + printf(" TRACK %02d AUDIO\n", track); ++ if (track == 1 && cdinfo.FrameOffset[track] > 0) { ++ printf(" INDEX 00 00:00:00\n"); ++ } + printf(" INDEX 01 %02d:%02d:%02d\n", minutes, seconds, sectors); + } + -- cgit v1.2.3