The requests

Read 25781 times
Well since we have got to the v3 Beta.  Got it installed today and checked it out...  Wooo talk about sexay.. Love the new layout..  so many new features too.. its great...

But one thing I did noticed that it is lacking is the ability to "view" a list of songs setup in the media...  The request widget is pretty nice.. But seems to dull and lacks a few things.

One of things is being able to see what is available for the listeners to request.. (kind of how like Sam BC is setup, It pulls the songlist info from the database, and displays it on a page viewable by anyone visiting the specific page setup with request buttons beside the song)

If Centova was able to do something like this, it would make the request widget ALOT better than that weird little request form..

if someone goes to that form, to request a song... Sure they might have a song in mind they want to hear, but that song might not exist in the playlist.. But they don't know that, because theres no possible way for them to view it.

Other than that simple issue.. I think v3 looks pretty great as it sits now.
CrossFire-Hosting LLC.
Co-Owner
This is intentional.  First, many (arguably most) stations don't want visitors to have a canonical list of all of the music they have in their database.  Lots of reasons for this, ranging from privacy to copyright to keeping nonstandard tracks (interviews, soundbytes, etc.) unavailable for request.

Second, from a technical perspective, displaying the entire contents of the media library in a single list would be impractical.  Even ignoring the substantial bandwidth requirements of doing so repeatedly for every visitor, it would be slow as hell and would bog down less elegantly-designed browsers (no names shall be mentioned :) ).

Might consider implementing an optional (admin-configured) autocomplete feature at some point in the future, but a browseable list is probably not on the horizon.

Lastly, feature requests should be posted in the feature request forum. :)  Thanks.
It wasnt really a "feature" request though.. it was more of a general statement about the requests setup for v3...  But I could see how that could be mistaken, as the way I put it...

On another note.. The Sam BC request feature does create the list and displays it on the site with barely any bandwidth usage even with 50+ people looking at the list...

However, the database that is created by Sam BC is "usually" on ones own computer using mysql.. So I guess that would be one of the differences in the bandwidth issue you are referring to.
CrossFire-Hosting LLC.
Co-Owner
On another note.. The Sam BC request feature does create the list and displays it on the site with barely any bandwidth usage even with 50+ people looking at the list...
Well, that's interesting.  OK, let's look at this logically then.

I did a quick check of my own media library and saw an average track title length of 16 characters, an average album name of 20 characters, and an average artist name of 13 characters.  That's 49 characters of raw data per track, on average.

Add in about another 50 characters or so for JSON overhead for a string like
{ artist: "", album: "", track: "" }

Now you're at 100 characters per track.

It's not at all unreasonable for a station to have well in excess of 10,000 tracks.  In my own personal library alone, I have over 18,000.  I've seen production users with multiple tens, and even hundreds of thousands of tracks.

So taking a modest scenario, multiply 100 characters by 10,000 tracks, and you get 1,000,000 characters, or 1MB of data.  That's one megabyte of data to feed the track list to the browser ONCE.

Now, assuming all browsers can even cope with that much data in a single selectbox (hint: not all of them can) you have to also consider that this is loaded every time someone hits the start page.  Many clients use the start page as the de-facto go-to page for their stream, instead of using it as the example it's intended to be.  So you may end up getting dozens of hits per minute downloading this 1MB of data.

Obviously that will be mitigated somewhat by gzip compression, but you're still looking at 200KB or so per request, plus taxing the browser in trying to parse 1MB of data and stuff it into a selectbox on every page load.

That, in a nutshell, is why I don't see this as viable for the bulk of our clients unless it's implemented via an autocomplete solution of somesuch, which allows us to whittle down the result set before trying to feed the data to the browser.
I think I fount a solution for this issue, but not completed yet... and need some help.

The idea:
Using jQuery automation ( http://jqueryui.com/autocomplete ) I've made simple html form that included and requests form from Centova 3. For now, my songs from our radio is included in the html as text. I don't know how to get them from outside playlist.txt for example.
So, when you typed in first input field word, the script will show the entire song with artist and title, and when you click on the song, second jQuery script must auto-insert both artist and title of the song in the second and third input fields below. And they can be hidden as well.
Basically this is my idea, but I don't have necessary skills in jQuery to complete It :(
Any help is welcome !

Link of the decoded request form: http://goo.gl/c4Sz7
Are you manually inputting the file names in there though?

So when you type in a word (say "jingle"), its pulling from whats listed on the html file?


I have thought of a way to do it... but it involves pulling info from the database for each client/user...

Using php/mysql to create the list, and to be able to request the song... (sort of like how SAM BC works for the requests).

Maybe if the 2 could be mixed together...  the autocomplete and the php/mysql setup of the list of songs...  That could be something better...

As some playlists are "quite large" in size, and that would take hours to manually put all those in the list.
Last Edit: April 07, 2013, 04:28:31 pm by DJFire_CFR
CrossFire-Hosting LLC.
Co-Owner
Steve B.,
 is it possible to use somehow playlist.txt file from media library for database for requests ?
I actually got this working.. To where it will display the Songs from the database table "tracks" using the accountid  and displaying the pathname (which is the row for the name of the songs)...

Still working on a few other things.. but so far its working.

Thats about the only area I can find that will display the "Artist - Song"   As the other tables only show the Artist name...    But it shows it as the actual files name

(example: artist-song.mp3)  I cant seem to find any table that shows just the Artist - Song name.. So thats where im stuck at, Unless you dont mind it showing  the file extension... lol  And if the file isnt named "correctly" it will display that..

(example:  05 - song.mp3)
Last Edit: June 10, 2013, 08:37:15 pm by DJFire_CFR
CrossFire-Hosting LLC.
Co-Owner
Im sure theres an easier way... I just can't think of it atm...

But I setup the file and connection info on the server where centova cast is... and then on another server to display the information, I used PHP code file_get_contents and placed the URL to the file on the Centova Cast server... Which works perfectly...

For some reason, I just cant get it to connect to the database using a different server, so in using file_get_contents, Its basically a direct link.  =\
CrossFire-Hosting LLC.
Co-Owner
Its not a pretty setup, as I was just testing stuff out...

But here is what I got it to do,  This is my Unsigned Artist stream.. I toss'd in the request box just to test some things out (requests are set to 10 mins)  But .. yeah..

http://crossfire-radio.com/test/playlist/index.php

Theres 2 files a connection file, and the display file, which gives the results above.  And as you can see, it shows any Folders you have setup  (like for me, I have a promos folder, so it shows  promos/promofile.mp3)  No way out of that, unless  Centova would add something to the database or change something, I would suppose..  But otherwise, it displays "all" music files and folders you have.

If you have "1000's" of files in there, Im sure you could setup the "coding" to display so much and create other pages with more of the songs.. "split them up" basically.  So its not showing 10,000 songs on 1 page, which would take the page a little bit to load up.  I don't have a ton of music from unsigned artists, So its quick to display.
Last Edit: June 11, 2013, 11:51:47 am by DJFire_CFR
CrossFire-Hosting LLC.
Co-Owner
well, finally got it all worked out... Just need to set up a few things, and I can put up a demo page.

The Previous link does not work anymore at this time, till I can get a new page setup.
CrossFire-Hosting LLC.
Co-Owner
Well, I finally got it to do, what I wanted it to do...

http://crossfire-radio.com/test/playlist/playlist_display2.php
CrossFire-Hosting LLC.
Co-Owner
Made some changes and several edits, and now have this:

http://crossfire-radio.com/test/playlist/test2/playlist_display.php
CrossFire-Hosting LLC.
Co-Owner
http://www.crossfire-radio.com/requests2.php 

My setup for the requests using Centova Cast's Auto DJ.

First couple pages of songs are unorganized at the moment, but I gotta fix the ID3 tags it seems, and im unable to do that through Centova, so I have to go through the songs on my PC, edit them, and reupload them to fix it.

But otherwise... Thats pretty much my final draft
CrossFire-Hosting LLC.
Co-Owner
http://www.crossfire-radio.com/requests2.php 

Hi, and thanks for your work. I have few qustions...
How you generate the playlist on the bottom of your page ?
And how listeners requests songs? They must put proper song name in the form ?
And finally - can you provide for us your code to test it with our radios please ?

Regards,
DJ-Tisho
info (at) OnlineDJRadio.com