Giter VIP home page Giter VIP logo

Comments (15)

matthieugrieger avatar matthieugrieger commented on May 27, 2024

Thanks for the idea! I have actually considered doing something like this, where a value in the config file can be changed to allow caching of downloaded audio files. Doing just that would be fairly easy to implement, but I would like to have some sort of auto-cleanup of old audio files as well.

I think this is a good idea though. I just didn't think anybody would care, or be playing 4 hour mixes with MumbleDJ. ;)

I will try to work on something like this when I get the time.

from mumbledj.

matthieugrieger avatar matthieugrieger commented on May 27, 2024

@raz0rsdge: I just thought of another idea to go along with this. What do you think about a !save command? Basically if you issue !save <youtube_url> it will permanently save the audio file within ~/.mumbledj/songs/saved. So if there is a song that is played a lot, it can be kept on hand for the next time it is used.

I will likely implement a way to both save a file permanently and have cached files that delete themselves after a user-defined amount of time. Just thought I would see if this is something that could possibly be used.

from mumbledj.

hamilton5 avatar hamilton5 commented on May 27, 2024

I wondered during play could it also get the nextsong... because of this long delay(hung) between big songs.

!save is ok, but I think it would be better just to save every file untill its not used for x days. or size is > x

from mumbledj.

matthieugrieger avatar matthieugrieger commented on May 27, 2024

@hamilton5: That is something I have wanted to implement but I just haven't gotten around to it. I'll try it out sometime to make sure it doesn't degrade performance.

from mumbledj.

 avatar commented on May 27, 2024

I think @hamilton5 could be right, maybe its better to define in the configuration how much data is stored on disk and how long it stays there.

imho, the save command could be useful to generate some repeatable content? Maybe we have !saved 10 youtube URLs and generated the audio data, we could use a trigger like !repeat to replay from ~/mumbledj/songs/saved? Let's say if no new URL was added since reaching the end of the queue.

There must be a way to avoid typing !add for same URLs again and again ;)

from mumbledj.

matthieugrieger avatar matthieugrieger commented on May 27, 2024

@raz0rsdge: Alright, I will focus on setting up a caching system with a combined file size limit and file expiration. Both will be able to be tweaked in the config file. I may also add something like the !save command that I mentioned earlier if I get the time.

It may take awhile as I'm entering into a fairly busy time at university, so bear with me. :)

from mumbledj.

 avatar commented on May 27, 2024

That sounds great to me - can't wait for the results!
Thanks and don't loose focus on (MIT?) =)

from mumbledj.

hamilton5 avatar hamilton5 commented on May 27, 2024

I think if you have a !save you need a !showsaved and then maybe a !play x too??(essentially creating a soundboard) while on the topic of 'hung' what about dos protection... what stops a player from spamming !add https://www.youtube.com/watch?v=8qnQz8kxte0 for example? some messages private to the user and not public to channel !help for example?

from mumbledj.

matthieugrieger avatar matthieugrieger commented on May 27, 2024

@hamilton5 That's something I hadn't thought of before. I'll have to look into some spam prevention.

from mumbledj.

 avatar commented on May 27, 2024

OMG I got rickrolled ;]

from mumbledj.

MrKrucible avatar MrKrucible commented on May 27, 2024

!save <yt-link>
!list (shows saved yt links)
!play <yt-link>

Maybe add in the config how many songs can be saved, and make !save an Admin only command by default. Someone spamming !save wouldn't be too useful; so maybe include some way to prevent duplicates from being added to the saved list?

from mumbledj.

matthieugrieger avatar matthieugrieger commented on May 27, 2024

@MrKrucible: I was planning on making it an admin command by default. I will also make sure to add duplicate checking as well.

I'd like to somehow make it easier to use the !play command though. I'm thinking that maybe the user who saves the song can give it an alias like so: !save <yt-link> <alias>, and then play it with !play <alias>.

from mumbledj.

MrKrucible avatar MrKrucible commented on May 27, 2024

Huh, special characters should be omitted from alias titles then to prevent any abuse of the aliases.
Specifically only characters from the basic unicode.

from mumbledj.

matthieugrieger avatar matthieugrieger commented on May 27, 2024

@MrKrucible In what situations would the aliases be able to be abused with Unicode? I may just be missing some obvious examples but I can't think of any.

I'm assuming that most people would be using !save as an admin command anyway which would greatly reduce the chance that users will abuse it.

from mumbledj.

matthieugrieger avatar matthieugrieger commented on May 27, 2024

I just added song caching options. I may implement some of the other ideas later, but I think this will at least solve some of the hanging problems.

from mumbledj.

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.