<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
Le 19-12-19 à 04 h 55, Emily Bowman a écrit :<br>
<blockquote type="cite"
cite="mid:CAGSVXPRdgeHDhkfDkzGPyZ9_rMSHF8W+yPca-VmKpDk7RSSDhw@mail.gmail.com">
<div dir="ltr">Unfortunately, ambisonics aren't exposed in opusenc
yet, thus the trouble. They're an API-only feature, but it's a
good time to discuss what such a command-line interface would
look like, notably: how to specify multiple streams & stream
order, select the mapping family, coupled channels, and how to
specify the matrix (for family 3). Likewise, there's no
multistream support at the moment, so two birds might be felled
with one push. I have ideas, but I've never used ambisonics and
really don't know what the use case would look like.<br>
</div>
</blockquote>
<p>The simplest use case is to include all channels as uncoupled, as
in the original uncompressed file; this is what I did 5 years ago
for a personal project, by modifying opusenc to specify 255 as the
mapping family for a 3-channel file (a first order horizontal-only
stream); the opus decoder should obviously not consider an
ambisonics stream as a "surround" stream, and not try to decode it
as an ambisonics stream either (because ambisonics decoding is
handled by the software using the opus decoded stream).<br>
</p>
<p>What can be done easily now is specify a mapping family of 2 when
encoding with the latest ffmpeg and the opus library; ffmpeg does
not accept a mapping family of 3. But I don't understand the
difference between mapping family 2 and 255; what they mean to me
is "uncoupled channels". That simplest use case also implies that
no ambisonics decoding occurs in the opus decoder. So it could be
that, as is, the opus encoder is ready for this simple use case
(like 5 years ago)... <br>
</p>
<p>What's also important is to preserve the phases of all channels;
does the opus encoder (and decoder) preserve phases of all 16
channels with an uncoupled encoded stream?</p>
<p>Marc</p>
<blockquote type="cite"
cite="mid:CAGSVXPRdgeHDhkfDkzGPyZ9_rMSHF8W+yPca-VmKpDk7RSSDhw@mail.gmail.com"><br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Wed, Dec 18, 2019 at 10:00
AM Marc Lavallée <<a href="mailto:marc@hacklava.net"
moz-do-not-send="true">marc@hacklava.net</a>> wrote:<br>
</div>
<blockquote class="gmail_quote">
<div>
<p>Le 19-12-18 à 12 h 29, Marc Lavallée a écrit :<br>
</p>
<blockquote type="cite">
<p>Hi Andrew,</p>
<p>I suspect that the configure option should be
enable-ambisonics (instead of enable_ambisonics), but
for each of opus, libopusenc, opusfile and opus-tools
git repos (on master branch), when I try "./configure
--enable-ambisonics", I get this error message:</p>
<p>configure: WARNING: unrecognized options:
--enable-ambisonics</p>
</blockquote>
<p>I found that the --enable-ambisonics options is in opus
1.1.3, but no longer in 1.3 versions; starting with
version 1.3-rc2, support for ambisonics is enabled by
default, but I don't know how to use it.<br>
</p>
<p>I recompiled everything using opus 1.1.3 with the
--enable-ambisonics option, but opusenc don't offer an
option for mapping families.</p>
<p>It's all very confusing.<br>
</p>
<blockquote type="cite">
<p>Thanks for your help.<br>
</p>
<p>Marc<br>
</p>
<div>Le 19-12-18 à 11 h 52, Andrew Allen a écrit :<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div dir="ltr">Hi Marc,
<div><br>
</div>
<div>In order to use the ambisonics API, if you
haven't already, you will need to activate the
enable_ambisonics build flag during configuration.</div>
<div>Then, when encoding the file, make sure to
manually select mapping family 3 since opus does
not auto-detect ambisonic files.</div>
<div><br>
</div>
<div>Let me know if you have any questions!</div>
<div><br>
</div>
<div>Cheers,</div>
<div>Andrew</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Tue, Dec 17,
2019 at 7:16 PM Marc Lavallée <<a
href="mailto:marc@hacklava.net" target="_blank"
moz-do-not-send="true">marc@hacklava.net</a>>
wrote:<br>
</div>
<blockquote class="gmail_quote">I compiled the
latest (git master) of opus, libopusenc, opusfile
and<br>
opus-tools:<br>
<br>
$ opusenc --version<br>
opusenc opus-tools 0.2-8-g4976421 (using libopus
1.3.1-4-gad8fe90d)<br>
<br>
I tried to encode a 3rd order Ambisonics wav file
with the standard<br>
Ambix (ACN-SN3D) format; opusinfo is reporting :<br>
<br>
Streams: 16, Coupled: 0<br>
Channel Mapping Family: 255 Map: [0, 1, 2, 3,
4, 5, 6, 7, 8, 9, 10,<br>
11, 12, 13, 14, 15]<br>
<br>
How to encode the file so that the Mapping Family
is 3, as suggested<br>
here ? : <a
href="https://people.xiph.org/~jm/opus/opus-1.3/"
rel="noreferrer" target="_blank"
moz-do-not-send="true">https://people.xiph.org/~jm/opus/opus-1.3/</a><br>
<br>
Marc<br>
<br>
<br>
_______________________________________________<br>
opus mailing list<br>
<a href="mailto:opus@xiph.org" target="_blank"
moz-do-not-send="true">opus@xiph.org</a><br>
<a
href="http://lists.xiph.org/mailman/listinfo/opus"
rel="noreferrer" target="_blank"
moz-do-not-send="true">http://lists.xiph.org/mailman/listinfo/opus</a><br>
</blockquote>
</div>
</div>
</blockquote>
<br>
<fieldset></fieldset>
<pre>_______________________________________________
opus mailing list
<a href="mailto:opus@xiph.org" target="_blank" moz-do-not-send="true">opus@xiph.org</a>
<a href="http://lists.xiph.org/mailman/listinfo/opus" target="_blank" moz-do-not-send="true">http://lists.xiph.org/mailman/listinfo/opus</a>
</pre>
</blockquote>
</div>
_______________________________________________<br>
opus mailing list<br>
<a href="mailto:opus@xiph.org" target="_blank"
moz-do-not-send="true">opus@xiph.org</a><br>
<a href="http://lists.xiph.org/mailman/listinfo/opus"
rel="noreferrer" target="_blank" moz-do-not-send="true">http://lists.xiph.org/mailman/listinfo/opus</a><br>
</blockquote>
</div>
</blockquote>
</body>
</html>