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

G_M_C
25th September 2009, 09:48
I know that TotalMedia relies on directshow, but I am not sure for the last versions.
Maybe this is possible to build a graph manually with graphedit with arcsoft decoder and grab the media type that is passed to the renderer.
[...]

I've managed to register the AS HD audio decoder. I'll build a graph with that to see what it outputs to the renderer.

albain
25th September 2009, 10:24
I've managed to register the AS HD audio decoder. I'll build a graph with that to see what it outputs to the renderer.

Great ! Could you also check if there is a custom audio renderer among all arcsoft filters ?

albain
25th September 2009, 10:54
I've managed to register the AS HD audio decoder. I'll build a graph with that to see what it outputs to the renderer.

Great ! Could you also check if there is a custom audio renderer among all arcsoft filters ?

G_M_C
25th September 2009, 11:33
Great ! Could you also check if there is a custom audio renderer among all arcsoft filters ?

I'll get on it later today. But I think there is much more to this.

for ex. I've also managed to register ArcSofts Video decoder. It behaves strangely though, cant set fps of get it to connect to VC-1 streams. I think all AS filters have a direct link to the renderer/software, and that all settings are controlled via that way. If the behaviour of the video-decoder is any indication on how the audio-filters behave .... :rolleyes:

But EAC3TO can conect to AS HD audio-filter and can get its bit-perfect decoded audio through it. But i think it is AS' software/renderer that is the only thing that can set HDMI-passtrough.

alexins
25th September 2009, 11:35
@alexins: Yes, I know. I created a patch to revert this change because I'm using komisar's MinGW for the 64bit version. Everything is fine now.:)

PS. If you read some posts before, you'll see that Mercury_22 is not the only one who's having issues with ICL 11.1.038 builds while 11.0.072 works as expected. Maybe you should change your ICL version to 11.0.072. (If you don't have it, send me a PM).

Intel issued a revised version of ICL 11.1.046.

NOTES

You must have a valid license for the Intel® Compiler Professional Edition or Intel® C++ Compiler Suite Professional Edition to install and use this product.
For mixed language applications built with the /Qipo option, we recommend using the Intel® Visual Fortran Compiler Professional Edition for Windows*, Version 11.1.046, package id w_cprof_p_11.1.046.
Intel Integrated Performance Primitives (Intel IPP) in Intel C++ Compiler Professional Edition for Windows* offers extensive sample code for application usage in Multimedia (Image, Audio, Video and Speech), Image/Signal Processing, Data Communication , multi-programming language support and more. Sample code and download information can be found at the Intel IPP Sample page.
For a list of defects fixed in this product version, please see http://software.intel.com/en-us/articles/intel-professional-edition-compilers-111-fixes-list/.
Important note:

Title: Errata Reference Number DPD200139120

Problem: Applications built with the Intel® C++ and Visual Fortran Compilers Professional Edition, version 11.1 may hang or encounter a segmentation-fault when run on Microsoft* Windows 7* or Windows Server 2008* R2. Also, a similar issue may occur during installation of these compiler versions on these operating system versions.

Version:

Intel® C++ & Visual Fortran Compilers for Windows* 11.1 initial release and update 1 release:

Intel® C++ & Visual Fortran Compiler for Windows* 11.1.035

Intel® C++ & Visual Fortran Compiler for Windows* 11.1.038


Previous versions of the Intel® Compilers (version 11.0 or earlier) do not have this issue. Please refer to the corresponding Release Notes for additional information on minimum system requirements for which operating systems are supported by that product version.

For applications built with the Intel Compilers version 11.1, the problem is contained within the libirc.lib, libircmt.lib on Windows.

G_M_C
25th September 2009, 16:02
I'll get on it later today. But I think there is much more to this.

for ex. I've also managed to register ArcSofts Video decoder. It behaves strangely though, cant set fps of get it to connect to VC-1 streams. I think all AS filters have a direct link to the renderer/software, and that all settings are controlled via that way. If the behaviour of the video-decoder is any indication on how the audio-filters behave .... :rolleyes:

But EAC3TO can connect to AS HD audio-filter and can get its bit-perfect decoded audio through it. But i think it is AS' software/renderer that is the only thing that can set HDMI-passtrough.

Nope, cant get the AS audio decoder to connect to anything in Graphstudio. Somehow Madshi got EAC3TO to connect to it, but i dont know what to do/how to do it. Some tips might be helpfull.

XhmikosR
25th September 2009, 16:45
Intel issued a revised version of ICL 11.1.046.
Thanks for letting me know. So maybe this will fix the problem Mercury_22 had since with ICL 11.0.072 everything was fine. Can you build an ICL version with 11.1.046? Because I'm on a slow connection and it will take me a while to download the new ICL.

albain
25th September 2009, 18:14
Nope, cant get the AS audio decoder to connect to anything in Graphstudio. Somehow Madshi got EAC3TO to connect to it, but i dont know what to do/how to do it. Some tips might be helpfull.

How do you know that eac3to connects to arcsoft decoder ?

AFAIK Masdhi uses ffmpeg decoders and holds its own parsers but he won't use directshow for that

Maybe arcsoft decoders have security checks : they may check the executable of the player, the input source filters...
Or maybe they won't accept the media types that are pushed in I know that Arcsoft defined its own mediaguids for DTSHD and TrueHD, so this may be the cause (the source filter/splitter).

Also are you able to use arcsoft source filters/splitters, connect it to arcsoft decoder and then to arcsoft renderer(s) ?

@Nicholi or anyone
Can someone post a link to a vorbis 6channels in order to fix this bug (https://sourceforge.net/tracker/index.php?func=detail&aid=2859030&group_id=173941&atid=867360)


Extract from ffdshow sources :
DEFINE_GUID(MEDIASUBTYPE_ARCSOFT_MLP ,0x4288b843, 0x610b, 0x4e15, 0xa5, 0x3b, 0x43, 0x00, 0x7f, 0xcf, 0xf6, 0x14);
DEFINE_GUID(MEDIASUBTYPE_ARCSOFT_DDPLUS ,0x71cfa727, 0x37e4, 0x404a, 0xae, 0xc0, 0x34, 0x84, 0x25, 0x32, 0xef, 0xf7);
DEFINE_GUID(MEDIASUBTYPE_ARCSOFT_DTSHD ,0xf6498f57, 0xb399, 0x4a43, 0xa6, 0xfa, 0xf6, 0x94, 0xad, 0x42, 0xb9, 0xbe);

clsid
25th September 2009, 18:23
Here is a test file:
sample (http://www.cccp-project.net/beta/test_files/%5BCCCP%5D_Manhole_Test_Your_5.1_%5Bmodified%5D.mkv)

STaRGaZeR
25th September 2009, 20:22
Thanks for letting me know. So maybe this will fix the problem Mercury_22 had since with ICL 11.0.072 everything was fine. Can you build an ICL version with 11.1.046? Because I'm on a slow connection and it will take me a while to download the new ICL.

No luck, same error. Info & CPU is still b0rked:

http://i36.tinypic.com/jtarg1.jpg

ICL 11.1.046 build: http://www.megaupload.com/?d=IEN5TTCS

whurlston
25th September 2009, 21:19
However we know that TotalMedia theatre + Asus Xonar will output bitstream successfully, but to do that did they use hidden APIs or an alternate audio renderer ? also did they use special mediatypes between the decoder and the renderer ?
I'm the guy who supplied the GUIDs you posted above. Those were taken from TMT version 2 when connecting the ArcSoft demux to the HD audio decoder. I beleive TMT uses hidden APIs and/or different media types to connect to the Xonar in order to bitstream. I have not been able to find them unfortunately. I also can't find an alternate audio renderer if they are using one. The TMT version 3 HD audio filter cannot be used in anything other than TMT itself due to the new protections being used.

I'll throw my Xonar back in and try again but G_A_W is using the new 5xxx GPU which bitstreams with PowerDVD 9, not TMT. It might also be easier to find out the media types being used by PowerDVD 9.

XhmikosR
25th September 2009, 22:27
No luck, same error. Info & CPU is still b0rked:

http://i36.tinypic.com/jtarg1.jpg

ICL 11.1.046 build: http://www.megaupload.com/?d=IEN5TTCS

I'm not talking about this. This can be fixed by disabling vectorization ("/Qvec-" option), although I don't know if it's 100% safe to use.
I'm talking about the problem Mercury_22 and BatKnight had with regsvr32 hanging while installing.

ffdshow rev3088 (http://www.mediafire.com/?sharekey=3f33c77c2cf9ce251686155677bb26855284166a6fc12f6c)

clsid
25th September 2009, 22:44
Disabling an optimization should be safe.

XhmikosR
25th September 2009, 22:52
Thanks for the reply, clsid. I haven't noticed anything wrong myself with vectorization disabled. Do you plan to update the project files for ICL 11?

Mercury_22
25th September 2009, 23:26
I'm not talking about this. This can be fixed by disabling vectorization ("/Qvec-" option), although I don't know if it's 100% safe to use.
I'm talking about the problem Mercury_22 and BatKnight had with regsvr32 hanging while installing.

ffdshow rev3088 (http://www.mediafire.com/?sharekey=3f33c77c2cf9ce251686155677bb26855284166a6fc12f6c)

It's working now ! :thanks: (ffdshow_rev3088_20090925_xhmikosr_icl11)

XhmikosR
25th September 2009, 23:28
OK, so it was indeed a bug with ICL11. Glad it's fixed now. :)

BatKnight
26th September 2009, 00:26
I'm talking about the problem Mercury_22 and BatKnight had with regsvr32 hanging while installing.
Indeed. I've tested xvidvideo.ru's ffdshow 3088 ICL11 which is already 11.1.046 and it works fine, no more regsvr32 problems.

Bat

albain
26th September 2009, 08:32
I'm the guy who supplied the GUIDs you posted above. Those were taken from TMT version 2 when connecting the ArcSoft demux to the HD audio decoder. I beleive TMT uses hidden APIs and/or different media types to connect to the Xonar in order to bitstream. I have not been able to find them unfortunately. I also can't find an alternate audio renderer if they are using one. The TMT version 3 HD audio filter cannot be used in anything other than TMT itself due to the new protections being used.

I'll throw my Xonar back in and try again but G_A_W is using the new 5xxx GPU which bitstreams with PowerDVD 9, not TMT. It might also be easier to find out the media types being used by PowerDVD 9.

OK I didn't know it was you.
You can extract the GUID mediatypes by disassembling with IDA pro but it is not trivial, I will try it

About new radeons, things are different because we can ask AMD about the implementation, this is no more corporate agreements such as asus+arcsoft, or cyberlink+azuentech

G_M_C
26th September 2009, 09:22
[...]
About new radeons, things are different because we can ask AMD about the implementation, this is no more corporate agreements such as asus+arcsoft, or cyberlink+azuentech

On that front there is more news, bad news for me and my Asus maybe, but its news. I guess that as of next year PAP and HD audio streaming will become mainstream. Not only did Ati provide this possibility into their Graphics boards, but Intel has provided it into theirs as well.

As of the P57 chipset and their next chips (Clarkdale/Arrandale) Intel will provide streaming HD audio too. See Anandtech's article on this; Direct link to page 8 of the article (http://www.anandtech.com/cpuchipsets/showdoc.aspx?i=3648&p=8) where this is confirmed.


The Radeon HD 5870 was the first graphics card to properly support bitstreaming of high definition Blu-ray audio codecs. Clarkdale/Arrandale is the second.

These CPUs come with an on-package GPU and that GPU supports the appropriate protected audio path to enable bitstreaming of Dolby TrueHD and DTS-HD MA. Of course 8-channel LPCM output is also still an option.
[...]


(like i said elsewhere, i rather like reading up on things there ;) ).

whurlston
26th September 2009, 09:55
OK I didn't know it was you.
You can extract the GUID mediatypes by disassembling with IDA pro but it is not trivial, I will try itAh yeah, that's a little beyond me.

About new radeons, things are different because we can ask AMD about the implementation, this is no more corporate agreements such as asus+arcsoft, or cyberlink+azuentechThat's good news.

albain
26th September 2009, 11:34
Here is a test file:
sample (http://www.cccp-project.net/beta/test_files/%5BCCCP%5D_Manhole_Test_Your_5.1_%5Bmodified%5D.mkv)

Thanks, I have fixed the problem in revision 3089

rica
26th September 2009, 12:18
G_M_C and albain,

this is the summary of my trials on bitperfect HD audio streaming, pls have a look at this:

http://www.avsforum.com/avs-vb/showthread.php?p=15770959#post15770959

I gonna enlarge the study with ffdshow trials as well.

whurlston
26th September 2009, 12:27
@albain. It turns out that both Cyberlink and Arcsoft use their own audio renderers:

CyberLink Audio Renderer (PDVD9): cladr.ax
ArcSoft Audio Renderer: ASAudioRenderer.dll

albain
26th September 2009, 13:55
G_M_C and albain,

this is the summary of my trials on bitperfect HD audio streaming, pls have a look at this:

http://www.avsforum.com/avs-vb/showthread.php?p=15770959#post15770959

I gonna enlarge the study with ffdshow trials as well.

Very interesting : the problem does come from the audio renderer as a matter of fact.

The solutions you pointed out are not difficult to implement : you must have a given version of TMT and customize after it (MPC or TMT install)

But you did found a solution : flac + arcsoft decoder + reclock
AFAIU, you have to convert TrueHD, DTSHD or PCM to flac because otherwise due to a lack of PAP the arcsoft decoder will downsample the stream

FFDShow does not have that problem, and could bitstream TrueHD, EAC3 and LPCM to Reclock renderer. For DTSHD we don't have any full decoder yet.

However the beta5 that I made won't work : I volontarely set the media types as for SPDIF with 16 bits sampling. I have to change that to make it work.

However if you have the waveformat+waveformatextensible structure that is passed to reclock when you send flac 7.1 I am interested to see its contents, especially the media type/format tag.

*EDIT*
Beta5 should work actually, at least with a TrueHD stream (but it doesn't work on my config, maybe because I don't have any compatible sound card)
What are the media types accepted by reclock ?
I tried to send the Microsoft MEDIASUBTYPE TRUEHD but it refused it, perhaps due to my config

*EDIT 2*
There are 2 things to care about : the media sub type and the wFormatTag in directshow structures (in addition of sample size, frequency, number of channels...)
The media sub type : I tried to use the arcsoft ones instead to make reclock believe that this is arcsoft TrueHD for example.

But the wFormatTag field (in WAVEFORMATEX substructure) should also be reviewed (this is a WORD number)
This is what we have and this is surely not the same as reclock expect :
#define WAVE_FORMAT_EAC3 mmioFOURCC('E','A','C','3')
#define WAVE_FORMAT_MLP mmioFOURCC('M','L','P', ' ')
#define WAVE_FORMAT_DTS_HD mmioFOURCC('D','T','S', 'H')
#define WAVE_FORMAT_TRUEHD mmioFOURCC('T','R','U','E')

The next beta6 I will build will replace the media subtypes from Microsoft's to arsoft's, hoping that they haven't changed since but with reclock it is possible to get them (MPC > filters > reclock > input pin info)

G_M_C
26th September 2009, 15:59
G_M_C and albain,

this is the summary of my trials on bitperfect HD audio streaming, pls have a look at this:

http://www.avsforum.com/avs-vb/showthread.php?p=15770959#post15770959

I gonna enlarge the study with ffdshow trials as well.

Thx :)

I'll get bank on this later. I've been wallpapering (is that acually a real word ?) and i'm just barely sticking around now :p

rica
27th September 2009, 00:27
Here are the the test results of THD; original is 96/24/6 channels:

ffdshow +Vista SP1 or SP2 with MPC Mpeg Source:

http://img8.imageshack.us/img8/50/ffdshow.th.png (http://img8.imageshack.us/i/ffdshow.png/)

ffdshow+ Vista SP1 or SP2 with arcsoft demux:

http://img197.imageshack.us/img197/4259/thdwithffdshow.th.png (http://img197.imageshack.us/i/thdwithffdshow.png/)


TMT2 +Vista SP1

http://img200.imageshack.us/img200/9192/thdwithtmt2.th.png (http://img200.imageshack.us/i/thdwithtmt2.png/)


TMT3 Platinum +Vista SP2:

http://img62.imageshack.us/img62/3668/tmt3.th.png (http://img62.imageshack.us/i/tmt3.png/)

Revision 3089 has been used in those trials.


_ _ _ _ _ _

albain
27th September 2009, 09:33
Here are the the test results of THD; original is 96/24/6 channels:

ffdshow +Vista SP1 or SP2 with MPC Mpeg Source:

http://img8.imageshack.us/img8/50/ffdshow.th.png (http://img8.imageshack.us/i/ffdshow.png/)

ffdshow+ Vista SP1 or SP2 with arcsoft demux:

http://img197.imageshack.us/img197/4259/thdwithffdshow.th.png (http://img197.imageshack.us/i/thdwithffdshow.png/)


TMT2 +Vista SP1

http://img200.imageshack.us/img200/9192/thdwithtmt2.th.png (http://img200.imageshack.us/i/thdwithtmt2.png/)


TMT3 Platinum +Vista SP2:

http://img62.imageshack.us/img62/3668/tmt3.th.png (http://img62.imageshack.us/i/tmt3.png/)

Revision 3089 has been used in those trials.


_ _ _ _ _ _

Thank you, the results are as expected : ffdshow will output PCM (decoded and uncompressed stream) to the renderer with demux but not in 24 bits (TrueHD decoder only outputs 16 bits ? I thought not have you checked 24, 32 bits in output section ?).


The goal is to output compressed (non PCM) to reclock.
FFDShow beta will do this.

But the real question is how to make arcsoft outputs it uncompressed ? Is it possible to do : arcsoft muxer => reclock without arcsoft decoder ? Or the decoder must be first set to bitstream ?
To summarize, TrueHD bitstream can be done in 2 ways :
1/ Arcsoft muxer => Reclock renderer
2/ Arcsoft muxer => arcsoft decoder w/ special setting => Reclock renderer

When we won't see PCM anymore in reclock or when your HT system will display "Bitstream TrueHD" we will have won

albain
27th September 2009, 10:09
Here are the new beta builds, I have made 3 builds because I don't know how to feed reclock.
These builds work with Microsoft media types for EAC3 and DTSHD but with 3 different media types for TrueHD, so this is interesting to do the tests with TrueHD and anyone of those :


FFDShow TrueHD bitstream outputs Arcsoft TrueHD mediatype (http://damienbt.free.fr/ffdshow_rev3089_20090927_dbt_beta6_arcsoftTHD.zip)

FFDShow TrueHD bitstream outputs Reclock DRM Audio mediatype (http://damienbt.free.fr/ffdshow_rev3089_20090927_dbt_beta6_reclockDRMAudio.zip)

FFDShow TrueHD bitstream outputs Reclock SPDIF Tag 241h mediatype (http://damienbt.free.fr/ffdshow_rev3089_20090927_dbt_beta6_reclockSPDIFTag241h.zip)

In the output section of FFDShow, don't forget to check the new options : TrueHD/DTSHD/EAC3 bitstream (passthrough)

*EDIT*
And a 4th build :
FFDShow TrueHD bitstream outputs Reclock IEEE Float mediatype (http://damienbt.free.fr/ffdshow_rev3089_20090927_dbt_beta6_reclockIEEEFloat.zip)

rica
27th September 2009, 10:33
Thanks, i'll give it a go.

Reino
27th September 2009, 14:13
I've got a question about ffdshow its colorspace detection.
(my ffdshow (rev.3065 at the moment) output setup: YV12, YUY2, RGB32, "High quality YV12 to RGB32 conversion" and "Select closest matching colorspace" are enabled.)

By default ffdshow seems to favour the YV12 colorspace a lot.
Avi-files with a RGB32 videostream inside for instance will always be spat out as YV12 by ffdshow. I did discover one exception so far though; RGB32 and YUY2 Huffyuv avi-files.
But for example RGB32 Fraps or FFV1 avi-files on the other hand are always spat out as YV12 by default, until I force RGB32 of course by deselecting YV12 and YUY2 on the ffdshow output tab.

I'm very glad ffdshow now automatically sets up the correct YCbCr and Input Levels for RGB32 Fraps avi-files, but since RGB32 isn't detected automatically with Fraps avi-files, the videoclips are always YV12, and as a result way too dark (because of the wrong input levels etc).

How come ffdshow does seem to detect the correct colorspace of RGB32 and YUY2 Huffyuv avi-files while it fails to do so in case of RGB32 Fraps or FFV1 avi-files?

(All testing material I created myself. The RGB32 and YUY2 Huffyuv avi-files I created with the Huffyuv 2.1.1 video codec, because with version 2.2.0 all produced videoclips seemed corrupt somehow :S. The RGB32 FFV1 avi-files were created with ffdshow of course)

albain
27th September 2009, 15:17
Sorry, I had to make a rebuild (just a few seconds ago), because reclock was not correctly reconnected by ffdshow

That should be better

For now, only IEEE_Float build is accepted by reclock

The links are unchanged

rica
27th September 2009, 17:01
For now, only IEEE_Float build is accepted by reclock


Yes it works.

I wish i had a new generation receiver, unfortunately i'm not able to try pass-through feature of ffdshow. :mad:


...but not in 24 bits (TrueHD decoder only outputs 16 bits ? I thought not have you checked 24, 32 bits in output section ?).


If i tick both 16 and 24 bits, i get 16 from 24 bit original.

If i tick just 16, i get 16 bit from 24 bit original too.

If i tick just 24, i get 24 from 24 bit original but this time i get 24 from 16 bit original.

What i want to get is just as the original's bitrate.
Any suggestion?

http://img18.imageshack.us/img18/4527/ab001.th.png (http://img18.imageshack.us/i/ab001.png/)


Another question:
Selecting "connect to Directsound " option terminates ffdshow;
i can only select "connect to any filter".

BTW i have Creative Sound Blaster X-Fi connected to my Onkyo TX-SR 503 E via analog cables.

Thank you.

buletti
27th September 2009, 19:46
I cannot get any of the builds to bitstream Dolby TrueHD via HDMI.
The versions with media types SPDIF tag 241h, DRM audio and the arcsoft media type decode into PCM 32(int). The arcsoft version is also not cooperating with the arcsoft audio renderer instead of reclock.
The version with the IEEE float media type claims to be bitstreaming, but reclock reports PCM 16 bit. Also my receiver doesn't get any signal.

whurlston
27th September 2009, 22:54
Here are the new beta builds, I have made 3 builds because I don't know how to feed reclock.
These builds work with Microsoft media types for EAC3 and DTSHD but with 3 different media types for TrueHD, so this is interesting to do the tests with TrueHD and anyone of those :


FFDShow TrueHD bitstream outputs Arcsoft TrueHD mediatype (http://damienbt.free.fr/ffdshow_rev3089_20090927_dbt_beta6_arcsoftTHD.zip)


Tested DTS-HD and TrueHD connected to the ArcSoft renderer and the Default DirectSound (ATI 4670 HDMI out). No sound resulted and the graph stopped almost immediately on playback start. Attached are the connection media type results. I still haven't reinstalled my Xonar HDAV but I will tonight and try with that.

Andy o
27th September 2009, 23:09
I'm not as technically knowledgeable as many of you here at doom9, but AFAIK, TMT connects directly (somehow) to the Xonar HDAV's HDMI device. The HDMI device itself is "hidden" from Windows. It doesn't show up in the playback devices, and renderers like ReClock and players other than TMT cannot detect it. Only thing that shows up is one multichannel device that's akin to an analog device, and "digital output", which is SPDIF. Whatever goes into one of those, then gets routed to the HDMI output by the driver.

I don't think you're gonna be able to bitstream with a Xonar HDAV even if you get the Arcsoft decoder to connect either, because I don't think the decoder has anything to do with bitstreaming. The renderer, I'm not sure, but it may not work either. TMT has a direct line to the HDMI device which no program/filter so far can tap into.

The ATI 5000 might be a different case altogether of course.

albain
28th September 2009, 09:43
Well, you may be right, but Reclock is able to send HD LPCM stream to HDMI, so I guess it would be able to deal with a compressed stream.

However, reviewing rica's tests, it seems that Reclock will only accept PCM (uncompressed) stream.
arcsoft decoder => reclock is possible only with uncompressed format
arcsoft muxer => reclock is not possible

I have things to fix on FFDShow sides (sample format change) but I don't think I will be able to do more.

I have posted a new thread on Slysoft forum to get more information about it : maybe reclock needs to be updated and also maybe for now only a hidden path can be used to do compressed bitstream.

albain
28th September 2009, 09:56
I cannot get any of the builds to bitstream Dolby TrueHD via HDMI.
The versions with media types SPDIF tag 241h, DRM audio and the arcsoft media type decode into PCM 32(int). The arcsoft version is also not cooperating with the arcsoft audio renderer instead of reclock.
The version with the IEEE float media type claims to be bitstreaming, but reclock reports PCM 16 bit. Also my receiver doesn't get any signal.

Actually, ffdshow won't decode anything, so Reclock should not report PCM (16,24 or 32) but "bistream".

I fear that it does not support compressed formats in input.

@Rica
About the sample formats : 16, 24, 32 bits
2 cases can occur :
- Passthrough (bitstream) : the sample format is the same as in input but it has no sense to say "uncompressed 24 bits"
- Decoding : ffdshow will decode the compressed format. You will get PCM (uncompressed) format.
In that case, depending on the abilities of the decoder : for example libavcodec AC3 only outputs 16 bits, however libavacodec TrueHD is able to output 16, 24, 32 bits. So after it depends on your sound card or HT system.

To conclude : only check 16 bits if your system does not support more. Check 16 and 24 if your system support both...
Each time FFDShow will try to output the highest (depending on the decoder).
For example for TrueHD decoder I get 32 bits in output


*EDIT*
One question for Asus Xonar owners : can anyone confirm that decoding of HD streams (TrueHD for example) through ffdshow works through HDMI with no signal downgrade/modification ?
For example : TrueHD 96khz 8 channels
ffdshow(TrueHD decoding) => HD LPCM 96Khz 8 channels (32 bits) => Reclock => HDMI output => HT receiver (LPCM 96 khz 8 channels 32 bits)

Because this seems to work (except that I miss the xonar) :
http://img171.imageshack.us/img171/8459/03cca82bfbdec95eec4c552.png

G_M_C
28th September 2009, 12:16
I'll have to install ReClock onto my system first to confirm this. Seems i have to anyway.Does that have any sence on my WinXP32 (sp3) machine) ?

PS: Can you supply me with a THD sample [through PM if needed], i only have DTS-Ma on my system for testing.

PPS: I'll sift through my registry to see if there is something that catches my eye. I have no clue what to look for, but since i only have 1 ASUS card in my system (rest is Gigabyte) i might be able to search for something. You never know ;)

albain
28th September 2009, 13:26
I'll have to install ReClock onto my system first to confirm this. Seems i have to anyway.Does that have any sence on my WinXP32 (sp3) machine) ?

PS: Can you supply me with a THD sample [through PM if needed], i only have DTS-Ma on my system for testing.

PPS: I'll sift through my registry to see if there is something that catches my eye. I have no clue what to look for, but since i only have 1 ASUS card in my system (rest is Gigabyte) i might be able to search for something. You never know ;)

You will find all the samples you need from this link (http://forum.doom9.org/showthread.php?p=1322796#post1322796)

It should work on XP I guess.

Emilot
28th September 2009, 14:59
Actually, ffdshow won't decode anything, so Reclock should not report PCM (16,24 or 32) but "bistream".

I fear that it does not support compressed formats in input.

@Rica
About the sample formats : 16, 24, 32 bits
2 cases can occur :
- Passthrough (bitstream) : the sample format is the same as in input but it has no sense to say "uncompressed 24 bits"
- Decoding : ffdshow will decode the compressed format. You will get PCM (uncompressed) format.
In that case, depending on the abilities of the decoder : for example libavcodec AC3 only outputs 16 bits, however libavacodec TrueHD is able to output 16, 24, 32 bits. So after it depends on your sound card or HT system.

To conclude : only check 16 bits if your system does not support more. Check 16 and 24 if your system support both...
Each time FFDShow will try to output the highest (depending on the decoder).
For example for TrueHD decoder I get 32 bits in output


*EDIT*
One question for Asus Xonar owners : can anyone confirm that decoding of HD streams (TrueHD for example) through ffdshow works through HDMI with no signal downgrade/modification ?
For example : TrueHD 96khz 8 channels
ffdshow(TrueHD decoding) => HD LPCM 96Khz 8 channels (32 bits) => Reclock => HDMI output => HT receiver (LPCM 96 khz 8 channels 32 bits)

Because this seems to work (except that I miss the xonar) :
http://img171.imageshack.us/img171/8459/03cca82bfbdec95eec4c552.png

Guys, always put 32 bit at ffdshow, because there are a few cards that will support native 24bits.....very few...

You are very close Albain(and the others) and congrats about the effort and job you do....

Andy o
28th September 2009, 15:28
Well, you may be right, but Reclock is able to send HD LPCM stream to HDMI, so I guess it would be able to deal with a compressed stream.

However, reviewing rica's tests, it seems that Reclock will only accept PCM (uncompressed) stream.
arcsoft decoder => reclock is possible only with uncompressed format
arcsoft muxer => reclock is not possible

I have things to fix on FFDShow sides (sample format change) but I don't think I will be able to do more.

I have posted a new thread on Slysoft forum to get more information about it : maybe reclock needs to be updated and also maybe for now only a hidden path can be used to do compressed bitstream.

Right, ReClock can only take and decode or bitstream SPDIF formats (DD and I think DTS too), and PCM. It cannot take in the newer "HD" formats.

Andy o
28th September 2009, 15:33
One question for Asus Xonar owners : can anyone confirm that decoding of HD streams (TrueHD for example) through ffdshow works through HDMI with no signal downgrade/modification ?
For example : TrueHD 96khz 8 channels
ffdshow(TrueHD decoding) => HD LPCM 96Khz 8 channels (32 bits) => Reclock => HDMI output => HT receiver (LPCM 96 khz 8 channels 32 bits)

Because this seems to work (except that I miss the xonar) :
http://img171.imageshack.us/img171/8459/03cca82bfbdec95eec4c552.png

This should or shouldn't work regardless of audio device, since decoding is taking place before audio reaches the driver, no? In any case, it works fine with my ATI 4670's HDMI device. The problem then is that since you're using DirectSound there, after leaving ffdshow the PCM stream will be resampled to whatever you set your Windows output to. You can bypass that with ReClock's WASAPI exclusive option though, works great.

With the Xonar, WASAPI exclusive still bypasses the Windows mixer, but the driver resamples everything again to what you set it to on the Xonar's control panel.

BTW, what do you mean by you "miss the xonar"?

albain
28th September 2009, 15:45
OK, but about bitstreaming compressed format this is just the same as sending a HD PCM format as long as you are in wasapi mode with no interaction from windows mixer.

So (just a supposition) if Reclock would accept HD bitstream, it would be able to send the stream to HDMI output in wasapi mode.
This is the next step ! Arcsoft TMT just does that (with subroutines to downgrade the signal in some cases)

miss the xonar = I wish I had one to make my tests

rica
28th September 2009, 16:03
@Rica
About the sample formats : 16, 24, 32 bits
2 cases can occur :
- Passthrough (bitstream) : the sample format is the same as in input but it has no sense to say "uncompressed 24 bits"
- Decoding : ffdshow will decode the compressed format. You will get PCM (uncompressed) format.
In that case, depending on the abilities of the decoder : for example libavcodec AC3 only outputs 16 bits, however libavacodec TrueHD is able to output 16, 24, 32 bits. So after it depends on your sound card or HT system.

To conclude : only check 16 bits if your system does not support more. Check 16 and 24 if your system support both...
Each time FFDShow will try to output the highest (depending on the decoder).
For example for TrueHD decoder I get 32 bits in output


Thx albain for the confirmation but my expectation is self-selecting feature of ffshow like arcsoft audio HD decoder has.

I'll have to install ReClock onto my system first to confirm this. Seems i have to anyway.Does that have any sence on my WinXP32 (sp3) machine) ?

Xp works with "kernel streaming" for bitperfect streaming while Vista needs WASAPI exclusive for this purpose.

Goodnews is Reclock also has this feature. :)

FoLLgoTT
28th September 2009, 16:11
OK, but about bitstreaming compressed format this is just the same as sending a HD PCM format as long as you are in wasapi mode with no interaction from windows mixer.

But ReClock dynamically resamples PCM to sync audio and video which destroys the bitstream completely. With AC3/DTS passthrough whole packets are dropped or repeated when necessary. This leaves the stream intact. HD bitstreams have to be treated the same way to work properly.

rica
28th September 2009, 18:28
But ReClock dynamically resamples PCM to sync audio and video which destroys the bitstream completely. With AC3/DTS passthrough whole packets are dropped or repeated when necessary. This leaves the stream intact. HD bitstreams have to be treated the same way to work properly.

I think you have configuration issues.

Andy o
28th September 2009, 18:37
Actually you can disable ReClock's resampling for bit-perfect output. I don't think bit-perfect streaming is the only thing necessary for bitstreaming of the HD codecs, though.

FoLLgoTT
28th September 2009, 18:54
I think you have configuration issues.

I don't think so. I can watch movies without drops/repeats and without judder for many hours.

Actually you can disable ReClock's resampling for bit-perfect output.

Yes, this is no problem as long as the clock of video card and sound card are only very slightly off to each other. This can be achieved with Powerstrip. Otherwise (with bit-perfect output) audio and video will go out of sync after a while or video judders occasionally. So in a basic setup (as most users have) drops/repeats or resampling are necessary if the goal is to avoid video judder. And this is the main goal of ReClock.

rica
28th September 2009, 19:06
I don't think so. I can watch movies without drops/repeats and without judder for many hours.



Please have alook at this:

Here is the configuration of ReClock:

http://img17.imageshack.us/img17/8514/jamescongrats.th.png (http://img17.imageshack.us/my.php?image=jamescongrats.png)

And here is the config of the renderer:

http://img14.imageshack.us/img14/896/reclock01.th.png (http://img14.imageshack.us/my.php?image=reclock01.png)

FoLLgoTT
28th September 2009, 19:25
Please have alook at this:

Nothing new to me. This configuration gives you bit-exact audio and the synchronization is done by dropping or repeating video frames. With two clocks in your PC (which will never run 100% in sync) there are only two choices to avoid asynchronicity between video and audio:

1. synchronizing by dropping/repeating video frames (visible micro judder, many people don't notice it)
2. synchronizing by dropping/repeating compressed audio frames (audible) or resample PCM data (usually not audible)

The amount of synchronization is only affected by the degree of asynchronicity. If the refresh rate is tweaked properly with Powerstrip a movie can run many many hours without any need for synchronization. With Bitmonster's python script (sadly only in german) (http://www.avpedia.org/wiki/HTPC_Bildfrequenz_Optimierung) this can be achieved easily.

The problem is only that most setups are not tweaked that way. And with the standard options of reclock it does resampling of PCM data which destroys the bit stream. ReClock has to treat HD bitstream the same way as AC3/DTS. It must support it to operate correctly.