Advertisement
Guest User

XMOS

a guest
Jun 17th, 2012
483
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 20.75 KB | None | 0 0
  1.  
  2. TUSBAudio - Thesycon USB Audio 2.0 Class Driver for Windows
  3.  
  4. Revision History
  5.  
  6.  
  7. -----------------------------------------------------
  8. V1.48.0 (September 20, 2011)
  9. ----------------------------------------------------
  10.  
  11. * Fix: resource leak on sample rate change may cause
  12. the driver to stop working
  13.  
  14. * Fix: DriverPackageBuilder reported TPP.EXE as missing
  15.  
  16. * Chg: We do not longer round up IN stream buffers to
  17. 1024 bytes, because this does not work on FrescoLogic
  18. USB 3.0 host controllers.
  19.  
  20. * Chg: Windows sound devices do no longer support
  21. bit resolutions that are not supported by the device
  22. (Windows XP only)
  23.  
  24.  
  25. -----------------------------------------------------
  26. V1.47.0 (August 24, 2011)
  27. ----------------------------------------------------
  28.  
  29. * Fix: risk of deadlock in KS framework on stream format
  30. changes (IOCTL_TUSBAUDIO_SELECT_STREAM_FORMAT_xx)
  31. Note: this is not yet fully fixed but the probability
  32. is reduced to a minimum
  33.  
  34.  
  35. -----------------------------------------------------
  36. V1.46.0 (August 18, 2011)
  37. ----------------------------------------------------
  38.  
  39. * Fix: device name in Sound and Audio Device Properties
  40. (Windows XP only) was corrupted for specific
  41. configurations
  42.  
  43.  
  44. -----------------------------------------------------
  45. V1.45.0 (August 11, 2011)
  46. ----------------------------------------------------
  47.  
  48. * Fix: risk of BSOD on driver load, cause by invalid
  49. memory access
  50.  
  51. * Chg: ISO endpoints with bInterval>4 are no longer
  52. supported by default (limitation of Windows USB stack)
  53.  
  54.  
  55. -----------------------------------------------------
  56. V1.44.0 (August 05, 2011)
  57. ----------------------------------------------------
  58.  
  59. * Fix: DTM Device Path Exerciser causes BSOD
  60.  
  61. * New: WDM sound device configuration can be defined
  62. via registry (.inf file) per device model that is
  63. supported by a driver package
  64.  
  65. * New: driver supports synchronization type 'Adaptive'
  66. for ISO OUT endpoint
  67.  
  68. * New: driver ensures that the data path (USB streaming)
  69. is stopped before restarting the device in DFU mode
  70.  
  71.  
  72. -----------------------------------------------------
  73. V1.43.0 (June 27, 2011)
  74. ----------------------------------------------------
  75.  
  76. * Fix: Driver does not load if a feedback stream exists
  77.  
  78.  
  79. -----------------------------------------------------
  80. V1.42.0 (June 20, 2011)
  81. ----------------------------------------------------
  82.  
  83. * Fix: potential BSOD if AC notification comes in
  84. while device is removed.
  85.  
  86. * New: watchdog timer restarts streams if streaming hangs
  87. for any reason, e.g. USB 3.0 bus driver issues.
  88.  
  89. * Fix: control panel GUI problems on Windows 7 if text size
  90. is set to a value larger than 100%
  91.  
  92.  
  93. -----------------------------------------------------
  94. V1.41.0 (June 10, 2011)
  95. ----------------------------------------------------
  96.  
  97. * Fix: KS Capture path does not work.
  98. This bug was introduced in V1.34.0.
  99.  
  100. * Chg: default ASIO channel names start at index 1
  101. instead at index 0
  102.  
  103.  
  104. -----------------------------------------------------
  105. V1.40.0 (June 5, 2011)
  106. ----------------------------------------------------
  107.  
  108. * Chg: New buffer settings concept:
  109. - streaming buffer size replaced by USB Streaming Mode
  110. - ASIO buffer size can be set in samples
  111.  
  112. * Chg: Incompatible API change!
  113. REMOVED API functions:
  114. TUSBAUDIO_GetStreamingBufferSizeSet
  115. TUSBAUDIO_GetStreamingBufferSize
  116. TUSBAUDIO_SetStreamingBufferSize
  117. TUSBAUDIO_GetAsioBufferSizeSet
  118. TUSBAUDIO_GetAsioBufferSize
  119. TUSBAUDIO_SetAsioBufferSize
  120. NEW API functions:
  121. TUSBAUDIO_GetUsbStreamingMode
  122. TUSBAUDIO_SetUsbStreamingMode
  123. TUSBAUDIO_GetASIOBufferSize
  124. TUSBAUDIO_SetASIOBufferSize
  125. TUSBAUDIO_GetMinimumASIOBufferSize
  126. RENAMED:
  127. enum TUsbAudioStreamingMode --> TUsbAudioDeviceStreamingMode
  128.  
  129. * Chg: New buffer settings dialog in control panel
  130.  
  131.  
  132. -----------------------------------------------------
  133. V1.34.0 (June 1, 2011)
  134. ----------------------------------------------------
  135.  
  136. * Fix: BSOD because KS driver does not check for zero-length
  137. buffers submitted by applications in the playback path
  138.  
  139. * Fix: BSOD because of race in KS driver between
  140. SetPower and DeleteFilter
  141.  
  142. * New: customer-specific workaround: swap center and LFE
  143. channels in the playback path if enabled in the .inf file
  144. via EnableSwapCenterLfeWorkaround
  145.  
  146.  
  147. -----------------------------------------------------
  148. V1.33.0 (May 27, 2011)
  149. ----------------------------------------------------
  150.  
  151. * New: ASIO supports 32 bits per sample transparent data path.
  152.  
  153. * Chg: WDM sound device supports 24 bits per sample only
  154. if this format is supported by the device.
  155.  
  156. * Fix: there was a risk of a driver crash (BSOD)
  157. in case of errors in MIDI initialisation
  158.  
  159.  
  160. -----------------------------------------------------
  161. V1.32.0 (May 20, 2011)
  162. ----------------------------------------------------
  163.  
  164. * Chg: disabled use of 'Valid Alternate Settings Control'
  165. until it is implemented by firmware
  166.  
  167. * Chg: if a clock selector has one input pin only the
  168. driver does not send clock selector requests
  169.  
  170. * Chg: using Windows Driver Kit version 7.1.0 to build
  171. the kernel modules (was version 7.0.0 formerly)
  172.  
  173. * Chg: if no string descriptor is provided for a USB
  174. terminal the driver tries the string descriptor of the
  175. AudioControl interface for sound device name before
  176. using the hard-coded default name
  177.  
  178. * Chg: for all DFU USB requests the maximum timeout interval
  179. that is allowed by the USB specification (5 seconds) is used
  180.  
  181.  
  182. -----------------------------------------------------
  183. V1.31.0 (April 18, 2011)
  184. ----------------------------------------------------
  185.  
  186. * New: added support for OUT-only configurations with
  187. data endpoint synchronization type 'Synchronous',
  188. no feedback endpoint is required for such configurations
  189.  
  190.  
  191. -----------------------------------------------------
  192. V1.30.0 (April 15, 2011)
  193. ----------------------------------------------------
  194.  
  195. * New: sample rate can be set through private API,
  196. new function: TUSBAUDIO_SetSampleRate
  197.  
  198.  
  199. -----------------------------------------------------
  200. V1.29.0 (March 18, 2011)
  201. ----------------------------------------------------
  202.  
  203. * Fix: there was a memory leak in API DLL, function
  204. TUSBAUDIO_ReadDeviceNotification
  205.  
  206. * Chg: avoid setting sample rate twice on streaming
  207. startup, this decreases the delay between streaming
  208. request and streaming active
  209.  
  210.  
  211. -----------------------------------------------------
  212. V1.28.0 (March 16, 2011)
  213. ----------------------------------------------------
  214.  
  215. * Chg: record data path carries NULL samples during 3 seconds
  216. hold-off period (after client app disappeared)
  217.  
  218. * Chg: the sample rate of the device is set before the
  219. streams are activated (for USB Audio Class 2.0 devices)
  220. and after (for USB Audio Class 1.0 devices) respectively
  221.  
  222. * New: API extended to control the streaming mode of the
  223. device (power saving, always on), new functions:
  224. TUSBAUDIO_GetDeviceStreamingMode
  225. TUSBAUDIO_SetDeviceStreamingMode
  226.  
  227.  
  228. -----------------------------------------------------
  229. V1.27.0 (March 09, 2011)
  230. ----------------------------------------------------
  231.  
  232. * Fix: there was a risk of a driver crash (BSOD) after
  233. the PC has returned from standby/hibernate
  234.  
  235. * Fix: if there is only one stream format (alternate setting)
  236. per direction the 'Valid Alternate Settings Control'
  237. request will not be used to further validate the list
  238. of supported sample rates
  239.  
  240. * Fix: the driver installer enters a wait state if it detects
  241. that the system is performing an installation, this improves
  242. behavior of first time driver installation (when device is
  243. connected for the first time)
  244.  
  245.  
  246. -----------------------------------------------------
  247. V1.26.0 (February 23, 2011)
  248. ----------------------------------------------------
  249.  
  250. * Chg: driver startup behaviour regarding sampling rate
  251. revised, initial SET request is removed
  252.  
  253. * Chg: revised selection of default feature units for
  254. volume and mute control, a single extension unit is
  255. allowed in the path now
  256.  
  257. * Chg: extended sound device creation for input direction,
  258. the driver creates an 8-channel analogue sound device
  259. for channel 0..7 and 2-channel digital sound devices
  260. for remaining channels
  261.  
  262. * Fix: ASIO work-around for ProTools 9 implemented
  263.  
  264. * Fix: BSOD in AcTerminal::GetInsertedConnectors()
  265. (mismatch trace format <-> trace arguments)
  266.  
  267. * Fix: BSOD in AudioFunctionController::Cleanup
  268. (NULL pointer in AsTerminalStream destructor)
  269.  
  270. * Fix: USB Audio Class requests through driver API
  271. are no longer allowed while the device is not in
  272. audio mode
  273.  
  274. * Fix: USB Audio Class 1.0 devices only: the sample rate
  275. of the ISO endpoints is set after AS>0 was selected
  276.  
  277. * Fix: USB full-speed mode only: streaming startup
  278. procedure revised, this fixes occasional errors while
  279. starting streaming
  280.  
  281. * Fix: XP only: Initial position of setup wizard is in
  282. the upper left corner. This is to avoid that the wizard
  283. hides the WHQL warning dialog.
  284.  
  285.  
  286. -----------------------------------------------------
  287. V1.25.0 (January 05, 2011) - internal release
  288. ----------------------------------------------------
  289.  
  290. * New: for clock sources of type 'External' the driver
  291. will query the external rate by issuing a GET CUR
  292. CS_SAM_FREQ_CONTROL request with CN set to 1
  293.  
  294. * New: for each stream format (alternate setting) the
  295. list of supported sample rates is stored separately,
  296. the driver uses the 'Valid Alternate Settings Control'
  297. for this
  298.  
  299.  
  300. -----------------------------------------------------
  301. V1.24.0 (December 22, 2010)
  302. ----------------------------------------------------
  303.  
  304. * New: added support for additional USB functions,
  305. will be exposed as child devices
  306.  
  307.  
  308. -----------------------------------------------------
  309. V1.23.0 (December 21, 2010)
  310. ----------------------------------------------------
  311.  
  312. * Chg: dsp_al.h: DBGPRINT(x) macro redefined as DBGPRINTF(x)
  313.  
  314. * Chg: for high-speed devices it is allowed to have a polling
  315. interval slower than per microframe
  316.  
  317. * Fix: the installer will install the driver for a device
  318. although there is a more trusted driver available
  319.  
  320. * New: added jack sensing support
  321.  
  322.  
  323. -----------------------------------------------------
  324. V1.22.0 (December 2, 2010)
  325. ----------------------------------------------------
  326.  
  327. * Chg: revised USB Audio Class descriptor parsing, now supports
  328. USB Audio Class 1.0 devices
  329.  
  330. * Chg: revised streaming layer to allow full-speed streaming
  331. and to support USB Audio Class 1.0 devices, improved streaming
  332. at low latencies (at small streaming buffer size)
  333.  
  334. * Chg: ASIO worker thread priority increased,
  335. increases stability when smallest ASIO buffer size is used
  336.  
  337. * Chg: ASIO DLL now reports buffer sizes that are compatible
  338. with Pro Tools 9.
  339.  
  340. * Chg: custom.ini now supports absolute or relative path in AsioControlPanel=
  341. New setting AsioControlPanelArgs= added to specify optional arguments
  342.  
  343. * Fix: On specific error conditions, ASIO CreateBuffers can return
  344. null pointers for ASIO buffers which causes ASIO host to crash
  345.  
  346. * Fix: No more audio samples were flowing after the ASIO host
  347. has changed the sample rate (observed with Cubase and Nuendo)
  348.  
  349. * Chg: added support for volume/mute control via private control API,
  350. TUSBAUDIO_AudioControlRequestSet can address feature units
  351.  
  352. * New: added volume/mute change notifications through private control API
  353. TUSBAUDIO_RegisterDeviceNotification support new category
  354. TUSBAUDIO_NOTIFY_CATEGORY_VOLUME_CHANGE
  355.  
  356.  
  357. -----------------------------------------------------
  358. V1.21.0 (October 15, 2010)
  359. ----------------------------------------------------
  360.  
  361. * New: added support for floating point arithmetic
  362. in DSP code
  363.  
  364.  
  365. -----------------------------------------------------
  366. V1.20.0 (October 12, 2010)
  367. ----------------------------------------------------
  368.  
  369. * New: added support for Digital Signal Processing (DSP)
  370. plugin, plugin is implemented as a kernel mode driver
  371.  
  372. * Chg: USB streaming layer implementation revised, audio
  373. latency improved
  374.  
  375.  
  376. -----------------------------------------------------
  377. V1.19.0 (October 20, 2010)
  378. ----------------------------------------------------
  379.  
  380. * Fix: Driver crashes if device does not report a valid
  381. sample rate, or initial set sample rate request fails
  382.  
  383. * Fix: Invalid return value (e.g. zero) from
  384. GET CLOCK_SELECTOR_CONTROL caused control panel to crash.
  385.  
  386. * Fix: BSOD if ASIO host is closed after device was unplugged.
  387.  
  388. * Chg: API changed: currentIndex parameter removed from:
  389. TUSBAUDIO_GetSupportedSampleRates
  390. TUSBAUDIO_GetSupportedClockSources
  391. TUSBAUDIO_GetSupportedStreamFormats
  392.  
  393. * Chg: API changed: TUsbAudioClockSource revised
  394.  
  395. * New: ASIO multi-client support can be disabled
  396. via registry
  397.  
  398. * Fix: AsioReset not delivered to second ASIO client
  399. on sample rate change
  400.  
  401.  
  402. -----------------------------------------------------
  403. V1.18.0 (September 08, 2010)
  404. ----------------------------------------------------
  405. * Fix: Foobar 2000 playback through ASIO hangs
  406. when sample rate changes
  407.  
  408. * New: ASIO control panel supported
  409. (through custom.ini)
  410.  
  411. * Chg: MIDI Cable Number interpretation changed after
  412. clarification by Apple/Roland, Cable Number is now
  413. used as a zero-based index into the baAssocJackID
  414. array of the endpoint descriptor
  415.  
  416. * New: device volume/mute change notifications are
  417. reflected in the Windows mixer
  418.  
  419.  
  420. -----------------------------------------------------
  421. V1.17.0 (September 1, 2010)
  422. ----------------------------------------------------
  423. * New: control panel supports stream format switching
  424. (based on alternate settings)
  425.  
  426. * New: control panel supports firmware upgrade
  427.  
  428.  
  429. -----------------------------------------------------
  430. V1.16.0 (August 11, 2010)
  431. ----------------------------------------------------
  432. * New: SDK package available
  433.  
  434. * Chg: private driver API support direct access
  435. to device descriptors and allows to send AudioClass
  436. control requests to specific nodes
  437. * Chg: control panel redesigned
  438.  
  439.  
  440. -----------------------------------------------------
  441. V1.15.0 (July 27, 2010)
  442. ----------------------------------------------------
  443. * New: WDM audio devices for SPDIF (PCM-only format)
  444. added
  445. * New: firmware image to be touched by DFU procedure
  446. can be selected
  447. * New: list of available clock sources is displayed
  448. in control panel (including clock source status
  449. information), current clock source can be selected
  450. * New: interrupt endpoint of AudioControl interface
  451. is polled for messages, control panel processes these
  452. messages
  453.  
  454. * Chg: Demo/Eval restrictions relaxed:
  455. beep starts after 60 mins and is then repeated
  456. every 5 mins
  457.  
  458. * Fix: DFU Console shortcut does not start dfucons.exe
  459. because of an invalid PATH variable
  460. * Fix: Windows XP WDM audio OUT was locked to 16 bit
  461. resolution
  462. * Fix: Windows XP WDM multichannel signal was mixed
  463. to channel 1/2 (stereo)
  464. * Fix: accidental BSOD while dynamically unloading
  465. WDM sound devices
  466.  
  467.  
  468. -----------------------------------------------------
  469. V1.14.x
  470. ----------------------------------------------------
  471. internal releases
  472.  
  473.  
  474. -----------------------------------------------------
  475. V1.14.0 (June 30, 2010)
  476. ----------------------------------------------------
  477. * Chg: timeout for AudioClass control USB requests
  478. can be configured per device type
  479. * Chg: DFU interface number is detected dynamically
  480.  
  481.  
  482. -----------------------------------------------------
  483. V1.13.x
  484. ----------------------------------------------------
  485. internal releases
  486.  
  487.  
  488. -----------------------------------------------------
  489. V1.12.0 (June 14, 2010)
  490. ----------------------------------------------------
  491. internal beta release
  492. * New: MIDI support included, tested with XDK only
  493.  
  494.  
  495. -----------------------------------------------------
  496. V1.11.0 (June 03, 2010)
  497. ----------------------------------------------------
  498. * Fix: Windows Vista volume playback and record
  499. devices often started muted (XMOS issue [8380])
  500. * Fix: driver can't play and record at same time
  501. (XMOS issue [8425])
  502.  
  503.  
  504. -----------------------------------------------------
  505. V1.10.1 (June 02, 2010)
  506. ----------------------------------------------------
  507. * Fix: distorted sound in out-only configuration
  508. (XMOS issues [8404], [8414])
  509.  
  510.  
  511. -----------------------------------------------------
  512. V1.10.0 (May 28, 2010)
  513. ----------------------------------------------------
  514. * Fix: Line in was labeled "Speaker"
  515. * Fix: W7: Sample rate list was incomplete
  516. * Fix: XP: 24 bit format was not working
  517. * Chg: Control Panel displays current sample rate only,
  518. but does not allow sample rate switching
  519.  
  520.  
  521. -----------------------------------------------------
  522. V1.00.0 (May 12, 2010)
  523. -----------------------------------------------------
  524. * New: device sample rate can be set at the
  525. WDM audio interface (Windows Vista and higher only)
  526. * New: device volume and mute can be controlled
  527. by using the standard Windows controls
  528. * New: added customization support, this allows a
  529. licensee to create a customized driver package
  530. * New: added reference manual which includes a
  531. detailed description of the customization procedure
  532. * Chg: Test Kit is replaced by Customization Kit
  533. * Fix: control panel did not handle device hot-plug
  534. correctly when start in hidden mode
  535.  
  536.  
  537. -----------------------------------------------------
  538. V0.50 (April 30, 2010)
  539. -----------------------------------------------------
  540. * New: Device Firmware Upgrade (DFU) support added
  541. * Chg: delivery package consists of two parts
  542. - Package extractor: unpacks all files to disk,
  543. optionally starts driver installer
  544. - Driver Installer: installs drivers and tools,
  545. creates Start Menu entries, starts control panel
  546.  
  547.  
  548. -----------------------------------------------------
  549. V0.40 (April 20, 2010)
  550. -----------------------------------------------------
  551. * New: 64-bit ASIO support added
  552. * New: bit-perfect playback via ASIO interface verified
  553. * New: a free evaluation version of the driver package
  554. is available
  555. * Chg: driver-internal calculation of streaming buffer
  556. size and count revised to avoid lengthy DPCs
  557. * Fix: control panel did not handle device hot-plug
  558. correctly
  559.  
  560.  
  561. -----------------------------------------------------
  562. V0.31 (February 23, 2010)
  563. -----------------------------------------------------
  564. * New: control panel displays global driver status
  565. and error information
  566. * New: control panel reacts to driver activities
  567. (sampling rate change, ...)
  568. * New: package installer may execute driver setup
  569. * Fix: driver setup does not install device driver
  570. on Windows XP
  571. * Fix: revised ASIO sample counting and buffer pointer
  572. handling
  573.  
  574.  
  575. -----------------------------------------------------
  576. V0.30 (February 12, 2010)
  577. -----------------------------------------------------
  578. * New: added full-featured driver installer
  579. * Chg: driver sets MUTE=OFF and VOL=0db for all
  580. feature units (master channel only) of the device
  581. while loading
  582.  
  583.  
  584. -----------------------------------------------------
  585. V0.24 (January 21, 2010)
  586. -----------------------------------------------------
  587. * New: driver sets MUTE=OFF and VOL=MAX for all
  588. feature units (master channel only) of the device
  589. while loading
  590. * New: added support for device hot-plug while ASIO
  591. interface is active
  592. * Fix: revised sample rate management
  593.  
  594.  
  595. -----------------------------------------------------
  596. V0.23 (January 19, 2010) - ASIO beta 1
  597. -----------------------------------------------------
  598. * New: added ASIO support (still beta)
  599. * New: buffer size can be changed via control panel
  600. * Chg: sample rate and buffer size settings are
  601. persistent now and will be restored on driver load
  602. * Chg: control panel resides in system tray now
  603. * New: added package installer to install
  604. all files on disk
  605.  
  606.  
  607. -----------------------------------------------------
  608. V0.22 (December 22, 2009)
  609. -----------------------------------------------------
  610. * Fix: audio output stops when playback is paused in
  611. playback application
  612. * Chg: default streaming buffer size increased to
  613. tolerate DPC latencies
  614.  
  615.  
  616. -----------------------------------------------------
  617. V0.21 (December 15, 2009)
  618. -----------------------------------------------------
  619. * New: driver allows to set sample rate via private API
  620. * New: driver uses implicit feedback for synchronization
  621. if an IN stream is available, device feedback endpoint
  622. will not receive IN tokens in this mode
  623. * New: control panel added
  624.  
  625.  
  626. -----------------------------------------------------
  627. V0.20 (December 04, 2009)
  628. -----------------------------------------------------
  629. * New: driver exposes a Windows sound device for
  630. SPDIF output
  631. * New: spy tool including extensive statistics added
  632. * New: driver console added
  633.  
  634.  
  635. -----------------------------------------------------
  636. V0.10 (November 06, 2009)
  637. -----------------------------------------------------
  638. Initial release.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement