OD2

On Demand Distribution (OD2), one of the first online music download services, was co-founded by entrepreneur Charles Grimsdale, John Grinham and musician Peter Gabriel in 1999. Prior to its closure in 2009, its technology had been used by over 100 music download sites including MSN Music UK, MyCokeMusic, Planet Internet (KPN), Wanadoo and CD WOW!.

OD2 was formed in November 1999 in partnership with musician Peter Gabriel. The original primary purpose of its formation was to allow access to music distribution infrastructure and rights management for small-scale unsigned artists (who would not otherwise have this opportunity). For reasons of commercial survival, the emphasis soon changed to providing front-end technology to larger distributors.

OD2 DRM technology was originally Microsoft based, distributing mainly Windows Media Audio (WMA) files.

OD2 was making a loss but in June 2004 was bought by US digital music distributor company Loudeye for $40 million.[1] Loudeye sold its other music distribution business in 2006, making OD2 its principal business. In October 2006 Loudeye was acquired by Finnish mobile giant Nokia for $60 million. The service was renamed Nokia Music Store.

Rival digital music distributors include MusicNet which is used by EMI, AOL/Time Warner, BMG and HMV - the latter of which defected from OD2 in 2005.

Closure

On April 1, 2009 (not an April Fools joke) OD2 informed all existing customers by e-mail and on the site [2] that it was to close on 29 April 2009 and recommended all customers download Nokia Music.

gollark: I personally think that while less complexity is good, switching to sugarless lisp would be bad.
gollark: ```haskelltype PasteCapture a = Capture "username" Text :> Capture "pasteName" Text :> atype GetPasteAPI = PasteCapture (Get '[JSON] SanitizedPaste) :<|> "raw" :> PasteCapture (Get '[PlainText] Text)type RequiresAuth a = BasicAuth "pastecan" (Entity User) :> atype UpdatePasteAPI = RequiresAuth ( PasteCapture (Delete '[PlainText] NoContent) :<|> PasteCapture (ReqBody '[JSON] SanitizedPaste :> Put '[PlainText] NoContent))type AccountsAPI = "account" :> ( ReqBody '[JSON] User :> Post '[JSON] Bool :<|> RequiresAuth (Delete '[JSON] NoContent))type API = UpdatePasteAPI :<|> GetPasteAPI :<|> AccountsAPI```I defined the API as types. It was nice.
gollark: https://osmarks.tk/git/osmarks/pastecan
gollark: We're on the Haskell Discussion discord, what did you *expect*?
gollark: I wrote a Pastebin clone (though only the backend) in Haskell, it was fine.

See also

References

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.