About Me · Send mail to the author(s) E-mail · Twitter

At GROSSWEBER we practice what we preach. We offer trainings for modern software technologies like Behavior Driven Development, Clean Code and Git. Our staff is fluent in a variety of languages, including English.

Feed Icon


Open Source Projects


Blogs of friends

Now playing [?]

Error retrieving information from external service.

The Woes Of Finding A High-Quality Sound Card For Vista x64

Posted in Hardware | Hi-Fi | x64 at Tuesday, 27 November 2007 20:59 W. Europe Standard Time

Sound card I am an audio enthusiast. My friends and I share a bit of a tendency listening to music, and the music should be reproduced clearly and in the best quality possible. For this very purpose I bought a mid-level Hi-Fi set a couple of years ago and connected it to my computer. At that time the machine was equipped with a crappy Sound Blaster sound card. The audio card was okay for the "high quality" Logitech speakers I used before I ordered amp and speakers. But after some hours of listening to the new Hi-Fi set I found that the Sound Blaster produced some kind of static sizzle, usually the instant before high amplitudes were sent over the wire. It was like my ears specialized in hearing these nasty glitches and listening to music became an agony. You might think that I'm nit-picking but actually listening to music wasn't the fun it used to be.

I started researching entry-level professional sound cards that are mostly used in studio recording environments. With the help of a newsgroup I soon found the Marc 2 for around 150 €, manufactured by Marian here in Leipzig, to be a decent choice. "Support your local heroes," I thought and went off purchasing the device. I have been very satisfied with the quality of this audio card, as it produces great sound without interfering noise from other PC components. Think of the hard drive is working background "sound carpet" you might have heard on machines that work with onboard or cheapo sound cards. (Try increasing the volume level to be really loud and listen carefully. Your speakers should remain silent.)

Now the time has come to build a new PC as my current machine is at least 4 years old and, as a matter of fact, my Windows Vista Ultimate installation DVD hasn't been touched for almost a year. Six months ago I started talking to Torsten what PC components to buy. Even more important, we were having lots of discussions about the operating system to use. Torsten is advocate of Vista x64, whereas I am used to 32-bit systems. (Because of my old hardware, where I don't have the option to switch to 64-bit.)

I eventually decided to go with Vista x64. Not only because of doing Torsten a favor :-), but with the prospect of a new machine and 4 GB RAM in mind there's essentially no other OS to choose from. (Okay, there's Linux and derivates, but I'm a Windows guy.)

During the hardware selection process, which based on Scott Hanselman's developer rig, I soon learned that the hardest part will be finding a decent sound card that supports Vista x64. Why? Because Marian simply doesn't support 64-bit systems. Heck, to this day they even fail to provide Vista 32-bit drivers for the Marc 2 I own. (I inquired, but didn't get an answer from the support staff.)

For the new sound card I have a set of simple requirements in mind, at least I thought they would be easy to fulfill by any hardware vendor in that space.

  • Jack Plug PCI card
  • 6,3 mm jack plug socket for analog output
  • Drivers for Vista x64 available
  • Works with the Windows volume control

The last requirement would prove to be the strictest. Most high-end audio hardware vendors use their own audio control panel for connecting IOs, managing the card's features and controlling the sound volume. That often means that the Windows volume control would be disabled for the card.

All applications relying on the Windows volume control APIs would be unable to do the things they do: Think of the built-in volume key on my keyboard or any remote control software. They all rely on the Windows multimedia APIs for volume control that are not available for cards with an "advanced" volume control panel. The "remote control software" part is especially important to me since I want to keep my IR controller working. I just have become used to the convenience of lying on my bed and controlling the video I'm watching.

I contacted every single vendor of professional sound cards for the requirements above:

Vendor/Product Price Windows Volume Control Compatible Comments Recommendation
Marian Marc 2 159 € Yes (on XP) No driver for Vista Not recommended
Marian TRACE ALPHA 169 € Maybe No driver for Vista x64 Not recommended
ESI MAYA 44 99 € No Audio control panel
Beta drivers (last updated in May 2007)
Not recommended
Terratec PHASE 22 74 € No Audio control panel Not recommended
M-AUDIO Delta Audiophile 2496 88 € No Audio control panel, but offering a SDK
Beta drivers under development
No 6,3 mm socket
Not recommended
M-AUDIO Delta Audiophile 192 158 € No Audio control panel, but offering a SDK
Beta drivers under development
Not recommended
ECHO MiaMIDI 149 € Yes Vista x64 release drivers available Recommended

MiaMIDI At least I found one professional sound device in the world that is capable of doing what I expect from a good sound card. When it arrives tomorrow, I will plug it in into its slot and see if it works as expected. Then, the real fun begins: setting up a new machine!

Hopefully this article helps you finding your sound card and saves you the time of going through the same time-consuming research process.

How To Obtain The Size Of All Tables In A SQL Server Database

Posted in SQL Server at Monday, 19 November 2007 14:08 W. Europe Standard Time

In a current project we were wondering why an application database grew quickly during the last couple of weeks of development and testing. We wanted to know the space used of each table without using Management Studio's table properties.

Table Properties

Actually SQL Server gives you everything you need with its Stored Procedure sp_spaceused. Unfortunately this SP does not support iterating over all tables in a database, so we needed to leverage another (undocumented) Stored Procedure sp_msForEachTable.



-- DB size. EXEC sp_spaceused

-- Table row counts and sizes. CREATE TABLE #t
[name] NVARCHAR(128),
[rows] CHAR(11),
reserved VARCHAR(18),
data VARCHAR(18),
index_size VARCHAR(18),
unused VARCHAR(18)

INSERT #t EXEC sp_msForEachTable 'EXEC sp_spaceused ''?'''


-- # of rows. SELECT SUM(CAST([rows] AS int)) AS [rows]


The screen shot below shows the results of a smaller testing database.

Table Sizes

Now Playing [?]: TerranovaDigital TendernessCommon places