Enth
  Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
  Цитата:|  Ни кто, в этой строке, сам с собой ни чем не занимается, а происходит перенос в новый клип.  |      Ну, что бы получить стерео центр + LFE.       Цитата:    Или как, по вашему правильно микшировать LFE в стерео? Сначала фронт + центр, потом к ним саб? Или как в вашем примере - сначала центр + LFE и потом к ним фронт?      Вы сами понимаете хоть чего пишите? Я нет.  |         Это тот случай, когда перемена слагаемых дает разный результат. И дело в том, что вы не просто цифры складываете, а звуковой сигнал. По этому каждый из этих вариантов микширования, на первый взгляд одинаковых, дадут разный результат.      (flr+fcc)+lfe не равно (flr+lfe)+fcc и соответственно не равно (fcc+lfe)+flr      В каждом из этих варинтов будет получен разный звук. Вот об этом я писал. Скобки, естественно, для того, что бы подчеркнуть, что с чем микшируется в первую очередь в конкретном примере.         Готовые матрицы микширования для AviSynth:    Код:    function Dmix3Stereo(clip a) { # 3 Channels L,R,C or L,R,S     flr = GetChannel(a, 1, 2)     fcc = GetChannel(a, 3, 3)     return MixAudio(flr, fcc, 0.5858, 0.4142)   }      function Dmix3Dpl(clip a) {    # 3 Channels only L,R,S     flr = GetChannel(a, 1, 2)     sl  = GetChannel(a, 3)     sr  = Amplify(sl, -1.0)     blr = MergeChannels(sl, sr)     return MixAudio(flr, blr, 0.5858, 0.4142)   }      function Dmix4lStereo(clip a) { # 4 Channels L,R,C + LFE     flr = GetChannel(a, 1, 2)     fcc = GetChannel(a, 3, 3)     lfe = GetChannel(a, 4, 4)     clf = MixAudio(fcc, lfe, 0.2929, 0.2929)     return MixAudio(flr, clf, 0.4142, 1.0)   }      function Dmix4qStereo(clip a) { #4 Channels Quadro L,R,SL,SR     flr = GetChannel(a, 1, 2)     blr = GetChannel(a, 3, 4)     return MixAudio(flr, blr, 0.5, 0.5)   }      function Dmix4qDpl(clip a) {   # 4 Channels Quadro L,R,SL,SR     flr = GetChannel(a, 1, 2)     bl  = GetChannel(a, 3)     br  = GetChannel(a, 4)     sl  = MixAudio(bl, br, 0.2929, 0.2929)     sr  = MixAudio(bl, br, -0.2929, -0.2929)     blr = MergeChannels(sl, sr)     return MixAudio(flr, blr, 0.4142, 1.0)   }      function Dmix4qDpl2(clip a) {  # 4 Channels Quadro L,R,SL,SR     flr = GetChannel(a, 1, 2)     bl  = GetChannel(a, 3)     br  = GetChannel(a, 4)     sl  = MixAudio(bl, br, 0.3714, 0.2144)     sr  = MixAudio(bl, br, -0.2144, -0.3714)     blr = MergeChannels(sl, sr)     return MixAudio(flr, blr, 0.4142, 1.0)   }      function Dmix4sStereo(clip a) {# 4 Channels L,R,C,S     flr = GetChannel(a, 1, 2)     fcc = GetChannel(a, 3, 3)     lrc = MixAudio(flr, fcc, 0.4142, 0.2929)     blr = GetChannel(a, 4, 4)     return MixAudio(lrc, blr, 1.0, 0.2929)   }      function Dmix4sDpl(clip a) {   # 4 Channels L,R,C,S     flr = GetChannel(a, 1, 2)     fcc = GetChannel(a, 3, 3)     lrc = MixAudio(flr, fcc, 0.4142, 0.2929)     sl  = GetChannel(a, 4)     sr  = Amplify(sl, -1.0)     blr = MergeChannels(sl, sr)     return MixAudio(lrc, blr, 1.0, 0.2929)   }      function Dmix5Stereo(clip a) { # 5 Channels L,R,C,SL,SR -> Stereo     flr = GetChannel(a, 1, 2)     fcc = GetChannel(a, 3, 3)     lrc = MixAudio(flr, fcc, 0.3694, 0.2612)     blr = GetChannel(a, 4, 5)     return MixAudio(lrc, blr, 1.0, 0.3694)   }      function Dmix5Dpl(clip a) {    # 5 Channels L,R,C,SL,SR -> dpl     flr = GetChannel(a, 1, 2)     fcc = GetChannel(a, 3, 3)     lrc = MixAudio(flr, fcc, 0.3205, 0.2265)     bl  = GetChannel(a, 4)     br  = GetChannel(a, 5)     sl  = MixAudio(bl, br, 0.2265, 0.2265)     sr  = MixAudio(bl, br, -0.2265, -0.2265)     blr = MergeChannels(sl, sr)     return MixAudio(lrc, blr, 1.0, 1.0)   }      function Dmix5Dpl2(clip a) {  # 5 Channels L,R,C,SL,SR -> dpl II     flr = GetChannel(a, 1, 2)     fcc = GetChannel(a, 3, 3)     lrc = MixAudio(flr, fcc, 0.3254, 0.2301)     bl  = GetChannel(a, 4)     br  = GetChannel(a, 5)     sl  = MixAudio(bl, br, 0.2818, 0.1627)     sr  = MixAudio(bl, br, -0.1627, -0.2818)     blr = MergeChannels(sl, sr)     return MixAudio(lrc, blr, 1.0, 1.0)   }      function Dmix6Stereo(clip a) {     flr = GetChannel(a, 1, 2)     fcc = GetChannel(a, 3, 3)     lrc = MixAudio(flr, fcc, 0.3694, 0.2612)     blr = GetChannel(a, 5, 6)     return MixAudio(lrc, blr, 1.0, 0.3694)   }      function Dmix6Dpl(clip a) {     flr = GetChannel(a, 1, 2)     fcc = GetChannel(a, 3, 3)     lrc = MixAudio(flr, fcc, 0.3205, 0.2265)     bl  = GetChannel(a, 5)     br  = GetChannel(a, 6)     sl  = MixAudio(bl, br, 0.2265, 0.2265)     sr  = MixAudio(bl, br, -0.2265, -0.2265)     blr = MergeChannels(sl, sr)     return MixAudio(lrc, blr, 1.0, 1.0)   }      function Dmix6Dpl2(clip a) {     flr = GetChannel(a, 1, 2)     fcc = GetChannel(a, 3, 3)     lrc = MixAudio(flr, fcc, 0.3254, 0.2301)     bl  = GetChannel(a, 5)     br  = GetChannel(a, 6)     sl  = MixAudio(bl, br, 0.2818, 0.1627)     sr  = MixAudio(bl, br, -0.1627, -0.2818)     blr = MergeChannels(sl, sr)     return MixAudio(lrc, blr, 1.0, 1.0)   }      function Dmix6StereoLfe(clip a) {     flr = GetChannel(a, 1, 2)     fcc = GetChannel(a, 3)     lfe = GetChannel(a, 4)     lfc = MixAudio(fcc, lfe, 0.2071, 0.2071)     mix = MergeChannels(lfc, lfc)     lrc = MixAudio(flr, mix, 0.2929, 1.0)     blr = GetChannel(a, 5, 6)     return MixAudio(lrc, blr, 1.0, 0.2929)   }      function Dmix6StereoLfe2(clip a) {     flr = GetChannel(a, 1, 2)     fcc = GetChannel(a, 3, 3)     lrc = MixAudio(flr, fcc, 0.2929, 0.2071)     lfe = GetChannel(a, 4, 4)     lrc = MixAudio(lrc, lfe, 1.0, 0.2071)     blr = GetChannel(a, 5, 6)     return MixAudio(lrc, blr, 1.0, 0.2929)   }      function Dmix6DplLfe(clip a) {     flr = GetChannel(a, 1, 2)     fcc = GetChannel(a, 3, 3)     lrc = MixAudio(flr, fcc, 0.2613, 0.1847)     lfe = GetChannel(a, 4, 4)     lrc = MixAudio(lrc, lfe, 1.0, 0.1847)     bl  = GetChannel(a, 5)     br  = GetChannel(a, 6)     sl  = MixAudio(bl, br, 0.1847, 0.1847)     sr  = MixAudio(bl, br, -0.1847, -0.1847)     blr = MergeChannels(sl, sr)     return MixAudio(lrc, blr, 1.0, 1.0)   }      function Dmix6Dpl2Lfe(clip a) {     flr = GetChannel(a, 1, 2)     fcc = GetChannel(a, 3, 3)     lrc = MixAudio(flr, fcc, 0.2646, 0.1870)     lfe = GetChannel(a, 4, 4)     lrc = MixAudio(lrc, lfe, 1.0, 0.1870)     bl  = GetChannel(a, 5)     br  = GetChannel(a, 6)     sl  = MixAudio(bl, br, 0.2291, 0.1323)     sr  = MixAudio(bl, br, -0.1323, -0.2291)     blr = MergeChannels(sl, sr)     return MixAudio(lrc, blr, 1.0, 1.0)   }     |            Compands для SOX, написанные по мотивам Dolby Digital:    Код:                # film light fast    SoxFilter("compand 0.01,1.00 -90,-90,-70,-64,-53,-47,-41,-41,-21,-21,-10,-16,0,-15 0 0 0.054")      # film light slow   SoxFilter("compand 0.10,3.00 -90,-90,-70,-64,-53,-47,-41,-41,-21,-21,-10,-16,0,-15 0 0 0.054")      # music light fast   SoxFilter("compand 0.01,1.00 -90,-90,-70,-58,-65,-53,-41,-41,-21,-21,0,-11 0 0 0.054")      # music light slow   SoxFilter("compand 0.10,3.00 -90,-90,-70,-58,-65,-53,-41,-41,-21,-21,0,-11 0 0 0.054")      #film standard fast   SoxFilter("compand 0.01,1.00 -90,-90,-70,-64,-43,-37,-31,-31,-21,-21,0,-20 0 0 0.054")      #film standard slow   SoxFilter("compand 0.10,3.00 -90,-90,-70,-64,-43,-37,-31,-31,-21,-21,0,-20 0 0 0.054")      # music standard fast   SoxFilter("compand 0.01,1.00 -90,-90,-70,-58,-55,-43,-31,-31,-16,-21,0,-20 0 0 0.054")      # music standard slow   SoxFilter("compand 0.10,10.0 -90,-90,-70,-58,-55,-43,-31,-31,-16,-21,0,-20 0 0 0.054")      # speech fast   SoxFilter("compand 0.01,0.20 -90,-90,-70,-55,-50,-35,-31,-31,-16,-21,0,-20 0 0 0.054")      # speech slow   SoxFilter("compand 0.10,1.00 -90,-90,-70,-55,-50,-35,-31,-31,-16,-21,0,-20 0 0 0.054")     |         Пример готового скрипта .avs:     Код:    file = "Путь_до\test.mkv"       LoadPlugin("Путь_до\Avisynth\plugins64\LSMASHSource.dll")   video = LWLibavVideoSource(file)   audio = LWLibavAudioSource(file, stream_index=-1, av_sync=true)   AudioDub(video, audio)       LoadPlugin("Путь_до\Avisynth\plugins64\SoxFilter.dll")   # music light fast   SoxFilter("compand 0.01,1.00 -90,-90,-70,-58,-65,-53,-41,-41,-21,-21,0,-11 0 0 0.054")      Dmix6StereoLfe2   function Dmix6StereoLfe2(clip a) {     flr = GetChannel(a, 1, 2)     fcc = GetChannel(a, 3, 3)     lrc = MixAudio(flr, fcc, 0.2929, 0.2071)     lfe = GetChannel(a, 4, 4)     lrc = MixAudio(lrc, lfe, 1.0, 0.2071)     blr = GetChannel(a, 5, 6)     return MixAudio(lrc, blr, 1.0, 0.2929)   }     |       |