Menu

#12 192k after 44.1k sampling rate issue

1.0
open
nobody
None
2021-02-28
2017-01-18
Sorin
No

Hi Didier,

Thank you for this project, I have noticed an improvement in ASIO audio quality so
I decided to go with your foobar2000 component, but I have 3 issues with it.

  1. If I start to play a 192k song after a 44.1k one, the sound is corrupted (from the logs it seems that the asio driver doesn't change the endpoint buffer size). If I stop the play and play it again it plays very fine.
  2. I can't change endpoint buffer size, it says it is out of endpoint asio driver buffer min,max values.
  3. I can't see WASAP2 output ( I have foobar2000 v1.3.14)

My OS is Windows 10 x64

All the best,
Sorin

1 Attachments

Discussion

  • Didier Galardon

    Didier Galardon - 2017-01-19

    Hi Sorin,

    concerning your 1st issue (sound corrupted while switching to a track with different sample rate): I think that the problem occurs because while initializing the asio driver, I am querying the driver for asio buffer size before setting the driver sample rate according to the track one: give a try to the attached patch: I have change the order and now set the sample rate before querying driver for buffer size.

    concerning your 2nd issue: the limitation comes from your asio driver: you can see it in the log:
    Renderer::init_asio_static_data - ASIOGetBufferSize (min:544, max:544, preferred:544, granularity:0)
    The asio driver returns that it supports only buffer size falling within the interval defined by min and max value, i.e. [544,544]. In that situation, the asio2 plugin cannot use any other endpoint buffer size configured explicitely in the advanced plugin config, but use the returned preferred size instead.

    concerning your third issue: it seems strange. Do you see the foo_out_wasap2 plugin in the foobar component config (see attached screenshot) ? If not, can you copy again wasap2.dll in the component folder of your foobar installation ?

    Kind regards,

    Didier

     
  • Sorin

    Sorin - 2017-01-19

    Hi,

    Thank you for the patch. It is working as expected. I don't have any more issues with ASIO, it works for me out of the box with USB streaming mode set to "relaxed" and AUTO ASIO buffer size.

    As I already told you, the audio seems to be with more colour with your component, especially with 192k tracks. With the old ASIO component the sound seems to be neutral, cold and sometimes not so clear. That's why I have worked since now with WASAPI event instead of old foobar asio.

    Regarding WASAP2, I can't see the component installed, only ASIO2, but the foo_out_wasap2.dll is present into foobar2000 component folder. I just downloaded "foo_out_wasap2-asio2_1.1-beta2.zip" and installed with foobar2000 component install button, but only asio2 component is available. This is not really an issue for me, because I will use anyway the ASIO solution.

    Thank you for your great support & keep up the good work ! :)
    Sorin

     
  • M Z

    M Z - 2020-04-05

    This sample rate patch really need to publish as a official release.
    I‘m using RME ADI2DAC. old ASIO plugin and WASAPI plugin comes from the same author, both sounds thin and the rhythm just not feel quite right, sounds exactly as Sorin said, especially in bass, even worse than DS output, I have compared the old ASIO plugin with MPC+multichannel ASIO renderer, MPC wins in every aspect. Don't know what he did under the hood, may altered the streamed data to DAC.

     

    Last edit: M Z 2020-04-05
  • Zoref

    Zoref - 2020-08-20

    There i sno question....the SQ improvement with foo_out_asio2.dll Beta 5 i.e. The Patch, is better in every way. The SQ finally makes itslf known which Beta 2 couldn't and sounded...ice cold.

    Now the SQ is meaty, beaty, big & bouncy and I can't stop listenening. The SQ improvment to FB2K is outstanding.

    But...picked up an anomaly...Beta2 goes to 352khz or 384Khz whereas beta 5 stops at 192Khz i.e.

    1. Configure>Advanced>Playback>Asio2>Component Config>Sample Cache factor = 192khz max

    2. Configure>Advanced>Playback>Asio2>Driver Endpoint Config>Endpoint Buffer Size = 192khz max

    I can play everything from PCM 44.1khz upto DSD 256 with no issue at all.

     
    • M Z

      M Z - 2020-08-20

      I just give up using fb2k and migrate to musicbee which use BASS libraries to decodec and output, far more stable than fb2k. Fb2k's ASIO and WASAPI output has a huge problem in timing, this makes the sound cold, yet the fb2k devs is so arrogant that makes them blind and deaf, not willing to admin this. what a shame

       
  • Jens Rendboell

    Jens Rendboell - 2021-02-17

    Hello Didier,

    Thanks for this high-end WASAP2 & ASIO2 plugin for Foobar2000 :-)

    I just recently installed your plugin, because I discovered that MPC-HC had better sound quality with the Multichannel Directshow Asio Renderer than Foobar2000 with the official Asio component (same experience as M Z writes about in the post above).

    Google: multichannel directshow asio renderer (version 2.0 is free)

    Now with the Asio2 1.1 beta5 (see post #2 above), Foobar2000 sound quality is on par with or maybe even a little bit better than MPC-HC.

    Sound quality is better all over the frequency spectrum compared to the official Asio component, but I especially notice an improvement of sound stage, image, low end and high end clarity and details. The stereo perspective is "big" with voices and instuments placed in 3D across stereo perspective.

    First, I installed your official Asio2 1.1 beta2 plugin, but was having issues with playback (Foobar2000 crashes, no automatic shift in sample rate, sample rate locked, etc.).

    Then I installed the 1.1. beta5 plugin (Asio only update) and disabled SIMD instructions and Visualisations, as well as did a manual setup of "end point buffer sizes" in Foobar2000 advanced preferences (according to hardware specs).

    I have had a few Foobar2000 crashes, especially with SIMD instructions enabled, even though my processor support SSE41.

    But now everything is working with PCM, SACD and DVD-Audio playback.

    SACD is playing perfectly with sound quality on par with a dedicated SACD player.

    With DVD-Audio I have had a couple of crashes when navigating to another track. But sound quality is top notch, so I can live with that.

    I use it with RME Fireface 800 and even though this is old hardware from 2005, it is still among the most stable pro audio sound devices.

    I also use Foobar2000 with the Wasapi2 plugin in an old laptop with spdif optical output to Fireface 800. Sound quality is the same as with Asio2 .

    (Note: You get both Wasapi2 and Asio2 in the zip package download, but my experience is that you have to unzip the package, delete the foo_out_asio2.dll and zip the Wasabi2 to a new package to get it installed in Foobar2000. Maybe download should be in 2 zip packages or explained in the installation instructions?)

    With your plugin, Foobar2000 + Fireface 800 is in league with high-end consumer and pro audio playback systems, including higher-end SACD and DVD-Audio players (and I believe can be used to feed these systems, even though I have no experience with this).

    Therefore, I strongly recommend that this plugin be part of the official Foobar2000 components as an alternative to the official Asio plugin, so Foobar2000 users and developers get to know it and can help with feedback and development.

    It would be a shame if this plugin is becoming obsolete for future Foobar2000 releases.

    Best regards,

    Rendboell

     
  • Zoref

    Zoref - 2021-02-18

    Hello Jens.....

    Where are you getting the Asio2 1.1. beta5 plugin from? I can only see 1.0 beta 5 and the above patch is beta 2. Thanks.

     
  • Jens Rendboell

    Jens Rendboell - 2021-02-18

    Hello Zoref,

    Maybe I have misunderstood your writing above: "the SQ improvement with foo_out_asio2.dll Beta 5 i.e. The Patch, is better in every way" ????

    Didiers post above with the foo_out_asio2.dll patch is dated 2017-01-17, which is after the release of the Beta2 (changelog: the Beta2 is dated 2016-12-15).

    Maybe Didier did not change the name in the patch, so when you install the patch, the name is still 1.1 Beta2?

    Can Didier or Sorin clarify this?

    Please correct me, if I am wrong.

    Best regards,

    Rendboell

     
    • Zoref

      Zoref - 2021-02-18

      Hello Jens,

      Didier has clarified below and furthermore I also confirm that in components the patch in this discussion shows up in Foobar components as beta 2.

      Please also note if using Foobar you need to reinstall Didiers patches as FoobarI removes them after each update.

       
  • Didier Galardon

    Didier Galardon - 2021-02-18

    Hello Jens, Hello Zoref,

    first of all, thank you for your kind words.

    I confirm you that the last version released is the 1.1 Beta2 uploaded in december 2016.
    I have stopped releasing new versions of the plugin because I was too busy to maintain it.
    I still continue to make some little improvements for myself on a lighter and easier to maintain version (2 channels only, AVX2 support only,etc..)

    So the patch is only available as attached to this discussion

    Best regards

    Didier

     
    • Zoref

      Zoref - 2021-02-18

      Didier,

      Thanks for your clarification.

      2 channel and AVX2 is also my only playback mode. If a better version with these parameters can be posted as a patch then much appreciated. Else the one relevant to this discussion is fine.

      Thanks and your work much appreciated.

      Oh yes....when foobar is updated, If I'm not mistaken, it kicks out Didiers component a.d re-insatlls it's own....meaning that after every Foobar update Didiers patch/es need to be re-insatlled.

       
  • Jens Rendboell

    Jens Rendboell - 2021-02-19

    Hello Didier & Zoref,

    Thanks for clarifying regarding beta versions :-)

    Anyway, Didier, please excuse me for asking about the patch above.

    You write that you made a change to solve Sorin's problem with corrupted sound when playing next track with a different sample rate:

    "I think that the problem occurs because while initializing the asio driver, I am querying the driver for asio buffer size before setting the driver sample rate according to the track one: give a try to the attached patch."

    I am asking because I had the exact same problem as Sorin, and as MZ writes, the problem was solved with the "sample rate patch".

    Or did my problem with sample rate change just go away on its own?

    Best regards,

    Jens

     
  • Didier Galardon

    Didier Galardon - 2021-02-21

    Hello Jens,

    yes , as far as I remember, there is a bug in the 1.1beta2 version plugin when the "preferred" buffer size supported by the asio Driver differs for different sample rates: the plugin uses the buffer size defined for the previous track sample rate (e.g 544 samples for 44,1kHz), instead of using the one defined for the current track sample rate (e.g. 2304 samples for 192Kz).
    The patch fixes this.

    Best regards,

    Didier

     
  • Jens Rendboell

    Jens Rendboell - 2021-02-22

    Hello Didier,

    Again, thanks a lot for clarifying :-)

    This was exactly the problem I had with the 1.1beta2, and the patch fixed it.

    I also use the Wasap2 1.1beta2 on a laptop with spdif optical (output set to 32 bit), but in this setup I have no issue with sample rate change.

    People on Audio Science Review have stability issues with Asio2 and it could be related to the sample rate issue or other issues, that can be solved with simple changes in Foobar advanced settings.

    I guess they don't know about the Asio2 patch and has given up on it.

    Would it be possible to make an update with the patch or put a note about it on the download page?

    I actually think your plugin has great potential, if people got to know it and issues could be solved in a forum.

    Let me know if I can be to any help.

    Best regards,

    Jens

     
  • Didier Galardon

    Didier Galardon - 2021-02-22

    Hello Jens,

    I have uploaded the patch and added a note in the download page.
    I don't want to make it a new "official" for fear of people thinking that this version comes with new fonctionnalities.
    Also, I have stopped publishing new versions because it is hard to maintain an "optimized" (or sort of) plugin which works for most types of hardware and playback configs. As I said above, I keep maintaining a simpler version which works for my own setup.

    Best regards,

    Didier

     
  • Jens Rendboell

    Jens Rendboell - 2021-02-22

    Hello Didier,

    Thank you, I think this will be valuable for people wanting to give the plugin a try :-)

    I fully understand that you do not want to use hours and hours on optimizations and maintenance for various types of hardware and software.

    One could hope that somebody with audio programming skills gets interested and want to help you with the hard work.

    Again, thanks for a great plugin.

    Best regards,

    Jens

     
  • Jens Rendboell

    Jens Rendboell - 2021-02-27

    Hello Didier, Zoref, Sorin, M Z

    Asio2 vs Asio official component.

    I discovered that it is quite easy to make recordings of the output of the Asio plugins with RME Totalmix and RME DIGIcheck, so I made 3 wav samples of the outputs: Asio and Asio2 and an untouched original sample, all around one minute.

    The samples is from Soul Love with David Bowie, taken from the Ken Scott Remix of Ziggy Stardust from 2003, which I think is one of the finest remixes/remasters with a very transparent sound.

    The recording is done in 24 bit, so I converted the original 16/44.1 to 24/44.1 with dBpoweramp to match the recordings.

    The numbering of the samples in the zip file is done in random order by drawing lots.

    Listen to the the samples and tell me what you hear.

    I have uploaded the samples in a zip file to Dropbox (33 MB):

    https://www.dropbox.com/s/1gtd3022txs1nlf/Test%20Samples%20%28Asio2%20vs%20Asio%29.zip?dl=0

    Best regards,

    Jens

     
    • M Z

      M Z - 2021-02-28

      Hi
      I use Audition to match every sample in timing then invert the phrase of 01.wav and mix with untouched 02.wav, I got a complete silent output, but if I use 01 or 02(both inverted at this time) to mix with 03(keep 03 untouched), I got some leftover wave, it means 01.wav and 02.wav are identical, but 03.wav was manipulated.
      This difference is hard to identify when listen with bare ears but it does exist, don't know witch one is witch but I don't care since I don't use fb2k anymore, just being curious.

       
    • Didier Galardon

      Didier Galardon - 2021-02-28

      Hello Jens,

      I confirm that 03.wav is different. When inverting then mixing it with one of the 2 others, there is a residual signal, which seems to be the original track but attenuated.

      Best regards,

      Didier

       
  • Jens Rendboell

    Jens Rendboell - 2021-02-28

    Hello M Z,

    Thanks for your comparison :-)

    The two recordings are 01 and 02, which you say are identical, while 03 is the orginal converted to 24 bit.

    The difference could be caused by noise from the software recording device (DIGIcheck), or it could be the 24 bit conversion not being transparent, which it should be?

    I have the same experience as you, I don't HEAR any difference between the recorded vs orginal samples.

    But on the other hand, when played with the Asio2 vs Asio, then I hear a difference.

    So something is going on under the hood with "feeding" the DA converter with the samples, which I believe Didier has mentioned somewhere.

    I am not an expert, but could it be some kind of sync, timing or phasing of the chunk frames going to the converter and could this cause jitter?

    So to make a real comparison, we have to match samples of analog recordings of the outputs.

    It would be welcome, if somebody with a pro recording device could do this.

    Best regards,

    Jens

     
    • M Z

      M Z - 2021-02-28

      Hi Jens,
      I think maybe when you record, the signal is software loop but not actually stream to hardware though driver, so the buffer things not running? Just a guess
      maybe you could record it using toslink output and do an outside hardware loop?
      But all in all, I'm very sure MPC+asio is better than fb2k+official asio, it is hard to tell but I feel the rhythm is different.
      I also compared with other players that have asio output even with DAWs like Audition and Reaper, only fb2k sounds bad, so I just ditched it, and I'm super happy with new HIFI life, I still feel pity for myself wasting years on this software

       
  • Jens Rendboell

    Jens Rendboell - 2021-02-28

    Hello M Z, Didier,

    Thanks for your replies :-)

    I don't know, but think that toslink / optical out is also only software/digital conversion to spdif pcm, and not actually converted by the DA converter?

    So to make a real comparison, I think you have to send the analog output to the analog input and record it.

    My RME Fireface 800 is locked down in a closet and not easily accessed to make analog connections, but maybe one day I will have the time to do it.

    To verify the transparency of dBpoweramp conversion form 16 to 24 bit, I made a conversion from 16 to 24 bit and back again to 16 bit, which is confirmed transparent by Cuetools and Accuraterip.

    So when recording with DIGIcheck, something is happening to make the two recordings different to the original.

    Best regards,

    Jens

     

    Last edit: Jens Rendboell 2021-02-28

Log in to post a comment.