RecordingfromCD




Public Sub RecordWave(TrackNum As Integer, Filename As String)
' Tracknum: track to record

' Filename: file to save wave as

On Local Error Resume Next
Dim i As Long, RS As String, cb As Long, t#
RS = Space$(128)
i = mciSendString("stop cdaudio", RS, 128, cb)
i = mciSendString("close cdaudio", RS, 128, cb)
Kill Filename
RS = Space$(128)
i = mciSendString("status cdaudio position track " & TrackNum, RS, 128, cb)
i = mciSendString("open cdaudio", RS, 128, cb)
i = mciSendString("set cdaudio Time Format milliseconds", RS, 128, cb)
i = mciSendString("play cdaudio", RS, 128, cb)
i = mciSendString("open New Type waveaudio Alias capture", RS, 128, cb)
i = mciSendString("record capture", RS, 128, cb)

t# = Timer + 1: Do Until Timer > t#: DoEvents: Loop

i = mciSendString("save capture " & Filename, RS, 128, cb)
i = mciSendString("stop cdaudio", RS, 128, cb)
i = mciSendString("close cdaudio", RS, 128, cb)

End Sub

'The method Is quite easy:

'

'1) Stop everything In the CD drive

'2) Start playing track

'3) Record a New wave With the information from the CD (note: it also records MIDI And microphone sounds: In fact anything coming out of the speakers)

'4) Save the wave file

'5) Stop the CD again










( recordingfromcd.html )- by Paolo Puglisi - Modifica del 17/12/2023