AFAIK=Abk. f. As far as I know (German: "Soviel ich weiß")
Es gibt den normalen Timer mit einer Auflösung von 1/1000 Sekunde, und es gibt den Performance Timer in der WinAPI:
Declare Function QueryPerformanceCounter Lib "kernel32" (lpPerformanceCount As LARGE_INTEGER) As Long
sowie
Declare Function QueryPerformanceFrequency Lib "kernel32" (lpFrequency As LARGE_INTEGER) As Long
Dies zeigt an wie die Auflösung des Hires Timers ist, falls eine Hardwareunterstützung für Hires Timer eingebaut ist...
Die genaue Nutzungshinweise findest Du in der MSDN (Ich nehme an dass Du Windows benutzen tust).
Üblicherweise benutzt man C++ weil man damit am meisten was anstellen kann, ist aber schwer zu erlernen, aber eigentlich dachte ich dass Du bereits eine Programmiersprache beherrscht.
Ich selbst bin ein PureBasic Programmierer (
http://purebasic.com) und sehr zufrieden mit der Sprache, nur weiß ich trotzdem noch nicht wie man beim LineIn Eingangswerte auslesen kann. Digitalisieren in eine Datei wurde schon mal beschrieben. Für PureBasic gibt es das CodeArchive in dem über 1100 Beispielcodes integriert sind, aber Beispiele für LineIn auslesen in Echtzeit habe ich nicht gefunden.
Die Details wie das zu bewerkstelligen ist, findest Du sicher in dem Webforum der Programmiersprache Deiner Wahl.
Es sollte alles über PC abwickelbar sein...