Page 1 of 2

Channel mapping problem

Posted: Mon Nov 04, 2019 2:12 pm
by momocampo
Hello all,

Well, it's not he first time I must use channel mapper but this time I don't succeed to what I want to do...
I have a 8 channels audio file, I want to encode it and select 1,2,3,4,5 and six channels (exclude 7 and 8) to a stereo mix.
I create a workflow : Monitor folder->av media->channel mapper->h264->delivery
I chose "2 stereo downmixed" in channel mapper and configured channel like that :
1->1 (music)
2->2 (music)
3->3 (speak)
4->4 (nothing)
5->5 (sound)
6->6 (sound)
0->7
0->8
etc...

The final file is stereo but no speak at all. I tried with only 1 to 1, 2 to 2 and 3 to 3 and it's the same result : no speak.

I wonder if I well understand this downmix ? How do you thing I have to do for keep only 6 channels?

Thanks a lot.

Benjamin

Re: Channel mapping problem

Posted: Mon Nov 04, 2019 3:20 pm
by emcodem
Hey Benjamin,
from a very quick research, i believe nothing at all is happining with the "downmix" function.
Is it possible that what you hear in the final file is ch 1 and 2 from the original file? Or do you feel that something is actually "mixed"?

Quickly checking the resulting avisynth script, the line of interest is:
m_clip = GetChannel(m_clip, 1,2,3,4,5,6)
From reading the avisnyth docs, this does not downmix but just return the first 6 channels.

Re: Channel mapping problem

Posted: Mon Nov 04, 2019 3:32 pm
by momocampo
Hello Encodem,

Thanks to help me :)
Well I checked and with a downmix, only channel 1 and 2 is kept. Maybe this function never worked.
Another try with all my 8 channels (comments on 7 and 8) and I only hear a1 and a2....Damn

;)

Re: Channel mapping problem

Posted: Mon Nov 04, 2019 3:59 pm
by emcodem
Yeah, i believe this is a bug. Do you know how to workaround using custom avisynth filter?

Re: Channel mapping problem

Posted: Mon Nov 04, 2019 4:14 pm
by momocampo
Hey of course !!! :lol: :lol: :lol: No absolutely not..... :? :? :?
But I think I should use custom ffmpeg node and make a mapping audio.

EDIT: Damn, it doesn't work...

Re: Channel mapping problem

Posted: Mon Nov 04, 2019 9:58 pm
by admin
Hi,

Sorry but this is a bug and will be addressed.
In this case please avoid the channel mapper. Instead add this custom script (after the decoder) and see if that works:

Import("%s_ffastrans_dir%\Processors\AVS_plugins\mixdown.avs")
m_clip = Dmix6Stereo(m_clip)
Return m_clip


-steinar

Re: Channel mapping problem

Posted: Tue Nov 05, 2019 9:55 am
by momocampo
Hello Steinar,

Ok it works great ! Thank you very much, can you tell me where I can find the other command line if I want for example keep channel 1,2 and 5 and 6 ?

Thanks you very much Boss ;)

Benjamin

Re: Channel mapping problem

Posted: Tue Nov 05, 2019 12:08 pm
by emcodem
Hey Benjamin :-)

if you mean that your resulting audio channels should be like this:
1) downmix left (dowmix from input first 6 channels)
2) downmix right (dowmix from input first 6 channels)
3) input ch 1
4) input ch 2
5) input ch 5
6) input ch 6

This is how the custom avs looks like:

Code: Select all

Import("%s_ffastrans_dir%\Processors\AVS_plugins\mixdown.avs")
one_two = GetChannel(m_clip, 1, 2)
five_six  = GetChannel(m_clip, 5, 6)
downmix = Dmix6Stereo(m_clip)
m_clip = MergeChannels(downmix,one_two,five_six)

Return m_clip

Re: Channel mapping problem

Posted: Tue Nov 05, 2019 1:49 pm
by momocampo
Thanks a lot Encodem,

Just a thing : If i try with keeping channel 3 and 4 and 7 and 8 (exclude 1,2,5,6) to a stereo file it should be :

Import("%s_ffastrans_dir%\Processors\AVS_plugins\mixdown.avs")
three_four = GetChannel(m_clip, 3, 4)
seven_eight = GetChannel(m_clip, 7, 8)
downmix = Dmix6Stereo(m_clip)
m_clip = MergeChannels(downmix,three_four,seven_eight)

Return m_clip

But I think I have not 7 and 8 channels...Ok I will try again to find
(But I really like to understand how to do different configuration)
;)

Re: Channel mapping problem

Posted: Tue Nov 05, 2019 2:39 pm
by emcodem
Hm, i don't 100% get what your output should be: you say you want to "keep" 3,4,7,8 but your output file is a "stereo" file, so it only has 2 channels?

Let me explain each line of the avisynth script

Code: Select all

three_four = GetChannel(m_clip, 3, 4) # extract 2 channels from input into variable named three_four
seven_eight = GetChannel(m_clip, 7, 8) # extract 2 channels from input into variable named  seven_eight
downmix = Dmix6Stereo(m_clip) # create 2 channels into variable named downmix
m_clip = MergeChannels(downmix,three_four,seven_eight) # this will line-up all channels in the specified variables (downmix,three_four,seven_eight) and therefore create a clip with 6 channels