Virtual DJ Studio Home | NGWave Home | Official Facebook Page | Unofficial VDJ Users Group

Author Topic: Progress Thus Far...  (Read 4860 times)

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 949
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Progress Thus Far...
« on: August 05, 2016, 05:35:57 PM »
I've read all the replies and posts, and will give a brief summary as I've been staring at these screens all day (I took a day off yesterday to let things sink into my brain and stew for a while... part of the process)

So far, I now have support for Deflate32 and Deflate64 ZIP files. It's not as elegant as the standard Deflate files (those can easily seek without unzipping the file to a temporary file, all in memory; 32/64 deflate files have to be fully unzipped first unfortunately as the "dictionary" entry is at the END of the archive)...

So it silently unzips the file into a temp folder and works internally with the unzipped mp3/cdg files directly. It's all very seemless, it just adds a few milliseconds to the time it takes to open a file. Otherwise you would never even notice the difference once the file is loaded.

And as always, VDJ is very good about removing temporary files when they are no longer needed, so no issues there.

As for the "karaoke queue"... I'm still trying to think of a solution for this. For me personally, only being able to view a few (14 or so) upcoming singers at a time is just fine. I can however see how this could be an issue with a larger venue that is primarily or exclusively Karaoke-driven. I wish I could sit in with Fabio for a weekend -- if I even get my ass out to the west coast (I have family in/around Huntington Beach) maybe I'll pop in -- I know where to find you: fabiosbook.com ;)

So... I was considering somehow making the Karaoke Queue an additional tab on the upper part, much like the Playlist, adding the ability to "grow" it to the full height of the screen.

SO maybe a few built-in "layouts" or "screen configuration options" or whatever. Standard would be about what my screenshots show currently; another option would place the middle part on the far left or right (your choice) and go full vertical. In any case, everything will be contained within the single window.

I don't want to do "detachable" windows like Photoshop etc, and I don't want separate windows at all because at some point I want to qualify as a Windows Metro App with full-screen capability (giving you a bit more wiggle room, with no taskbar or titlebar) plus opening up another market for VDJ via the Windows Store...

I'm not trying to rule out anyone however - VDJ still works and should continue to under Windows XP, for a while anyway, until I hit a point where I absolutely need exclusive features only available in the Metro environment. Which is why I plan to continue support for 7.x for a while.

On that note, I may shift my focus for a couple of days and work on a 7.4 release. I would like to "back-port" some of the improvements from 8.0 to the 7.x code, including the better/faster file indexing and the ZIP file support. Major feature improvements (like Video) will remain exclusive to the new version -- only minor enhancements and bug fixes will be back-ported.

I plan to support both 7.x and 8.x side-by-side, so if you really don't like change you can keep using 7.x, and at any time can upgrade to 8.x for merely the $20 price difference...

Retiring for the night, still some work to do, gonna be at this all weekend and certain of your may get a beta version by Monday to check out (you know who you are ;) )  It won't interfere in any way with the current 7.x version as it will install as a completely separate application. You can even run them side-by-side...
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline Fabio

  • Administrator
  • Hero Member
  • *****
  • Posts: 755
  • Karma: 11
    • View Profile
Re: Progress Thus Far...
« Reply #1 on: August 05, 2016, 07:55:33 PM »
Thanks for listing to my issue on the long karaoke queue...I do appreciate it.   :) And I do understand the issue with the multiple Windows.  I do like your ideas on making the list "grow".  Still I wouldn't mind seeing a a beta of what you currently have  ;)

And, yes, you're welcome to come and sit-in with me any time  ;)

Quote
So far, I now have support for Deflate32 and Deflate64 ZIP files. It's not as elegant as the standard Deflate files (those can easily seek without unzipping the file to a temporary file, all in memory

Since you're doing this, does that mean we'd be able to edit the ID3 on mp3 part of the file?

Here's an idea....since you're going back to work on 7.4:

Why not sell two separate products, rather than try to make a single product line that fits both DJs and KJs?  You can call one "VDJ classic" and the other "VDJ Metro" (although, I'm not sure MS is calling their UI Metro anymore) people could pay a fee to switch from one to the other.  One has one set of features geared more towards Karaoke and the other has a similar set of features but more geared for DJs.



Fabio Q.
Shooting Star Karaoke

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 949
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Progress Thus Far...
« Reply #2 on: August 06, 2016, 09:47:52 AM »
I was planning to maintain both versions, and it may just evolve that way naturally (one geared toward music DJs and the other toward karaoke). Both would still support both, but depending on your particular needs, one might work better than the other for you personally.

On the other hand, I may instead work on offering different layout configurations, where you can gear 8.0 for whatever you're doing at a particular gig. I do gigs that only want music, and others that are all about karaoke... so you could get rid of the Karaoke stuff and make room for more "dj-centric" stuff (for lack of a better term).

On a side note, I have to wonder WHY the heck the CD rippers started using Deflate32 and Deflate64. Here are several reasons why that is stupid:

- The compression difference is NEGLIGIBLE from standard Deflate
- MP3 files do not compress - in fact they may even grow; they are already as compressed as they are going to get. The CDG file is highly compressible but it's so small anyway there's not much of a point; the only advantage of using ZIP in the first place is to contain the data in a single file (see my note below for an idea I'm working on).
- The dictionary is now at the END of the file instead of the beginning, so the entire file has to be unzipped before you can know where each file starts within the ZIP archive
- Deflate is natively supported on nearly all platforms and is open source. Deflate 32/64 are proprietary (PKWare decided they needed to make money so they made a couple changes, patented it, and touted it as being "better"). Deflate is hard-coded in many integrated circuits and is very widely supported. 32/64 versions use more CPU for little benefit...

The 32 and 64 have NOTHING to do with CPU compatibility or OS compatibility - they simply refer to the chunk size used in the compression algorithm.

But I digress...........

I am hoping for a workable BETA by Monday. I still have a few things I want to tidy up before I do release it for feedback, but it's *almost* there.

If there are any others who want to be on my "beta" list, let me know: support@vdj.net. I am particularly interested in anyone using a touch-enabled laptop, as well as those using a MIDI device (Numark/Pioneer/etc DJ controller), and of course anyone who can use it in a real environment and really give it a stress test (and who is willing to risk having to load up the old version in case of any issue).

It can be installed and run side-by-side with the 7.x version, they use completely separate storage spaces/registry settings/etc, so you can always fall back...

I will probably re-open the BETA forum and keep it private to those members participating. I want to keep the list small, so it's not an open beta, just a few people who are willing to help expose any bugs or flaws before the final release. I am not planning on a long beta cycle, I want to get the release out as soon as possible.

** Note about MP3+G: Rather than ZIPing an already compressed MP3 file (thus wasting a lot of CPU for zero gain) and a small CDG file, I am thinking of adding a field to the ID3v2 tag that will contain the CDG data (deflate compressed), much like many MP3s have album art and other random data stored in the tag. This avoids having to decompress a file, using the algorithm to get back about the same amount of data, that then needs to be decompressed again anyway (the MP3 into WAV audio)...

I think someone has done something similar already and I may adopt the existing format if it's not patented or proprietary. Then maybe I'll offer a tool to convert existing ZIP files or MP3+CDG as separate files all to compatible MP3+G stand-alone files. Note that they would still play in a normal MP3 player, as it would ignore any ID3v2 tags it doesn't recognize (just wouldn't have lyrics). In any case VDJ will continue to support all existing formats as well.
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline vcationguy

  • Sr. Member
  • ****
  • Posts: 310
  • Karma: 0
    • View Profile
Re: Progress Thus Far...
« Reply #3 on: August 06, 2016, 02:38:42 PM »
Sounds good Justin.  I really like the idea of being able to make it VJ or DJ specific within the same program.  :)

Looking forward to seeing the new and improved version.

Ron

Offline Fabio

  • Administrator
  • Hero Member
  • *****
  • Posts: 755
  • Karma: 11
    • View Profile
Re: Progress Thus Far...
« Reply #4 on: August 06, 2016, 08:25:08 PM »
Looking forward to it Justin!

Quote
I am thinking of adding a field to the ID3v2 tag that will contain the CDG data

This sounds like a great idea, but I'd be concerned as to how to tell what is a karaoke file and what is just a regular mp3.  Also, if you're going to make a tool to convert them, you probably need a tool to extract the CDG info back into a CDG file for those cases when you need it.  In my case I have a CDG editor to remove stray graphics but it needs the two files.
Fabio Q.
Shooting Star Karaoke

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 949
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Progress Thus Far...
« Reply #5 on: August 08, 2016, 10:58:36 AM »
As for knowing if it's an MP3 music file or one containing CDG data as well - that's simple. The ID3v2 tag specification allows for just about any random data chunk. Programs that recognize a particular chunk may use it, or simply ignore it. If the chunk is there, VDJ will know that it is an MP3+G file.

If I made a conversion tool, it would likely be pretty full-featured. I actually have been thinking about building a CDG editor myself, which will support all file types (MP3+G, MP3 + CDG file, all forms of ZIP). All +G formats I should say, not video or MIDI files... but anyway that program would serve both as editor and converter (optionally batch conversion).

It could include features that some might use to "spot" specific patterns in the graphics, that may not be desirable to show in public, and automatically remove them from the CDG... SCouring for specific patterns... it Sounds like you can have a Choice of what graphics or logos are just inappropriate...

I would give an example but those who know what I'm talking about already know... ;)

That's another project for another day, but it would come with a disclaimer about not for use on files you don't own copyrights to etc blah blah usual disclaimer crap...

Oh, right, the Beta - not there yet today. I got a little sidetracked, working on speeding up search results and some other crap. Plus with the major changes means I need to make some big changes to the installation routine as well... but definitely sometime this week.

For fun, a screenshot... note the little hover popup thing on the playlist. More informative than a tooltip, but it's disabled by default as it can get kinda annoying... a simple right-click option turns it on or off though. Otherwise no major visible changes.
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline Fabio

  • Administrator
  • Hero Member
  • *****
  • Posts: 755
  • Karma: 11
    • View Profile
Re: Progress Thus Far...
« Reply #6 on: August 08, 2016, 11:02:27 PM »
No problem on the beta. And that tool would for scouring for patters would be nice. 😁

That tool tip... Or whatever you is not bad at all...i like the fact that it tells you the last time it was played. It would be nice to be able to do that with karaoke files too.

One other thing I've meant to ask about but i always forget... Is the ability to such information (tool tips) for singers.  Specially the ones who add songs via the app.  Is like to be able to see their IP. This would be useful when you have singers with the same name. This is also helpful for people who submit several songs with different nicknames in an efford to get up on the rotation sooner... obviously, don't hold the beta for this.... Just for future reference.
Fabio Q.
Shooting Star Karaoke

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 949
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Progress Thus Far...
« Reply #7 on: August 09, 2016, 08:33:05 AM »
Showing a bit more info such as IP (and possibly what device/browser they are using/last used/used at the time of the request) would be pretty simple. Pretty much any information their browser sends to the server (aka VDJ) can be shown/stored/blocked/whatever...

Now, as for the BETA - the holdup is that I've been doing a lot of thinking and I may have come up with a solution. Screenshots attached need a little explaining.

The first one is the Playlist. The music database etc will stretch to fit (just haven't gotten there yet).

The second one shows the Karaoke tab. I was thinking - it could look just like the Playlist tab, with Karaoke Queue instead of course, and show the "preview" part either full-size (as it looks now), or tiny/minimal (just enough to know what's on the screen but giving you room for a few more entries to show). I think it will also BE the karaoke player line itself... with the ability still to use the other lines to play Karaoke songs if desired (even in the playlist).

As for the other tabs... Video might just have a "video queue" type list, just a place to store some favorite "go to" videos or something... "Notes" could obviously expand, but Sound FX... I don't want to just add a bunch more buttons. Maybe another "Queue" list of additional sound FX you can drag up to the buttons...

In other words, I want no "dead space" on the screen regardless of what "tab" you are using.

Also, the Music Search will have two modes: Keyword Search and ID3 search, as separate things (showing separate columns). Reason? Showing all the information literally takes the entire width of the screen, and if you're searching by ID3 tags you probably don't give a crap about the location/filename (though that will show in status bar when selected)...

Some DJs exclusively use the ID3 tags for searching, where KJs would be more prone to go by filename/location (though keyword search does still look within the ID3 information anyway)...

Just throwing out ideas. It's 10:30am here, need a break - been at this since 5am (on an "early-rise early-bed" schedule for the time being... something I won't get into here lol)
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 949
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Progress Thus Far...
« Reply #8 on: August 09, 2016, 08:37:13 AM »
Whiskey Tango Foxtrot... my second screenshot "Failed to pass Security Checks" and I am told to contact the board administrator.

Well just imagine what I described, I'll figure out the forums later. I think I need to look at the "security" settings for uploads.

Hm, even tried as a JPEG and no difference... better check my disk quota.... something not working right here...
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline vcationguy

  • Sr. Member
  • ****
  • Posts: 310
  • Karma: 0
    • View Profile
Re: Progress Thus Far...
« Reply #9 on: August 09, 2016, 02:56:04 PM »
Looking good Justin.  Would it be possible to be able to launch the videos and Sound FX things by double clicking on them in the list?  Then it would be like having a button but you could put a lot more on there.

Thanks!

Ron

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 949
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Progress Thus Far...
« Reply #10 on: August 09, 2016, 03:42:44 PM »
It's possible but I try to avoid double-clicking a list to cause any actual audio playback (except in a preview device). It's so easy to accidentally double-click.

Plus, the SoundFX are "locked and loaded" - in other words, the file is already buffered in memory, CUE'd up past any leading silence, making them start instantly. Loading and decoding an mp3 could delay that by a few milliseconds (more depending on overall CPU usage) and that can make a big difference... but I changed gears a bit today after my last post... see newest announcement...
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/