search for: demixing

Displaying 20 results from an estimated 33 matches for "demixing".

2018 Mar 07
2
[PATCH] Move demixing matrix defines
Move demixing matrix defines to opus_define to better determine availability of Projection API. Allows libopusenc, opusfile and opus-tools to much more easily determine availability of Projection API. Cheers, Drew -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists....
2018 Mar 08
2
[PATCH] Move demixing matrix defines
...gt; I suspect with the current set of patches you might have problems with > case 3) since you will find the symbols in the header file, but the > functionality won't be there. > > Cheers, > > Jean-Marc > > On 03/07/2018 02:40 PM, Drew Allen wrote: > > Move demixing matrix defines to opus_define to better determine > > availability of Projection API. > > > > Allows libopusenc, opusfile and opus-tools to much more easily determine > > availability of Projection API. > > > > Cheers, > > Drew > > > > > >...
2018 Mar 08
0
[PATCH] Move demixing matrix defines
...opus master (or 1.3-beta) with --disable-ambisonics I suspect with the current set of patches you might have problems with case 3) since you will find the symbols in the header file, but the functionality won't be there. Cheers, Jean-Marc On 03/07/2018 02:40 PM, Drew Allen wrote: > Move demixing matrix defines to opus_define to better determine > availability of Projection API. > > Allows libopusenc, opusfile and opus-tools to much more easily determine > availability of Projection API. > > Cheers, > Drew > > > _____________________________________________...
2018 Mar 12
0
[PATCH] Move demixing matrix defines
...ent set of patches you might have problems with > case 3) since you will find the symbols in the header file, but the > functionality won't be there. > > Cheers, > >         Jean-Marc > > On 03/07/2018 02:40 PM, Drew Allen wrote: > > Move demixing matrix defines to opus_define to better determine > > availability of Projection API. > > > > Allows libopusenc, opusfile and opus-tools to much more easily > determine > > availability of Projection API. > > > > Cheers, > &g...
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
...t, it duplicates a lot of code from opus_head_parse(), the user still needs to call opus_head_parse() (so the work gets duplicated at runtime, too), and they have to pass in a buffer of exactly the right size (which means they need to know some details of the specific mapping family and how the demixing matrix works). I think a slightly better approach is along the lines of the opus_head_parse_ext() I originally suggested, but just return a pointer into the user-supplied packet instead of copying the data. For the simple case where the user is just going to pass the data immediately to opus_p...
2017 May 30
2
Initial implementation of ch.mapping 253/3
...lo all, Attached is the initial proposed implementation for ch.mapping 253/3, based on the IETF proposal: https://tools.ietf.org/html/draft-ietf-codec-ambisonics-03 A brief overview of the patch, as it is slightly lengthy: After discussion with Jean-Marc, we determined that ch.253/3 will need the demixing matrix as part of the encoder/decoder struct stack and thus will require a new Encoder/Decoder structure. For this, I've proposed OpusPEnc/OpusPDec (for "projection"), which wraps OpusMSEnc/OpusMSDec aside from the addition of the mixing matrix structure. The functionality also wraps...
2017 Jun 07
2
Initial implementation of ch.mapping 253/3
...ng 253/3, > based > > on the IETF proposal: > > https://tools.ietf.org/html/draft-ietf-codec-ambisonics-03 > > > > A brief overview of the patch, as it is slightly lengthy: > > After discussion with Jean-Marc, we determined that ch.253/3 will need > the > > demixing matrix as part of the encoder/decoder struct stack and thus will > > require a new Encoder/Decoder structure. For this, I've proposed > > OpusPEnc/OpusPDec (for "projection"), which wraps OpusMSEnc/OpusMSDec > aside > > from the addition of the mixing matrix struc...
2017 Jun 12
1
Initial implementation of ch.mapping 253/3
...sal: >>> > https://tools.ietf.org/html/draft-ietf-codec-ambisonics-03 >>> > >>> > A brief overview of the patch, as it is slightly lengthy: >>> > After discussion with Jean-Marc, we determined that ch.253/3 will need >>> the >>> > demixing matrix as part of the encoder/decoder struct stack and thus >>> will >>> > require a new Encoder/Decoder structure. For this, I've proposed >>> > OpusPEnc/OpusPDec (for "projection"), which wraps OpusMSEnc/OpusMSDec >>> aside >>> >...
2017 Jun 07
0
Initial implementation of ch.mapping 253/3
...ial proposed implementation for ch.mapping 253/3, based > on the IETF proposal: > https://tools.ietf.org/html/draft-ietf-codec-ambisonics-03 > > A brief overview of the patch, as it is slightly lengthy: > After discussion with Jean-Marc, we determined that ch.253/3 will need the > demixing matrix as part of the encoder/decoder struct stack and thus will > require a new Encoder/Decoder structure. For this, I've proposed > OpusPEnc/OpusPDec (for "projection"), which wraps OpusMSEnc/OpusMSDec aside > from the addition of the mixing matrix structure. The functional...
2018 Mar 20
2
[PATCH] Support for Ambisonics
...) { > > int ret; > > int i; > > > > This code is allowing family 253 for a deferred init, but does not > > create a projection encoder in that case, so it looks like it will > > fail when writing the id header since it won't be able to get the > > demixing matrix. It should probably not be allowing family 253 here. > > Actually, in the case of ope_encoder_deferred_init_with_mapping(), I > think it's probably best to just keep the existing code (not use > wrappers), since that function cannot be used by the projection encoder > at...
2018 Mar 20
2
[PATCH] Support for Ambisonics
...8000, enc->channels, streams, coupled_streams, mapping, OPUS_APPLICATION_AUDIO, &ret); This code is allowing family 253 for a deferred init, but does not create a projection encoder in that case, so it looks like it will fail when writing the id header since it won't be able to get the demixing matrix. It should probably not be allowing family 253 here. - Mark On Mon, Mar 19, 2018 at 3:00 PM, Drew Allen <bitllama at google.com> wrote: > Hi Jean-Marc, > > I've modified my patches for libopus and libopusenc based on your > suggestions. > > Cheers, > Drew...
2017 Jun 12
0
Initial implementation of ch.mapping 253/3
...; > on the IETF proposal: >> > https://tools.ietf.org/html/draft-ietf-codec-ambisonics-03 >> > >> > A brief overview of the patch, as it is slightly lengthy: >> > After discussion with Jean-Marc, we determined that ch.253/3 will need >> the >> > demixing matrix as part of the encoder/decoder struct stack and thus >> will >> > require a new Encoder/Decoder structure. For this, I've proposed >> > OpusPEnc/OpusPDec (for "projection"), which wraps OpusMSEnc/OpusMSDec >> aside >> > from the addition o...
2018 Mar 20
2
[PATCH] Support for Ambisonics
...> > > > > > This code is allowing family 253 for a deferred init, but does not > > > create a projection encoder in that case, so it looks like it will > > > fail when writing the id header since it won't be able to get the > > > demixing matrix. It should probably not be allowing family 253 > here. > > > > Actually, in the case of ope_encoder_deferred_init_with_mapping(), I > > think it's probably best to just keep the existing code (not use > > wrappers), since that function cannot be us...
2018 Mar 22
2
[PATCH] Support for Ambisonics
...53 for a deferred init, but > > does not > > > > create a projection encoder in that case, so it looks like > > it will > > > > fail when writing the id header since it won't be able to > > get the > > > > demixing matrix. It should probably not be allowing family > > 253 here. > > > > > > Actually, in the case of > > ope_encoder_deferred_init_with_mapping(), I > > > think it's probably best to just keep the existing code (not > use &g...
2017 Oct 31
7
[PATCH] Support for Channel Mapping 253.
...eplaced by an asssert or (if the user can cause a > failure) actually checked. > > Done. > 8) I see there's a "gain" field in the matrix, but I can't see it used > anywhere. Did I miss something? > Gain should be pulled out by the user via a OPUS_PROJECTION_GET_DEMIXING_MATRIX_GAIN call and add it to the overall output gain. We assume the mixing matrix gain is always zero and that this only matters for the output gain from the demixing matrix. > > 9) In get_streams_from_channels(), I think it'd be simpler to just replace: > *streams = channels / 2 +...
2018 Mar 07
1
[PATCH] Support for Ambisonics and Projection API.
...#include around this #define. This will also allow us to not have to explicitly enable ambisonics. :) > > The addition of fields to the OpusHead struct is a breaking ABI change > (specifically, all callers of opus_head_parse() would need to be rebuilt > from source). > > Is OPUS_DEMIXING_MATRIX_SIZE_MAX future-proof? I seem to recall much > larger matrices being allowed according to the spec. You'll note that > OPUS_CHANNEL_COUNT_MAX is 255, even though opusfile currently only supports > mappings with up to 8 channels (see the private OP_NCHANNELS_MAX used > interna...
2018 Mar 26
3
[PATCH] Support for Ambisonics
...does not >>> > > > create a projection encoder in that case, so it looks like >>> > it will >>> > > > fail when writing the id header since it won't be able to >>> > get the >>> > > > demixing matrix. It should probably not be allowing family >>> > 253 here. >>> > > >>> > > Actually, in the case of >>> > ope_encoder_deferred_init_with_mapping(), I >>> > > think it's probably best to just...
2018 Mar 20
0
[PATCH] Support for Ambisonics
...eams, const unsigned char *mapping) { > int ret; > int i; > > This code is allowing family 253 for a deferred init, but does not > create a projection encoder in that case, so it looks like it will > fail when writing the id header since it won't be able to get the > demixing matrix. It should probably not be allowing family 253 here. Actually, in the case of ope_encoder_deferred_init_with_mapping(), I think it's probably best to just keep the existing code (not use wrappers), since that function cannot be used by the projection encoder at all. Jean-Marc >...
2017 Nov 03
1
[PATCH] Support for Channel Mapping 253.
...ually checked. > > > > Done. > > > > 8) I see there's a "gain" field in the matrix, but I can't see it > used > > anywhere. Did I miss something? > > > > Gain should be pulled out by the user via > > a OPUS_PROJECTION_GET_DEMIXING_MATRIX_GAIN call and add it to the > > overall output gain. We assume the mixing matrix gain is always zero and > > that this only matters for the output gain from the demixing matrix. > > > > > > 9) In get_streams_from_channels(), I think it'd be simpler to ju...