PDA

View Full Version : CoreVorbis DirectShow Audio Decoder (was: is CV coming!?)


bond
3rd June 2003, 18:48
Hi Core/Matroska team!

i found this (http://www.xiph.org/archives/vorbis-dev/200305/0059.html) on the xiph vorbis maillists! any plans to write a new vorbis directshow filter? hows the situation?

it looks like robux4 is already having specific plans: :D

Originally posted by robUx4
This is a known problem or the Vorbis DSF... We have informed Xiph about this problem in case they are willing to help :sly: as Tobias is unreachable. Otherwise there may be a CoreVorbis codec soon. :rolleyes:

EDIT: just changed the subject-title...

[Toff]
4th June 2003, 01:12
As you ask! Here is a test version :)

mkxds vorbis test (http://christophe.paris.free.fr/temp/matroska/mkxds_vorbis_test_20030604.zip)

This filter is not compatible with OggDS so i have used different GUID to not interfere with it. You must also used the matroska filter that come in thz zip and that output the right media subtype and format.

I hope that it will be possible to integrate it with the "official" one.

Atamido
4th June 2003, 01:17
I have a clip that I made that has always had jerky playback. Using these two filters, it played back fine for the first time ever. (XviD+Vorbis)

Animaniac
4th June 2003, 02:32
Not to belittle your work, but Vorbis plays fine in Gabest's awesome splitter... Options are always good though. Thanks!

robUx4
4th June 2003, 09:47
One of the many advantages of this new filter is that it can fill the audio renderer to more than 40% (which is always good). It also does a better job on handling the timestamps. Otherwise it's equivalent to Tobias' one.

[Toff]
4th June 2003, 11:25
Not to belittle your work, but Vorbis plays fine in Gabest's awesome splitter... Options are always good though. Thanks!
Then you are lucky :)
But in some cases even with Gabest's splitter there is jerky problem.
For example this file is good to illustrate the problem :
http://christophe.paris.free.fr/temp/matroska/testc2.mkv
It's a little computer generated animation, and it's really easy to see any jerk.

CaptainCarrot
4th June 2003, 12:05
Great work, with this filter combination the jerkyness has disappeared from all my mkv-files. :D

Edit: Okay, not all my mkv-files. I just tried one of my XCD, and it's still jerky. But that's a *.dat file, not an mkv, eh, so that don't really count, don't you think :D . I'll try to convert that specific movie back to mkv and check wether it really is an XCD issue.

Edit2: Yep, it's an XCD-only-issue, when i extracted the file back to hd it played smooth.

bond
4th June 2003, 15:28
nice filter :)

but now that the sources of the original ogg decoder from tobias' are going to be released (hopefully somewhere in the near future ;) ), it would be great if you (toff) or anybody else can concentrate on improving the existing filter!?

btw: it would be really nice if the downsample function can be integrated into coreaac, that would make it perfect! i guess you can use sources from valex' ac3filter for that!?

ChristianHJW
4th June 2003, 16:27
Originally posted by bond nice filter :)

Its an alpha :P. Project was founded today, but there is no code still :

http://corecodec.org/projects/corevorbis

but now that the sources of the original ogg decoder from tobias' are going to be released (hopefully somewhere in the near future ;) ), it would be great if you (toff) or anybody else can concentrate on improving the existing filter!?

Thats not as easy as it may seem to be for a non-coder. Every program/code has a certain basic structure. Tobias' filter structure is obviously targeted for Vorbis playback from the Ogg container, where he doesnt get timestamps but a granulepos is used instead. So, it may be very very hard to convert it to accept timestamps, we dont know yet.

It may be possible, but for now we decided to make CoreVorbis and give it another wFormat tag, to differentiate between CoreVorbis and OggDS.

btw: it would be really nice if the downsample function can be integrated into coreaac, that would make it perfect! i guess you can use sources from valex' ac3filter for that!?

Not a good idea, sorry, just think of

CoreVorbis
CoreAAC
CoreFLAC
CoreMPC etc. .....

should we pack the downmixer code into every single filter ? Dont think so, in fact the flexibility of DirectShow in this respect should be used to have an external downmixer filter, allowing to connect to all of them .... and that's Gabriele's downmixer filter ;)

avih
4th June 2003, 16:43
Originally posted by CaptainCarrot
Great work, with this filter combination the jerkyness has disappeared from all my mkv-files. :D

Edit: Okay, not all my mkv-files. I just tried one of my XCD, and it's still jerky. But that's a *.dat file, not an mkv, eh, so that don't really count, don't you think :D . I'll try to convert that specific movie back to mkv and check wether it really is an XCD issue.

Edit2: Yep, it's an XCD-only-issue, when i extracted the file back to hd it played smooth.

yes, the XCD filter doesn't use bufferring at all! i might find some time to work a bit on the filter, and add bufferring and backup support. don't hold your breath though.

but, OTOH, when i play clips, i always copy them to my HD first, since it's more quiet, keeps the cd drive, prevents reading speed related problems, etc. and it only takes 2-5 mins to copy the file from the cd to the hd.

bond
4th June 2003, 16:50
Originally posted by ChristianHJW
Not a good idea, sorry, just think of CoreVorbis, CoreAAC, CoreFLAC, CoreMPC etc. .....
should we pack the downmixer code into every single filter ?No, just into the most important ones (Vorbis and AAC) :p

[Toff]
4th June 2003, 18:00
Originally posted by bond
but now that the sources of the original ogg decoder from tobias' are going to be released (hopefully somewhere in the near future ), it would be great if you (toff) or anybody else can concentrate on improving the existing filter!?


Yeah i hope we will be able to merge the CoreVorbis filter functionality to Tobias one.

Originally posted by bond
No, just into the most important ones (Vorbis and AAC) :p

hehe :D

Maybe i will add 2 channels downmix only but nothing advanced.

Btw if you like ac3filter's downmixer you can get it separetely here :
http://matrix-mixer.sourceforge.net/

Maybe we could package it with Core* because users seems a bit lazy ;)

And i recall the url of the Trombettworks one also :
http://www.trombettworks.com/directshow.php

Mr_Khyron
4th June 2003, 18:40
Originally posted by ChristianHJW

Not a good idea, sorry, just think of

CoreVorbis
CoreAAC
CoreFLAC
CoreMPC etc. .....

should we pack the downmixer code into every single filter ? Dont think so, in fact the flexibility of DirectShow in this respect should be used to have an external downmixer filter, allowing to connect to all of them .... and that's Gabriele's downmixer filter ;)
Cant you make CoreMAD (Multi Audio Decoder)with
CoreVorbis
CoreAAC
CoreFLAC
CoreMPC etc. ..... :D

Animaniac
4th June 2003, 19:01
Originally posted by Mr_Khyron
Cant you make CoreMAD (Multi Audio Decoder)with
CoreVorbis
CoreAAC
CoreFLAC
CoreMPC etc. ..... :D

MADCore!

I think the filters should remain decoders and downmixing should be handled by a separate filter. It's more elegant that way.

bond
4th June 2003, 19:21
Originally posted by [Toff]
Maybe we could package it with Core* because users seems a bit lazy ;)yeah we really are (and dont forget our dullness) ;)

but it comes even better:

Cant you make CoreMAD (Multi Audio Decoder)great idea! :D "one to rule them all" :eek:

[Toff]
4th June 2003, 23:57
A small update, some people seems to have problem with <=2 channels playing (big shhhhhhhhh).
CoreVorbis_20030604-3.zip (http://christophe.paris.free.fr/temp/matroska/CoreVorbis_20030604-3.zip)

The problem should be the same in CoreAAC and the fix is in CVS now.

For the technical things it's :
now <=2 channels output use a WAVEFORMATEX struct
and >2 channels output use a WAVEFORMATEXTENSIBLE struct

EDIT: @bond: maybe it was the original problem you had, as trombettworks downmixer do the same tricks to correct the problem.

Atamido
5th June 2003, 01:02
Originally posted by Mr_Khyron
Cant you make CoreMAD (Multi Audio Decoder)with
CoreVorbis
CoreAAC
CoreFLAC
CoreMPC etc. ..... :D We sure can. We just need to beat the rest of the code out of Toff. ;)

The Belgain
5th June 2003, 11:31
Yeah, it would be really good to have one single audio decompressor for all codecs (an equivalent of ffdshow). And it would be nicer if it also had the downmixer (and possibly even EQ, gain, etc...) integrated like ac3filter.

Basially something that was pretty much exactly the saem layout as ac3filter, but supported aac, vorbis, etc too.

bond
5th June 2003, 16:18
Originally posted by Pamel
We sure can. We just need to beat the rest of the code out of Toff. ;) :D

Originally posted by The Belgain
Yeah, it would be really good to have one single audio decompressor for all codecs (an equivalent of ffdshow). And it would be nicer if it also had the downmixer (and possibly even EQ, gain, etc...) integrated like ac3filter.

Basially something that was pretty much exactly the saem layout as ac3filter, but supported aac, vorbis, etc too. of course this would be great, but this would need a lot of development power (like for a whole standalone project), which the matroska team doesnt really have (i think), although by looking at what we have got until now i dont think they can be stopped ;)

Sigmatador
5th June 2003, 16:47
@christophe
what about ogg 5.1 decoding ? is it ok ?

[Toff]
5th June 2003, 17:12
Originally posted by Sigmatador
@christophe
what about ogg 5.1 decoding ? is it ok ?
Yes it should be ok.
If it doesn't works then it's a bug :o
But vorbis is still not as efficient as it could be in 5.1

@Mr_Khyron : I have looked at the libvorbis optimization, but unfortunately the asm code is for gcc so it's a too big task to convert it VC6.

bond
6th June 2003, 14:44
So i now had time to "heavily" test it, and it seems to work very fine (i didnt have trombett downmixer installed)! but i only tested stereo not 5.1 (also look here (http://forum.doom9.org/showthread.php?s=&postid=324249#post324249))

Originally posted by [Toff]
You must also used the matroska filter that come in thz zip and that output the right media subtype and format.
as i have winme this version (mkxds.dll - any chance to get a win98 version?) didnt work for me (no sound) but with gabest's splitter it works fine...

like in coreaac it would be really nice to have some sort of stream information tab (ok i stop my wishing list now ;) )

HughMagoo
6th June 2003, 15:46
I just thought I would extend thanks to the author(s) of CoreVorbis, the Matroska Team, and Gabest. even if all of these contributions are just in their infancy.

I'm successfully playing back a MKV I made with VdubMod.
XVID@1200kbps
AC3@448kbps - 48khz (DD 5.1 out to S/PDIF)
Ogg@45kbps - 48khz stereo (commentary)
Ogg@45kbps - 48khz stereo (commentary)

filters being used are Nic's XVID dshowfilter, ffdshow raw video mode, intervideo AC3 decoder, corevorbis, matroskasplitter, and output in VMR9 mode.

using Gabest's latest MatroskaSplitter switching between the the three audio streams using ZoomPlayer and randomly seeking brings on no ill stuttering or jerky playback on my system. The only thing I noticed was a 1 or more second pause when switching to a vorbis audio stream, but everything else looks and sounds great. and the "fullness" reading in the directsound panel is 90% which is much better than the Vorbis Decoder.

Thanks!

Assault
6th June 2003, 16:56
This is a "me too" post. ;)
I tested Matroska with:
XviD: 560 kbps
OGG: 96 kbps
OGG: 96 kbps
I used CoreVorbis and MatroskaSplitter for playback. With MPC I could easily switch between the two streams and it didn't play jerky at all. :)
Great work and thanks to all developers!!!

Assault

Defiler
6th June 2003, 21:30
Are any of these general-purpose downmixers able to be configured via a shortcut in Windows?
i.e. I'm looking for one that doesn't require you to head to the Properties section of your media player to reach the configuration panel.

[Toff]
8th June 2003, 12:00
A new version is out with a property page to give information about the stream and to tweak the settings.

CoreVorbis 1.0b3 (http://corevorbis.corecodec.org/CoreVorbis_1.0b3.exe)

If you guys could check if 5.1 works well also it would be great :)

bond
8th June 2003, 12:19
thanks a lot!!!

Originally posted by [Toff]
If you guys could check if 5.1 works well also it would be great :) i dont have a 5.1 .ogg but perhaps someone can upload one for testing purpose? i am too lazy now to encode one by myself ;)

nikthebak
8th June 2003, 12:46
I seem to be the only one that has slight problems with CoreVorbis decoder. I use Gabest's Matroska splitter 1.0.0.4. When opening a XviD + Vorbis Matroska file with MPC, I get this error message:


Stream 1

Media Type 0:
--------------------------
AM_MEDIA_TYPE:
majortype: MEDIATYPE_Audio {73647561-0000-0010-8000-00AA00389B71}
subtype: Unknown GUID Name {CDDCA2D5-6D75-4F98-840E-737BEDD5C63B}
formattype: Unknown GUID Name {6BDDFA7E-9F22-46A9-AB5E-884EFF294D9F}
bFixedSizeSamples: 1
bTemporalCompression: 0
lSampleSize: 384000
cbFormat: 24


The Matroska stream contains XviD video and 128 kbps 2ch 48 kHz Vorbis audio. The mkv file was muxed in VirtualDubMod 1.5.1.1a.

If I insert the filters manually in Graphedit (Matroska source - CoreVorbis - ReClock for audio and ffdshow - Video Renderer for video), it works perfectly.

It is possible to fix the file (to use the right Vorbis decoder) or something?

[Toff]
8th June 2003, 14:21
Originally posted by nikthebak
I seem to be the only one that has slight problems with CoreVorbis decoder. I use Gabest's Matroska splitter 1.0.0.4. When opening a XviD + Vorbis Matroska file with MPC, I get this error message...

I think that MPC use its internal Matroska splitter which is probably older that v1.0.0.4
Wait a bit for a newer version of MPC and it should fix the problem.

Pasqui
8th June 2003, 15:25
You can use the newest Gabest's matroska demuxer with MPC 6.4.5.3 by unchecking Matroska Splitter in Options -> Filters -> Source. This way you will use the installed DS filter instead of the built one. I do personnaly use CoreVorbis decoder with Gabest's matroska demuxer in MPC without any problem.

Animaniac
8th June 2003, 18:28
Could the next release(s) come without an installer, I like putting my filters in a "special" place That, or just add a path option to the installer. Thanks.


Edit: Would Toff be so kind as to make CoreMPC soon, since you're pretty damn good with these audio decoders? ^_^

MoonWalker
9th June 2003, 16:50
Just encoded a 5.1 Vorbis (using Besweet), tried playback with MPC(could not render), bsplay(unknow format), winamp(played as 2 channel)...

MoonWalker

bond
9th June 2003, 17:08
@moonwalker
did you play it out of matroska?

Gaia
9th June 2003, 17:10
Just encoded a 5.1 Vorbis (using Besweet), tried playback with MPC(could not render), bsplay(unknow format), winamp(played as 2 channel)...

CoreVorbis can't play pure audio files. You have to create matroska file.

Gooop
9th June 2003, 18:48
Thanks for your work [Toff]
I can't see any jerkyness in my mkv files anymore. But I have a question : something appears strange to me : I see many people here getting it to work with many different matroska demuxers / splitters (hope I understood well) but it was quite difficult for me to make it work : with MPC 6454, if I switch the built-in matroska splitter off to use another one (any version I think even the most recent one) the movie plays with the oggds decoder. And with mkxds the player loads the right vorbis filter (yours) but I can't switch between my two vorbis streams, and the video freezes. It's not very important because it's just working perfectly with MPC 6454 and it's built-in splitter, but do you have an idea why it doesn't work in any other way ?

I hope you understand my poor english. If not, let me know, I think I could explain it better in french on IRC :)

MoonWalker
9th June 2003, 21:35
OK..Just re-registered all the filters and made a mkv+vorbis 5.1.The filter decodes it as an 2 channel sound file...I have encoded with the default profile with besweet...I haven't tampered yet with the channel order..Shall I try?

MoonWalker

bond
9th June 2003, 22:03
does corevorbis downsample the 5.1 to stereo? how many channels are shown in the info tab? did you install trombettworks filter?

btw can you plz send me a link (perhaps via pm) where i can download the clip with vorbis 5.1 (i always wanted to have one :D )
thanks!

[Toff]
10th June 2003, 11:18
Originally posted by Animaniac
Could the next release(s) come without an installer.
Would Toff be so kind as to make CoreMPC soon, since you're pretty damn good with these audio decoders?
Yes i will put a zip also in the future.
For CoreMPC you will have to wait for the new stream version (SV8), probably not before several month :(.

Originally posted by Gooop
do you have an idea why it doesn't work in any other way ?
There is still a bug with audio switching in the Matroska Demuxer.
And for the others problem it's probably caused by a too old version of Matroska Demuxer / Matroska Splitter.

Originally posted by MoonWalker
OK..Just re-registered all the filters and made a mkv+vorbis 5.1.The filter decodes it as an 2 channel sound file...I have encoded with the default profile with besweet...I haven't tampered yet with the channel order..Shall I try?
Could you try the last version (1.0b4) available here :
http://corevorbis.corecodec.org/
There is a little modification in 5.1 channels handling.

Originally posted by bond
does corevorbis downsample the 5.1 to stereo?
No still no downmixer ATM.

MoonWalker
10th June 2003, 12:20
I just download the new corevorbis filter and muxed an 5.1 vorbis into mkv. This time I used all three channel mappings besweet has (at the GUI)..The filter recognize it as a 6 channel stream, but it outputs garbage(crackling sounds, noise and at at the backround some talking)..I muxed with with VDubMod 1.5.1.1a...

Just to make sure. I suppose that I should hear 5.1 sound and the Dolby Digital led on my decoder should turn on (as at AC3 streams)..Correct??

MoonWalker

ChristianHJW
10th June 2003, 14:15
Originally posted by MoonWalker Just to make sure. I suppose that I should hear 5.1 sound and the Dolby Digital led on my decoder should turn on (as at AC3 streams)..Correct?? MoonWalker

Wow !!! You have a surround receiver that has a built in Vorbis 5.1 decoder ?? Incredible ! What model is it ? I buy it at once :D ....

Jokes apart, did you really think through what you are trying to do here ? Your external Dolby Surround receiver will understand Dolby AC3, and nothing else. If you want to use it, you will either have to

- buy a 5.1 capable soundcard, and use 6 RCA lines to connect the soundcard with the analog 5.1 input of your receiver

- bug somebody to make a real time 5.1 Vorbis ---> 5.1 AC3 encoder filter for you, so you can read the 5.1 Vorbis from the MKV and transcode it to AC3 in real time, so your receiver will understand the digital stream on its SPDIF

- buy an external receiver that will accept 5.1 PCM WAV via SPDIF, some SONY models apparently support this IIRC. Then again, i am not sure if they will really read WAV PCM, maybe somebody had to code a conversion filter to strip the WAV headers or change the headers, so that PCM over SPDIF would work.

Atamido
10th June 2003, 15:43
I can output 5.1 sound to my reciever because my motherboard has the nForce2 chipset with the Dolby Digital encoder on it. So, it basicaly makes an AC3 stream on the fly to output to the reciever. And the reciever plays it back as 5.1 sound.

Almost no sound card out there will do this though. For instance, I have played around with a SoundBlaster Audigy Platinum. Its a 5.1 surround card, but the digital out will only output a 5.1 AC3 stream if that is what you feed it. Otherwise it outputs as a 2 channel PCM stream no matter what you do. In this case the only way to get the full 5.1 is to use the analog outs as ChristianHJW suggested.

MoonWalker
11th June 2003, 00:17
@ChristianHJW,Pamel

I understand now...I have a dolby digital receiver connected with S-Audio to my SoundBlaste Live! Platinum sound card..As far as I understand it can only decode AC3(now that I am thinking it again it's more clear to me :) )...So I can't hear properly a 5.1 vorbis..

Is a vorbis 5.1->AC3 5.1 dshow filter easy?..I guess not..I couldn't make even thought I know how to progamm :p

Thanks,
MoonWalker

cweb
11th June 2003, 20:17
Hi,

I installed Corevorbis to fix a problem with matroska playback on my win98 pc - the video would simply get 'stuck' at a certain frame.

I did have to uninstall Tobias' oggds filter however to get this to be used.

Then I couldn't playback ogm files as before, so I found a solution - simply reinstall tobias' oggds filter and everything works fine. OGM files playback with tobias' oggds filter while matroska files playback with the Corevorbis filter (properly). I'm using Zoom Player 3 BTW.

Aboo
12th June 2003, 00:05
Try to use Media Player Classic, which can be found on Gabest's SourceForge page.
If your Vorbis plays jerky, enable "Use 16 bpp" in coreVorbis properties.

PS (Offtopic): Xenogears Rocks!

HughMagoo
12th June 2003, 03:15
cweb, you could also just configure zoom's customized media mode so that CoreVorbis is the preferred Vorbis decoder. Then it will try to build the graph with CoreVorbis and if that doesn't work (everything except MKV I would assume) Vorbis Decoder will be used.

this could also be done by changing the filter's merit so that corevorbis is higher than tobias' filter.

[Toff]
12th June 2003, 10:16
Originally posted by Aboo
Try to use Media Player Classic, which can be found on Gabest's SourceForge page. If your Vorbis plays jerky, enable "Use 16 bpp" in coreVorbis properties.
Does your video has several audio stream of different type ?
Could you check if CoreVorbis is used in case of jerkiness, please ?

Originally posted by HughMagoo
this could also be done by changing the filter's merit so that corevorbis is higher than tobias' filter.
The last version of CoreVorbis already use a higher priority.

Aboo
12th June 2003, 11:15
Originally posted by [Toff]
Does your video has several audio stream of different type ?

Could you check if CoreVorbis is used in case of jerkiness, please ?

Yes to both questions. I uninstalled Tobias'es filter and my file has one ogg and one mp3 track.
Jerkiness is heavy noise. It occurs because your sound card is 16 bit, so you must turn 16 bit decoding in CoreVorbis props. And use MPC and "Channel downmix filter by Trombettworks". They are imperative for playback.

[Toff]
12th June 2003, 14:33
Originally posted by Aboo
Jerkiness is heavy noise.
Oh for me it was video or audio stuttering.

Originally posted by Aboo
It occurs because your sound card is 16 bit, so you must turn 16 bit decoding in CoreVorbis props. And use MPC and "Channel downmix filter by Trombettworks". They are imperative for playback.
Does your vorbis track has more than 2 audio channels ?
If it's not the case then there is something wrong. You should not need any downmixer for 2 channels playback.

Thanks for your tests

Aboo
12th June 2003, 17:27
Originally posted by [Toff]
Oh for me it was video or audio stuttering.

Does your vorbis track has more than 2 audio channels ?

Thanks for your tests
Then i don't know, what's going on. Today i created XVID+5.1Vorbis+2.0Vorbis+2 subtiter tracks. And everything plays fine. I use latest ORIGINAL matrosta splitter (not gabest's) + CoreVorbis+ Trombettworks downmixer + latest MPC.

bond
12th June 2003, 17:34
@aboo
why do you use a 5.1 vorbis together with trombett's downmixer?

Aboo
12th June 2003, 19:52
Because i have 4.1 sound. Besides Trombetworks is required for CoreVorbis to play IMHO.

Animaniac
12th June 2003, 22:39
Originally posted by Aboo
Because i have 4.1 sound. Besides Trombetworks is required for CoreVorbis to play IMHO.

Load the filter in GraphEdit and configure it for 4.1 output. Namely, set it to multichannel with front L/R (>=2.x), back SL/SR (>=4.x), and subwoofer (x.1). Do not select center since that would be 5.1. By default this filter outputs stereo.

haibane
13th June 2003, 04:21
I tried the 1.0b3 and 1.0b4,both work with 5.1 vorbis, the 16-bits decode still have to be selected. Good things is this time, unlike the old oggds, i don't have to use the custom channel mapping in MPC to out put 5.1 anymore.
I wish postgain can be ajusted, the sound is still not loud enough, I have to walk all the way to my subwoofer to turn up the speaker volumn.;)

Aboo
13th June 2003, 06:40
Originally posted by Animaniac
By default this filter outputs stereo.
I've aleready did it. Via MPC filter properties page. The only thing i don't like in trombettworks is that trere is no "mix .1 to LR channels", because my Creative FPS1600 doesn't have a stand-alone jack for subwoofer - it splits lower frequencies from front LR channels.

CaptainCarrot
13th June 2003, 12:53
Originally posted by Aboo
I've aleready did it. Via MPC filter properties page. The only thing i don't like in trombettworks is that trere is no "mix .1 to LR channels", because my Creative FPS1600 doesn't have a stand-alone jack for subwoofer - it splits lower frequencies from front LR channels.
Of course you can do that with the Trombettworks Channeldownmixer.
On the first page of the properties you can pick your speaker configuration, simply uncheck the .1 speaker. And if the LFE is not mixed to L/R automatically, you can create your own 5.1 -> 5.0 mixmatrix, which should look like this:

1 0 0 0.707
0 1 0 0.707
0 0 1
0 0 0 0 1
0 0 0 0 0 1


I'm not 100% sure about the input channel order, but if this one doesn't work try putting the column with the 0.707 in the third or the last position.

Animaniac
16th June 2003, 00:58
Thanks for releasing a filter only (sans installer) version. ^_^

Animaniac
18th June 2003, 04:49
It seems the channel mapping is wrong (similar to OggDS), the only thing I can discern is that the center channel (usually speech) is mapped to the fornt, left channel. This may be an OggEnc problem, but I hope it could be corrected in CoreVorbis. Thanks.

[Toff]
18th June 2003, 15:04
Hmm, strange, i have used the documentation from xiph to map the channels to the dshow ones.

For example, for 5.1, in xiph's documentation there is :
channel order: front left, front center, front right, rear left, rear right, LFE
( http://www.xiph.org/ogg/vorbis/doc/vorbis-spec-ref.html end of the page)

In directshow the channel order is :
front left, front right, front center, LFE, rear left, rear right,
( http://www.microsoft.com/whdc/hwdev/tech/audio/multichaud.mspx )

In fact i have just rechecked and if what is above is correct then there is currently an error. LFE and back left should be switched.

Now i don't know what the encoders do.
Anyone can confirm ?

DeXT
18th June 2003, 20:44
Originally posted by Animaniac
It seems the channel mapping is wrong (similar to OggDS), the only thing I can discern is that the center channel (usually speech) is mapped to the fornt, left channel. This may be an OggEnc problem, but I hope it could be corrected in CoreVorbis. Thanks. AFAIK OggDS is right regarding channel remapping. It may be an OggEnc issue. Get this 5ch ogg sample file and check if every channel position is right, both with OggDS and CoreVorbis:

http://webs.ono.com/dextstuff/5ch_test.ogg

Originally posted by [Toff]
In fact i have just rechecked and if what is above is correct then there is currently an error. LFE and back left should be switched. The remap table I originally used on my Ogg/Vorbis plugin was wrong for 4 and 5.1 channel configurations (you should not trust me so easily ;)). Here is the fixed one:

const int chmap[MAXCHANNELS][MAXCHANNELS] = {
{ 0, }, // mono
{ 0, 1, }, // l, r
{ 0, 2, 1, }, // l, c, r -> l, r, c
{ 0, 1, 2, 3, }, // l, r, bl, br
{ 0, 2, 1, 3, 4, }, // l, c, r, bl, br -> l, r, c, bl, br
{ 0, 2, 1, 5, 3, 4 } // l, c, r, bl, br, lfe -> l, r, c, lfe, bl, br
};
As you can see, the mono, stereo and 4ch configurations do not need any remap at all, so it can be optimized by doing a simple memcpy() on these channel configurations, as I did on my latest plugin for TCMP.

Hope this helps.

[Toff]
18th June 2003, 22:36
Ok a new beta is up with the mapping correction :

CoreVorbis 1.0 Beta 5 (with installer) (http://corevorbis.corecodec.org/CoreVorbis_1.0b5_20030618.exe)

CoreVorbis 1.0 Beta 5 (without installer) (http://corevorbis.corecodec.org/CoreVorbis_1.0b5_20030618.zip)

Let's test :)

Animaniac
25th June 2003, 02:34
It seems that OggEnc 2.2 Post-CVS from Rarewares uses incorrect channel mapping. Using OggEnc 1.0 solved my problem. Is there anyway to change postgain tags for Vorbis audio in an MKV without demuxing and muxing?

ChristianHJW
25th June 2003, 05:21
Yes, but you really shouldnt do this, and our specs, library and tools dont offer this right now, but in principal it would be feasible ....

Animaniac
25th June 2003, 06:17
Originally posted by ChristianHJW
Yes, but you really shouldnt do this

Why not? The audio is still too quiet, even after running the Besweet gain.

Completely off-topic:

MatrixMixer seems to be better than ChannelDownmixer since it allows more than one instance of itself to be in the filter graph. This is particularly important for Matroska files with more than one multichannel track. It works well with everything except OggDS's Vorbis decoder, for some reason it doesn't like the output type of the Vorbis decoder. It instanciates twice when using Morgan Stream Switcher (before and after mmswitch). mmswitch then instanciates itself again... And, in MPC, MatrixMixer only instanciates once, for some reason. I still feel it's a better down/upmix filter, since it's open, based on tired-and-true AC3Filter, and likes multiple audio streams. (Who needs a 17.1 config... -_-)

MarkCoolio
25th June 2003, 09:16
@Corecodec team:

could u look into the problems between matrixmixer (http://matrix-mixer.sourceforge.net) and CoreVorbis as mentioned above? Would be nice to get it working.

Thanks!

[Toff]
25th June 2003, 12:07
Originally posted by Animaniac
Is there anyway to change postgain tags for Vorbis audio in an MKV without demuxing and muxing?

It's technically possible if the tag is already present, but the tag is handled by the vorbis stream so the application need to be aware of that. It's a kind of special case to handle.
Matroska also have a postgain/replaygain ... element and this is the one that the application may be able to modify.

Originally posted by Animaniac
Why not? The audio is still too quiet, even after running the Besweet gain.
Then it's a dynamic range problem.
If you use something higher for replaygain you will have clipping.
Maybe you should try to use some dynamic range compression.

Originally posted by MarkCoolio
could u look into the problems between matrixmixer (http://matrix-mixer.sourceforge.net) and CoreVorbis as mentioned above? Would be nice to get it working.
Animaniac your are talking of OggDS's vorbis decoder or of CoreVorbis ?
I don't think i can do mutch about that btw.
At least i have no idea ATM and it's time to eat ;)

MarkCoolio
25th June 2003, 13:40
sorry, it was my mistake...
I think he meant OggDS (as he also wrote that...) and not CoreVorbis

Animaniac
26th June 2003, 06:40
Originally posted by MarkCoolio
sorry, it was my mistake...
I think he meant OggDS (as he also wrote that...) and not CoreVorbis

Yup, CoreVorbis is awesome. I wonder if we can have a new Ogg DSF that can tie into CoreVorbis. A Gabest implementation would be awesome. :D

Palikrovol
29th June 2003, 20:40
Hello. (this is long, so patience)

I have make some tests with mkv and vorbis 5.1 and here the results :)
I'm using CoreVorbis 1.0beta5 and Matroska Splitter 1.0.1.0 from Gabest. Zoomplayer 3.0 & MPC 6.4.5.6 for playing mkv.

First i made a mkv with the DeXT's "5ch_test.ogg" (only this audio). Playing it with Zoomplayer and MPC every channel sounds in their speaker and the seek in the mkv works perfectly in both players.

Then i made an ogg vorbis 5.1 from an AC3 5.1 using BeSweet and muxed it into a mkv file (mkv with only one audio file - vorbis 5.1). The same as above, everything perfect.

Next i made a mkv with both vorbis 5.1. With MPC both audio files sounds correctly (every channel in their speaker) but in Zoomplayer only the first audio file sounds correctly, in the other audio, the Front Left, Front Right & LFE channels sounds in their speakers, Center & SR sounds very low in the right speaker and SL sounds very low in the left speaker (nor Center, SR, SL speakers sounds at all). I changed the order of the audio files in mkv and the problem is the order not the audio files (the second audio files does't sound correctly)

With more than 2 vorbis 5.1 audio streams, the same problem with ZoomPlayer, only the first one sounds correctly.

The last test was made with some vorbis 5.1 and an AC3 5.1 and again the above problem EVEN with the AC3 (if AC3 is not the first stream only sounds in the FL, FR & LFE speakers) with Zoomplayer. Using MPC there is no channel problems with any of the audio streams but when seeking while listening the AC3 stream there are some stutering problems until video gets in synchronization with audio (no audio for a little time)

Using vorbis 2.0 and 5.1 streams, the same problem with the 5.1 streams that are not in first position.

Conclusion (at last :))

With more than one audio streams.

Using Zoomplayer to change between audio streams, the first stream always sounds correctly and the others only sounds in the FR, FL & LFE speakers (In FL speaker: FL & SL (very low) channels. In FR speaker: FR, Center (very low) & SR (very low) channels. In LFE speaker: LFE channel).

Using MPC no channel problems with any audio stream. Only stutering problems when seeking while AC3 audio.

I hope that when matroska support audio stream changing, no one of this problems exists.

One question. If i make a mkv with some 5.1 audio streams, there will be any problem with the new matroska filters?

Hope you've understood my english ;)

bye

ChristianHJW
29th June 2003, 22:23
Originally posted by Palikrovol I hope that when matroska support audio stream changing, no one of this problems exists.
Yes, thats the goal.
One question. If i make a mkv with some 5.1 audio streams, there will be any problem with the new matroska filters?
Not at all, the files are fine, and you can play them fine on every other player also, like mplayer or VLC ...

wiflye81
3rd July 2003, 11:45
Hi,
I can't DL the new corevorbis beta ( server busy all time ), can anyone post it here please ?

Bluedan
3rd July 2003, 15:27
damn, screwed, I cannot find my corevorbis folder anymore.
Is there anywhere a mirror for latest version, because http://corevorbis.corecodec.org/CoreVorbis_1.0b5_20030618.exe is down for me ATM...

[Toff]
3rd July 2003, 20:11
Here is a mirror
CoreVorbis 1.0 Beta 5 (with installer) (http://christophe.paris.free.fr/temp/matroska/CoreVorbis_1.0b5_20030618.exe)

CoreVorbis 1.0 Beta 5 (without installer) (http://christophe.paris.free.fr/temp/matroska/CoreVorbis_1.0b5_20030618.zip)

wiflye81
3rd July 2003, 21:04
thanks a lot.
btw, why we can't access corecodec projects pages ?

ChristianHJW
3rd July 2003, 22:17
we get a new server .....

wiflye81
4th July 2003, 00:14
that's a very good news.

Malow
14th July 2003, 07:07
Hi guys, thanks for your work.

To Toff,

i have a little question, with Corevorbis.
the sound looks good if cheched 16bits output, but with 32, the sound looks like a TV in channel 0: SHXXSXSXHHHHHHHHHHHHHH!!!!!!!!!!!!

is normal? i have a 5.1 live! card.. :)

Malow

Bluedan
22nd August 2003, 23:56
Any ongoing here?
I still run into problems using Corevorbis 1.0b5 and mkv containing OGG Vorbis audio streams.
Compared to former experiences CoreMediaPlayer as RC4 does not close anymore when opening file, but A/V is unsynch.
BSplayer 0.86-501 still crashes.
Situation is a bit confusing to conclude from because I updated the mkvmuxer and ~splitter as well from gulliverkli page.

Did anybody have the same experience ?

Dima
25th August 2004, 21:48
You can get CoreVorbis 1.0 (not beta):
Here (http://corecodec.org/projects/corevorbis/)
Released notes:
Fixed bug when only start timestamp is set.

Defiler
25th August 2004, 21:50
Awesome. Thanks.

callmeace
27th August 2004, 19:42
I got the new corevorbis - THANKYOU Corecodec team!:)

Bluedan
31st August 2004, 13:09
Hm.Unable to reach site at http://corecodec.org/projects/corevorbis/. Is it down?


>EDIT>---Hell, no. But my firewall was nasty...<EDIT<