Menu

#19 Whats wrong with my ASIO

1.0
open
None
2022-01-29
2021-03-09
mo phillips
No

I can only hear short bursts of 'hiss' and no music at all, and why do I have 'output_wasap2_playback::on_playback_stop - stop_reason_user' within the ASIO
I am using Realtek ASIO

1 Attachments

Discussion

<< < 1 2 3 > >> (Page 2 of 3)
  • Didier Galardon

    Didier Galardon - 2021-03-28

    sorry for the regression. clicking bug is fixed. For the change in volume, it should be ok too, but it is hard to be sure as I hear only white noise with my asio driver.
    May be the skip problem is fixed too but I can't say because I still cannot reproduce the skip problem, even when trying with a cuesheet like the one below and starting different tracks.
    If skip are always there, may you look at the chunk size in the foobar log and see if it changes according when it skips or not ? i.e this line:
    "Renderer::InitAudioClient - chunk size not aligned on endpoint buffer size - chunk size =...."

    REM GENRE Jazz
    REM DATE 2017
    PERFORMER "monkey44"
    TITLE "monkey44"
    FILE "08 Epistrophy-monkey44fast.ape" WAVE
    TRACK 01 AUDIO
    TITLE "fast"
    INDEX 01 00:00:00
    FILE "08 Epistrophy-monkey44Insane.ape" WAVE
    TRACK 02 AUDIO
    TITLE "insane"
    INDEX 01 00:00:00
    TRACK 03 AUDIO
    TITLE "insane 2"
    INDEX 01 03:00:00
    FILE "08 Free monkey44normal.ape" WAVE
    TRACK 04 AUDIO
    TITLE "normal"
    INDEX 01 00:00:00

     
  • Didier Galardon

    Didier Galardon - 2021-03-28

    sorry for the regression. clicking bug is fixed. For the change in volume, it should be ok too, but it is hard to be sure as I hear only white noise with my asio driver.
    May be the skip problem is fixed too but I can't say because I still cannot reproduce the skip problem, even when trying with a cuesheet like the one below and starting different tracks.
    If skip are always there, may you look at the chunk size in the foobar log and see if it changes according when it skips or not ? i.e this line:
    "Renderer::InitAudioClient - chunk size not aligned on endpoint buffer size - chunk size =...."

    REM GENRE Jazz
    REM DATE 2017
    PERFORMER "monkey44"
    TITLE "monkey44"
    FILE "08 Epistrophy-monkey44fast.ape" WAVE
    TRACK 01 AUDIO
    TITLE "fast"
    INDEX 01 00:00:00
    FILE "08 Epistrophy-monkey44Insane.ape" WAVE
    TRACK 02 AUDIO
    TITLE "insane"
    INDEX 01 00:00:00
    TRACK 03 AUDIO
    TITLE "insane 2"
    INDEX 01 03:00:00
    FILE "08 Free monkey44normal.ape" WAVE
    TRACK 04 AUDIO
    TITLE "normal"
    INDEX 01 00:00:00

     
  • Didier Galardon

    Didier Galardon - 2021-03-28

    with attachment

     
  • mo phillips

    mo phillips - 2021-03-28
    1. With the new Asio2 file, the monkey audio stopped skipping.
    2. Every track starts with a louder click than in the previous Asio2...there was a click but not as loud as in the new Asio2.
    3. When changing tracks, some start then there is a pause in sound, then it continues. This happened with few Flac tracks. "Renderer::Renderer sends incomplete block of samples - total incomplete blocks sent since..... " always accompanies in console
    4. Sometimes there is also a click when changing the volume. there is also a delay although shorter than in the previous.
    5. Foobar sometimes freezes sometimes when changing tracks
    6. With the previous Asio2, the Monkey Audio tracks that skipped all had "Renderer::InitAudioClient - chunk size not aligned on endpoint buffer size - chunk size =...." changing.
      In both the new and previous Asio2 , I have found few Wavpack that have the 1st track skipping. the rest play without skipping. Whiles the "rest" of the track have same chunk size, the 1st is different
      With the .ape cuesheet, you could try 1 .ape file with 1 .cue file. The one you posted has 3 .ape files. I dont know if it will make any difference
      Something like the following
      REM GENRE Jazz
      REM DATE 1956
      REM DISCID 5009ED05
      REM COMMENT ExactAudioCopy v0.99pb4
      PERFORMER "Lester Young"
      TITLE "The Jazz Giants"
      FILE "Lester Young - The Jazz Giants.ape" WAVE
      TRACK 01 AUDIO
      TITLE "I Guess I'll Have To Change My Plan"
      INDEX 01 00:00:00
      TRACK 02 AUDIO
      TITLE "I Didn't Know What Time It Was"
      INDEX 01 09:33:13
      TRACK 03 AUDIO
      TITLE "Gigantic Blues"
      INDEX 01 19:37:15
      TRACK 04 AUDIO
      TITLE "This Year's Kisses"
      INDEX 01 26:29:30
      TRACK 05 AUDIO
      TITLE "You Can Depend On Me"
      INDEX 01 33:16:60
     
    • Didier Galardon

      Didier Galardon - 2021-03-29

      my answers/questions about your items:
      2. --> you mean only for the monkey audio codec or also for the others ?
      3. --> when you have this message in the log, it means that the size of the sample cache factor configured in the advanced option is too low (e.g. 0 --> minimal sample factor). try with a larger value, e.g the maximum one: 16384
      4. --> I'm not sure that I can do something against this. the small delay is due to the time necessary to change volume in the sample cache. may be for the click I could do something, like pausing on the fly while changing volume. I need to test it.
      5. --> Do you the same behaviour with the default foobar asio plugin ? I have this problem too with asio2 and asio plugins when monkey-audio tracks have been compressed with insane mode.
      6. --> yes. track skipping bug is related to the alignment or not between chunk size and buffer size. The structure of the sample cache in the published version of the asio2 plugin makes it more complex to use when chunk size is not a multiple of the asio buffer size (I am working on a new version of asio2 where sample cache management is much simpler).

      May you send me the log for the wavpack track which skips and another one which doesn't skip ? I have tried the cuesheet with 1 single Ape file and many tracks. I cannot reproduce skipping.

       
  • mo phillips

    mo phillips - 2021-03-29
    1. Its in every codec but I have to listen carefully to hear it, and its also in the "default: Speakers(Realtek(R) Audio). so it may be in my system.
    2. increasing the sample cache to 16384 didnt make any difference. Setting it between 256 and 512 seem to have reduced it. All this happen ONLY if Idont stop before changing the tracks. This is related to 5. below
    3. There is no click. The delay happens in both direction. I notice it better from low volume to high. When I move the slider from eg. mid to high, there is a small delay before I hear the increase in volume.
    4. What I should have said was "changing from one codec to another OR within the same codec, changing sample rate" without stopping causes foobar to crash. It did happen in the previous versions also but it seems to be more with the new version.
      Is Asio2 suppose to work with "Fadding" in foobar>Pref>Output? because if i tick it, foobar stops playing. I have to close it and open to work. it doesnt happen with the default Asio.

    Monkey audio is not presenting any other issues apart from those above.

     

    Last edit: mo phillips 2021-03-29
  • Didier Galardon

    Didier Galardon - 2021-03-30
     
  • Didier Galardon

    Didier Galardon - 2021-03-30

    I just realize that I don't use the same foobar version as you (no fading checkbox in foobar 1.3 for example). I need to check with 1.6.

     
  • mo phillips

    mo phillips - 2021-04-01

    The crashing has completely stopped. I switched to an older Realtek Asio driver.
    The only issues I have now are the "hiccup" at the begining of tracks when I switch tracks WITHOUT STOPPING( I am yet to get a "hiccup" at the begining of a Monkey audio track) and the few Wavpack skipping.

     
    • HansWurst

      HansWurst - 2022-01-25

      Hi mo philips,
      did you switch from 1.0.0.8 to 1.0.0.7?
      Which Reatek ASIO version works for you?
      thanks a lot

       
  • Didier Galardon

    Didier Galardon - 2021-04-01

    Finally I can reproduce the bug with skipping tracks, by using a cuesheet with a single wavpack file and a very short first track (1s), which gives me a smaller chunk size for the first track. It should be fixed in the attached version.
    I don't have hiccup when switching tracks without stopping. Do you have the same behaviour with other foobar outputs or with asio2/asio4all ?
    Asio2 doesn't work with fading. I develop it with the 1.3 SDK and fading did'nt exist at that time.

     
  • mo phillips

    mo phillips - 2021-04-01

    After a short test. I found out that :
    Monkey audio 16/44 now crashes
    Monkey audio 24/96 OK
    Wavpack 1st tracks that were skipping in the previous version now crash.
    About the hiccups, Would it have anything to do with "volume_set - time(ms) = ...." at the end of the console log?
    The hiccups only happen with Asio2. It was absent before you fixed the Monkey audio issue.

     

    Last edit: mo phillips 2021-04-01
  • Didier Galardon

    Didier Galardon - 2021-04-02

    Ok. l think I understand better what is the matter with the skips (problem with chunk control flow). try the attached patch. I hope it will be better this time.
    I don't know for the hiccups. It is not related to volume ( the trace in the console log appears when you change the volume). I have something anyway: now I force silence on asio output before
    stopping/restarting the driver for the track change.

     
  • mo phillips

    mo phillips - 2021-04-03

    Skipping has completely stopped in all codecs.
    Have changed the way cache size (samples) is auto calculated? Its always 6-figure about 26xxxx and does the bigger number affect sound quality?
    Aboout the hiccups, maybe I am not expressing myself well. it only happens when
    when I change tracks without first stopping
    only at the begining, between 0s and 1s
    * the track starts playing, then pauses.and then continues.

     
  • Didier Galardon

    Didier Galardon - 2021-04-03

    I cannot reproduce it, but I have a doubt on something, so I have added a debug trace in the attached asio2. May you try it and send me the log when you I have the hiccup ?

    About the cache size, yes I have changed the way it is calculated. The main cause of skipping was that the cache is a circular cache, and there was a defect in flow control between the foobar engine and asio2: asio2 use a threshold for this in order to avoid cache congestion. this threshold need to change dynamically to take into account that chunk size may increase for a same track. In addition, the cache need to be large enough whatever the chunk size is. that is why the minimum size calculation is now based on a arbitrary maximum chunk size (32738), and not on the track initial chunk size, which sometimes is not the largest one for the track. If ever there was some codec with chunks greater than 32768, cache size (sample cache factor) would have to be set manually in the advanced options.
    Increasing cache size doesn't affect sound quality. In this version, the cache is mainly use to prepare audio samples as expected bu the asio driver, in order to have just to copy them in the asio buffer when the asio callback asks for them.

     
  • mo phillips

    mo phillips - 2021-04-04

    Something else I have just noticed with the latest Asoi2, in the console log. It only happens after the LAST track in the album. A very long list.

     
  • Didier Galardon

    Didier Galardon - 2021-04-04

    Yes, it is the trace I have added for hiccup debug, but it is normal to see it at the end of the playlist. It might have been a problem I you had it just at the beginning when changing the track. So this is not the cause of the hiccup. I have removed the trace now.
    I didn't notice although you mentioned it before, but hiccup might have something to do with volume control: there is traces in your log that I don't have myself when I change the track (see attached png) :
    change volumeRatio =...
    volumeRatio changed=...
    it means that foobar try to adjust the volume when changing the track. I don't understand why , maybe something specific in your foobar config (DSP, ...)
    So I have patched the volume fonction in order to do nothing if the volume is at the same level than before. Let me know.

     
  • mo phillips

    mo phillips - 2021-04-04

    I have tested Asio2:Realtek and Asio2:Asio4All>Realtek with the following codecs:
    AAC
    ALAC
    DSD64, DSD128, DSD256
    DST64(6 channel ), DST64(2channel)
    MP3(cbr,vbr)
    PCM_BLURAY(m2ts)
    PCM(wav)
    FLAC(16/44.1, 24/96, 24/192)
    MONKEY AUDIO(16/44, 24/96,24/192)
    WAVEPACK(16/44, 24/96,24/192,32/96,32/192)

    in stereo, 2channel mono, 1channel mono

    The "Renderer sends incomplete block of samples -" at the end of the console log has also disappeared.

    There is no skipping, no crashing. There is also no hiccups anywhere.
    I think all the issues we started with have been resolved
    Thanks for everything. If there is anything else you do want me to test. please......

     
  • Didier Galardon

    Didier Galardon - 2021-04-05

    Great ! Thank you for your help. I will release this new version soon. On the other hand, I am working on a new version which I think is better regarding sound quality. If you are interested in that or simply curious, I will be happy to have your feedback once it will be ready (I need to apply all the recent patches before), in order to decide whether it worth releasing it.

     
  • mo phillips

    mo phillips - 2021-04-05

    Yes I will definitely be interested. Could you let me know when its ready

     
  • mo phillips

    mo phillips - 2021-04-06

    I have found few tracks that deserve your attention:
    1. Use chunk alignment checked
    * Track freezes at 0s when play starts with "Chunk size aligned on endpoint buffer size - chunk size ="
    * Double click on track again without stopping, the track continues to plays normally with " chunk size not aligned on endpoint buffer size - chunk size ="
    * If I change the buffer size before starting to play so that "chunk size not aligned on endpoint buffer size - chunk size =" , the track plays normally from the start.
    * There is also a crash if when the track freezes, I STOPPED the track and try to play another track
    2. Use chunk alignment NOT checked
    * Track plays normally

    Just wondering why?

     

    Last edit: mo phillips 2021-04-07
  • Didier Galardon

    Didier Galardon - 2021-04-07

    another bug yet. Chunk/buffer alignment is an optimisation which avoid some copy, but make the code more complex :-(.
    I think it is fixed now.

     
  • mo phillips

    mo phillips - 2021-04-07

    Yes, I think its fixed now. Thanks

     
  • mo phillips

    mo phillips - 2021-04-15

    I have something new for you. 2 albums with Single Channel Mono skipping. With chunk alignment, 1st track plays normally and the following tracks freeze at 0s with 3ms buffer or skips with buffer > 3ms. Without chunk alignment 1st track plays normally and the following tracks skip.
    How is the new Asio2 proceeding?

     
<< < 1 2 3 > >> (Page 2 of 3)

Log in to post a comment.