It doesn’t have any well-defined channel mappings for >6 channels, and nothing decodes it correctly. No, not even ffdshow. I know I released an encode using it once, but you know, I WAS DOING IT WRONG.
How to fix these retarded files, in case you need to:
- Fire up graphedit (or your favorite dshow graph manipulation tool) and drop the offending mkv on it.
- Delete everything except the source file and the ffdshow audio decoder.
- Go to the ffdshow audio decoder filter properties and enable the channel swapping filter. Map side left and side right to back left and back right respectively, then map back left to LFE and back right to back center (Warning: this was the correct mapping for me, but I’m not sure if your version of ffdshow and/or your specific file will behave the same. When in doubt, use the volume filter’s “solo” buttons and your ears.)
- Make sure the mixer filter is unticked.
- Graph -> insert filters. Add Haali’s Matroska muxer (or WavDest (or the AVI muxer plus the file writer), if the output will be smaller than 4GB) to the graph and connect ffdshow’s output pin to it.
- Optionally, if you want to downmix, you need to do so using an additional instance of the ffdshow audio processor filter, because for some reason using both channel swap and the mixer filter together doesn’t seem to work.
- Play the graph.
- Be mean to CoalGirls on the internet.
- Profit.
Comments (17)
even using eac3to v3.24 FLAC can’t do a correct mapping?
Wouldn’t #8 alone be sufficient?
@2
it would, but it’s not efective
Hey Fluff, how do you feel on this whole Hi10P business?
@ZerOscuro
I don’t think it’s an encode issue. I used eac3to to compress 6.1 THD to FLAC. I then used dbPoweramp with the split channel plugin and it correctly decoded each channel to mono WAV files.
It seems to be a decoder issue. If that’s the case, it’s simpler to write a preset for ffdshow so that when it detects “flac” and “7 channel” to automatically apply the channel swaps.
@4
probably like this http://mod16.org/hurfdurf/?p=178#comment-30187
@6
No, seriously, I’d be very interested to hear thefluff’s views on Hi10p.
Re: Hi10P: useful but the decoder support is not widespread enough to switch completely yet.
MadFlac supports 6.1 FLAC.
For 6.1 (or any custom mapping for that matter ), you must use –channel-map=none when using flac binary, and you must have wav file with proper WAVEFORMATEXTENSIBLE. Then everything will work like a charm.
All self respecting decoder chains work fine these days, even ffdshow-tryout got fixed around month ago with reference to channel masks.
[what is retarded though is using flac in the first place, for anime releases in particular; Vorbis/aoTuV please next time ? And at normal settings, not some retarded -q10.0; people seem to be stuck in late 90s thinking they’re still using bladeenc … ]
You should probably post a redaction at this point.
It seems like you were using a broken flac decoder. The actual files were fine.
Lav audio or madflac probably would have played them correctly.
All known FLAC decoders were broken at the time of writing. FLAC still doesn’t have a specification for channel ordering for >6 channels, so the recommendation stands. The coincidence that most decoders now happen to do things in the same way as most encoders does not mean that the format is stable.
WAVEFORMATEXTENSIBLE channel ordering is pretty much _the_ standard that everyone uses, by the way, but as mentioned by #10 FLAC does not use it by default, nor is it specified as the standard way of ordering channels in FLAC.
I stand corrected.
So what do you suggest people do for 7 and 8 channel lossless audio?
You pretty much have to use dts-hd ma i suppose.
or i suppose wavpack could work too.
No body cares about >6 channels surround so fuck it
For those of you who don’t want to fire up graphedit, you can just use the Mixer in ffdshow, if you understand how to enter matrix values. Essentially the SideL contains BackL audio, and SideR contains BackR audio, so put a 1 for SideL|BackL’ and SideR|BackR’ boxes. BackL and BackR column should be all zeroes. Here’s the matrix for those who want to downmux to Dolby Logic Pro II:
Output – L, C, R, SideL, SideR, BackL, BackC, BackR, LFE
L’ – 1, 0.707, 0, -0.866, -0.5, 0, -0.707, 0, 0.707
R’ – 0, 0.707, 1, 0.5, 0.866, 0, 0.707, 0, 0.707