I have been asked to enfore a certain level of quality for MP3 files for our web site. So I thought I would write the following script in vb6 (see below). In particular, the resulting mp3 files need to match these settings:
- Codec: MP3 (LAME)
- Channel: Mono
- Bit Rate: 64 kbps
- Encoded Sample Rate: 44.1 kHz
- Resolution: 16 bit
- Audio files should maintain a consistent level of -6dB with peaks not exceeding -1dB
My questions are these:
- Is it possible to right click on a file within windows, select an option to "encode audio for web" then pass the drive, path and filename to the dMCScripting component for use with its AddFromFile method?
- In addition to normalizing, is it possible to raise the peak volume to -1 dB?
- is it possible, via dMCScripting, to display a dialog box for including the title and author in the id3 tag?
- is it possible, via dMCScripting - and without any user input, to automatically include a standard copyright and creative commons licensing information in the id3 tag as well?
Thanks for any suggestions you might have.
John T.
Code:
Private Sub Command1_Click()
' Create dMC Object
Set dMC = CreateObject("dMCScripting.Converter")
' Create Mp3 Object
Set Mp3Settings = CreateObject("dMCScripting.Mp3Settings")
' Set Option (Volume Normalization On)
dMC.VolumeNormalize = True
' Set Option (ID Tag Preservation On)
dMC.PreserveTags = True
' Set Option (Do not delete Source files)
dMC.DeleteSourceFiles = False
' Convert To Same Folder As Original
dMC.ConvertToFolder = False
' Set Output Folder (to C:\Converted Music )
' dMC.ConvertToFolder = True
' dMC.ToFolder = "C:\Converted Music"
' Add My Files to Convert
Call dMC.AddFromFile("C:\Converted Music\AudioFile1.wav")
Call dMC.AddFromFile("C:\Converted Music\AudioFile2.wav")
' Set Mp3Settings: 64kbps 44.1Khz Mono CBR
Call Mp3Settings.Set(64, 44100, 1, 0)
' Convert To MP3 (No option page, Want Overwrite page, Want finished, Want Errors)
Call dMC.GoConversion("Mp3 (Lame)", True, False, False, False)
' Convert To Wave (No option page, Want Overwrite page, Want finished, Want Errors)
' Call dMC.GoConversion("Wave", True, False, False, False)
End Sub