Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
15th December 2009, 03:31 | #63 | Link |
Registered User
Join Date: Jul 2009
Posts: 9
|
Thanks for the post raquete. I will give it a try. Im trying to encode an avi with surround sound... Does this mean the sound will be close to 5.1 Dolby Digital??
My past encodings have all been stereo and the programs I have are Adobe Audition, BeLight, BeSweet, GraphEdit, Hypercube Trascoder, CCE Encoder, AviSynth and Spruce DVD Maestro. I am not expert in using them but I know quite the basics of each. I am hoping to find a very straight forward guide to converting stereo to surround, converting to AC3 then encoding to DVD.... without the hassle of buying subsidiary programs. |
8th April 2013, 06:27 | #64 | Link |
Warm and fuzzy
Join Date: Apr 2010
Location: Moscow, Russia
Posts: 201
|
Algorithm to convert stereo to 5.1 audio.
. Code:
# # Algorithm to convert real stereo audio clip to 5.1 audio clip # # Input audio clip must be minimum 96 kHz / 24 bits integer real stereo audio clip # # All Temporary variables of audio clip in algorithm must be 32 bits integer stereo or mono audio clip # # All Output audio clips must be 24 bits integer mono audio clips # Input # Input must be stereo audio signal 96 kHz / 24 bits Input = Normalize(Input, 1.0) # Normalize audio signal Input to +0dB LR = Normalize(Input, 0.251) # Normalize audio signal LR to -12dB, stereo LR = ConvertAudioTo32bit(LR) # Resolution LR 32bits, -12dB, stereo LRm = FFT_HighPass_Filter(LR, 200) # FAST FOURIER TRANSFORM High Pass Filter "/----" 200Hz to LRm, -12dB, stereo LRm = ConvertAudioTo32bit(LRm) # Resolution LRm 32 bits, -12dB, stereo # Subwoofer channel # LFE = MixAudio(LR, LRm, 1.0, -1.0) # LFE = LR - LRm, 32 bits, stereo # or maybe so or together two lines #LFE = FFT_LowPass_Filter(LR, 200) # FAST FOURIER TRANSFORM Low Pass Filter "----\" 200Hz to LFE, -12dB, stereo LFE = ConvertAudioTo32bit(LFE) # Resolution LFE 32 bits, -12dB, stereo LFE = AmplifyDB(LFE, +9) # Amplify relative audio signal LFE on +9dB (-12dB +9dB), 32 bits, stereo LFEl = GetChannels(LFE, 1) # Get left audio channel from audio signal LFE, 32 bits, stereo LFEl = ConvertToMono(LFEl) # Convert audio signal LFEl, 32 bits, mono LFEr = GetChannels(LFE, 2) # Get right audio channel from audio signal LFE, 32 bits, stereo LFEr = ConvertToMono(LFEr) # Convert audio signal LFEr, 32 bits, mono LFE = MixAudio(LFEl, LFEr, 0.5, 0.5) # LFE = LFEl + LFEr, 32 bits, stereo LFE = ConvertToMono(LFE) # Convert audio signal LFE, 32 bits, mono LFE = SHIFTPHASE(LFE, +90, 200) # Shift LFE phase audio signal to +90 grad, frequency 200Hz, 32 bits, mono LFE = ConvertAudioTo24bit(LFE) # Resolution LFE 24 bits, mono # Central channel # C = Normalize(LRm, 0.707) # Normalize audio signal C to -3dB, 32 bits, stereo C = ConvertAudioTo32bit(C) # Resolution C 32 bits, -3dB, stereo Cl = GetChhanel(C, 1) # Get left audio channel from audio signal C, 32 bits, stereo Cl = ConvertToMono(Cl) # Convert audio signal Cl, 32 bits, mono Cr = GetChhanel(C, 2) # Get right audio channel from audio signal C, 32 bits, stereo Cr = ConvertToMono(Cr) # Convert audio signal Cr, 32 bits, mono C = MixAudio(Cl, Cr, 0.5, 0.5) # C = 0.707 * Cl + 0.707 * Cr, 32 bits, mono C = ConvertToMono(C) # Convert audio signal C, 32 bits, mono C = AmplifyDB(C, +3) # Amplify relative audio signal C on +3dB, 32 bits, mono C = ConvertAudioTo24bit(C) # Resolution C 24 bits, mono # Front channels preliminary # Lc = GetChhanel(LRm, 1) # Get left audio channel from audio signal LRm, -12dB, 32 bits, stereo Lc = ConvertToMono(Lc) # Convert audio signal Lc, -12dB, 32 bits, mono Rc = GetChhanel(LRm, 2) # Get right audio channel from audio signal LRm, -12dB, 32 bits, stereo Rc = ConvertToMono(Rc) # Convert audio signal Rc, -12dB, 32 bits, mono NLc1 = MixAudio(Lc, Rc, 0.99, -0.33) # NLc1 = 1.5 * Lc - 0.5 * Rc, 32 bits, mono NRc1 = MixAudio(Rc, Lc, 0.99, -0.33) # NRc1 = 1.5 * Rc - 0.5 * Lc, 32 bits, mono LfRf = MergeChannels(NLc1, NRc1) # Merge channels NLc1, NRc1 to stereo singal LfRf, 32 bits, stereo LfRf = ConvertAudioTo32bit(LfRf) # Resolution LfRf 32 bits, -3dB, stereo LfRf = AmplifyDB(LfRf, +3.61) # Amplify relative audio signal LfRf on +3.61dB, 32 bits, stereo # Rear channels # LRm_reverb = REVERB(LRm, "Concert Hall Light") # Reverberation "Concert Hall Light, No combine source Left and Right", 32 bits stereo LRm_reverb = ConvertAudioTo32bit(LRm_reverb) # Resolution LRm_reverb 32 bits, stereo LRm_reverb = MixAudio(LRm_reverb, LRm, 1.0, -1.0) # LRm_reverb = LRm_reverb - LRm, 32 bits, stereo LRm_reverb = AmplifyDB(LRm_reverb, +6) # Amplify relative audio signal LRm_reverb on +6dB, 32 bits, stereo Ls = GetChhanel(LRm_reverb, 1) # Get left audio channel from audio signal LRm_reverb, 32 bits, stereo Ls = ConvertToMono(Ls) # Convert audio signal Ls, 32 bits, mono Ls = ConvertAudioTo24bit(Ls) # Resolution Ls 24 bits, mono Rs = GetChhanel(LRm_reverb, 2) # Get right audio channel from audio signal LRm_reverb, 32 bits, stereo Rs = ConvertToMono(Rs) # Convert audio signal Rs, 32 bits, mono Rs = ConvertAudioTo24bit(Rs) # Resolution Rs 24 bits, mono # Front channels # LfRf = MixAudio(LfRf, LRm_reverb, 1.0, -1.0) # LfRf = LfRf - LRm_reverb, 32 bits, stereo Lf = GetChhanel(LfRf, 1) # Get left audio channel from audio signal LfRf, 32 bits, stereo Lf = ConvertToMono(Lf) # Convert audio signal Lf, 32 bits, mono Lf = ConvertAudioTo24bit(Lf) # Resolution Lf 24 bits, mono Rf = GetChhanel(LfRf, 2) # Get right audio channel from audio signal LfRf, 32 bits, stereo Rf = ConvertToMono(Rf) # Convert audio signal Rf, 32 bits, mono Rf = ConvertAudioTo24bit(Rf) # Resolution Rf 24 bits, mono # Output audio clip 5.1 # Sound51 = MergeChannels(Lf, Rf, C, LFE, Ls, Rs) # 5.1 audio clip LPCM, MLP, 24 bits # In case of standard coefficients of Downmix matrix from the channels Lf, Rf, C, LFE, Ls, Rs received here, # initial stereo signal shall be recovered with a margin error less than 1%, and # this 1% percent has nothing in common with non-linear distortions, and # represents only crosstalk attenuations between channels (in the terms DIN 45500).
__________________
Warm and fuzzy (white and fluffy) Last edited by Jenyok; 8th April 2013 at 06:50. |
|
|