Displaying 20 results from an estimated 20 matches for "opus_have_opus_projection_h".
2018 Mar 19
3
[PATCH] Support for Ambisonics
..._encoder_ctl() can also be removed
by adding another ctl() macro (like _oge_ctl()) with an extra argument.
In the case of OPUS_MULTISTREAM_GET_ENCODER_STATE_REQUEST, you can
simply use _oge_ctl(enc->st,
OPUS_MULTISTREAM_GET_ENCODER_STATE(stream_id, value))
3) On libopus itself, why "#define OPUS_HAVE_OPUS_PROJECTION_H 9000"
instead of just "#define OPUS_HAVE_OPUS_PROJECTION_H"?
Cheers,
Jean-Marc
On 03/19/2018 02:53 PM, Drew Allen wrote:
>
> On Mon, Mar 19, 2018 at 11:52 AM Drew Allen <bitllama at google.com
> <mailto:bitllama at google.com>> wrote:
>
> Hello al...
2018 Mar 20
2
[PATCH] Support for Ambisonics
...se_projection(h->channel_mapping))
+ {
+ len=27+(h->channels*(h->nb_streams+h->nb_coupled)*2);
+ }
+ else
+ {
+ len=27+h->channels;
+ }
The fixed part of the header is 19 bytes; where does the 27 come from here?
+struct OpusGenericEncoder {
+ OpusMSEncoder *ms;
+#ifdef OPUS_HAVE_OPUS_PROJECTION_H
+ OpusProjectionEncoder *pr;
+#endif
+ int family;
+};
opus_multistream.h needs to be included for OpusMSEncoder.
opus_projection.h can't be relied upon to include it since
opus_projection.h may not be available.
+OpusGenericEncoder *_oge_surround_create(
+ int Fs, int channels, int cha...
2018 Mar 20
2
[PATCH] Support for Ambisonics
...oge_ctl()) with an extra argument.
> >>> In the case of OPUS_MULTISTREAM_GET_ENCODER_STATE_REQUEST, you can
> >>> simply use _oge_ctl(enc->st,
> >>> OPUS_MULTISTREAM_GET_ENCODER_STATE(stream_id, value))
> >>> 3) On libopus itself, why "#define OPUS_HAVE_OPUS_PROJECTION_H 9000"
> >>> instead of just "#define OPUS_HAVE_OPUS_PROJECTION_H"?
> >>>
> >>> Cheers,
> >>>
> >>> Jean-Marc
> >>>
> >>> On 03/19/2018 02:53 PM, Drew Allen wrote:
> >>>>
> &g...
2018 Mar 20
2
[PATCH] Support for Ambisonics
...gt; >>> In the case of OPUS_MULTISTREAM_GET_ENCODER_STATE_REQUEST, you
> can
> > >>> simply use _oge_ctl(enc->st,
> > >>> OPUS_MULTISTREAM_GET_ENCODER_STATE(stream_id, value))
> > >>> 3) On libopus itself, why "#define OPUS_HAVE_OPUS_PROJECTION_H
> 9000"
> > >>> instead of just "#define OPUS_HAVE_OPUS_PROJECTION_H"?
> > >>>
> > >>> Cheers,
> > >>>
> > >>> Jean-Marc
> > >>>
> > >>> On...
2018 Mar 22
2
[PATCH] Support for Ambisonics
...AM_GET_ENCODER_STATE_REQUEST,
> > you can
> > > >>> simply use _oge_ctl(enc->st,
> > > >>> OPUS_MULTISTREAM_GET_ENCODER_STATE(stream_id, value))
> > > >>> 3) On libopus itself, why "#define
> > OPUS_HAVE_OPUS_PROJECTION_H 9000"
> > > >>> instead of just "#define OPUS_HAVE_OPUS_PROJECTION_H"?
> > > >>>
> > > >>> Cheers,
> > > >>>
> > > >>> Jean-Marc
> > >...
2018 Mar 26
3
[PATCH] Support for Ambisonics
...t; > you can
>>> > > >>> simply use _oge_ctl(enc->st,
>>> > > >>> OPUS_MULTISTREAM_GET_ENCODER_STATE(stream_id, value))
>>> > > >>> 3) On libopus itself, why "#define
>>> > OPUS_HAVE_OPUS_PROJECTION_H 9000"
>>> > > >>> instead of just "#define OPUS_HAVE_OPUS_PROJECTION_H"?
>>> > > >>>
>>> > > >>> Cheers,
>>> > > >>>
>>> > > >>...
2018 Mar 19
0
[PATCH] Support for Ambisonics
...e removed
> by adding another ctl() macro (like _oge_ctl()) with an extra argument.
> In the case of OPUS_MULTISTREAM_GET_ENCODER_STATE_REQUEST, you can
> simply use _oge_ctl(enc->st,
> OPUS_MULTISTREAM_GET_ENCODER_STATE(stream_id, value))
> 3) On libopus itself, why "#define OPUS_HAVE_OPUS_PROJECTION_H 9000"
> instead of just "#define OPUS_HAVE_OPUS_PROJECTION_H"?
>
> Cheers,
>
> Jean-Marc
>
> On 03/19/2018 02:53 PM, Drew Allen wrote:
> >
> > On Mon, Mar 19, 2018 at 11:52 AM Drew Allen <bitllama at google.com
> > <mailto:bitllama...
2018 Mar 20
0
[PATCH] Support for Ambisonics
...ctl() macro (like _oge_ctl()) with an extra argument.
>>> In the case of OPUS_MULTISTREAM_GET_ENCODER_STATE_REQUEST, you can
>>> simply use _oge_ctl(enc->st,
>>> OPUS_MULTISTREAM_GET_ENCODER_STATE(stream_id, value))
>>> 3) On libopus itself, why "#define OPUS_HAVE_OPUS_PROJECTION_H 9000"
>>> instead of just "#define OPUS_HAVE_OPUS_PROJECTION_H"?
>>>
>>> Cheers,
>>>
>>> Jean-Marc
>>>
>>> On 03/19/2018 02:53 PM, Drew Allen wrote:
>>>>
>>>> On Mon, Mar 19, 2018 at 11:52...
2018 Mar 20
0
[PATCH] Support for Ambisonics
...> argument.
> >>> In the case of OPUS_MULTISTREAM_GET_ENCODER_STATE_REQUEST, you can
> >>> simply use _oge_ctl(enc->st,
> >>> OPUS_MULTISTREAM_GET_ENCODER_STATE(stream_id, value))
> >>> 3) On libopus itself, why "#define OPUS_HAVE_OPUS_PROJECTION_H 9000"
> >>> instead of just "#define OPUS_HAVE_OPUS_PROJECTION_H"?
> >>>
> >>> Cheers,
> >>>
> >>> Jean-Marc
> >>>
> >>> On 03/19/2018 02:53 PM, Drew Allen wrote:
&...
2019 Apr 01
2
API for checking whether the encoder is in DTX (PR #107)
.../* Don't use 4045, it's already taken by OPUS_GET_GAIN_REQUEST */
#define OPUS_SET_PHASE_INVERSION_DISABLED_REQUEST 4046
#define OPUS_GET_PHASE_INVERSION_DISABLED_REQUEST 4047
+#define OPUS_GET_IN_DTX_REQUEST 4049
/** Defines for the presence of extended APIs. */
#define OPUS_HAVE_OPUS_PROJECTION_H
@@ -715,6 +716,16 @@ extern "C" {
* </dl>
* @hideinitializer */
#define OPUS_GET_PHASE_INVERSION_DISABLED(x)
OPUS_GET_PHASE_INVERSION_DISABLED_REQUEST, __opus_check_int_ptr(x)
+/** Gets the DTX state of the encoder.
+ * Returns wheter the last encoded frame was either a comf...
2018 Mar 22
0
[PATCH] Support for Ambisonics
...he case of OPUS_MULTISTREAM_GET_ENCODER_STATE_REQUEST,
> you can
> > >>> simply use _oge_ctl(enc->st,
> > >>> OPUS_MULTISTREAM_GET_ENCODER_STATE(stream_id, value))
> > >>> 3) On libopus itself, why "#define
> OPUS_HAVE_OPUS_PROJECTION_H 9000"
> > >>> instead of just "#define OPUS_HAVE_OPUS_PROJECTION_H"?
> > >>>
> > >>> Cheers,
> > >>>
> > >>> Jean-Marc
> > >>>
> &g...
2018 Mar 19
3
[PATCH] Support for Ambisonics
Hello all,
Sorry for the delay (got really sick last week).
Attached are updated patches for libopus, libopusenc, opusfile and
opus-tools.
Note that the patches for libopusenc, opusfile and opus-tools are dependent
on the patch for libopus.
Please let me know if you have any additional followup comments or
questions.
Cheers,
Drew
-------------- next part --------------
An HTML attachment was
2018 Mar 08
2
[PATCH] Move demixing matrix defines
Hello Jean-Marc et all,
I've attached an updated patch which I feel addresses all 3 cases.
PTAL, Thanks!
Cheers,
Drew
On Wed, Mar 7, 2018 at 8:39 PM Jean-Marc Valin <jmvalin at jmvalin.ca> wrote:
> Make sure the modified libraries work in all of these three cases:
> 1) libopus 1.2.1
> 2) libopus master (or 1.3-beta) with --enable-ambisonics
> 3) libopus master (or
2018 Mar 26
0
[PATCH] Support for Ambisonics
..._REQUEST,
>> > you can
>> > > >>> simply use _oge_ctl(enc->st,
>> > > >>> OPUS_MULTISTREAM_GET_ENCODER_STATE(stream_id, value))
>> > > >>> 3) On libopus itself, why "#define
>> > OPUS_HAVE_OPUS_PROJECTION_H 9000"
>> > > >>> instead of just "#define OPUS_HAVE_OPUS_PROJECTION_H"?
>> > > >>>
>> > > >>> Cheers,
>> > > >>>
>> > > >>> Jean-Ma...
2018 Jul 07
0
[PATCH] Support for Ambisonics
...>>> simply use _oge_ctl(enc->st,
>>>>>>> > > >>> OPUS_MULTISTREAM_GET_ENCODER_STATE(stream_id, value))
>>>>>>> > > >>> 3) On libopus itself, why "#define
>>>>>>> > OPUS_HAVE_OPUS_PROJECTION_H 9000"
>>>>>>> > > >>> instead of just "#define
>>>>>>> OPUS_HAVE_OPUS_PROJECTION_H"?
>>>>>>> > > >>>
>>>>>>> > > >>> Cheers,
>&g...
2019 Apr 08
3
API for checking whether the encoder is in DTX (PR #107)
..._GAIN_REQUEST */
> > #define OPUS_SET_PHASE_INVERSION_DISABLED_REQUEST 4046
> > #define OPUS_GET_PHASE_INVERSION_DISABLED_REQUEST 4047
> > +#define OPUS_GET_IN_DTX_REQUEST 4049
> >
> > /** Defines for the presence of extended APIs. */
> > #define OPUS_HAVE_OPUS_PROJECTION_H
> > @@ -715,6 +716,16 @@ extern "C" {
> > * </dl>
> > * @hideinitializer */
> > #define OPUS_GET_PHASE_INVERSION_DISABLED(x)
> > OPUS_GET_PHASE_INVERSION_DISABLED_REQUEST, __opus_check_int_ptr(x)
> > +/** Gets the DTX state of the encoder....
2018 Mar 12
0
[PATCH] Move demixing matrix defines
.../decoder calls is pretty reasonable. I haven't looked in detail,
but I think some of the calls are missing. I think all calls should have
that behaviour and not just the ones used by libopusenc.
As for the includes, how about leaving
OPUS_PROJECTION_*_REQUEST in opus_projection.h, but defining
OPUS_HAVE_OPUS_PROJECTION_H (or something like that) in opus.h?
I still haven't looked at your libopusenc changes, that's my next step.
Cheers,
Jean-Marc
On 03/08/2018 06:43 PM, Drew Allen wrote:
> Hello Jean-Marc et all,
>
> I've attached an updated patch which I feel addresses all 3 cases.
>
&...
2019 Apr 05
0
API for checking whether the encoder is in DTX (PR #107)
...;s already taken by OPUS_GET_GAIN_REQUEST */
> #define OPUS_SET_PHASE_INVERSION_DISABLED_REQUEST 4046
> #define OPUS_GET_PHASE_INVERSION_DISABLED_REQUEST 4047
> +#define OPUS_GET_IN_DTX_REQUEST 4049
>
> /** Defines for the presence of extended APIs. */
> #define OPUS_HAVE_OPUS_PROJECTION_H
> @@ -715,6 +716,16 @@ extern "C" {
> * </dl>
> * @hideinitializer */
> #define OPUS_GET_PHASE_INVERSION_DISABLED(x)
> OPUS_GET_PHASE_INVERSION_DISABLED_REQUEST, __opus_check_int_ptr(x)
> +/** Gets the DTX state of the encoder.
> + * Returns wheter the l...
2018 Apr 10
2
[PATCH] opus-tools/opusfile: Support for Ambisonics
Friendly ping for supporting ambisonics in opus-tools & opusfile
Please LMK any ?s you might have.
Cheers,
Drew
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.xiph.org/pipermail/opus/attachments/20180410/fd4a3709/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name:
2018 May 25
0
[PATCH] opus-tools/opusfile: Support for Ambisonics
...ke sure it does not get out of sync with
the rest of the code. At that point we're passing in enough pieces of an
OggOpusLink that we should probably just pass the whole thing.
I think we can also get rid of some #ifdefs if we always define
op_use_projection(), but make it return 0 without
OPUS_HAVE_OPUS_PROJECTION_H.
Currently, it also looks like you are re-using the context variable
decode_cb_ctx to save the user context for both the decode and
projection_decode callbacks. So if you register both, the one you get
passed depends on the order you register the callbacks, and gets passed
to both callbacks. T...