Giter Site home page Giter Site logo

songify-rocks / songify Goto Github PK

View Code? Open in Web Editor NEW
153.0 10.0 20.0 9.8 MB

A simple tool that gets the current track from Spotify, YouTube and Nightbot.

License: GNU General Public License v3.0

C# 99.67% HTML 0.33%
spotify streaming twitch youtube nightbot open-broadcaster-software xsplit

songify's Introduction

ko-fi

Songify: Take Your Streaming to the Next Level

Are you looking for a way to add some musical magic to your stream? Look no further than Songify - the app that fetches the current playing song from Spotify, YouTube, and many more players. With Songify, you can seamlessly integrate your music with your streaming or broadcasting platform and create a dynamic, engaging experience for your audience.

Features

Songify is packed with features that will help you take your stream to the next level:

  • 🎵 Real-Time Song Info: Get the currently playing song and save it to a text file, display in our cloud hosted widget or built your own with the data provided by the internal webserver.
  • 🔊 Streamlined Start-Up: Songify automatically starts with Windows and minimizes to the system tray, so you can focus on your stream without interruption. No worries, there is a setting that enables Songify only when your stream is live!
  • 💬 Seamless Chat Integration: With integration Twitch chat, you can easily share song info and get requests from your viewers in real-time.
  • 🎧 Ultimate Playlist Control: Use Songify's song history and Spotify song requests features to create the ultimate playlist for your stream.
  • 🖼️ Custom Visuals: Download album covers to visually enhance your stream, or use Songify's internal webserver to build custom "now playing" displays that fit your brand and style.
  • 💬 Personalized Pause Text: Keep your audience entertained and engaged with customized pause text.
  • 🎉 And More: Discover even more features and benefits that will make your streaming experience smoother and more fun!

Translations

Songify is currently available in 9 different languages

  • 🇬🇧 English
  • 🇩🇪 German
  • 🇫🇷 French
  • 🇮🇹 Italian
  • 🇪🇸 Spanish
  • 🇵🇱 Polish
  • 🇵🇹 Portuguese
  • 🇧🇷 Brasilian Portuguese
  • 🇷🇺 Russian

These translations are crowd-sourced and powered using Weblate. Contributions are always welcome.

FAQ

Are you ready to take your streaming to the next level? Check out our guide and FAQ to get started with Songify:

Don't let your music be an afterthought - make it a central part of your streaming or broadcasting experience with Songify!

songify's People

Contributors

avocat727 avatar cyklan avatar dependabot[bot] avatar elhertz avatar inzaniity avatar karimawi avatar sayzoth avatar shwotever avatar unluckyghost26 avatar weblate avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

songify's Issues

[Enhancement] Add {url} Variable

Hey, GREAT APP!!, would love to see a {url} variable to use with the "Upload song info" option so it looks smth like this:
image

(I'm using the split artist & title option for obs anyway) so it won't have the url

Songify keeps crashing

After this new update, Songify crashes almost immediately after launch. Connects to my Spotify and Twitch though no problem. Everytime it crashes, i get at least 10 small error windows. Not sure what is going on. Hope it can be fixed soon.

Problem mit Vip < Sub

Moin, grüß dich. Es ist gerade ein folgendes Problem aufgetreten, unzwar wenn Vips, aber subs nicht erlaubt sind, ist es VIPs welche auch Sub sind nicht erlaubt den !ssr Befehl zu nutzen. (Siehe Screenshot) .
Wäre super, wenn du das noch fixen könntest :D

Viele liebe Grüße und ein angenehmes Wochenende
Liron
Screenshot 2023-04-29 142742

Song info fetching broken after update

I haven't streamed in a good while, since like december. But yesterday i did and when i launched songify i noticed that my widget wasnt displaying any song info whatsoever, something thats always worked pretty flawlessly before. The software auto updated so there wasnt much i could do to prevent this sadly.

I've attached a video of my streaming setup displaying music playing, the title in spotify and the player itself along with the textfile thats supposed to show the title but is simply the wrong song and hasnt changed.

https://streamable.com/ut2eri

Didn't save the settings

Hello
I made all Settings, linked my spotify and twitch account and changed everything in the settings but after I closed the app and started it again, everything was deleted and I had to make the settings again.
Is there a way to save the settings I made anywhere?
Thank you

Add support trovo.live

In some regions, the streaming platform trovo.live is gaining popularity.

I ask you to consider it and if there is an opportunity to add support and integration with this platform.

Some services already support them: streamlabs, nightbot, stream elements and others.

But as far as music is concerned, songify is just better

https://trovo.live/
https://developer.trovo.live/

ty <3

Songify Can't Detect VLC

Songify cannot detect VLC, as of the recent update.

I'm using Windows 10. VLC version 3.0.17.4 - Songify version 1.3.8.1

Tried reinstalling both. Nothing outputs to the text file.

An other process is using the "{route}/cover.png" causing the message "Songify just crashed ):"

I tried to change the route of the directory but the problem still appears. So then I tried something different like erase the "%localappdata%/Songify.Rocks" with no fixes. I dont know what is the exact process to shutdown for solve this issue. Help :c

Here is my log file:

19:22:10: ##### Unhandled Exception #####
19:22:10: MyHandler caught : The process cannot access the file 'C:\Program Files\Songify\OBS\cover.png' because it is being used by another process.
19:22:10: Runtime terminating: {0}True
19:22:10: ###############################
19:22:10: The process cannot access the file 'C:\Program Files\Songify\OBS\cover.png' because it is being used by another process.
19:22:10: at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.File.InternalDelete(String path, Boolean checkHost)
at Songify_Slim.MainWindow.WebClient_DownloadFileCompleted(Object sender, AsyncCompletedEventArgs e)
at System.Net.WebClient.OnDownloadFileCompleted(AsyncCompletedEventArgs e)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
at System.Threading.ThreadPoolWorkQueue.Dispatch()
19:22:10: mscorlib

Extra 10 Spaces at End of Song Title When Using foobar2000

I'm currently using Songify to grab the title of songs that I'm playing in foobar.

However, it is adding an additional 10 spaces at the end of the output in the text file (even when its just the title or just the artist name). Which causes the text to not be properly centered as shown below:

image

I also tested this with VLC and I'm getting the same result, so this makes me believe it may be an intended feature? If this is supposed to be a feature, a toggle would be greatly appreciated.

Not really what one would want

The idea of taking the window name is pretty basic but good one.
BUT, there is no way to extract the title or the artist, so you are not really getting the "song name".
There are severals scenarios you can have '-' in the artist name, or in a song name, so splitting '-' doesn't work 100%.

This, however, is the only working method I know myself. Hope someone will someday find a smart way to get a full solution.

Persistent History Link (Request)

Hello! I have been configuring and using Songify recently for my stream, and I love it! However, one rather bit I feel is lacking is that each new session gives a new Song History link. Could this be something that gets auto parsed server side to https://songify.overcode.tv/{username} then select date and/or https://songify.overcode.tv/{username}/today?

Alternatively, there should be a !songhistory command that has the current song history session link as a parameter (i.e {historyurl})

I do see that there's a history.shr file in the app directory, and I may end up making my own history page with that, which I am grateful for the file as a resource! Regardless, there's going to be a lot of people unwilling/unknowledgeable to do that, and a good user experience is key.

Thanks for your time on this project, and excited to see it progress!

Random High CPU usage

Specs: App starting when windows start, minimized in system tray, spotify closed.

Randomly use 90%+ of the CPU usage, for no reason. Clicking on the icon in system tray litteraly freeze the computer.

How to open from background

I'm trying to figure out how to open the application from the background, every time I try to open it the notification tells me the application is running in the background and I want to be able to have a window open to edit song settings

Regards

Twitch login does not result in success page after redirect

When selecting Twitch in the settings and pressing the Login with Twitch button, after successful username and password entry, the page will redirect to a localhost:4003/{all the tokens} with a connected refused result. The login will be unsuccessful and therefore no bot. Is there a workaround for this?
failedtwitchconnectionsongify

[Feature Request] Individual user-level requirements for 'Command' and 'Channel Point' Song Requests

Hello! I use Songify on my stream and I love it. I wanted to submit a possible feature request.

It would be very useful to implement a feature to allow the user to toggle individual user-level requirements for Song Reward redemptions based on command and channel points.

So for example, I'd like to be able to restrict the SR command to anyone VIP or above, but allow Channel Point redemptions to be usable for Everyone.

This would allow streamers to allow Song Requests for "Everyone" with Channel points, or allow VIP/Sub to request for 'free' with a command.

image

Thank you!

download support m4a file

you could make this application to be m4a and not mp3, I've already searched for downloaders with m4a compatibility and there's no :(
apologies for asking a lot

crash on startup

10:27:58: Object reference not set to an instance of an object.
10:27:58:    at Songify_Slim.Views.MainWindow.<MetroWindowLoaded>d__50.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
10:27:58: Songify
10:27:58: ##### Unhandled Exception #####
10:27:58: MyHandler caught : Object reference not set to an instance of an object.
10:27:58: Runtime terminating: {0}True
10:27:58: ###############################
10:27:58: Object reference not set to an instance of an object.
10:27:58:    at Songify_Slim.Views.MainWindow.<MetroWindowLoaded>d__50.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.DispatcherOperation.InvokeImpl()
   at MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(Object obj)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Windows.Threading.DispatcherOperation.Invoke()
   at System.Windows.Threading.Dispatcher.ProcessQueue()
   at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   at System.Windows.Application.RunDispatcher(Object ignore)
   at System.Windows.Application.RunInternal(Window window)
   at Songify_Slim.App.Main()
10:27:58: Songify

Chrome freezes 2s every fetch with Youtube

When using the extension with Youtube (Chrome), Chrome freezes for about 2s every 3s (3s being the default refresh rate of Songify). The freez occur on every Chrome tabs and even if I open another Chrome window.
I tried different values for the refresh rate and it does change the freez' frequency.
The issue disappears as soon as I close Songify.
I'm using Songify 1.2.4
Chrome Version 83.0.4103.116 (official build) (64 bits) GPU acceleration is enabled (default)
Windows 10 1909 18363.900

PC hardware
Ryzen 9 3900X
RAM 16 GB 3600 MHz
GPU RTX 2070

According to the Windows' task handler nothing goes above 60% of usage.

Connection to Spotify Webservice.

I kind of posted before I could write this but whenever I try to connect to the spotify webservice with songify it just tells me "Couldn't connect to the Spotify Webservice. Please try again." I've tried literally everything I can think of.

[Enhancement] Progress Bar?

Hey, Jan

I know you took the decision and you're not doing any major developments to Songify anymore and will just keep maintaining it and I respect that, I hope everything is going well now or at least going okay. I just discovered Songify lately after I had several issues with Snip, I have a couple of friends who stream regularly and I also mod for some big streamers in my country, I told them all about Songify, and ALL of them kept thanking me for letting them know about it, so I'm just telling you that even though you lost the motivation for streaming, your app will help several streamers who are full of passion and energy towards streaming. I made an issue with the {url} variable thing a few days ago, that was before I read the Discord announcement, but it encouraged me to ask you about this...

I was hoping if you're willing to add one last little feature to Songify and it'd literally be the perfect app for this, a progress bar, SpotifyAPI returns progress_ms and duration_ms in the player endpoint payload, so if possible, could you maybe use some kind of library to generate an image that is saved along the song metadata files and is updated every like 2 seconds, which would be just a straight line that progresses with the value of progress_ms and in the app would be settings for the line thickness and width, maybe colors. One other idea which I don't know if it'll work (just like the previous one 😅), maybe make it so that it's a HTML file instead of a PNG image so that it could be updated directly without actually saving it to the device and increasing CPU and Disk usage.

I have no idea if any of this is programmatically possible because I have extremely limited experience in programming, I don't know if it's a lot of work or not, so feel free to reject the idea completely, or even try for a bit and ditch it, I was just wondering if you're willing to do it whilst respecting what you've decided. Good luck, be safe, and have a great life.

Songify process ends on startup attempts

When attempting to open Songify, the process immediately ends in task manager. When downloading the previous version, it starts up fine, but it immediately attempt to download an update, and the update cannot be stopped. This started happening yesterday on the latest release of Songify. The program was working fine until then. This was after my PC shut down unexpectedly due to a power outage. Restarting the computer, redownloading the software, trying different versions of Songify all still result in no success with launching the program.

Songify.Issue.mp4

Songify update extracting

Songify keeps extracting the update without updating. The update notification appears every time the computer is started with no option to turn off the notification.

Songify not working.

I signed into my twitch and Spotify on Songify and everything worked. I checked the auto-connect button, but every time the app closes and opens up again, it is signed out. The login to twitch button doesn't work, I have to log in manually which is a pain, and nothing sticks. I have to relog into every thing again, my twitch and Spotify. Is there something that I've done wrong? Or does it just not auto-connect every time you launch the app and you have to log in to everything again?

Erforderliches User level tauschen (VIP > SUB) [Under the German text, you will find an English text.]

Moin! Ist es evtl. möglich, indem man in einer Datei etwas tausch, VIP´s über Subs zu stellen? Weil aktuell stehen Subscriber über den VIPs und ich würde gerne, dass es umgekehrt ist, so dass VIPs, Moderatoren und der Streamer Songs anfordern können, "normale Zuschauer/Subscriber" jedoch nicht. Bzw. evtl. sogar, dass VIPs und Moderatoren Lieder kostenlos mit dem Command anfordern können, während normale Zuschauer/Subscriber das per Channelpoints tun müssen. Denn die VIPs/Mods sind die Leute, denen man vertraut, oder sogar persönlich kennt, während jeder abonnieren kann. Ansonsten bin ich extrem zufrieden mit Songify, vielen Dank für Ihre ganze Arbeit.

English:

Hello! Is it possible to put VIPs above subs by exchanging something in a file? Because currently subscribers are above the VIPs and I would like it to be the other way around, so that VIPs, presenters and the streamer can request songs, but "normal viewers/subscribers" cannot. Or maybe even that VIPs and presenters can request songs for free with the command, while normal viewers/subscribers have to do so via channel points. Because the VIPs/Mods are the people you trust, or even know personally, while anyone can subscribe. Otherwise, I'm extremely happy with Songify, thank you very much for all your work.

Songify won't open.

Running the program results in no application being started. Task manager reports nothing regarding the application either. :(

Would love if it detected when the song was paused/stopped

Would love if it detected when the song was paused/stopped and would auto clear the text files and make them empty.

Other than that its going good altho seems like the !song command isnt working could just be on my end but im not sure.

AppID not connecting...

Hi there,
I've been desperately looking for a way to get the song information from spotify on my obs stream.
After running in circles because all the other options were updating the song only when the song had ended I found Songify,
Feels like an awesome app, really was eager to try it
However...

I'm having a problem with linking through the spotify app

After creating the app, getting the client id and secret in songify, trying to link I keep getting this error page:

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator at [email protected] to inform them of the time this error occurred, and the actions you performed just before this error.

More information about this error may be available in the server error log.

I've searched around and have not found a way to solve this issue,
I tried multiple times, created another app, changed the secret...

Maybe I'm too much of a noob,
but I thought maybe someone here would have a solution?
Thank you for your time

Dot in Artist cuts off (foobar)

When a dot is in the Artist name it cuts off the string.

E.g.
Artist Name: s.d.s
Track Title: ngi

Only s.d. gets written down using the following output-format: {artist} - {title}

Tested only with foobar2000.

songify wont open

So I have tried to open it up and it won't open. So, I uninstalled it and reinstall it and still won't open.

Unable to log into Twitch

Songify Twitch Login Failure
I am clicking on the login with twitch button but it fails to open the redirect in my browser. Nothing happens. Any help would be appreciated!

can´t open anymore

hi, i have the problem, that after i opened songify once, i can´t open it anymore after it was closed or i turn on my pc again.
what could be the issue?

Songify Chrashes when the output-path cannot be found

Hey,

I've updated my System from Win10 to Win11 and during this some pathes have changed as well the output-path for sonfigy. This leads to a songify-crash when I've started songify again and he didn't find the path again. As workaround I've just created the path again because I couldn't start songify again. Here the important part from the crash-log:

Reproducing:

  • delete the output-path

Expected Behaviour:

  • Information about the wrong path
Crash-Log-File ```

14:49:24: ##### Unhandled Exception #####
14:49:24: MyHandler caught : Could not find a part of the path 'F:\Marvin\Documents\Stream\Songify\Songify.txt'.
14:49:24: Runtime terminating: {0}True
14:49:24: ###############################
14:49:24: Could not find a part of the path 'F:\Marvin\Documents\Stream\Songify\Songify.txt'.
14:49:24: at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize)
at Songify_Slim.MainWindow.WriteSong(String rArtist, String rTitle, String rExtra, String rCover, Boolean forceUpdate, String rTrackId, String rTrackUrl)
at Songify_Slim.MainWindow.d__43.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Songify_Slim.MainWindow.d__57.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
at System.Threading.ThreadPoolWorkQueue.Dispatch()

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.