IPB

Welcome Guest ( Log In | Register )

16 Pages V   1 2 3 > »   
Reply to this topicStart new topic
HDCD Decoder, Process or play lossless rips of your HDCDs
kode54
post Mar 14 2010, 13:56
Post #1





Group: Admin
Posts: 4499
Joined: 15-December 02
Member No.: 4082



This PCM postprocessor component, currently utilized by the CDDA, WAV, FLAC, and WavPack inputs, will process 16-bit PCM data with HDCD packets into 20-bit PCM. If it fails to find any packet headers within the first 5 seconds of a track, it gives up.

The HDCD status will be indicated in the info variable "hdcd," retrievable with either %__hdcd% or $info(hdcd). Extra info variables are "hdcd_peak_extend," "hdcd_transient_filter" and "hdcd_gain."

Also included is a simple scanner that processes up to 5 seconds of each track selected and reports all tracks which contain HDCD information. If users want it, I will impement a full file scanner that also reports which HDCD features are used throughout the tracks.

Although all features are reported, like hdcd.exe, my component does not implement the transient filter, so that feature will have no effect on the output.
Reason for edit: Updated to reflect the latest release
Go to the top of the page
+Quote Post
a3aan
post Mar 14 2010, 14:57
Post #2





Group: Members
Posts: 79
Joined: 23-December 06
Member No.: 38930



Great. Thanks a lot for this one. This will save some disk space.

Can you elaborate on the HDCD processing? I take it the component does the gain and the peek extension features of HDCD. Does it include the filters too?

Cheers,
Adriaan.
Go to the top of the page
+Quote Post
kode54
post Mar 14 2010, 15:10
Post #3





Group: Admin
Posts: 4499
Joined: 15-December 02
Member No.: 4082



I have no reference for the implementation of the filters. Besides, I was under the impression those were only useful when upsampling the material. (I can detect when filters are enabled, but I don't actually perform any additional processing. This is identical to WMP, as far as I know.)
Go to the top of the page
+Quote Post
a3aan
post Mar 14 2010, 15:20
Post #4





Group: Members
Posts: 79
Joined: 23-December 06
Member No.: 38930



WMP does the filters (HDCD is microsoft technology these days). All others I know (hdcd.exe and derivatives) only do the peaks and gains. But in my HDCD collection the usage of filters is less common then the other two.

Adriaan.
Go to the top of the page
+Quote Post
Fool_on_the_hill
post Mar 14 2010, 17:16
Post #5





Group: Members
Posts: 88
Joined: 30-October 05
From: Russia, Tomsk
Member No.: 25459



Thank you!
Long waited component.
But it seems it works only when Replay Gain is off...
Go to the top of the page
+Quote Post
ExtremeHunter
post Mar 15 2010, 09:22
Post #6





Group: Members
Posts: 131
Joined: 5-October 08
From: Estonia
Member No.: 59398



Thanks for this component! Here's a question, i like to create an icon that highlights when HDCD is detected. How can i retrieve this information? Can you add some title formatting option like %hdcd% or something? Or maybe you know is there a way to read console information HDCD detected with wsh panel mod somehow.
Go to the top of the page
+Quote Post
kode54
post Mar 15 2010, 12:26
Post #7





Group: Admin
Posts: 4499
Joined: 15-December 02
Member No.: 4082



Yes, it only works with ReplayGain disabled, since ReplayGain is applied to the signal before DSP processing, and there is currently no way to query what the current ReplayGain scale level is.

As for an indicator, there is no way for a DSP to report any metadata changes, dynamic or not.

Slightly off-topic, but this decoder, as well as the DTS decoder, would probably be better off in some service that is automatically called to process sample data produced by all inputs, even when converting or ReplayGain scanning. That way, the audio data is untouched by other DSPs, and the processing is acknowledged by the ReplayGain scanner and other input parsers. Although this still sounds like a load of crap, and will probably never be implemented on a global scale.
Go to the top of the page
+Quote Post
sopparus
post Mar 15 2010, 13:30
Post #8





Group: Members
Posts: 16
Joined: 4-December 09
Member No.: 75592



does this works on flac's?
Go to the top of the page
+Quote Post
db1989
post Mar 15 2010, 13:45
Post #9





Group: Super Moderator
Posts: 5144
Joined: 23-June 06
Member No.: 32180



According to the above link, "This DSP component will decode HDCD data in any 16-bit PCM stream passed through it". So, yes, if the FLACs' source is an HDCD-encoded CD.
Go to the top of the page
+Quote Post
kode54
post Mar 15 2010, 14:19
Post #10





Group: Admin
Posts: 4499
Joined: 15-December 02
Member No.: 4082



And you'll either have to disable ReplayGain processing, or remove the ReplayGain tags from your files. And in either case, the applicable preamp or gain adjustment has to be +0dB.
Go to the top of the page
+Quote Post
krabapple
post Mar 18 2010, 22:56
Post #11





Group: Members
Posts: 2159
Joined: 18-December 03
Member No.: 10538



QUOTE (a3aan @ Mar 14 2010, 09:20) *
WMP does the filters (HDCD is microsoft technology these days).



Has it really been verified that WMP 'does the filters', and if so, can you point me to that proof?

This post has been edited by krabapple: Mar 18 2010, 22:58
Go to the top of the page
+Quote Post
a3aan
post Mar 19 2010, 00:32
Post #12





Group: Members
Posts: 79
Joined: 23-December 06
Member No.: 38930



QUOTE (krabapple @ Mar 18 2010, 22:56) *
Has it really been verified that WMP 'does the filters', and if so, can you point me to that proof?

You can process an HDCDs utilizing filters as described at Wikipedia and with hdcd.exe and bit compare the resulting files. The files will be different. You can do the same with an HDCD that doesn't utilize filters and the resulting files will be identical.

I'm using WMP9 to convert my filters utilizing HDCDs. It will show an HDCD logo when it detects one. You need a 24-bit sound card and enable 24-bit in WMP. The WMP plug-in I use for writing to disk is named Chronotron WAV Output.

Before the Foobar HDCD plug-in I was processing non filter utilizing HDCDs with HDCD.exe. Luckily I kept the 16-bit files and now can get rid of these 24-bit files. Excellent.

Hope this helps.
Adriaan.
Go to the top of the page
+Quote Post
DigitalMan
post Mar 19 2010, 00:50
Post #13





Group: Members
Posts: 481
Joined: 27-March 02
From: California, USA
Member No.: 1631



List of HDCD recordings, in case it helps:

http://www.goodwinshighend.com/music/hdcd/..._recordings.htm

These seem fairly old - is HDCD still used often on new releases or is it similar to preemphasis in its prior use?


--------------------
Was that a 1 or a 0?
Go to the top of the page
+Quote Post
krabapple
post Mar 19 2010, 05:15
Post #14





Group: Members
Posts: 2159
Joined: 18-December 03
Member No.: 10538



QUOTE (a3aan @ Mar 18 2010, 18:32) *
QUOTE (krabapple @ Mar 18 2010, 22:56) *
Has it really been verified that WMP 'does the filters', and if so, can you point me to that proof?

You can process an HDCDs utilizing filters as described at Wikipedia and with hdcd.exe and bit compare the resulting files. The files will be different. You can do the same with an HDCD that doesn't utilize filters and the resulting files will be identical.



What processing is that? By filtering , I mean the filter switching option ("transient filter" also called dynamic filtering), not peak extend or gain adjust.

Let me quote from cjk32, who developed hdcd.exe:

QUOTE
HDCD allows the use of three features: peak extend, gain adjustment and reconstruction filter switching. Windows media player supports peak extend and gain adjustment, and it has hence been possible to fully implement these features.

Filter switching, however, only makes sense when you are upsampling, something which wmp doesn't do, and there's hence no reference to implement it from. Investigation of various test CDs and various (usually contradictory) literature has led to the conlusion that there are only two filters available at playback, the normal filter and the transient filter.


This doesn't say that WMP 'does' filtering in the sense I mean it...indeed, it seems to imply the opposite. My understanding has been that only hardware HDCD decoders have 'done' such transient/dynamic, not software decoders. IIRC from email exchanges I had with cjk20, he decided the measured difference from 'doing' filtering versus not doing it (on those HDCDs where filter switching was enabled) was rather insignificant anyway.

edit: ah, here we go

http://www.hydrogenaudio.org/forums/index....st&p=516274

This post has been edited by krabapple: Mar 19 2010, 05:28
Go to the top of the page
+Quote Post
2Bdecided
post Mar 19 2010, 15:28
Post #15


ReplayGain developer


Group: Developer
Posts: 4945
Joined: 5-November 01
From: Yorkshire, UK
Member No.: 409



QUOTE (kode54 @ Mar 15 2010, 13:19) *
And you'll either have to disable ReplayGain processing, or remove the ReplayGain tags from your files. And in either case, the applicable preamp or gain adjustment has to be +0dB.
I think I'd convert to 20-bit with this plug-in (without any other DSPs in the conversion chain), and then use ReplayGain as normal on the converted files. Archive the originals somewhere.

Until/unless someone embeds this and DTS decoding before ReplayGain, as suggested by kode54. In both cases, what you really have is a completely different format that just happens to be in a .wav container (though with HDCD, in a fairly benign and mostly backwards compatible way), so maybe some different approach would be better.

Cheers,
David.
Go to the top of the page
+Quote Post
Zane
post Mar 19 2010, 16:38
Post #16





Group: Members
Posts: 51
Joined: 17-January 07
Member No.: 39754



QUOTE (DigitalMan @ Mar 18 2010, 18:50) *
These seem fairly old - is HDCD still used often on new releases or is it similar to preemphasis in its prior use?

Many newer remasters are done via HDCD. Meaning the remaster is done on HDCD equipment but may not be an actual HDCD. One company using HDCD is Reference Recordings.

Many people cannot tell the difference between Red Book CD and HDCD. We all have different ears and hearing levels so that is understanable. I personally can hear subtle difference between such recordings and really enjoy my HDCDs. For the same price, using the same media, why not stick a little more in there?
Go to the top of the page
+Quote Post
a3aan
post Mar 19 2010, 21:13
Post #17





Group: Members
Posts: 79
Joined: 23-December 06
Member No.: 38930



QUOTE (krabapple @ Mar 19 2010, 05:15) *
...
This doesn't say that WMP 'does' filtering in the sense I mean it...indeed, it seems to imply the opposite. My understanding has been that only hardware HDCD decoders have 'done' such
...

I rerun my comparison between WMP and hdcd.exe using Beck's Midnite Vulture and the results turned out to be identical. I must have made some mistake the other time. Sorry.

Adriaan.
Go to the top of the page
+Quote Post
Millstone
post Mar 21 2010, 01:50
Post #18





Group: Members
Posts: 1
Joined: 21-March 10
Member No.: 79179



It doesn't seem to catch it every time...

QUOTE (console)
Opening track for playback: "C:\Users\nope\Music\iTunes\iTunes Music\Compilations\City of Angels\02 Uninvited.m4a"
HDCD detected.
Opening track for playback: "C:\Users\nope\Music\iTunes\iTunes Music\Compilations\City of Angels\01 If God Will Send His Angels.m4a"
HDCD detected.
Opening track for playback: "C:\Users\nope\Music\iTunes\iTunes Music\Compilations\City of Angels\07 Iris.m4a"
HDCD detected.
Opening track for playback: "C:\Users\nope\Music\iTunes\iTunes Music\Compilations\City of Angels\01 If God Will Send His Angels.m4a"


**** no "HDCD detected." here


Opening track for playback: "C:\Users\nope\Music\iTunes\iTunes Music\Compilations\City of Angels\01 If God Will Send His Angels.m4a"
HDCD detected.
Opening track for playback: "C:\Users\nope\Music\iTunes\iTunes Music\Compilations\City of Angels\01 If God Will Send His Angels.m4a"
HDCD detected.
Opening track for playback: "C:\Users\nope\Music\iTunes\iTunes Music\Compilations\City of Angels\02 Uninvited.m4a"
HDCD detected.
Album List refreshed in: 0:00.113711
Opening track for playback: "C:\Users\nope\Music\iTunes\iTunes Music\Tool\Lateralus\05 Schism.m4a"
HDCD detected.
Go to the top of the page
+Quote Post
krabapple
post Mar 21 2010, 02:11
Post #19





Group: Members
Posts: 2159
Joined: 18-December 03
Member No.: 10538



Or some tracks are HDCD-flagged and some aren't.

I have a Johnny Cash compolation disc where only one track trips the HDCD flag. Same with a Thelonius Monk CD
Go to the top of the page
+Quote Post
a3aan
post Mar 21 2010, 12:24
Post #20





Group: Members
Posts: 79
Joined: 23-December 06
Member No.: 38930



QUOTE (Millstone @ Mar 21 2010, 01:50) *
It doesn't seem to catch it every time...
..

You can try HDCD.exe with the -a switch. This will scan the whole file. Note sure how many samples foo_dsp_hdcd.dll considers to detect hdcd coding.

Adriaan.
Go to the top of the page
+Quote Post
kode54
post Mar 21 2010, 22:18
Post #21





Group: Admin
Posts: 4499
Joined: 15-December 02
Member No.: 4082



It only reports HDCD detected for the first packet it detects in the stream when the DSP is initialized, or after some non-HDCD data is passed through the DSP. It does not report on every automatic track change.
Go to the top of the page
+Quote Post
markanini
post Mar 23 2010, 02:15
Post #22





Group: Members
Posts: 534
Joined: 22-December 03
From: Malmö, Sweden
Member No.: 10615



This plugin employs peak extention on titles that use it as expected. It's nice to see 'HDCD detected' in the status windows. Finally I can use foobar2000 for all my listening ripping and conversion needs! biggrin.gif
Go to the top of the page
+Quote Post
Iron_Dreamer
post Mar 25 2010, 06:06
Post #23





Group: Members
Posts: 2
Joined: 25-March 10
Member No.: 79302



Wow, thanks a ton for creating this plugin, I've wondered for years about what, if any, benefit HDCD discs really have.

All I can say is that the first couple of HDCD's I've played back have sounded noticeable cleaner and more dynamic.

However, I have tried converting them with the HDCD decoder DSP active, replaygain disabled, and the resulting files have been 16-bit. They are not the same as the source files, as a replaygain scan shows a much lower album gain in both cases. I'm wondering why the files are showing up as 16-bit, shouldn't they be 20-bit (or padded to 24-bit)?
Go to the top of the page
+Quote Post
kode54
post Mar 25 2010, 06:36
Post #24





Group: Admin
Posts: 4499
Joined: 15-December 02
Member No.: 4082



The converter does not detect what bit depth changes are caused by any DSPs you activate. You must manually change the target bit depth for lossless files from "same as source" to "24-bit." Until such time as DSPs can report any effective bit depth changes they cause and affect the converter, that is.
Go to the top of the page
+Quote Post
Iron_Dreamer
post Mar 25 2010, 07:19
Post #25





Group: Members
Posts: 2
Joined: 25-March 10
Member No.: 79302



QUOTE (kode54 @ Mar 24 2010, 21:36) *
The converter does not detect what bit depth changes are caused by any DSPs you activate. You must manually change the target bit depth for lossless files from "same as source" to "24-bit." Until such time as DSPs can report any effective bit depth changes they cause and affect the converter, that is.


Ah, I see. Thanks for that little tidbit of important info.

Of course, I guess I don't really NEED to decode and convert all my HDCD files, since there wouldn't seem to be any harm in leaving the HDCD decoder permanently enabled.
Go to the top of the page
+Quote Post

16 Pages V   1 2 3 > » 
Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 18th April 2014 - 19:16