I am trying to code a radio station for my friend. I would make him a web application where he can upload audio; either a group of tracks as a playlist, or a larger file, ie a guest dj set. The idea is that between guest sets the playlists fill the gaps.
I can figure out a que system, but what i need is the que to become a real-time stream, so if two users connected to the api they would hear the same thing, not trigger the start of the song.
I need it to be constantly playing, like a radio broad cast. im guessing node deployed (firebase) can manage this. looking into OBS but i dont want to have a computer switched on, i want this parked up in the cloud somewhere and my friend just keeps loading up the schedule, and it only falls silent if he uploads nothing or miss-manages his Q
Probably know but you can take a look at AzuraCast.
Related
So I have some time on my hands and thought I would make myself a little jukebox / radio type app.
It would be fairly simple, just a collection of MP3's on the server, one is chosen at random, it plays, on completion, the next one is chosen and plays. The front of this would just be a super simple page that has a player and displays the metadata.
I don't really have any experience with server programming but I'm going to look in to Node, seems like it would be good for this. I've already written a little script in Python that chooses a song from a selection and plays it (using VLC at the moment) so it should be simple to port it to Node / js.
Just wondering if someone could point me in the right direction for how to link the "player" with the "playlist".
Looking in to it, I can only find solutions involving a client and server using shoutCast or ICEcast or similar - so the playlist streams audio to a shoutcast server, and the website is just a player looking at the shoutCast URL - that seems unnecessary for me, as the streaming and the site would be the same thing.
New to a lot of this :) but I have time at the moment so happy to get stuck in!
Thanks in advance
I've built something similar and opted to do almost all the work client-side. There are several advantages:
Less infrastructure needed (and less to go wrong)
You can re-use normal HTTP CDNs for serving static files
More flexibility for client changes later (like sending different content to different clients, for A/B testing)
Potential for offline playback
No need for SHOUTcast or Icecast. All you need to do is publish the playlist and associated files to a web server. Client side, you can read this playlist, randomly pick an entry, and then load it via a simple new Audio().
Now, when your audio object fires its ended event, set the src property to the URL of the next item in the playlist. (This detail is important or Safari will stop playing audio, as they assume the user didn't want to continue.)
I am searching for the same. I think you are right using node.
I want to implement a system to track the how much has the user viewed a video. I am working on react, nodejs and mysql. I am able to record the amount of time of each session (a session being from (in milliseconds) and to (in milliseconds) when the video was played by the user).
I am struggling to find the best condition where i can confidently say that the user has completely viewed the video.
Is there any standard way to determine if a user has viewed the video completely? or a better way to track the progress?
Companies like the ones you mentioned usually use a third party ( such as mux or similar) to provide this service.
The way it works there, is the player software running in the browser is modified with a plugin to send state informant on an interval to a collection server, which aggregates this data and produces reports.
There is currently no standard format for the reported data, everyone does it differently.
I'm looking for a solution to remotely control a collection of devices running evernote from my tablet. For example, we have several musicians on stage that read from Evernote during a live performance and I would like their tablets to load the same note that I choose from my tablet. This hands free functionality is very important to our musicians.
I have a degree in computer programming so I don't mind writing code, I just need someone to tell me if this is possible with Evernote's api. Thanks in advance for the advice.
Following on, I'd set it up the following way:
Have the main database which will act as the main controlling point. In it's simplest form, you'll probably only need 3 fields or similar.
TABLE: WhatRecord
WR_ID - INT
WR_EN_ID - varchar
WR_DATE - datetime
You have an admin site (section) that would be able to save to the database, the current EverNote record ID for the clients to pull.
Each client page, would just poll the database for a change every 5 seconds or so.
If that record ID or date changed, then the page, would download the new record ID.
It'll probably take a little bit to set up, but shouldn't be too complicated.
I am working on an App that will have a bunch of pictures and videos the user will need to have. The app's mantra is having these videos and pictures available on demand and on the go. However, I am concerned about the app being too fat (big), in essence turning off some customers who prioritize size over substance. The preference has always been to have the customer be able to access these videos from anywhere regardless of 3g/wifi (i.e. local on the device). What are the really good options? Assuming I choose to elect to go the non-local route (i.e. using wifi/3g), what are my options there as well? Please advice. The size of the videos/pics could be up to 1.5GB.
The usual approach seems to be to download and store the videos on demand. A lot of the apps I've seen allow the user to manage the stored videos themselves so that they can remove videos if they aren't going to use them again.
I want to view dynamic contents (flash games, online transaction...etc) offline.
For example, I finish level 1 of this cool flash RPG game.
I go offline and play the level again.
Or, I make a purchase.
And make the purchase again offline.
Of course this won't do anything. It will be strictly for demonstration purpose.
Or, I watch a video online. Go offline and watch it again.
Is this feasible? Whatever I do through browser, it has to download things.
When it downloads, it stores on disk. Then, when it is in offline mode, it routes all traffic out to local disk.
Sounds simple, but is this really possible?
Or am I missing something?
Let's say someone patched a browser to make offline mode much more powerful.
As a web developer, how can I secure my application from this
patched browser?
Let's say I charging my contents (video, game...etc)
per view/use. With this patched browser, people can pay once
and view/use it over and over again.
They might even make a tarball out of their browser cache
and share with other people online.
So, my questions are:
is this patched browser possible?
if it is possible, how can I defend my content against it?
I'm trying to find the original author of the quote: "Trying to make digital content not copyable is like trying to make water not wet."
In your question you describe several different scenarios as if they were similar. They are not. If you have a specific question, then please ask it so that people can focus on addressing the specific case that concerns you.
Let's talk about video (and audio). Essentially, without controlling the client, you can NOT stop the downloaded video from being cached and re-watched. "Patched" browsers exist. In fact, they're not patched. They don't even need to be. FireFox has any number of plug-ins such as "DownloadHelper" which make all of this possible. YouTube goes to some effort to change their system regularly to break DownloadHelper. But they know they can only slow things down.
The only way to control a video download being re-watched is insist on the user using your completely custom plugin or application. The problem is that (a) that costs you much more money, (b) it's more painful for the user.
The other cases you mention - RPG and online transaction... these are different. Often with an RPG or other game, the client portion includes only a part of the code. Some of the code resides on your server. Without a connection to the server, the game cannot be played. You don't have to write it that way, you could make it 100% client... in which case (e.g. for Flash) the SWF file can be downloaded and played again and again, without your control.
But usually those online flash games are part-server in order to do what you say, and make them playable only online and only via the game-writers site.
An online transaction ALWAYS involves a server component, usually encrypted and non-repeatable. They can be secured.