Git Product home page Git Product logo

Comments (15)

p1pkin avatar p1pkin commented on May 27, 2024

ps: all that was tested on win32

from retroarch.

Themaister avatar Themaister commented on May 27, 2024

A related bug was fixed in commit: 34713f4. Make sure you're running latest versions.

from retroarch.

p1pkin avatar p1pkin commented on May 27, 2024

I am sure, tested on current git mingw compile and on beta-2

from retroarch.

p1pkin avatar p1pkin commented on May 27, 2024

Themaister: Themaister@34713f4 fixes bug in Sinc-resampler, but win32 x86 build use Hermite (only x86_64 have SINC=1 arg)

I've tested x86 build with SINC=1 and all works fine, so probably bug in that hermite-resampler.

from retroarch.

p1pkin avatar p1pkin commented on May 27, 2024

btw, why not use SINC in 32bit build ? imo it gives better result

from retroarch.

Themaister avatar Themaister commented on May 27, 2024

Sinc is a bit slower than Hermite due to quality, and when a user uses 32-bit it is assumed that it is because the computer is fairly old (like XP 32-bit). I cannot make sure that a x86 computer has SSE (which sinc uses extensively to gain speed) and I don't want two builds. I don't want either to switch out implementations in runtime, which is not possible when using intrinsics (I have to enable SSE in compiler to have it work with intrinsics).

from retroarch.

p1pkin avatar p1pkin commented on May 27, 2024

OK, it's your decision, but I'm not sure that there is at least one person using a PC with Pentium2 on Athlon(not XP) for emulation...

from retroarch.

Themaister avatar Themaister commented on May 27, 2024

If ditching support for older processors in the default builds is considered fine, I can build in SSE support and sinc ofc.

from retroarch.

Themaister avatar Themaister commented on May 27, 2024

Hermite should be fixed now as of latest commit.

from retroarch.

p1pkin avatar p1pkin commented on May 27, 2024

No, its still broken, but now I hear sound with kind of distortion or high freq noise effect.

from retroarch.

Themaister avatar Themaister commented on May 27, 2024

Still broken in what way? I verified that crackling occured, and those were gone after the commit.

If downsampling is occuring with hermite it's not going to sound good anyways (aliasing), and hermite is crap anyways at high frequencies. Input rate is usually adjusted dynamically.

from retroarch.

p1pkin avatar p1pkin commented on May 27, 2024

I mean it is still broken, but now in another way -
I hear no crackling, but kind of high freq distortion or reverberation, it is best notable on games with high tone FM music or sfx

from retroarch.

p1pkin avatar p1pkin commented on May 27, 2024

ps: with audio_rate_control = "true" this audio artifacts much less notable, but still present

from retroarch.

Themaister avatar Themaister commented on May 27, 2024

Yes, with hermite there will be a high frequency distortion when it's being resampled very near the Nyquist frequency, so it's not really avoidable unless expensive low-pass filtering takes place beforehand (which sidesteps the point of Hermite to begin with, speed), so I don't consider it a bug. Sinc will deal a lot better with this issue.

I've made Sinc default on x86 builds now. They will require SSE1.

from retroarch.

p1pkin avatar p1pkin commented on May 27, 2024

thanks for explanation. this issue can be closed.

from retroarch.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.