Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Oct 08 23:42
    lukthy commented #253
  • Oct 08 20:08
    basisbit commented #10
  • Oct 08 20:08
    basisbit commented #10
  • Oct 08 18:33
    etawiah closed #10
  • Oct 08 18:33
    etawiah edited #10
  • Oct 08 18:32
    etawiah edited #10
  • Oct 08 18:11
    etawiah opened #10
  • Oct 08 18:05

    achimmihca on master

    fix: log messages from other th… (compare)

  • Oct 07 19:02
    achimmihca commented #253
  • Oct 07 19:01
    achimmihca commented #253
  • Oct 07 18:59
    achimmihca commented #253
  • Oct 05 01:44
    lukthy edited #253
  • Oct 05 01:40
    lukthy opened #253
  • Oct 03 18:49
    achimmihca commented #252
  • Oct 03 18:48

    achimmihca on master

    Adding Polish language as prope… Merge pull request #252 from Th… (compare)

  • Oct 03 18:48
    achimmihca closed #252
  • Oct 03 18:47
    achimmihca review_requested #252
  • Oct 02 21:23
    TheMatiaz0 opened #252
  • Sep 23 11:51

    basisbit on master

    Serilog-Dependency correction … Merge pull request #251 from su… (compare)

  • Sep 23 11:51
    basisbit closed #251
achimmihca
@achimmihca
@bohning Is there already a log file? Please check ~/Library/Logs/Karaoke/UltraStar Play/Logs
I wonder if the app crashes when Unity is doing something, or if the OS is killing it before Unity even writes a log file.
Markus Böhning
@bohning
There is, but not from the alpha, but from when I was able to compile myself (and run it).
Nico Franke
@ZerNico

Pitch detection passes different stages.
MicSampleRecorder collects the raw samples of a mic. It uses a buffer of up to 1 second I think. Unity fills this buffer in a separate thread such that no sample is missed.
Then it depends.
The settings for example uses the simple MicPitchTracker. It waits for a certain number of samples to arrive and then analyzes these. I guess this is what you found.
In the game however, the pitchof every beat is analyzed (UltraStar song format kind of defines a grid of beats via the #BPM tag).
PlayerPitchTracker knows which beat has to be analyzed next. It waits until the Mic buffer contains the samples that correspond to that beat. This is where the mic-delay is considered. If the mic-delay is increased, then the PlayerPitchTracker will wait longer for the samples to arrive. If there are enough samples, then these are analyzed and a PitchEvent for the beat is fired.

Thanks a lot for the detailed information I'll look further into it!

Really appreciated

achimmihca
@achimmihca
does anyone here know what happened to ultrastar-es.org ?
I cannot reach the website
basisbit
@basisbit
can reach it from here. Their domain is blocked by dome dns provider for legal reasons
achimmihca
@achimmihca
Ahh, I can reach it again as well. Sweet!
Nico Franke
@ZerNico
One more quick question I have so far, so unity always gets the new Audio samples in a seperate thread and once per frame you put the new samples into the buffer of the MicSampleRecorder. The buffer is the sampling rate so it is exactly one second of data? And because the buffer has a limited size the new samples are added to the back and if they hit the end they start at 0 again?
(basically looping around whenever needed) Did I get that correctly?
achimmihca
@achimmihca
yes, all correct.
(has nice image e for the buffer)
achimmihca
@achimmihca

because the buffer has a limited size the new samples are added to the back and if they hit the end they start at 0 again

Actually no. I just checked this. The new samples come into the buffer (highest index has newst samples, index 0 has oldest sample). When the buffer is full, the old samples just "fall out" of the buffer.

No circular buffer involved for this part.
achimmihca
@achimmihca
BTW: You can see the mic buffer in the RecordingOptionsScene. The visualization shows a portion of the newest samples in the mic buffer (See RecordingOptionsMicVisualizer.displayedSampleCount). When you make a sound, you can see it moving from right (high index in mic buffer) to left (low index in mic buffer).
Also, when you increase RecordingOptionsMicVisualizer.displayedSampleCount to the full size of the buffer, then it should take 1 second for the wave to move from right to left (because mic buffer has length == sampleRateHz).
Nico Franke
@ZerNico
ahh that is good to know, thank you!
Nico Franke
@ZerNico

I am working on a Karaoke app as a website/webapp for fun atm
Thought you might be interested to see what I have atm
https://streamable.com/84pny0

It's really only visual atm tho, I've tested some stuff and it definitely is possible to do proper pitch recognition in a browser but it's gonna be a lot of work

basisbit
@basisbit
@ZerNico there already exists a karaoke game as website, but because of legal issues and licensing fees being astronomically high if you are not a big Sony Music licensor or similar, no one did continue to put any more time into such games. code: https://github.com/Katharine/ponytone Website with very niche indie-music content: https://ponytone.online/
however, the code of that project is quite easily readable and might be helpful for you
Nico Franke
@ZerNico

@ZerNico there already exists a karaoke game as website, but because of legal issues and licensing fees being astronomically high if you are not a big Sony Music licensor or similar, no one did continue to put any more time into such games. code: https://github.com/Katharine/ponytone Website with very niche indie-music content: https://ponytone.online/

Thanks, it looks pretty interesting!
My plan was to make it for self hosting and not for one big page so legal issues shouldn't be an issue
Also audio processing changed a lot recently, audioworklets and web assembly should improve the pitch detection quite a bit

achimmihca
@achimmihca
ponytone looks awesome :D
I only knew about MyLittleKaraoke
achimmihca
@achimmihca
@basisbit Codacy requires to add UltraStar-Deluxe Organization again (they changed something it seems). I wanted to add PlayCompanion repo to Codacy but couldn't because it is part of legacy USDX organization. And only organization owner can add the organization.
So please, add this organization in Codacy again.
basisbit
@basisbit
@achimmihca uh, sure, let me try this quickly
basisbit
@basisbit
should be done now
achimmihca
@achimmihca
Nice! If you enter ARTIFACTS_KEY and ARTIFACTS_SECRET on https://travis-ci.org/github/UltraStar-Deluxe/PlayCompanion/settings then the build should be ready as well
Michael Chen
@Drominar_twitter
Hey I downloaded the standalone ultrastar play alpha for mac (and I am the sole administrator and have permissions to read and write) but it still tells me 'You do not have permission to open the application “UltraStar Play”.' - I'm wondering why is this the case?
achimmihca
@achimmihca
Other users had also issues with v0.2.1 on MacOS. These issues might be solved with the next pre-release (there is an outstanding pull request).
Michael Chen
@Drominar_twitter
Thank you- I will look forward to the next pre-release
achimmihca
@achimmihca
You can find the new v0.3 pre-release over here
basisbit
@basisbit
Wow, so much progress! Thank you so much for all the effort you put into this!
Markus Böhning
@bohning
Nice! Thanks a ton, @achimmihca !
Just installed the companion app, really excited to try it out…
Markus Böhning
@bohning
Successfully singing through my smartphone, works out of the box. This is AWESOME.
achimmihca
@achimmihca
You're welcome :) Happy that it's working
It should also be possible now to run the main game on a tablet or phone and then use another smartphone as mic.
achimmihca
@achimmihca
I just opened some issues with features that are available in USDX but not yet in USPlay.
Do you know / want other features that are available in Vocaluxe, Performous, SingStar, Rockband, etc. that USPlay does not have (yet)?
Markus Böhning
@bohning
In 2018 I started a feature list of the infamous UltraStar CMD (Challenge, Medley, Duet) version of UltraStar. Maybe this can also be some inspiration for good features. UltraStar-Deluxe/USDX#361
basisbit
@basisbit
there are many corner case features which make it difficult to not end up with feature creep. Imho, I'd suggest focusing on features which are more urgent because there doesn't yet exist a good solution for them. That for example includes online multiplayer support where the players all have the same usdx files already, and thus multiplayer mode could be possible. That would allow online tournaments / competitions and thus could get open source karaoke back into the usual events list of online conventions / meetups.
achimmihca
@achimmihca
I just found a new site with UltraStar songs: https://usdb.eu/home
This looks very nice!
They also have an overview of UltraStar games and software: https://usdb.eu/software
Would appreciate if someone could contact them on facebook and ask them to include UltraStar Play on their site: https://www.facebook.com/UltrastarDB.
I don't use facebook so I can't do this myself.
Also, there now is a video about UltraStar Play on YouTube: https://www.youtube.com/watch?v=2B8BJeEcjj0
achimmihca
@achimmihca
Feel free to copy&paste this to spread the word ;)
basisbit
@basisbit

I just found a new site with UltraStar songs: https://usdb.eu/home

Maybe we should try to contact them and talk about the zip file format and a song content registry? I could write a server reference implementation for that but am currently not sure what the requirements are and how stuff like the API and workflow should be designed

a legal implementation could be like this: Alice is a registered at Samplestore, who also sell licensed karaoke music. Alice bought a tons of music content, more than fits on their phone's memory. USP could have some integration into such a store, which allows Alice to find and one-click download+"install" content or remove content again form the phone.