Log in

View Full Version : ffdshow tryouts project: Discussion & Development


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 [72] 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308

Liisachan
9th May 2008, 13:31
Thank you, clsid!

Additional info:
- Enable VMR9 Mixer mode and I see this problem. If uncheck that , the problem is gone. So I tend to think now this is MPC's problem.

- both internal and Haali's MatroskaSplitter have the same problem, so Splitter is not related.

I have this same problem on 2 PCs. One has nVidia quadro fx 500, the other nVidia GeForce 8400GS.

fastplayer
9th May 2008, 13:43
Enable VMR9 Mixer mode and I see this problem.
Yep, now subs are out of sync.
Output colorspace doesn't matter, by the way.

haruhiko_yamagata
9th May 2008, 14:53
Thanks, I can reproduce now.

Keepitsimple
11th May 2008, 12:58
When is it time for the next beta release?

Excellent work so far!

ImAhNoBoDy
11th May 2008, 20:46
Does ffdshow create thumbnails for avi files? Cause I notice when I encode a new avi file that ffdshow appears and goes away real fast and my thumbnail is created. I was wondering why it doesn't work for ogm or mkv files?

clsid
11th May 2008, 23:38
Thumbnail generation is done by a shell extension of Explorer. It is possible to activate it for any file extension using a simple registry tweak:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.flv\ShellEx\{BB2E617C-0920-11D1-9A0B-00C04FC2D6C1}]
@="{c5a40261-cd64-4ccf-84cb-c394da41d590}"

ImAhNoBoDy
12th May 2008, 06:18
Hm....I'm not sure if it's Vista or not, but the thumbnails don't show for it. I know I can use the Haali reg hack for it, but I can't seem to get it to work without it. Even .flv files don't create a thumbnail.

TheShadowRunner
12th May 2008, 10:52
small cosmetic bug
on the "Preset autoload conditions" window, it says :
- On one of the conditoins match (OR)

small request (for Haruhiko i think)
In the Subtitles settings, could we have a feature to temporarily disable FFDshow internal subtitle support if Directvobsub is detected in the graph?

I tried to do this by setting 2 profiles.
In the first one, i have "Subtitles" enabled.
In the second one, I disabled "Subtitles" and enabled the following condition:
"on a DirectShow filter presence" = DirectVobSub

Then enabled "Automatic preset loading" but it just doesn't work, Subtitles are always enabled regardless if DirectVobSub is present in the graph or not.. (the 2nd profile is never automatically loaded)

See you,

TSR

MatMaul
12th May 2008, 19:31
Confirmed. The only change to MPC in that period that is related to the above is this one:
http://guliverkli2.svn.sourceforge.net/viewvc/guliverkli2?view=rev&revision=44

I don't see any obvious bugs in that revision. Maybe someone else is able to spot it.
the problem does not come frome that rev, mplayerc_20080127 (something like rev36) has the same bug.

monohouse
13th May 2008, 02:14
I was wondering, in the ffdshow audio decoder, when input sample format is not equal output sample format and also at the same time there is a few mixer operations inbetween, is the mixing performed before the sample format conversion or after ?

and what can help indicate that results are bit-identical ?

I am using madflac to decode and selected uncompressed in ffdshow audio decoder to use the mixer to convert 5.1 into 2.0, but I am unsure as to what happens in the ffdshow decoder to know what is best, to loose some data in the extra channels or go through sample format covertion, knowing the signal flow would help me decide what is better

Inventive Software
13th May 2008, 02:19
I'm not sure what you're after. Sample conversion is, AFAIK, never applied. Down-mixing's done at the input sample rate, there is no conversion.

monohouse
13th May 2008, 04:55
then maybe I missed something, how is it that in the Output menu when I choose different sample formats the sound changes and you can hear it

haruhiko_yamagata
13th May 2008, 15:05
small cosmetic bug
on the "Preset autoload conditions" window, it says :
- On one of the conditoins match (OR)
Thank you. I have fixed just now.

small request (for Haruhiko i think)
In the Subtitles settings, could we have a feature to temporarily disable FFDshow internal subtitle support if Directvobsub is detected in the graph?

I tried to do this by setting 2 profiles.
In the first one, i have "Subtitles" enabled.
In the second one, I disabled "Subtitles" and enabled the following condition:
"on a DirectShow filter presence" = DirectVobSub

Then enabled "Automatic preset loading" but it just doesn't work, Subtitles are always enabled regardless if DirectVobSub is present in the graph or not.. (the 2nd profile is never automatically loaded)

See you,

TSR"on a DirectShow filter presence" is incomplete. The preset automatic loading is applied at the early point of DirectShow filter connection. ffdshow is not connected to downstream when the preset settings are loaded.

saint-francis
14th May 2008, 01:17
Why is it that when I install ffdshow avisynth doesn't work for me any more?

I get this using DGDecode_mpeg2source

LoadPlugin: unable to get plugin list $Plugins$, loading "C:\etc\etc\DGDecode,dll"

and this using directshowsource

Evaluate: system exception - access violation (path\to\script.avs)

Leak
14th May 2008, 09:14
Why is it that when I install ffdshow avisynth doesn't work for me any more?
Did you install the ffdshow AviSynth plugin which lets you use ffdshow's filters in AviSynth? Maybe it's falling over on your machine for some reason.

While it's a C plugin called ffavisynth.dll that doesn't (or at least shouldn't) get loaded automatically, ffdshow also installs an ffavisynth.avsi file into AviSynth's plugin directory what uses Load_Stdcall_Plugin to load ffavisynth.dll.

Try renaming the avsi file, and if that doesn't work try moving both files out of AviSynth's plugins folder. I have to say though that I don't have a problem with both here...

saint-francis
14th May 2008, 16:09
Did you install the ffdshow AviSynth plugin which lets you use ffdshow's filters in AviSynth?

Yes I did


Try renaming the avsi file, and if that doesn't work try moving both files out of AviSynth's plugins folder. I have to say though that I don't have a problem with both here...

I did that and I still had some serious problems. I started getting all kinds of errors saying that I was missing all kinds of .ddl's like MSVCP71.dll. I uninstalled FFDShow... still problems. I reinstalled....still problems. I ended up installing an Acronis back up to fix this all.
BTW the previous installation of FFDShow was on a fresh installation of XP SP3.

jmartinr
14th May 2008, 16:30
Just installed latest ffdshow build: ffdshow_rev1958_20080514_clsid.exe and playback of h264 is broken (blocks and errors in MPC). Reverting to 1943 re-enabled normal playback. Test files are at: http://www.nkbv.nl/sportklimmen/media/wedstrijdvideos/4237.html

gruppo_sd
14th May 2008, 16:32
With the last release of CLSID unable to play H264, works fine with previous.
Win xp sp3 gforce 8600gt-175.16whql

clsid
14th May 2008, 17:45
It is a bug in the multi-threading code. Set the number of threads to 1 and it will play ok.

I will revert the changes and upload a new build.

TheShadowRunner
14th May 2008, 19:39
Thank you. I have fixed just now.
"on a DirectShow filter presence" is incomplete. The preset automatic loading is applied at the early point of DirectShow filter connection. ffdshow is not connected to downstream when the preset settings are loaded.

Thanks for explaining, I get it. ;)
Is there any solution you can think of to temporarily & automatically disable FFDShow internal Subtitles treatment if Directvobsub comes next in the graph (after ffdshow)?
An option to do so in the Subtitles settings page would be nice if not ^^
See you,

TSR

fastplayer
15th May 2008, 12:53
DivX H.264 Decoder Beta 1 (http://labs.divx.com/node/6443)

http://labs.divx.com/files/pictures/DH264_Beta1_Chart5.png

That's some really nice scaling they're using for the bar chart. Makes ffdshow look as if it's over 50% slower than the commercial solutions... :rolleyes:

sheppaul
15th May 2008, 15:19
DivX H.264 Decoder Beta 1 (http://labs.divx.com/node/6443)

http://labs.divx.com/files/pictures/DH264_Beta1_Chart5.png

That's some really nice scaling they're using for the bar chart. Makes ffdshow look as if it's over 50% slower than the commercial solutions... :rolleyes:

Oops! It confuses me. :eek:

leeperry
15th May 2008, 15:36
and it's a single CPU test.

one can guess the gap is not that big with dualcore ;)

Dark Shikari
15th May 2008, 15:39
and it's a single CPU test.

one can guess the gap is not that big with dualcore ;)The gap is much larger with dual-core because FFDshow isn't fully multithreaded ;)

leeperry
15th May 2008, 15:55
anyhow, speed means nothing.

I really don't like how CoreAVC decodes.....like it's lacking high frequency details.

nothing beats ffdshow, quality wise :)

Dark Shikari
15th May 2008, 16:01
anyhow, speed means nothing.

I really don't like how CoreAVC decodes.....like it's lacking high frequency details.

nothing beats ffdshow, quality wise :)As far as I know CoreAVC's output is bit-accurate as it should be.

DivX's decoder not only matches FFDshow in output: it actually makes some of the same mistakes FFDshow does too.

Inventive Software
15th May 2008, 16:12
There may be some license issues creeping in there I feel. :)

leeperry
15th May 2008, 16:18
As far as I know CoreAVC's output is bit-accurate as it should be.

well I don't like the way CoreAVC deblocks I think.

and I'm not the only one who prefers ffdshow for x264 ?!

well the DivX empire was built on a cracked beta ASF .dll, why not stealing from ffdshow now :D

Dark Shikari
15th May 2008, 16:18
There may be some license issues creeping in there I feel. :)You better not start accusing them of code-stealing, because ffdshow/ffmpeg is not exactly innocent of this either ;)
well I don't like the way CoreAVC deblocks I think.Again, deblocking is specified by the standard. It won't vary between decoders.

Inventive Software
15th May 2008, 16:22
I wasn't accusing them of anything, but if it's base-lined off ffmpeg's decoder, then all credit to them for improving it so damn much!

Shinigami-Sama
15th May 2008, 21:16
anyhow, speed means nothing.

I really don't like how CoreAVC decodes.....like it's lacking high frequency details.

nothing beats ffdshow, quality wise :)

you're just picky

coreand ffsahow output the same picture, anything else how ever you're filtering it and what your drivers do to it

leeperry
15th May 2008, 21:25
you're just picky

coreand ffsahow output the same picture, anything else how ever you're filtering it and what your drivers do to it

oh yes, I'm SO picky :D

and I'm not the only one who prefers ffdshow, far from it.

just a random example :
http://www.avsforum.com/avs-vb/archive/index.php/t-920229.html

Yeah, they should but they aint. As can be read in many places, CoreAVC while fastest seems to have lower quality. It takes some shortcuts to be so fast, and PQ suffers.

I have to admit, I don't use crappy LCD based displays.
only CRT and DLP projectors with high resolution glass optics.

I find that CoreAVC messes around with the picture grain :eek:

3ngel
17th May 2008, 12:26
I want to signal a color bug with a YV16 input (latest Elecard Mpeg2 Decoder).

This is the result

http://img216.imageshack.us/img216/7957/snapshot20080516232337pgz3.png

Hope this will be fixed.

Thanks

Thunderbolt8
18th May 2008, 03:58
anyhow, speed means nothing.

I really don't like how CoreAVC decodes.....like it's lacking high frequency details.

nothing beats ffdshow, quality wise :)
exactly, quality is more important. CPUs get faster anyway, so the focus on quality is why im still with ffdshow.

cc979
18th May 2008, 06:23
i got a problem compiling ffdshow-tryout svn 1964

it would not do a make clean

$ make clean
makefile.inc:75: *** missing `endif'. Stop.

had to remove a # from line 20 for it to start to compile but

i still get this error

make -C imgFilters
make[1]: Entering directory `/home/User/svn/ffdshow-tryout/ffdshow-tryout/src/imgFilters'
gcc -c -mno-cygwin -mdll -fno-rtti -mthreads -pipe -D_WINGDI_ -DUCLIBCPP -D_GLIBCPP_HAVE_MBSTATE_T -D_WIN32_IE=0x0500 -DHAVE_MMX -DARCH_IS_IA32 -DARCH_IS_32BIT -mmmx -msse -mfpmath=sse -w -DNDEBUG -UDEBUG -DFFDEBUG=0 -I. -I.. -Iuclibc++ -Ibaseclasses -I../baseclasses -IimgFilters -I../imgFilters -Implayer -I../mplayer -Isettings -I../settings -Isettings/filters -I../settings/filters -Icodecs -I../codecs -Isubtitles -I../subtitles -Iconvert -I../convert -Idialog -I../dialog -IaudioFilters -I../audioFilters -Icygwin -I../cygwin -Iffmpeg -I../ffmpeg -Iacm -I../acm -Ifilters -I../filters -Imuxers -I../muxers -I/dx/Include -L/dx/MingLib -ldx9 -O3 -fomit-frame-pointer -march=i686 -MMD -o ffdshow_imgfilters_all.o ffdshow_imgfilters_all.cpp
gcc.exe: -ldx9: linker input file unused because linking not done
make[1]: *** No rule to make target `../ffmpeg/libavcodec/i386/skl_dct_sse.o', needed by `.all'. Stop.
make[1]: Leaving directory `/home/User/svn/ffdshow-tryout/ffdshow-tryout/src/imgFilters'
make: *** [lib] Error 2


any clues, i am doing something wrong now ?

cheers

*updated
i managed to get a sucessful compile by do this

src\imgFilters\makefile

had to change line 7 & 8 to

SRCS_NASM=skal/skl_dct_sse.asm \
skal/skl_fdct_mmx.asm \


and

src\makefile

had to change line 61 & 62 and blank line 63

imgFilters/simple_idct_mmx.o imgFilters/Skal/skl_dct_sse.o \
imgFilters/Skal/skl_fdct_mmx.o \

and moved at line 211 to the top
ifeq ($(64BIT),yes)
TARGET_OS=i686-pc-mingw64
else
TARGET_OS=i686-pc-mingw32
endif



and

src\makefile_C.inc

line 11 into
TARGET_OS=i686-pc-mingw64

line 13
TARGET_OS=i686-pc-mingw32

madshi
18th May 2008, 08:50
To the ffdshow developers:

I think there is a need for discussion about the correct channel mask for 5.1 and 6.1 channels.

http://www.microsoft.com/whdc/device/audio/multichaud.mspx
http://msdn.microsoft.com/en-us/library/aa474707.aspx

It seems to me that ffdshow often uses WAVE_FORMAT_PCM, so there's no channel mask at all. But which channel mask are you using if you use WAVE_FORMAT_EXTENSIBLE? I think the default for 5.1 used to be 0x3f, right? According to newest MS headers this channel mask seems to be obsolete and 0x60f seems to be recommended now. See ksmedia.h here:

// DirectSound Speaker Config
#if (NTDDI_VERSION >= NTDDI_WINXP)
#define KSAUDIO_SPEAKER_DIRECTOUT 0
#endif
#define KSAUDIO_SPEAKER_MONO (SPEAKER_FRONT_CENTER)
#define KSAUDIO_SPEAKER_STEREO (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT)
#define KSAUDIO_SPEAKER_QUAD (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT | \
SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT)
#define KSAUDIO_SPEAKER_SURROUND (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT | \
SPEAKER_FRONT_CENTER | SPEAKER_BACK_CENTER)
#define KSAUDIO_SPEAKER_5POINT1 (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT | \
SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | \
SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT)
#define KSAUDIO_SPEAKER_7POINT1 (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT | \
SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | \
SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT | \
SPEAKER_FRONT_LEFT_OF_CENTER | SPEAKER_FRONT_RIGHT_OF_CENTER)

#if ( (NTDDI_VERSION >= NTDDI_WINXPSP2) && (NTDDI_VERSION < NTDDI_WS03) ) || (NTDDI_VERSION >= NTDDI_WS03SP1)

#define KSAUDIO_SPEAKER_5POINT1_SURROUND (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT | \
SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | \
SPEAKER_SIDE_LEFT | SPEAKER_SIDE_RIGHT)
#define KSAUDIO_SPEAKER_7POINT1_SURROUND (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT | \
SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | \
SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT | \
SPEAKER_SIDE_LEFT | SPEAKER_SIDE_RIGHT)
// The following are obsolete 5.1 and 7.1 settings (they lack side speakers). Note this means
// that the default 5.1 and 7.1 settings (KSAUDIO_SPEAKER_5POINT1 and KSAUDIO_SPEAKER_7POINT1 are
// similarly obsolete but are unchanged for compatibility reasons).
#define KSAUDIO_SPEAKER_5POINT1_BACK KSAUDIO_SPEAKER_5POINT1
#define KSAUDIO_SPEAKER_7POINT1_WIDE KSAUDIO_SPEAKER_7POINT1

#endif // XP SP2 and later (chronologically)
What do you think?

haruhiko_yamagata
18th May 2008, 11:05
What do you think?
Microsoft is responsible for this mess :devil:.

For 5.1ch, 0x3f should be fine. It depends on sound driver's implementation.
Please let me know if anyone has any problems with your card.

madshi
18th May 2008, 13:24
Microsoft is responsible for this mess :devil:.

For 5.1ch, 0x3f should be fine. It depends on sound driver's implementation.
Please let me know if anyone has any problems with your card.
The new GeForce 8200 mainboard with integrated HDMI port which supports 7.1 PCM transport doesn't like 0x3f. When playing back 5.1 with 0x3f, the surround channels are placed in the back channels instead of the surround channels.

Now I think this is a driver bug, since 0x3f should be special cased for backwards compatability. However, according to the latest Microsoft headers, 0x3f is actually outdated and 0x60f would be the more correct channel mask to use.

Thoughts?

leeperry
18th May 2008, 13:27
exactly the same problem with WMV-HD files on my system!

M-Audio Audiophile USB in Kernel Streaming on XP SP2.

I have to insert the mixer ffdshow filter, set to STEREO to get the front channels.

I love how there is an explanation to everything in this world :D

PS : problem occurs with the Taxi3 1080p sample on the official WMV HD site.

haruhiko_yamagata
18th May 2008, 13:30
I want to signal a color bug with a YV16 input (latest Elecard Mpeg2 Decoder).
What is YV16? Y-U-V or Y-V-U?
YUVTools (http://www.sunrayimage.com/index.html):YV16 (YUV422, Y-U-V, progressive, planar)
FOURCC.org (http://www.fourcc.org/yuv.php):8 bit Y plane followed by 8 bit 2x1 subsampled V and U planes.

haruhiko_yamagata
18th May 2008, 13:39
The new GeForce 8200 mainboard with integrated HDMI port which supports 7.1 PCM transport doesn't like 0x3f. When playing back 5.1 with 0x3f, the surround channels are placed in the back channels instead of the surround channels.You have 7.1ch sound system and you don't want sound from back speakers when you play 5.1ch file?

Where are your surround speakers placed? What is preferred as default?

Either way, it is possible to make mixer more configurable.

3ngel
18th May 2008, 16:15
What is YV16? Y-U-V or Y-V-U?
YUVTools (http://www.sunrayimage.com/index.html):
FOURCC.org (http://www.fourcc.org/yuv.php):

I don't know what sequence does it refers.

I got the value from FFDshow Raw Processor, with an Elecard Decoded Mpeg2 Stream in it.

So i suppose, that because as far as i know Elecard is the only decoder that actually output YV16, can FFShow adeguate to it?

Personally i've never heard of YVU sequence (and if you do a YVU Google search it redirects to a YUV search)

EDIT:
BTW from wikipedia:
16 bit Y'UV to RGB conversion formulae

r = min((9535 * (y - 16) + 13074 * (v - 128)) >> 13,255)
g = min((9535 * (y - 16) - 6660 * (v - 128) - 3203 * (u - 128)) >> 13,255)
b = min((9535 * (y - 16) + 16531 * (u - 128)) >> 13,255)

I don't know if actually ffdshow uses this formula, but this can be pheraps considered "standard"?

EDIT2:
Oh i forgot to tell.
With the Leadtools "YUV Converter" DirectShow filter, the same YV16 is correctly decoded to RGB, so i think it's a matter of FFDShow.

tebasuna51
18th May 2008, 18:23
The new GeForce 8200 mainboard with integrated HDMI port which supports 7.1 PCM transport doesn't like 0x3f. When playing back 5.1 with 0x3f, the surround channels are placed in the back channels instead of the surround channels.

Thoughts?

I think is the correct behaviour.

The mask 0x30 correspond to Back channels and not to Side channels (don't mistake with Surround, please speak properly).

I'm sure a 7.1 system must have a way to send the surround channels, from a 5.1 audio, to Back and Side channels.

madshi
18th May 2008, 22:08
You have 7.1ch sound system and you don't want sound from back speakers when you play 5.1ch file?

Where are your surround speakers placed? What is preferred as default?

Either way, it is possible to make mixer more configurable.
It's not my system. A madFlac user reported this problem to me. As a result I did some research about the channel masks and found that Microsoft has recently (with XPSP2) changed its mind and wants us to use 0x60f now instead of 0x3f for typical 5.1 content. See the links and header extract I posted earlier...

I think is the correct behaviour.

The mask 0x30 correspond to Back channels and not to Side channels (don't mistake with Surround, please speak properly).
You're right, I should have chosen the words more carefully. Anyway. So what is the consequence of all this? We should change 0x3f to 0x60f, right? Or did I misunderstand your comment?

juanchu
19th May 2008, 03:12
Hi, and thank you so much for this incredible project and for all the job that you are doing!

Please, sorry for my poor english, but I'll try to explain al well as I can.

I use FFDShow for decoding, but too for doing a downmix to 2 channels ("uncompressed" activated). Well, I've seen that, if I load a file which has multiple audio tracks, FFDShow will be loaded only the first time. So, if I change the audio track, FFDShow won't be loaded, and I won't be able to do the downmixing of all file's audio tracks properly.

So. if the first audio is loaded in this way:

-Splitter --> Audio Decoder --> FFDShow Audio Decoder --> Default Directsound Device

when I change the audio track, this is what happens:

-Splitter --> Audio Decoder --> Default Directsound Device

Moreover, if I come back to the first audio which was loaded, FFDShow isn't used, although first time it was used to do the downmixing properly.

I've seen that if audio decoder changes when audio track is changed, this happens.

Could you take a look to this, and see if this has a solution?

Thank you so much!

Leak
19th May 2008, 10:08
So. if the first audio is loaded in this way:

-Splitter --> Audio Decoder --> FFDShow Audio Decoder --> Default Directsound Device

when I change the audio track, this is what happens:

-Splitter --> Audio Decoder --> Default Directsound Device

Moreover, if I come back to the first audio which was loaded, FFDShow isn't used, although first time it was used to do the downmixing properly.
Have you tried changing "Multiple ffdshow instances" on the "DirectShow control" configuration page of the ffdshow audio decoder to something else? Setting it to "No limitations" should do the trick...

tebasuna51
19th May 2008, 10:50
You're right, I should have chosen the words more carefully. Anyway. So what is the consequence of all this? We should change 0x3f to 0x60f, right? Or did I misunderstand your comment?

If you want the Surround channels from a 5.1 played in Side channels, in 7.1 systems, of course you must use the ChannelMask 0x60f.

For me you can use this channel mask, only I don't know if this can cause troubles in old standard 5.1 systems.

But a 7.1 system must offer the option to distribute the Surround channels, from a 5.1, in Side and Back channels not matter if the channel mask is 0x3f or 0x60f (backward compatibility).

nautilus7
19th May 2008, 11:57
If you want the Surround channels from a 5.1 played in Side channels, in 7.1 systems, of course you must use the ChannelMask 0x60f.
Isn't this the right thing? :confused:

juanchu
19th May 2008, 12:19
Have you tried changing "Multiple ffdshow instances" on the "DirectShow control" configuration page of the ffdshow audio decoder to something else? Setting it to "No limitations" should do the trick...

Unfortunately, this doesn't work, Leak.

I've activated the option that you told me, but the only thing I've seen is that in Windows Media Player a lot of FFDShow instances are loaded, but only one in Media Player Classic, the same only one that always had been loaded. Changing audio track encoded with diferent codecs does the same in WMP and MPCHC, and aren't heared properly. In WMP, when I change audio track, all FFDShow icons disappear, so it seems FFDShow instances are unloaded :confused:

I've used a MKV file with MP3, AAC and Ogg Vorbis audio tracks. I've used too a MKA file generated by me with three audio tracks: one in FLAC (8 channels), one in TTA (8 channels) and one in WavPack (8 channels). If I load the original files, one by one, independently that are or not inside a MKA, there are no problem, but if I use them in an only file (the MKA I mentioned), FFDShow won't work in audio changing. The only exception is that audio tracks have the same encoding; then, FFDShow continues loaded and are heared correctly, with the downmixing done properly.

I don't know if this info may help, but I'll say it: I'm using latest Haali Media Splitter, and I'm using too latest build of FFDShow tryouts.

Thank you so much for your help!

_xxl
19th May 2008, 18:48
I have successfully cross-compiled libavcodec from win32 to win64 using MinGW GCC 4.4.0.
This had to be changed:
Index: idct_sse2_xvid.c
===================================================================
--- idct_sse2_xvid.c (revision 1965)
+++ idct_sse2_xvid.c (working copy)
@@ -338,7 +338,7 @@
"movdqa %%xmm6, 4*16("dct") \n\t" \
"movdqa "SREG2", 7*16("dct") \n\t"

-inline void ff_idct_xvid_sse2(short *block)
+void ff_idct_xvid_sse2(short *block)
{
asm volatile(
"movq "MANGLE(m127)", %%mm0 \n\t"
ffdshow-tryouts 1966 x64 build:
Download (http://www.dump.ro/download.php?file=ffdshow_rev1965_20080520_x64.7z&id=MDE5OGNiMWRiZTA3MGZhM2RhZTY2YTBkMjUyZmYxMTA=&download=true)