Bob Ingraham
2013-May-17 16:52 UTC
[Vorbis] Multi-Track-Single-Logical-Stream Ogg-Vorbis (mogg) vs Multi-Track-Multi-Logical-Stream Ogg-Vorbis
Hi All, I am in the midst of developing a library for easily recording multi-track audio for a court recording system. Well, it can be used for anything, but this is its first intended use. The idea is to simultaneously capture/compress/archive 8 to 16 mono sources (microphones) in an Ogg container using Vorbis. Then later, be able to play back only selected logical streams, or multiple-logical-streams via down-mixing. Now, the way I've written the encoding logic (with liboggz and fishsound,) is to compress each mono source (microphone) with Vorbis and store it in Ogg as its own logical stream. This works is currently working as I had hoped, because I end-up with an Ogg file with 8 logical streams, one Vorbis-encoded-logical-stream-per-microphone. THE ISSUE: So, I've now seen "mogg" files and have examined one and found out that they do NOT have multiple logical streams but INSTEAD have multiple channels in a single logical stream. So I am confused: I thought that Vorbis only could encode up to 2 channels max (stereo), but I've found, for example, a 12-channel Vorbis-encoded song in a single-logical-stream Ogg container. The whole purpose of me going to the pain of separately encoding each of my mono channels and then stuffing each in its own logical stream was to preserve channel separation for later editing and/or selective down-mixing. THE QUESTIONS: 1. So, did I NOT need to compress each mono channel separately with its own Vorbis instance and use separate logical streams in Ogg? 2. For preserving individual track integrity (and editability and down-mixing,) which approach is better? (mogg vs multi-logical-stream)? 3. How does Vorbis handle multiple mono tracks (say 8+)? Does it encode each channel separately and independently? I guess I'm asking, given what I'm trying to achieve, if I chose the correct approach (encode each track independently and stored in its own logical stream,) or if I just made extra work for no reason? Thanks for any insight from the experts! Cheers, Bob Ingraham
Conrad Parker
2013-May-20 02:00 UTC
[Vorbis] Multi-Track-Single-Logical-Stream Ogg-Vorbis (mogg) vs Multi-Track-Multi-Logical-Stream Ogg-Vorbis
On 18 May 2013 00:52, Bob Ingraham <bobi at ingrahams.us> wrote:> Hi All, > > I am in the midst of developing a library for easily recording multi-track > audio for a court recording system. Well, it can be used for anything, but > this is its first intended use. > > The idea is to simultaneously capture/compress/archive 8 to 16 mono > sources (microphones) in an Ogg container using Vorbis. Then later, be > able to play back only selected logical streams, or > multiple-logical-streams via down-mixing. > > Now, the way I've written the encoding logic (with liboggz and fishsound,) > is to compress each mono source (microphone) with Vorbis and store it in > Ogg as its own logical stream. > > This works is currently working as I had hoped, because I end-up with an > Ogg file with 8 logical streams, one > Vorbis-encoded-logical-stream-per-microphone. > > > THE ISSUE: > > So, I've now seen "mogg" files and have examined one and found out that > they do NOT have multiple logical streams but INSTEAD have multiple > channels in a single logical stream. > > > So I am confused: I thought that Vorbis only could encode up to 2 channels > max (stereo), but I've found, for example, a 12-channel Vorbis-encoded > song in a single-logical-stream Ogg container. > > The whole purpose of me going to the pain of separately encoding each of > my mono channels and then stuffing each in its own logical stream was to > preserve channel separation for later editing and/or selective > down-mixing. > > THE QUESTIONS: > > 1. So, did I NOT need to compress each mono channel separately with its > own Vorbis instance and use separate logical streams in Ogg? > > 2. For preserving individual track integrity (and editability and > down-mixing,) which approach is better? (mogg vs multi-logical-stream)? > > > 3. How does Vorbis handle multiple mono tracks (say 8+)? Does it encode > each channel separately and independently? > > > I guess I'm asking, given what I'm trying to achieve, if I chose the > correct approach (encode each track independently and stored in its own > logical stream,) or if I just made extra work for no reason? > > Thanks for any insight from the experts!Hi, could you paste the output of oggz-info on one of those files? Conrad.