Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Audio: add backend independent resampler #11358

Merged
merged 4 commits into from
Jan 31, 2022
Merged

Conversation

Vestrel
Copy link
Contributor

@Vestrel Vestrel commented Jan 11, 2022

@MSuih MSuih added the Audio label Jan 11, 2022
@Vestrel Vestrel marked this pull request as draft January 11, 2022 12:26
@Megamouse
Copy link
Contributor

Are you gonna make this a submodule?

@Vestrel
Copy link
Contributor Author

Vestrel commented Jan 15, 2022

I was thinking about merging this as is, since the original repo is not on gh. I dropped a lot of unneeded stuff from library.

@Vestrel Vestrel marked this pull request as ready for review January 15, 2022 08:49
@Megamouse
Copy link
Contributor

I mean, if the original repo is on git, that should suffice.
https://codeberg.org/soundtouch/soundtouch.git

@Megamouse
Copy link
Contributor

It would also make more sense to have explicit commits for modifications. How else would you know what was changed

@Vestrel
Copy link
Contributor Author

Vestrel commented Jan 15, 2022

You mean for SoundTouch?

@Megamouse
Copy link
Contributor

Yes.
Tbh, It's probably best if we clone the repo and publish it on our GitHub.
Then you can make pull requests for the changes if necessary

@Vestrel
Copy link
Contributor Author

Vestrel commented Jan 15, 2022

Can you do it then?

@Megamouse
Copy link
Contributor

Or we host our own fork on Codeberg.

@Megamouse
Copy link
Contributor

Just wondering. Why do we even need Soundtouch?

@Vestrel
Copy link
Contributor Author

Vestrel commented Jan 15, 2022

Cubeb doesn't support frequency modifiers and thus time stretching would not work on it. SoundTouch also does pitch correction.

@Megamouse
Copy link
Contributor

https://github.com/RPCS3/soundtouch

3rdparty/SoundTouch/CMakeLists.txt Show resolved Hide resolved
rpcs3/emucore.vcxproj.filters Outdated Show resolved Hide resolved
rpcs3/Emu/Cell/Modules/cellAudio.cpp Outdated Show resolved Hide resolved
@Vestrel
Copy link
Contributor Author

Vestrel commented Jan 21, 2022

I'm also waiting for merge of RPCS3/soundtouch#1

@Vestrel Vestrel force-pushed the resampler branch 2 times, most recently from c91b84b to c53ce4d Compare January 22, 2022 13:08
@Megamouse
Copy link
Contributor

I guess all that's left now is that i have to test it for regressions

@Augusto7743
Copy link

Thanks very much for implement that commit

@Megamouse
Copy link
Contributor

lgtm. It still resumes audio after I close Netflix, which is all that matters to me tbh.

Someone else should probably peer-review the cellAudio code though.

Cubeb uses internal rate resampler and it's not being flushed during call to stream_stop.
This results in noticeable click when emulator is unpaused.
Reset last sample buffer on pause for all backends.
@Augusto7743
Copy link

RPCS3 is an emulator for PS3 and does the work.
I not understand because users demand emulate PS1, PS2 and PSP and yet Netflix using RPCS3.
Netflix help in emulation ?

@RainbowCookie32
Copy link
Contributor

Netflix has a PS3 application, which RPCS3 can emulate. The firmware emulators also are PS3 applications, which RPCS3 can also emulate to varying degrees.

@Vestrel
Copy link
Contributor Author

Vestrel commented Jan 27, 2022

Mega referred to windows version of Netflix here

@Darkhost1999
Copy link
Contributor

Darkhost1999 commented Jan 27, 2022

Netflix help in emulation ?

Even if it wasn't the Windows application being discussed. Yes Netflix working on the RPCS3 does help proper ps3 emulation.
Just like every single ps3 game that is not ps3 exclusive titles. The emulator is trying to emulate a PS3 and every single app, game, theme, setting, controller, or anything pertaining to the ps3 is of importance.
At the moment netflix has a regression (or rather a new implementation that exposed a bug) in the network functionality of RPCS3 and can not watch anything. Fixing that may help more games obtain online functionalities.
So nothing is being ruled out as long as it is a valid issue.

@Augusto7743
Copy link

In others words ... Netflix working help to understand other codes in emulation ?

@Megamouse
Copy link
Contributor

since no-one is willing to test or review this other than me, I'll just merge.

@kofking521
Copy link

自己创建的新武将在游戏里头像不能正常显示,这个怎么解决呢!The new warrior that oneself creates will be in game avatar can not display normally, how does this solve!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Linux Cubeb not support time stretching
7 participants