{\rtf1\ansi\deff3\adeflang1025 {\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\fswiss\fprq2\fcharset0 Arial;}{\f3\froman\fprq2\fcharset0 Liberation Serif{\*\falt Times New Roman};}{\f4\froman\fprq2\fcharset0 Liberation Sans{\*\falt Arial};}{\f5\froman\fprq2\fcharset0 Courier New;}{\f6\froman\fprq2\fcharset0 Tahoma;}{\f7\fnil\fprq2\fcharset0 Tahoma;}{\f8\fnil\fprq2\fcharset0 Microsoft YaHei;}{\f9\fnil\fprq2\fcharset0 Times New Roman CE;}{\f10\fnil\fprq2\fcharset0 Lucida Sans;}} {\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;\red51\green51\blue51;} {\stylesheet{\s0\snext0\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057 Normal;} {\*\cs15\snext15 Default Paragraph Font;} {\s16\sbasedon0\snext17\rtlch\af10\afs28\alang1081 \ltrch\lang2057\langfe2057\hich\af4\loch\ql\widctlpar\hyphpar0\faauto\sb240\sa120\keepn\ltrpar\cf0\f4\fs28\lang2057\kerning1\dbch\af8\langfe2057 Heading;} {\s17\sbasedon0\snext17\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\sl276\slmult1\ql\widctlpar\hyphpar0\faauto\sb0\sa140\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057 Text Body;} {\s18\sbasedon17\snext18\rtlch\af10\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\sl276\slmult1\ql\widctlpar\hyphpar0\faauto\sb0\sa140\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057 List;} {\s19\sbasedon0\snext19\rtlch\af10\afs24\alang1081\ai \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sb120\sa120\ltrpar\cf0\f0\fs24\lang2057\i\kerning1\dbch\af7\langfe2057 Caption;} {\s20\sbasedon0\snext20\rtlch\af10\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057 Index;} {\s21\snext21\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\ltrpar\cf0\f0\fs20\lang2057\kerning1\dbch\af7\langfe2057 Normal Table;} {\s22\sbasedon0\snext22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057 Normal (Web);} }{\*\generator LibreOffice/7.1.0.3$Windows_X86_64 LibreOffice_project/f6099ecf3d29644b5008cc8f48f42f4a40986e4c}{\info{\*\company ID Consultants}{\title Empathy Jukebox is a virtual CD pub style jukebox}{\author Matthew Smith}{\creatim\yr2012\mo10\dy11\hr20\min23}{\revtim\yr2022\mo12\dy28\hr22\min41}{\printim\yr0\mo0\dy0\hr0\min0}}{\*\userprops{\propname Operator}\proptype30{\staticval Matthew Smith}}\deftab720\deftab720 \hyphauto1\viewscale100 {\*\pgdsctbl {\pgdsc0\pgdscuse451\pgwsxn11906\pghsxn16838\marglsxn1800\margrsxn1800\margtsxn1440\margbsxn1440\pgdscnxt0 Default Page Style;}} \formshade\paperh16838\paperw11906\margl1800\margr1800\margt1440\margb1440\sectd\sbknone\pgndec\sftnnar\saftnnrlc\sectunlocked1\pgwsxn11906\pghsxn16838\marglsxn1800\margrsxn1800\margtsxn1440\margbsxn1440\ftnbj\ftnstart1\ftnrstcont\ftnnar\aenddoc\aftnrstcont\aftnstart1\aftnnrlc\htmautsp {\*\ftnsep\chftnsep}\pgndec\pard\plain \s22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057\loch\sl237\slmult0\li0\ri0\lin0\rin0\fi0\sbauto1\saauto1{\hich\af6\loch\cf17\fs18\b\f6\loch Empathy Jukebox is a CD pub style touch screen ready virtual jukebox system.} \par \pard\plain \s22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057\loch\sl237\slmult0\li0\ri0\lin0\rin0\fi0\sbauto1\saauto1\loch \par \pard\plain \s22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057\loch\sl237\slmult0\li0\ri0\lin0\rin0\fi0\sbauto1\saauto1{\hich\af6\loch\cf17\fs18\b\f6\loch Latest Version: 28/12/22 \u8211\'96 New default skin (wood) replaces old version. Sort by date. Many bug fixes. }{\hich\af6\loch\cf17\fs18\b\f6\loch Now 64 bit (2021)}{\hich\af6\loch\cf17\fs18\b\f6\loch } \par \pard\plain \s22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057\loch\sl237\slmult0\li0\ri0\lin0\rin0\fi0\sbauto1\saauto1\loch \par \pard\plain \s22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057\loch\sl237\slmult0\li0\ri0\lin0\rin0\fi0\sbauto1\saauto1{\hich\af6\loch\cf17\fs18\f6\loch Originally started more than 22 years ago as a simple media player to play albums in MP3 format, the project has been a constant side project for most of that time and has now evolved into a full touch screen capable skinable (with some effort) album centric jukebox system. I've used it to power standalone jukeboxes for some years. As the code is getting a bit dusty I've cleaned it all up a bit and you can get the source code here (Borland Delphi) or the download windows binaries here.} \par \pard\plain \s22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057\loch\sl237\slmult0\li0\ri0\lin0\rin0\fi0\sbauto1\saauto1\hich\af6\loch\cf17\fs18\f6\loch \par \pard\plain \s22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057\loch\sl237\slmult0\li0\ri0\lin0\rin0\fi0\sbauto1\saauto1{\hich\af6\loch\cf17\fs18\f6\loch Main Features:-} \par \pard\plain \s22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057\loch\sl237\slmult0\li0\ri0\lin0\rin0\fi0\sbauto1\saauto1{\hich\af6\loch\cf17\fs18\f6\loch Fullscreen touchscreen ready jukebox GUI.}{\loch \line }{\hich\af6\loch\cf17\fs18\f6\loch Automatic CD extraction with track/artwork finder.}{\loch \line }{\hich\af6\loch\cf17\fs18\f6\loch Freetext searchable.}{\loch \line }{\hich\af6\loch\cf17\fs18\f6\loch Alphabetical album jump.}{\loch \line }{\hich\af6\loch\cf17\fs18\f6\loch Cover view album selection}{\loch \line }{\hich\af6\loch\cf17\fs18\f6\loch Background music playmode.}{\loch \line }{\hich\af6\loch\cf17\fs18\f6\loch Numeric keypad entry for the really old-school user.}{\loch \line }{\hich\af6\loch\cf17\fs18\f6\loch 3D spinning CD view.}{\loch \line }{\hich\af6\loch\cf17\fs18\f6\loch Playlist organiser.}{\loch \line }{\hich\af6\loch\cf17\fs18\f6\loch Random playlist.}{\loch \line }{\hich\af6\loch\cf17\fs18\f6\loch Touchscreen album editor.}{\loch \line }{\hich\af6\loch\cf17\fs18\f6\loch Lockable controls for public use.}{\loch \line }{\hich\af6\loch\cf17\fs18\f6\loch Fullscreen artwork view.}{\loch \line }{\hich\af6\loch\cf17\fs18\f6\loch Windows GUI desktop mode player.}{\loch \line }{\hich\af6\loch\cf17\fs18\f6\loch Free and Open Source.}{\loch \line \line } \par \pard\plain \s22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057\loch\sl237\slmult0\li0\ri0\lin0\rin0\fi0\sbauto1\saauto1{\hich\af6\loch\cf17\fs18\f6\loch Taking an album centric approach to storing and accessing music, CDs are stored in MP3 format with one a folder representing a single album.} \par \pard\plain \s22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057\loch\sl237\slmult0\li0\ri0\lin0\rin0\fi0\sbauto1\saauto1{\hich\af6\loch\cf17\fs18\f6\loch Each folder in the music collection is composed of the artist name followed by two underscores (__) and the title of the album. e.g. }{\hich\af5\loch\cf17\fs18\f5\loch Jimi Hendrix Experience__Electric Ladyland} \par \pard\plain \s22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057\loch\sl237\slmult0\li0\ri0\lin0\rin0\fi0\sbauto1\saauto1{\hich\af6\loch\cf17\fs18\f6\loch For optimal operation files are stored in album order, with the filenames arranged to reflect the order of the CD eg}{\hich\af5\loch\cf17\fs18\f5\loch . track01.mp3}{\hich\af6\loch\cf17\fs18\f6\loch , }{\hich\af5\loch\cf17\fs18\f5\loch track02.mp3}{\hich\af6\loch\cf17\fs18\f6\loch ,}{\hich\af5\loch\cf17\fs18\f5\loch track03.mp3 }{\hich\af6\loch\cf17\fs18\f6\loch etc. A file }{\hich\af5\loch\cf17\fs18\f5\loch 'title.dat' }{\hich\af6\loch\cf17\fs18\f6\loch should also be present in the folder which is a simple text file with the\~corresponding\~track names, one per line. Another file }{\hich\af5\loch\cf17\fs18\f5\loch 'title.jpg}{\hich\af6\loch\cf17\fs18\f6\loch ' contains a JPEG image of the album cover.\~} \par \pard\plain \s22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057\loch\sl237\slmult0\li0\ri0\lin0\rin0\fi0\sbauto1\saauto1{\hich\af6\loch\cf17\fs18\f6\loch A full CD -> MP3 ripper is included in the interface, which will query CDDB databases for track listings and Amazon for album artwork and then extract the CD to a correctly named directory with in the proper format.} \par \pard\plain \s22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057\loch\sl237\slmult0\li0\ri0\lin0\rin0\fi0\sbauto1\saauto1{\hich\af6\loch\cf17\fs18\f6\loch Although this seems a little long winded, this system facilitates storing the CDs in the correct file order along with the album artwork, thus reproducing the CD experience fairly precisely.} \par \pard\plain \s22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057\loch\sl237\slmult0\li0\ri0\lin0\rin0\fi0\sbauto1\saauto1{\hich\af6\loch\cf17\fs18\f6\loch The minimum requirement for the file system is that the folders are created in the }{\hich\af5\loch\cf17\fs18\f5\loch artistname__albumtitle}{\hich\af6\loch\cf17\fs18\f6\loch format. In this case the software will take track titles from the filenames in the order in which they appear in the directory.} \par \pard\plain \s22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057\loch\sl237\slmult0\li0\ri0\lin0\rin0\fi0\sbauto1\saauto1{\hich\af6\loch\cf17\fs18\f6\loch If you haven't already decided that sounds far too much like hard work, you may want to download it or view some screen shots. iTunes it aint.} \par \pard\plain \s22\rtlch\af9\afs24\alang1081 \ltrch\lang2057\langfe2057\hich\af0\loch\ql\widctlpar\hyphpar0\faauto\sbauto1\saauto1\ltrpar\cf0\f0\fs24\lang2057\kerning1\dbch\af7\langfe2057\loch\sl237\slmult0\li0\ri0\lin0\rin0\fi0\sbauto1\saauto1\loch \par }