240 likes | 309 Views
BOXEE OVERVIEW. For Hackers. Spring 2010. HI. BOXEE: introduction. Open Source / Open Platform Social Media Center. BOXEE: charmingly simple. BOXEE: tons o’ media.
E N D
BOXEE OVERVIEW For Hackers www.boxee.tv Spring 2010
BOXEE: introduction • Open Source / Open Platform • Social • Media Center
BOXEE: tons o’ media • Container formats: AVI, MPEG, WMV, ASF, FLV, MKV, MOV, MP4, M4A, AAC, NUT, Ogg, OGM, RealMedia RAM/RM/RV/RA/RMVB, 3gp, VIVO, PVA, NUV, NSV, NSA, FLI, FLC, and DVR-MS (beta support) • Video codecs: MPEG-1, MPEG-2, MPEG-4 (SP and ASP, including DivX, XviD, 3ivx, DV, H.263), MPEG-4 AVC (H.264, including Nero Digital), HuffYUV, Indeo, MJPEG, RealVideo, QuickTime, Sorenson, WMV, Cinepak • Audio codecs: AIFF, WAV/WAVE, MP2, MP3, AAC, AACplus, AC3, DTS, ALAC, AMR, FLAC, Monkey's Audio (APE), RealAudio, SHN, WavPack, MPC/Musepack/Mpeg+, Speex, Ogg Vorbis and WMA. • Digital picture/image formats: BMP, JPEG, GIF, PNG, TIFF, MNG, ICO, PCX and Targa/TGA • Subtitle formats: AQTitle, ASS/SSA, CC, JACOsub, MicroDVD, MPsub, OGM, PJS, RT, SMI, SRT, SUB, VOBsub, VPlayer
what does Boxee run on? • Windows • Mac • Linux • AppleTV • Boxee Box
BOXEE: open source / open platform • Open Source: Boxee originally a fork of XBMC • Open Platform: Any one can develop and publish apps
BOXEE: open source / open platform • Open Source: Boxee originally a fork of XBMC • Open Platform: Any one can develop and publish apps
BOXEE:developing • GUI: XML defined • API: Python
BOXEE:GUI <?xml version="1.0"?> <window type="window" id="14000"> <defaultcontrol always="true">100</defaultcontrol><allowoverlay>no</allowoverlay> <controls> <control type="group"> <control type="image"> <posx>0</posx> <posy>0</posy> <width>1280</width> <height>720</height> <texture>lolcat.png</texture> </control> </control> </controls> </window>
BOXEE:OMG controls! • Buttons • Input • Labels / Images • Toggle / Radio • Scrollbar • List Containers • Visualization / Video
BOXEE:logic events • onload • onunload • onfocus • onclick • directional (up up, down down, etc.)
BOXEE:example! <control type="button" id="1000"> <width>88</width> <height>39</height> <label>Example! LOL</label> <align>center</align> <textcolor>ffffffff</textcolor> <texturefocus>menuitem_on.png</texturefocus> <texturenofocus>-</texturenofocus> <onclick lang="python"> <![CDATA[ mc.ShowDialogNotification('You pressed a button!') ]]> </onclick> </control>
BOXEE: API • Python • Executed through events • import ftw! • Super simple
BOXEE: Classes • App • Window • Controls (e.g. button / image / edit) • Playlist • Player
BOXEE: player object • Play (local and Internet, files and Flash) • Playlists (audio and video) • VCR controls (ff, next, back, etc) • Scrubber • Checks (IsPlaying, IsPaused, etc)
BOXEE: another example! <onclick lang="python"><![CDATA[ if mc.GetPlayer().IsPlaying(): mc.GetPlayer().Stop() items = mc.GetActiveWindow().GetList(120).GetItems() n = mc.GetActiveWindow().GetList(120).GetFocusedItem() item = items[n] mc.GetPlayer().Play( item ) ]]></onclick>
Now on a Box near you HTML5
BOXEE: resources http://developer.boxee.tv