Go Back   Home > Forums > >

Digital Source Digital Players and Recorders: CD , SACD , Tape, Memory Card, etc.

Open-source USB interface: Audio Widget
Open-source USB interface: Audio Widget
Please consider donating to help us continue to serve you.

Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving
Reply
 
Thread Tools
Old 28th December 2011, 12:39 AM   #681
alexlee188 is offline alexlee188  Canada
diyAudio Member
 
Join Date: Apr 2011
Hi Borge, J Kenny UnixMan et al,

This is a known issue for some time. It happens when you change tracks in the middle of a song when playing with some music playback programs, or as UnixMan reported pausing the audio stream suddenly in the middle of a song.

I may have finally found a way to fix it. Please test the latest firmware and see whether it works. It seems to work for me under uac2. I have not tested under uac1 yet.

audio-widget-nik-2011-12-28.elf - sdr-widget - Unified firmware for audio-widget. Fixed 100ms funny noise when changing tracks or pause/resume in middle of song. - Audio and Control Interface for Amateur Radio SDR and Audiophile USB-DAC - Google Proj

Alex

PS. UnixMan, if you can hear the SQ difference with the new firmware, please feedback whether it is better or worse. The difference in the latest firmware is that it uses 32 bit transfers all the way to the DAC. However, our current DAC is only 24 bit capable and may have difficulty with "bumper-to-bumper" I2S that Borge is concerned about.
  Reply With Quote
Old 28th December 2011, 04:53 AM   #682
Turbon is offline Turbon  Sweden
diyAudio Member
 
Turbon's Avatar
 
Join Date: Aug 2011
Location: EU-Southern part of Sweden, Europe.
Mute before pausing.

Brgds
  Reply With Quote
Old 28th December 2011, 07:38 AM   #683
borges is offline borges  Norway
diyAudio Member
 
Join Date: Dec 2003
Location: Oslo, Norway
Hi Alex,

Thanks for your efforts!

I'm testing on Win7-64. UAC1 is silent. I took the liberty of adding that to the description. UAC2 works like a charm. The previous issues I had (Video Lan Client player, song skip gives chirp) are not there.

But then again, on UAC2 / audio-widget-nik-20111226 the issues are not there either. I don't know if these are the same issues as UnixMan is having.

However, UAC1 / audio-widget-nik-20111226 have the chirps.

The SQ issues are probably due to me shipping some kits with too old firmware. Therefore, please use the programming kit in Add_to_flip345_bin.zip or install audio-widget-nik-20111126 manually.


BÝrge



Quote:
Originally Posted by alexlee188 View Post
Hi Borge, J Kenny UnixMan et al,

This is a known issue for some time. It happens when you change tracks in the middle of a song when playing with some music playback programs, or as UnixMan reported pausing the audio stream suddenly in the middle of a song.

I may have finally found a way to fix it. Please test the latest firmware and see whether it works. It seems to work for me under uac2. I have not tested under uac1 yet.

audio-widget-nik-2011-12-28.elf - sdr-widget - Unified firmware for audio-widget. Fixed 100ms funny noise when changing tracks or pause/resume in middle of song. - Audio and Control Interface for Amateur Radio SDR and Audiophile USB-DAC - Google Proj

Alex

PS. UnixMan, if you can hear the SQ difference with the new firmware, please feedback whether it is better or worse. The difference in the latest firmware is that it uses 32 bit transfers all the way to the DAC. However, our current DAC is only 24 bit capable and may have difficulty with "bumper-to-bumper" I2S that Borge is concerned about.
  Reply With Quote
Old 28th December 2011, 08:39 AM   #684
UnixMan is offline UnixMan  Italy
diyAudio Member
 
UnixMan's Avatar
 
Join Date: Apr 2005
Location: L'Aquila, Italy
Quote:
Originally Posted by alexlee188 View Post
I may have finally found a way to fix it. Please test the latest firmware and see whether it works. It seems to work for me under uac2.
nope.

Downloaded and flashed:
Code:
./program-widget.sh audio-widget-nik-2011-12-28.elf
program-widget with audio-widget-nik-2011-12-28.elf
     target: at32uc3a3256
    chip_id: 0x2ff1
  vendor_id: 0x03eb
    command: erase
      quiet: false
      debug: 6
device_type: AVR32
------ command specific below ------
   validate: true

     target: at32uc3a3256
    chip_id: 0x2ff1
  vendor_id: 0x03eb
    command: flash
      quiet: false
      debug: 6
device_type: AVR32
------ command specific below ------
   validate: true
   hex file: /tmp/audio-widget-nik-2011-12-28.hex

Validating...
115496 bytes used (45.48%)
     target: at32uc3a3256
    chip_id: 0x2ff1
  vendor_id: 0x03eb
    command: reset
      quiet: false
      debug: 4
device_type: AVR32
------ command specific below ------
unfortunately the problem is still there.

Although perhaps the noise produced during "pause" changed a little bit. It sounds like the widget is looping re-playing the last received sample(s): rat-ta-ta-ta-ta-ta... as before, but now the repetition "frequency" (rate) seems to have reduced a bit (and so seems to have done also the "pitch" of the produced noise).

Quote:
Originally Posted by alexlee188 View Post
PS. UnixMan, if you can hear the SQ difference with the new firmware, please feedback whether it is better or worse. The difference in the latest firmware is that it uses 32 bit transfers all the way to the DAC.
slightly better. But, as BÝrge said, I had some very old version before, so there's much more than just the 24/32bit thing.

Still, I wonder why/how the firmware could change the SQ...
__________________
Quote:
"We should no more let numbers define audio quality than we would let chemical analysis be the arbiter of fine wines." N.P.
  Reply With Quote
Old 28th December 2011, 08:39 AM   #685
alexlee188 is offline alexlee188  Canada
diyAudio Member
 
Join Date: Apr 2011
I have uploaded audio-widget-nik-2011-12-28a.elf, which has the uac1 fix reverted. So only uac2 has the latest 100ms chirp fix. See whether uac1 now plays music :-) Will have to work out how to fix uac1 chirp another day ;-) (All my PC's are running Linux so very lazy to test uac1.)

Alex
  Reply With Quote
Old 28th December 2011, 08:47 AM   #686
borges is offline borges  Norway
diyAudio Member
 
Join Date: Dec 2003
Location: Oslo, Norway
Sorry Alex, UAC1 still mute.

BÝrge
  Reply With Quote
Old 28th December 2011, 09:02 AM   #687
alexlee188 is offline alexlee188  Canada
diyAudio Member
 
Join Date: Apr 2011
Hi all,

OK. Maybe a little explanation on why there is the chirp and why it is so difficult to fix.

Unlike many (most) other soundcards, the audio-widgets has async with rate feedback. There is an internal circular buffer that continues to output to the I2S, and the incoming USB data is used to fill the buffer. The incoming USB rate is throttled with rate feedback to get the circular buffer going without buffer over or under flow.

When the incoming USB data stream is stopped suddenly (without the music playback program and/or the driver sending commands such as USB set alternate setting to zero (which is the zero bandwidgth USB alternate setting), the circular buffer continues to circulate, AND the firmware tries to do rate feedback correction furiously. Thus there is this 100ms chirp before finally the USB alternate setting is set to zero by the music player software and/or the audio driver.

So this explains:

1. Why "other" soundcards do not have this issue. 'Cos they are probably not async with rate feedback.

2. Why there is this issue with some music playback software only. Under Windows, PurePlayer does not have this issue. I suspect it is because it (correctly) mutes the playback stream before stopping the audio (via the driver) before skipping tracks. Other software may not mute the playback stream, but sends the USB set alternate setting to zero ASAP, thus mutes the chirp within a short time (shorter than 100ms).

3. UnixMan's pausing of the playback with the command line probably is one of those situations where the audio stream is stopped abruptly without the audio driver being informed, and thus the alsa driver will not set the alternate setting to zero immediately (this will eventually happen when the alsa driver times out without incoming audio data.) In the meantime the audio-widget is chirping :-)

So for the muting to work, there must be some signal from the host that the audio stream is stopping. Just merely stopping the stream abruptly is not good enough. The audio-widget will think that it is just a temporary situation and more data will be coming through shortly. In the meantime the audio-widget will frantically signal via the feedback rate that the host should send faster :-)

My own solution is not to skip tracks, but to listen to the whole song from start to finish :-)

Alex
  Reply With Quote
Old 28th December 2011, 09:17 AM   #688
borges is offline borges  Norway
diyAudio Member
 
Join Date: Dec 2003
Location: Oslo, Norway
Quote:
Originally Posted by alexlee188 View Post
My own solution is not to skip tracks, but to listen to the whole song from start to finish :-)
Good thinking Alex! Unfortunately, some players give chirps when they go from one song to the next without user intervention.

It's good that you point out the causes. Could you please refer to where in the code these things are going on?

I'm sure you have considered the alternatives and whether it would make sense for the feedback routine to simply give up at some point.

Which of your changes are in the git repository?


BÝrge

Last edited by borges; 28th December 2011 at 09:19 AM.
  Reply With Quote
Old 28th December 2011, 09:39 AM   #689
alexlee188 is offline alexlee188  Canada
diyAudio Member
 
Join Date: Apr 2011
Hi Borge,

I just tested the 12-26.elf code under uac1. There IS sound playback :-) Check your hardware :-)

Alex
  Reply With Quote
Old 28th December 2011, 09:40 AM   #690
alexlee188 is offline alexlee188  Canada
diyAudio Member
 
Join Date: Apr 2011
HI Borge,

sorry. Tested the wrong firmware :-( Will test the 12-28.elf now.

Alex
  Reply With Quote

Reply


Open-source USB interface: Audio WidgetHide this!Advertise here!
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Async 192Khz USB - the SDR-Widget collaborative project SunRa PC Based 5 26th April 2011 06:38 PM
usb audio interface david12 Equipment & Tools 14 10th October 2010 02:58 AM
Cheap Audio Interface (USB?) to PC agm2003 Instruments and Amps 11 16th September 2007 07:48 AM
Open call for suggestions on Open Source DIY Audio Design gfergy Everything Else 1 15th April 2007 07:33 AM
USB Interface Perfect?- Computer Audio fmak Digital Source 3 4th December 2004 10:24 PM


New To Site? Need Help?

All times are GMT. The time now is 01:17 AM.


Search Engine Optimisation provided by DragonByte SEO (Pro) - vBulletin Mods & Addons Copyright © 2021 DragonByte Technologies Ltd.
Resources saved on this page: MySQL 14.29%
vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2021 DragonByte Technologies Ltd.
Copyright ©1999-2021 diyAudio
Wiki