LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Has anyone written an ASIO sound card VI?

Hello Will,

You had any sucess in updating the software?

0 Kudos
Message 11 of 18
(1,325 Views)

At present, I use lvsound DLL file, but only two channels (WDM) can be recognized on the win system. According to the online introduction, it is necessary to use ASIO to parse the corresponding sound card. I wonder if you also encounter such a problem here. We can learn from each other or share how to use ASIO. However, I still don't understand how to start ASIO

0 Kudos
Message 12 of 18
(923 Views)

Why can't I browse or download the corresponding routines about ASIO

0 Kudos
Message 13 of 18
(923 Views)

s your software open source? If I want to learn something about it

0 Kudos
Message 14 of 18
(919 Views)

Here is a follow-up to my posting on 5/17/2009, where I pointed out that we have an ASIO interface available for LabVIEW at http://www.lasi.arizona.edu/

See the last line on this page for the link to this software.

 

Previous users of our software have reported a wide range of applicability for this software. This applicability has changed as the ASIO software and LabView program evolved.   Our ASIO driver no longer works with the recent versions of LabView (LabVIEW 2010 and newer).

 

Some possibilities are:

 

1). Our ASIO driver will work with older versions of LabView (LabVIEW 2009 and older).  There are often a number of sellers on EBay who are selling older versions of LabView.  You can then use a program with the ASIO driver with this older version.

 

2). Produce an executable of your program (using an older version of LabView) that can then be used without even having a copy of LabView on your computer.

 

3). Modify the ASIO driver for the newest version of LabView.

 

The following is a further explanation of the history and current limitations of the code, which was prepared by Terry Leach, the consultant who wrote the ASIO interface and the GenMon data acquisition program for us.

 

Our ASIO interface was built in LabView 6.x using the CIN (code interface node) technology.  Source code to interface to the ASIO 2.0 sound driver was obtained from Steinberg.  http://www.steinberg.net/en/home.html

 

This development was performed under an NSF grant obtained and managed by Dr. Ben Sternberg of the University of Arizona.

 

During the development time, our ASIO interface consisted of expanding and generalizing the Steinberg code to allow easy creation of "channel" C++ objects as well as status bits to track ASIO sound buffer performance in real time.  In addition C++ code was added so that we could call the Steinberg interface from the LabView development environment.  This code was compiled and built into a CIN.  The CIN was then incorporated as a binary directly into ASIO.vi.  ASIO.vi then became our interface to the sound driver when in the LabView development environment.  Several LabView applications were built making use of ASIO.vi.  There are three distinct layers to the sound interface.  The lowest layer being the ASIO 2.0 compliant driver of whatever hardware you intended to access.  The intermediate layer being the Steinberg/UofA/LV CIN, and the final layer being ASIO.vi and its use in your application program.

 

Our applications, built on point acquisitions which were always a power of 2 (supporting real time FFT calculation), meshed very well with sound buffer sizes which were also powers of 2.  The ASIO driver, at that time, supported a maximum sound buffer size of 16384 points.  As the ASIO interface is built on double buffering this gave us 16384/(sample rate) = seconds of time to perform our application calculations in real time.

 

Several things happened over time.

 

1).  The ASIO 2.0 driver's (low layer, for Echo Audio equipment) maximum point buffer was reduced from 16384 points to 2048 points.  This reduced our application's processing time (prior to sound buffer lossage) to 1/8.  While it would be possible to modify the middle layer to manage a virtual sound buffer of larger size, no further development funding was available.

 

2).  The Steinberg code hard coded the name of the ASIO 2.0 compliant driver to be found and instantiated from the Windows Registry.  As the hardware vendor produced new hardware and subsequent upgrades of the ASIO 2.0 driver to support that hardware, they also changed the name of the driver in the Windows Registry.  For a quick fix, this required recompilation and rebuilding of the ASIO CIN, and subsequent update of the ASIO.vi.  It would also be possible to scan the Windows Registry and let the user pick which ASIO 2.0 compliant driver to use.

 

3).  As of LabView 2010, National Instruments no longer supports the CIN development interface.  This makes it impossible to update the CIN as required by the aforementioned item.  While it would be possible to convert the CIN to a DLL, we do not have funding available for this modification at this time.

 

To use the ASIO.vi LabView interface at this time, without further development, means running under an older version of LabView.  It may also mean a recompilation and rebuilding of the ASIO CIN contained in ASIO.vi if the name of the ASIO 2.0 compliant driver in the Windows Registry does not match that hard coded into the ASIO CIN.

 

 

 

Dr. Ben K. Sternberg

Professor, Mining, Geological & Geophysical Engineering

and Electrical & Computer Engineering

Director, Laboratory for Advanced Subsurface Imaging (LASI)

University of Arizona, MSE Dept., Room 141, Bldg. #12

1235 E. James E. Rogers Way

Tucson, AZ 85721-0012

bkslasi@arizona.edu

Message 15 of 18
(898 Views)

Is your asio program open source? How do I download and take the learning test。 thanks。

 

0 Kudos
Message 17 of 18
(536 Views)

At the LASI web site,

http://www.lasi.arizona.edu/

 

Scroll all the way to the bottom left of this site, and then click on,

Dist_ Disk_10-2012

 

This contains all the information you need.

 

Ben

0 Kudos
Message 18 of 18
(512 Views)