The Digital Age
- In the digital age, information flows.
- Content is no longer controlled; it is created and released.
- The old guard will fight to hold on to control.
- The speed at which they lose control is the speed at which the digital age arrives.
- The goal of this project is to accelerate progress towards the digital age.
Statement of Purpose
The purpose of The Digital Age project is to make peoples' lives simpler and more enjoyable by simplifying access to quality digital content, anywhere and everywhere.
Several specific requirements arise:
- handle a broad spectrum of digital content
- quantify the ratings of digital content to a meaningful level
- account for different personal taste
- maintain the "best" content in easily-accessible personal collections
- allow for introduction of new content with the greatest possible signal-to-noise ratio
Components
- a central repository (mysql) of media metadata
- a server exposing web services to access the metadata (derived from ampache)
- a desktop client player (port hangthedj to qt, for pc/mac/linux)
- a mediacenter player (mythtv)
- a mobile client player (iphone)
The Digital Age Biz Plan
http://www.thedigitalage.org tdm_cvs_view/ShareTheDJ/docs/The Digital Age business plan diagrams.odg
- hasn't metadata structure already been designed and data collected? precanned music companies have this nailed down, I'm sure... what about the last.fm API?
- see HTDJ db schema
- DJ's
- song ratings by DJ
- current playlist
- other ratings (movies, games, books)
- ShareTheDJ web services to access metadata
- MythMusic extended, previously known as MythDJ
- include MythShare
- use STDJ web services
- update HTDJ to use STDJ web services
- mobile app that use the web services
- The Philanthropy Engine
More notes, to be organized...
THE DIGITAL AGE SOFTWARE BUSINESS PLAN
http://www.thedigitalage.org tdm_cvs_view/ShareTheDJ/docs/The Digital Age business plan diagrams.odg
------
COMPARISON OF COMPONENT CHOICES ===============================
HTTP-based traffic
payload: boost::serialization binary XML? yuck
Thick client
cross-platform: mythweb + flex player windows: htdj
linux: mythfrontend
palm: tcpmp
Server options: Apache + custom mod C++/boost, may be ugly to develop? EHS + STDJ C++/boost, far along, not robust/scalable? Apache + custom php PHP, clean, lots of work? Apache + custom MythTV PHP, have to ramp up, prolly needs MythShare Apache + custom Ampache PHP, Fat-client support difficult?
PC client options:
Mythfrontend (linux) C++, MythShare plugin, fun! Need MythWeb support for http. HTDJ (windoze) Far along, needs good HTTP client Browser + embedded player Is flex mediaplayer ready? Browser + OS
Palm client options:
TCPMP + Blazer Custom TCPMP
===============================
I am leaning towards:
linux server Mythbackend Apache + MythWeb + MythDJ (use MDS?)
linux client Mythfrontend/MythDJ
windows client MythWeb/MythDJ + HTDJ
palm Blazer + MythWeb/MythDJ download TCPMP playback SD card preload from MythWeb/MythDJ
friend MythWeb/MythDJ + OS (VLC, etc.) MythWeb/MythDJ + embedded flash/flex2?
ATTACK!!
MythMusic clone to MythDJ on tdm2 on wimpy/ubuntu on wimpy/gentoo Expand music db schema MythDJ UI MythWeb/MythDJ MythWeb/MythDJ + HTDJ