Log in

View Full Version : madFlac - new DirectShow FLAC source filter + decoder


Pages : 1 2 3 [4] 5 6 7 8 9 10 11

madshi
19th January 2008, 22:24
Finally got around testing madFlac with an 8 channel test file. I even downloaded the very same madFlac.rar file linked in the first post of this thread - and I'm getting all 8 channels out just fine. Don't know what you guys are doing. Have you accidently activated the "limit to 5.1" option? Please make sure that this option is turned off on the madFlac properties page. If you've done that and you still don't get 7.1 output, please fire up graphedit, drop the FLAC file in there and connect it to the Dump filter. Then run the RAW file through eac3to to create a WAV file. Then check the resulting WAV file in Audacity. I'm getting full 7.1 channels this way.

rickardk
20th January 2008, 01:07
Finally got around testing madFlac with an 8 channel test file. I even downloaded the very same madFlac.rar file linked in the first post of this thread - and I'm getting all 8 channels out just fine. Don't know what you guys are doing. Have you accidently activated the "limit to 5.1" option? Please make sure that this option is turned off on the madFlac properties page. If you've done that and you still don't get 7.1 output, please fire up graphedit, drop the FLAC file in there and connect it to the Dump filter. Then run the RAW file through eac3to to create a WAV file. Then check the resulting WAV file in Audacity. I'm getting full 7.1 channels this way.


Yes 8 channels. But just 6 contains data. "limit to 5.1" turned off. When "limit to 5.1" is turned on madFlac just outputs 6 channels. With "limit to 5.1" turned of it outputs 8 channels but just 6 of them contains data. If the same file is decoded with ffdshow all 8 channels are decoded.

A easy way to test if you get signal from sideL and sideR is to use the mixer in ffdshow. Make sure that ffdshow is enabled for uncompressed audio (codec setting uncompressed). ffdshow then connects after madFlac and you can create a custom matrix in the mixer to map sideL and sideR to any channel.


When doing the graphedit method you descibed I do get all 8 channels decoded (I can see waveform in audacity). Hmm....but when using madFlac (without ffdshow in the graph) with Vista Media Center or Media Player I just get 6 channels decoded. When I place ffdshow in the graph I also just get 6 channels (but ffdshow reports that the input is 8 channels uncompressed)

madshi
20th January 2008, 10:04
Yes 8 channels. But just 6 contains data. "limit to 5.1" turned off. When "limit to 5.1" is turned on madFlac just outputs 6 channels. With "limit to 5.1" turned of it outputs 8 channels but just 6 of them contains data. If the same file is decoded with ffdshow all 8 channels are decoded.

A easy way to test if you get signal from sideL and sideR is to use the mixer in ffdshow. Make sure that ffdshow is enabled for uncompressed audio (codec setting uncompressed). ffdshow then connects after madFlac and you can create a custom matrix in the mixer to map sideL and sideR to any channel.


When doing the graphedit method you descibed I do get all 8 channels decoded (I can see waveform in audacity). Hmm....but when using madFlac (without ffdshow in the graph) with Vista Media Center or Media Player I just get 6 channels decoded. When I place ffdshow in the graph I also just get 6 channels (but ffdshow reports that the input is 8 channels uncompressed)
I've no idea what madFlac could be doing wrong. Everything looks correct to me. Can you please try extracting the FLAC track to a standalone file and then play that? Does it show the same problems? Also please compare the connection information (e.g. in MPC) between ffdshow and madFlac to check if you find any differences.

madFlac is outputting WAVE_FORMAT_EXTENSIBLE. Maybe ffdshow is outputting WAVE_FORMAT_PCM instead? That might explain the differences. However, WAVE_FORMAT_EXTENSIBLE is what Microsoft recommends to be used!

rickardk
20th January 2008, 22:32
How can I playback a raw .flac?

nautilus7
20th January 2008, 22:35
Just open it with the media player you use.

rickardk
20th January 2008, 22:36
Just open it with the media player you use.


Does not work. Maybe it does not support 8 channel flacs?

nautilus7
20th January 2008, 22:38
What? The media player? Which is that btw?

rickardk
20th January 2008, 22:40
What? The media player? Which is that btw?

WMP11. We are trying to figure out why madFlac does not output all 8 channel from 8 channel flacs in mkv.
Just converted the audio stream from 3:10 to yuma and should try to play it back without putting it in a mkv

nautilus7
20th January 2008, 22:44
By "what" i meant "it" in you sentence: Maybe it does not....
What does not support 8 ch flac?

Do you really use wmp11 for your videos? Get mpc and test it.

rickardk
20th January 2008, 22:52
By "what" i meant "it" in you sentence: Maybe it does not....
What does not support 8 ch flac?

Do you really use wmp11 for your videos? Get mpc and test it.

As I use Vista Media Center becuase it integrates with my home control (mControl, Z-Wave and X10). Also VMC handles my power amp, receiver and so on.

Just downloaded mpc (are we talking about the same app? media player classic 6.4.9.1). Will give it a try.

Thanks for all your support btw.

nautilus7
20th January 2008, 22:56
Yes, the updated one: http://sourceforge.net/project/showfiles.php?group_id=205650

You 're welcome.

rickardk
20th January 2008, 23:02
Yes, the updated one: http://sourceforge.net/project/showfiles.php?group_id=205650

You 're welcome.

Yes that's the one. But it will not play my 8ch flac...

nautilus7
20th January 2008, 23:08
Well, can't help you further, but... you can send me a sample to test my self (i don't have any 8ch tracks).

rickardk
20th January 2008, 23:11
Well, can't help you further, but... you can send me a sample to test my self (i don't have any 8ch tracks).

That would be very helpful. Remuxing a title as we speak. Taking longer then usual with new eac3to version.
Will upload a sample to my server when finished. Thanks alot!

rickardk
21st January 2008, 00:06
Ok so now I played back the 8ch flac without putting it in a container. When using WMP11 or MPC I just got 6 channels. BUT when using the mixer matrix enabled in MPC I got all 8 decoded and connected to my soundcard. That should indicate that it is the connection between madFlac and the audio renderer that's not working?

btw 8ch sample can be found here (uploading right now):
www.earselect.se/sample.flac

madshi
21st January 2008, 08:11
Can you please post the connection information between madFlac and the Audio renderer. And the same information between mixer matrix and Audio renderer? You can do so by right clicking on the (empty) video in MPC, then choose "Filters -> Audio Renderer" (or however the Audio Renderer ist called in your case). Then click on the "Pin Info" tab and post the text between:

(1) - Connection media type:

and:

(2) - Enumerated media type 0:

rickardk
21st January 2008, 08:38
This is with madFlac:
----------------------------------------------------------
CLSID: {79376820-07D0-11CF-A24D-0020AFD79767}
Filter: Default DirectSound Device

- Connected to:

CLSID: {18C16B08-6497-420E-AD14-22D21C2CEAB7}
Filter: Audio Switcher
Pin: Out

- Connection media type:

Audio: WAVE_FORMAT_EXTENSIBLE 48000Hz 8ch 6144Kbps

AM_MEDIA_TYPE:
majortype: MEDIATYPE_Audio {73647561-0000-0010-8000-00AA00389B71}
subtype: MEDIASUBTYPE_PCM {00000001-0000-0010-8000-00AA00389B71}
formattype: FORMAT_WaveFormatEx {05589F81-C356-11CE-BF01-00AA0055595A}
bFixedSizeSamples: 1
bTemporalCompression: 0
lSampleSize: 1
cbFormat: 40

WAVEFORMATEX:
wFormatTag: 0xfffe
nChannels: 8
nSamplesPerSec: 48000
nAvgBytesPerSec: 768000
nBlockAlign: 16
wBitsPerSample: 16
cbSize: 22 (extra bytes)

WAVEFORMATEXTENSIBLE:
wValidBitsPerSample: 16
dwChannelMask: 0x000000ff
SubFormat: {00000001-0000-0010-8000-00AA00389B71}

pbFormat:
0000: fe ff 08 00 80 bb 00 00 00 b8 0b 00 10 00 10 00 þÿ..€»...¸......
0010: 16 00 10 00 ff 00 00 00 01 00 00 00 00 00 10 00 ....ÿ...........
0020: 80 00 00 aa 00 38 9b 71 €..ª.8›q

- Enumerated media type 0:

Audio

AM_MEDIA_TYPE:
majortype: MEDIATYPE_Audio {73647561-0000-0010-8000-00AA00389B71}
subtype: TIME_FORMAT_NONE {00000000-0000-0000-0000-000000000000}
formattype: TIME_FORMAT_NONE {00000000-0000-0000-0000-000000000000}
bFixedSizeSamples: 1
bTemporalCompression: 0
lSampleSize: 1
cbFormat: 0




This is with ffdshow:
----------------------------------------------------------
CLSID: {79376820-07D0-11CF-A24D-0020AFD79767}
Filter: Default DirectSound Device

- Connected to:

CLSID: {18C16B08-6497-420E-AD14-22D21C2CEAB7}
Filter: Audio Switcher
Pin: Out

- Connection media type:

Audio: WAVE_FORMAT_EXTENSIBLE 48000Hz 8ch 6144Kbps

AM_MEDIA_TYPE:
majortype: MEDIATYPE_Audio {73647561-0000-0010-8000-00AA00389B71}
subtype: MEDIASUBTYPE_PCM {00000001-0000-0010-8000-00AA00389B71}
formattype: FORMAT_WaveFormatEx {05589F81-C356-11CE-BF01-00AA0055595A}
bFixedSizeSamples: 1
bTemporalCompression: 0
lSampleSize: 1
cbFormat: 40

WAVEFORMATEX:
wFormatTag: 0xfffe
nChannels: 8
nSamplesPerSec: 48000
nAvgBytesPerSec: 768000
nBlockAlign: 16
wBitsPerSample: 16
cbSize: 22 (extra bytes)

WAVEFORMATEXTENSIBLE:
wValidBitsPerSample: 16
dwChannelMask: 0x0000063f
SubFormat: {00000001-0000-0010-8000-00AA00389B71}

pbFormat:
0000: fe ff 08 00 80 bb 00 00 00 b8 0b 00 10 00 10 00 þÿ..€»...¸......
0010: 16 00 10 00 3f 06 00 00 01 00 00 00 00 00 10 00 ....?...........
0020: 80 00 00 aa 00 38 9b 71 €..ª.8›q

- Enumerated media type 0:

Audio

AM_MEDIA_TYPE:
majortype: MEDIATYPE_Audio {73647561-0000-0010-8000-00AA00389B71}
subtype: TIME_FORMAT_NONE {00000000-0000-0000-0000-000000000000}
formattype: TIME_FORMAT_NONE {00000000-0000-0000-0000-000000000000}
bFixedSizeSamples: 1
bTemporalCompression: 0
lSampleSize: 1
cbFormat: 0





Under advanced the buffers goes to 80% with madFlac and 100% with ffdshow.

With madFlac

rickardk
21st January 2008, 08:42
madflac
----------------------------------------------------------
CLSID: {18C16B08-6497-420E-AD14-22D21C2CEAB7}
Filter: Audio Switcher

- Connected to:

CLSID: {6B257121-CBB6-46B3-ABFA-B14DFA98C4A6}
Filter: madFlac Decoder
Pin: pcm

- Connection media type:

Audio: WAVE_FORMAT_EXTENSIBLE 48000Hz 8ch 6144Kbps

AM_MEDIA_TYPE:
majortype: MEDIATYPE_Audio {73647561-0000-0010-8000-00AA00389B71}
subtype: MEDIASUBTYPE_PCM {00000001-0000-0010-8000-00AA00389B71}
formattype: FORMAT_WaveFormatEx {05589F81-C356-11CE-BF01-00AA0055595A}
bFixedSizeSamples: 1
bTemporalCompression: 0
lSampleSize: 1
cbFormat: 40

WAVEFORMATEX:
wFormatTag: 0xfffe
nChannels: 8
nSamplesPerSec: 48000
nAvgBytesPerSec: 768000
nBlockAlign: 16
wBitsPerSample: 16
cbSize: 22 (extra bytes)

WAVEFORMATEXTENSIBLE:
wValidBitsPerSample: 16
dwChannelMask: 0x000000ff
SubFormat: {00000001-0000-0010-8000-00AA00389B71}

pbFormat:
0000: fe ff 08 00 80 bb 00 00 00 b8 0b 00 10 00 10 00 þÿ..€»...¸......
0010: 16 00 10 00 ff 00 00 00 01 00 00 00 00 00 10 00 ....ÿ...........
0020: 80 00 00 aa 00 38 9b 71 €..ª.8›q








ffdshow
----------------------------------------------------------
CLSID: {18C16B08-6497-420E-AD14-22D21C2CEAB7}
Filter: Audio Switcher

- Connected to:

CLSID: {0F40E1E5-4F79-4988-B1A9-CC98794E6B55}
Filter: ffdshow Audio Decoder
Pin: Out

- Connection media type:

Audio: WAVE_FORMAT_EXTENSIBLE 48000Hz 8ch 6144Kbps

AM_MEDIA_TYPE:
majortype: MEDIATYPE_Audio {73647561-0000-0010-8000-00AA00389B71}
subtype: MEDIASUBTYPE_PCM {00000001-0000-0010-8000-00AA00389B71}
formattype: FORMAT_WaveFormatEx {05589F81-C356-11CE-BF01-00AA0055595A}
bFixedSizeSamples: 1
bTemporalCompression: 0
lSampleSize: 1
cbFormat: 40

WAVEFORMATEX:
wFormatTag: 0xfffe
nChannels: 8
nSamplesPerSec: 48000
nAvgBytesPerSec: 768000
nBlockAlign: 16
wBitsPerSample: 16
cbSize: 22 (extra bytes)

WAVEFORMATEXTENSIBLE:
wValidBitsPerSample: 16
dwChannelMask: 0x0000063f
SubFormat: {00000001-0000-0010-8000-00AA00389B71}

pbFormat:
0000: fe ff 08 00 80 bb 00 00 00 b8 0b 00 10 00 10 00 þÿ..€»...¸......
0010: 16 00 10 00 3f 06 00 00 01 00 00 00 00 00 10 00 ....?...........
0020: 80 00 00 aa 00 38 9b 71 €..ª.8›q

madshi
21st January 2008, 09:05
Thank you. It seems that the channel mask value used by madFlac for 8 channels is incorrect.

madshi
21st January 2008, 09:06
madFlac v1.6 released

http://madshi.net/madFlac.rar

fixed channel assignment for 8 channels

nautilus7
21st January 2008, 11:51
I just installed v1.6. What it this 1,2,3,4,5,6 thing that pop ups when i open the properties tab?

rickardk
21st January 2008, 12:07
THANK YOU!
All 8 channels working!!!

madshi
21st January 2008, 12:08
I just installed v1.6. What it this 1,2,3,4,5,6 thing that pop ups when i open the properties tab?
That is me being stupid... :o

nautilus7
21st January 2008, 12:52
That is me being stupid... :oWe forgive you. :p

madshi
21st January 2008, 14:03
madFlac v1.7 released

http://madshi.net/madFlac.rar

debug messages "1"-"6" removed.

nautilus7
21st January 2008, 14:05
Thanks!

Mercury_22
28th January 2008, 16:45
Any chance for a x64 version ? :)

Please ! (for Vista's x64 WMC) :thanks:

madshi
28th January 2008, 19:47
Nope, that's not possible because madFlac was written in Delphi and Delphi doesn't support native 64bit compiling yet.

Mercury_22
30th January 2008, 10:10
So , We have to wait for Delphi to "support native 64bit compiling" ? Or not even then ? :script: :confused:

madshi
30th January 2008, 11:16
So , We have to wait for Delphi to "support native 64bit compiling" ? Or not even then ? :script: :confused:
When Delphi supports native 64bit compiling, there's still the problem that the DirectShow base classes I'm using would have to be updated to 64bit, too, before I can even start thinking about a 64bit madFlac. So there's no hope to get madFlac 64bit anytime soon.

clsid
30th January 2008, 11:44
The DS baseclasses from Windows SDK 6 can be compiled to a 64-bit lib.

madshi
30th January 2008, 11:52
The DS baseclasses from Windows SDK 6 can be compiled to a 64-bit lib.
But I cannot use MS "lib" files in Delphi, unfortunately.

Thunderbolt8
10th February 2008, 18:51
have a problem with the queen montreal blu-ray when I convert both tracks (dtshd and pcm) to flac and put them together in 1 mkv with the video. when I select the 2nd flac track then (the pcm track in this case) theres lots of strange noise and the video gets speed up to 30-60 fps. the track itself is fine though, plays fine in winamp, and also when I mux it alone with the video together, without the other flac track.
this problem doesnt occur when I use ffdshow audio to decode, then both audio tracks inside that .mkv play back fine.

I also had this problem back earlier when I for converted eac3 tracks to flac and then had a movie with an additional eac3 commentary track (eternal sunshine on the spotless mind hd dvd), then I had the same problem when I switched to that commentary track. afaik back then I used coreflac and not madflac, but I guess the problem just occurs with both decoders as soon as there is more than 1 flac track inside the .mkv. so to reproduce this it should actually work by taking a movie and converting 2 tracks to flac and mux both together with the video to .mkv.

heres a sample of my 2 flac mkv remux: http://www.sendspace.com/file/6ofko8

Thunderbolt8
15th February 2008, 21:35
any news on that problem?

Thunderbolt8
17th February 2008, 18:09
I remuxed the life of brian blu-ray now with 2 dubbing flac tracks, in this case it works fine with madflac for both tracks. but still, in case of the queen blu-ray it doesnt, there it works only with ffdshow audio for the 2nd track.

madshi
17th February 2008, 19:21
The problem probably occurs if the two FLAC tracks have different properties (e.g. different number of channels, different sampling rate etc).

Thunderbolt8
17th February 2008, 22:06
so its only a minor bug?

frenchglen
20th February 2008, 04:15
hey madshi - can madflac play dts-encoded flac (i.e. dts-wav which has been flac'ed)? There's no tool that I know of that can do this yet.

It would obviously need to decode the flac then detect that it's not ordinary WAV and therefore decode the DTS, rather than giving out noise.

madshi
20th February 2008, 09:10
so its only a minor bug?
How do you define "minor"? In programming time? Or by how much it bothers you?

hey madshi - can madflac play dts-encoded flac (i.e. dts-wav which has been flac'ed)? There's no tool that I know of that can do this yet.

It would obviously need to decode the flac then detect that it's not ordinary WAV and therefore decode the DTS, rather than giving out noise.
I've never even heard that you would use FLAC to encode DTS-WAV. Why would anyone do that?

frenchglen
20th February 2008, 11:27
I've never even heard that you would use FLAC to encode DTS-WAV. Why would anyone do that?
The only reason (but it's a pretty good reason) is that FLAC has the ability to add meta data (artist info), hence it is the best lossless format for your personal ripped media library. (we had this conversation before, and I now definitely like FLAC as a format in the end).

I think it also saves a little space, a small percentage.

Thunderbolt8
20th February 2008, 12:03
How do you define "minor"? In programming time? Or by how much it bothers you?
programming time. but it bothers me really much :P

madshi
20th February 2008, 12:23
The only reason (but it's a pretty good reason) is that FLAC has the ability to add meta data (artist info), hence it is the best lossless format for your personal ripped media library. (we had this conversation before, and I now definitely like FLAC as a format in the end).
Can you upload a little sample?

programming time. but it bothers me really much :P
I'll see what I can do. Not sure how much programming time it will cost.

woeds
24th February 2008, 16:17
Hi,

First of all, thank you for all the time you've spent on this great filter so far. Although it works fine for playing back the FLAC files, I still have a little problem in combination with WMP11.
When I associate .flac with WMP, and click on a FLAC file, the file plays fine and the seeking bar works. When I select FLAC file from the WMP library seeking doesn't work.

Is this a madflac or WMP problem?

Thunderbolt8
4th March 2008, 00:59
I'll see what I can do. Not sure how much programming time it will cost.
did you have already time tp look into that? I would really like to see more than 1 flac track with different specs working for HD concerts as especially with older ones the 2.0 track is still the one which offers the best sound quality.

thanks!

madshi
10th March 2008, 20:13
Sorry guys,

was planning to release a new madFlac version yesterday, but didn't manage to. Hopefully next week...

buzzqw
10th March 2008, 21:20
whould be possible to have madflac as filter for avisynth ?
like nicaudio ?

BHH

Thunderbolt8
10th March 2008, 22:44
thanks!

benfp
11th March 2008, 17:56
Hi,

First of all, thank you for all the time you've spent on this great filter so far. Although it works fine for playing back the FLAC files, I still have a little problem in combination with WMP11.
When I associate .flac with WMP, and click on a FLAC file, the file plays fine and the seeking bar works. When I select FLAC file from the WMP library seeking doesn't work.

Is this a madflac or WMP problem?

Would there be any news about that problem? I believe this problem origin comes from the wmp database which is unable to correctly register FLAC files length (it will register 0:00 instead) while it still can read it. I don't really get why it should be able to READ it while it couldn't SAVE it in a DB, still the issue must have some pretty simple explanation.
If you can't correct it, could you at least explain it?

Also, I'm using WMP for its powerful metadata searcher, which could still be enhanced. So, do you know a good starting place (beside MSDN) to start coding WMP plugins or whatever? I'd like to add the possibility of creating your own views, creating more customized researchs, exporting/importing database information, etc.

Best regards and keep up the really GREAT work.

Ben

madshi
11th March 2008, 19:29
I've no idea about the WMP problem and I also have no idea how to create WMP plugins, sorry.

About Avisynth: Don't know how to create Avisynth plugins, either...

frenchglen
1st April 2008, 23:48
Madshi, you must have added DTS-encoded FLAC support, or something weird's happening, because I can play it back using madflac in media player classic. which is GREAT. Or perhaps I'm using a combination of filters...quite honestly, I don't really know what I'm doing! But it's working...