The FLAC format specification never defined the semantics of 7- and
8-channel files, which has caused some pain for some years now.

Attached is a patch to define them. I don't know if this follows
"follows SMPTE/ITU-R recommendations," but it follows common tool
practice. I chose the set of surround speaker designations used by home
theatre systems, which is the same set used by the Vorbis and Opus mappings.

The ordering follows the WAVE file format, rather than the Vorbis order
of other Xiph codecs. This matches what flac has done for the existing
mappings, and it allegedly what current tools like libavformat are doing.

Please consider applying this patch to have a definitive statement on
the channel map for implementors to follow.

 -r

P.S. This doesn't update the flac command-line tool to enforce this
mapping. That needs to be done as well, along with test files.
>From d3c3c44b26a2ed6c89a1051d33af962c87683c53 Mon Sep 17 00:00:00 2001
From: Ralph Giles <gi...@xiph.org>
Date: Fri, 21 Sep 2012 14:12:09 -0700
Subject: [PATCH] Document a channel mapping for 7 and 8 channel audio.

The FLAC spec hasn't previously documented channel
definitions for 7 and 8 channel files, making it
difficult to encode 6.1 an 7.1 audio. This makes
that definition.

The choice is based on popular surround configurations
for home theatre and gaming, using the Microsoft
WAVEX order, which most tools use internally.
---
 format.html |   10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/format.html b/format.html
index 59ecd73..3cd8be2 100644
--- a/format.html
+++ b/format.html
@@ -1248,11 +1248,11 @@
                                                <li>1 channel: mono</li>
                                                <li>2 channels: left, right</li>
                                                <li>3 channels: left, right, 
center</li>
-                                               <li>4 channels: left, right, 
back left, back right</li>
-                                               <li>5 channels: left, right, 
center, back/surround left, back/surround right</li>
-                                               <li>6 channels: left, right, 
center, LFE, back/surround left, back/surround right</li>
-                                               <li>7 channels: not defined</li>
-                                               <li>8 channels: not defined</li>
+                                               <li>4 channels: front left, 
front right, back left, back right</li>
+                                               <li>5 channels: front left, 
front right, front center, back/surround left, back/surround right</li>
+                                               <li>6 channels: front left, 
front right, front center, LFE, back/surround left, back/surround right</li>
+                                               <li>7 channels: front left, 
front right, front center, LFE, back center, side left, side right</li>
+                                               <li>8 channels: front left, 
front right, front center, LFE, back left, back right, side left, side 
right</li>
                                        </ul>
                                </li>
                                <li>
-- 
1.7.9.6 (Apple Git-31.1)

_______________________________________________
flac-dev mailing list
flac-dev@xiph.org
http://lists.xiph.org/mailman/listinfo/flac-dev

Reply via email to