"My Home Automation Projects"

Sources - Jukebox

Please also read the Disclaimer

MediaNet - Source Modules - Jukebox

Purpose: To provide a jukebox list of albums based on music scanned by Media source module

Also supports Barcode Readers (requires Barcode Interface)

To make use of barcode scan sheets you MUST extract the font file 'IDAutomationHC39M_Free.ttf' from this package (from this website)
To install simply paste the file (the ttf, not the zip!) into your Windows Font folder (normally c:\windows\fonts)
Important: the copyright owner "
IDAutomation.com, Inc." of the font  only allows free use as follows "This font may only be used for personal use and by organizations that are non-profit, educational or have a gross annual revenue of less than $250,000 USD". If you do NOT meet this criteria you MUST purchase a licence to use this font. The full licence agreement text is here. You do NOT need this font if you are not going to print barcode scanner sheets

LOADER.xml

<loader>
    <instance>
        <source module="JUKEBOX" enabled="y" type="M" title="Jukebox" />
            set enabled="n" if this source is not required. you can change title= to whatever you prefer
        <scan title="Scan" />
            you can change the wording for the scanner here
        <web enabled="n" title="Barcode Scanner Sheets" port="8083" />
            this enables the built-in webserver that serves up barcode sheets for printing
            set enabled="y" to enable, also set sheets="y" below
            set title= to a description for the link on main web server interfaces
            set port= to an unused port
       
<settings database="" />
            you can override the default database here
        <settings coverflow="n" />
            enable / disable the creation of coverflow xml support files during a scan
        <settings menugui="n" menuext="jpg" itemgui="y" />
            set menugui="y" to specify graphical images for the 3 menu levels Artist, Album, Genre
            place the images in the same folder as this LOADER.xml and call them artist.jpg (ext is in menuext)
            set itemgui="n" to turn off cover artwork support in this source

        <settings tracks="4" />
            tracks= specifies how many tracks an album must contain to be considerd a jukebox album
        <settings filename="folder.jpg" album="jpg" allowmissing="n" />
            filename= specifies a specific filename for artwork, album= specifies to use <albumname>.<album> e.g. All Saints.jpg
            allowmissing= specifies whether to include albums with no artwork available

        <barcodes  enabled="n" sheets="y" database="" />
            set enabled="y" to enable barcode database
            set sheets="y" if you would like the scanner to produce barcode images for sheets
            set database to ole connection if not using default database
        <barcodes withclear="y" autoplay="y" />
            set withclear="n" to prevent current list clearing, set autoplay="n" to prevent auto play
        <tags files="" helper="" />
            here you can override the medianet.xml music default tags settings
        <menus artist="Artist" album="Album" genre="Genre" />
        <titles main="Jukebox Selection" artist="Artist Jukebox" album="Album Jukebox" genre="Genre Jukebox" />
           the above 2 title lines can be changed to your preference
  </instance>
</loader>

A device or web interface that supports images will recognise this source as being a jukebox (show images rather than text). Devices that do not recognise jukebox style sources will see it as a normal source

Coverflow

The scanning process creates 3 xml files that support the Coverflow web interface (see web server for more details)

Barcodes

The barcodes are kept in barcodes.mdb in the same folder as jukebox.dll

Run a jukebox scan, once barcodes are enabled, to populate barcodes.mdb with known albums
When subsequent scans are made the scanner populates a temporary table with the current album list, updates the barcodes already known, and then copies this to the live barcode table

If sheets="y" then the scanner produces barcode images for each known barcode in .\sources\jukebox\barcodes. You should also enable the built-in web as this is used to produce the sheets for printing

Included is a vb6 application which lists albums in the database and allows manual, auto-generation or barcode scanner entry of the barcodes
Edit settings.txt to set the serial port parameters appropriate to your scanner
Note: you must shutdown MediaNet if using the same scanner while you add the barcodes to the database with the scanner

If you have albums for which you have no barcode then you can type in any valid barcode for use, and this will work from the sheets. Personally i've opted to use '$500000', '$500001' etc. Alternatively someone is sure to be selling the album on e-bay and will probably be quoting the EAN number

For multi-disc albums I currently prefix subsequent albums -2, -3 etc - but will probably retag them into single large albums at some point

Please keep backups of barcodes.mdb in case anything unexpected happens and looses all the barcodes you've entered