XBMC4Xbox
Encyclopedia
XBMC4Xbox is a free and open source
Free and open source software
Free and open-source software or free/libre/open-source software is software that is liberally licensed to grant users the right to use, study, change, and improve its design through the availability of its source code...

 media player software
Application software
Application software, also known as an application or an "app", is computer software designed to help the user to perform specific tasks. Examples include enterprise software, accounting software, office suites, graphics software and media players. Many application programs deal principally with...

 made solely for the first-generation Xbox
Xbox
The Xbox is a sixth-generation video game console manufactured by Microsoft. It was released on November 15, 2001 in North America, February 22, 2002 in Japan, and March 14, 2002 in Australia and Europe and is the predecessor to the Xbox 360. It was Microsoft's first foray into the gaming console...

 video-game console. Other than the audio / video playback and media center
Home theater PC
A Home Theater PC or Media Center appliance is a convergence device that combines some or all the capabilities of a personal computer with a software application that supports video, photo, music playback, and sometimes video recording functionality...

 functionality of XBMC4Xbox, it also has the rather unique ability to catalog and launch original Xbox games, and homebrew
Homebrew (video games)
Homebrew is a term frequently applied to video games or other software produced by consumers to target proprietary hardware platforms not typically user-programmable or that use proprietary storage methods...

 applications such as console emulators from the Xbox's built-in harddrive.

XBMC4Xbox is a third-party developer spin-off
Brand extension
Brand extension or brand stretching is a marketing strategy in which a firm marketing a product with a well-developed image uses the same brand name in a different product category. The new product is called a spin-off. Organizations use this strategy to increase and leverage brand equity...

 project of XBMC for Xbox, with still active development and support of the Xbox. This project was created as a fork of XBMC for Xbox as a separate project to continue having a version of XBMC for the Xbox hardware platform, and was initially started by a few members from the original XBMC project in order to fully breakout and removed of Xbox branch support from the official XBMC project and let it continue as a totally separate project, which as announced on the 27 of May 2010.

Since the XBMC4Xbox is not endorsed or supported by Microsoft
Microsoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...

 in any way, it means XBMC4Xbox requires a modchip
Modchip
A modchip is a small electronic device used to modify or disable built-in restrictions and limitations of computers, specifically videogame consoles...

 or softmod exploit
Softmod
A softmod is a method of using software to modify the intended behaviour of hardware, such as video cards, sound cards, or game consoles in a way that can overcome restrictions of the firmware, or install custom firmware.-Video card softmods:...

 to run on the Xbox game-console. Binary builds of XBMC can also not be legally distributed by the XBMC4Xbox project members, so all releases and builds are made by independent third-parties who compile and distribute the application.

Overview

XBMC4XBox's 10-foot user interface
10-foot user interface
In computing a 10-foot user interface is a software GUI designed for display on a large television with interaction using a regular television-style remote control."10 foot" refers to the fact that the GUI's...

 is just like the Xbox foremost designed for the living-room TV
Television
Television is a telecommunication medium for transmitting and receiving moving images that can be monochrome or colored, with accompanying sound...

, and the large icons and text in the graphical user interface
Graphical user interface
In computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...

 allows the user to easily manage most common digital music, video, image, podcasts, and playlists formats from a computer, optical disk, local network, and the internet using a Xbox's game-controller or the Xbox DVD-Kit remote control
Remote control
A remote control is a component of an electronics device, most commonly a television set, used for operating the television device wirelessly from a short line-of-sight distance.The remote control is usually contracted to remote...

. It also has a skinnable
Skin (computing)
In computing, a skin is a custom graphical appearance achieved by the use of a graphical user interface that can be applied to specific software and websites to suit the purpose, topic, or tastes of different users....

 and user-configurable interface and plugin support. XBMC4Xbox does also just like XBMC feature; audio visualizations, slideshows, weather forecasts reporting, and an Python
Python (programming language)
Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

-based API
Application programming interface
An application programming interface is a source code based specification intended to be used as an interface by software components to communicate with each other...

 for third-party plugins. Though it should be noted that addons such as skins and plugins for XBMC are not out-of-the-box compatible with XBMC4Xbox due to differences in their API's which means that all XBMC addons have to be ported in order to specifically work with XBMC4Xbox

Before considering using XBMC4Xbox is important to understand that the software is not an authorized/signed Microsoft
Microsoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...

 product, therefore a modification of the Xbox is required in order to run XBMC4Xbox on a Xbox
Xbox
The Xbox is a sixth-generation video game console manufactured by Microsoft. It was released on November 15, 2001 in North America, February 22, 2002 in Japan, and March 14, 2002 in Australia and Europe and is the predecessor to the Xbox 360. It was Microsoft's first foray into the gaming console...

 game-console. On an modded Xbox, XBMC4Xbox can be run as an application
Application software
Application software, also known as an application or an "app", is computer software designed to help the user to perform specific tasks. Examples include enterprise software, accounting software, office suites, graphics software and media players. Many application programs deal principally with...

 (like any Xbox game), or as a dashboard that appears directly when the Xbox
Xbox
The Xbox is a sixth-generation video game console manufactured by Microsoft. It was released on November 15, 2001 in North America, February 22, 2002 in Japan, and March 14, 2002 in Australia and Europe and is the predecessor to the Xbox 360. It was Microsoft's first foray into the gaming console...

 is turned on. Since XBMC4Xbox is an open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

 software program, its development source code
Source code
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...

 is stored on a publicly accessible subversion repository. Accordingly, unofficial executable
Executable
In computing, an executable file causes a computer "to perform indicated tasks according to encoded instructions," as opposed to a data file that must be parsed by a program to be meaningful. These instructions are traditionally machine code instructions for a physical CPU...

 builds from the subversion repository are often released by third-parties on sites unaffiliated with the XBMC4Xbox project.

XBMC4Xbox source code
Source code
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...

 is distributed as open source under GPL (GNU General Public License)
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

, and is community
Community
The term community has two distinct meanings:*a group of interacting people, possibly living in close proximity, and often refers to a group that shares some common values, and is attributed with social cohesion within a shared geographical location, generally in social units larger than a household...

 developed by a group of volunteering
Volunteering
Volunteering is generally considered an altruistic activity, intended to promote good or improve human quality of life, but people also volunteer for their own skill development, to meet others, to make contacts for possible employment, to have fun, and a variety of other reasons that could be...

 people from different parts of the world working on XBMC4Xbox for free in their spare time. The source code for XBMC4Xbox is mostly updated on a daily basis by developers in a public subversion repository.

Features

This is a description of the unique features and functions of the XBMC4Xbox fork for the Xbox that are not available or different in the original XBMC software from this was forked from:

Xbox dashboard function (game and application launcher)

XBMC4Xbox has a "My Programs" section which functions as a replacement dashboard to launch Xbox games (retail and homebrew
Homebrew (video games)
Homebrew is a term frequently applied to video games or other software produced by consumers to target proprietary hardware platforms not typically user-programmable or that use proprietary storage methods...

) and applications
Application software
Application software, also known as an application or an "app", is computer software designed to help the user to perform specific tasks. Examples include enterprise software, accounting software, office suites, graphics software and media players. Many application programs deal principally with...

/emulator directly off the Xbox built-in harddrive, all from a nice GUI
Gui
Gui or guee is a generic term to refer to grilled dishes in Korean cuisine. These most commonly have meat or fish as their primary ingredient, but may in some cases also comprise grilled vegetables or other vegetarian ingredients. The term derives from the verb, "gupda" in Korean, which literally...

 with thumbnail
Thumbnail
Thumbnails are reduced-size versions of pictures, used to help in recognizing and organizing them, serving the same role for images as a normal text index does for words...

 and list options. This replaces the original Xbox Dashboard from Microsoft
Microsoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...

, and with the exception of flashing new BIOS
BIOS
In IBM PC compatible computers, the basic input/output system , also known as the System BIOS or ROM BIOS , is a de facto standard defining a firmware interface....

 to an Xbox modchip
Modchip
A modchip is a small electronic device used to modify or disable built-in restrictions and limitations of computers, specifically videogame consoles...

 it also features many extra functions that other homebrew
Homebrew (video games)
Homebrew is a term frequently applied to video games or other software produced by consumers to target proprietary hardware platforms not typically user-programmable or that use proprietary storage methods...

 dashboards have.

XBMC4Xbox Trainer Support (Xbox game cheats mods)

XBMC4Xbox also has the ability to use and apply Xbox Trainer Files. Trainers are small files that allow for in game value modification
Mod (computer gaming)
Mod or modification is a term generally applied to personal computer games , especially first-person shooters, role-playing games and real-time strategy games. Mods are made by the general public or a developer, and can be entirely new games in themselves, but mods are not standalone software and...

 (such as cheat code) through altering retail functions in game values by way of using TSR (Terminate and Stay Resident)
Terminate and Stay Resident
Terminate and Stay Resident is a computer system call in DOS computer operating systems that returns control to the system as if the program has quit, but keeps the program in memory...

 keys. There are many things that can be modified
Mod (computer gaming)
Mod or modification is a term generally applied to personal computer games , especially first-person shooters, role-playing games and real-time strategy games. Mods are made by the general public or a developer, and can be entirely new games in themselves, but mods are not standalone software and...

 including ammunition, extra-lives, or even how high a character can jump. Trainer support in XBMC4Xbox was achieved through collaboration with Team Xored. This collaboration began in December 2005 and came to fruition in January 2006 by successfully integrating the Team Xored Trainer Engine into XBMC4Xbox. XBMC4Xbox can run trainers with the following file extensions: *.ETM and *.XBTF

XLink Kai (Xbox Live online-gaming alternative)

XBMC4Xbox previously had a XLink Kai
XLink Kai
XLink Kai is a method developed by Team-XLink for online play of certain compatible console games.It enables players on the Xbox 360, Xbox, Playstation 3, PlayStation 2, PlayStation Portable and Nintendo GameCube to play games across the Internet using a network configuration that simulates a...

 front-end integrated to control that client, but that has been removed in more recent builds.

Audio and video playback handling

XBMC4Xbox can be used to play/view all common multimedia
Multimedia
Multimedia is media and content that uses a combination of different content forms. The term can be used as a noun or as an adjective describing a medium as having multiple content forms. The term is used in contrast to media which use only rudimentary computer display such as text-only, or...

 formats, it can however not playback most native 720p
720p
720p is the shorthand name for 1280x720, a category of High-definition television video modes having a resolution of 1080 or 720p and a progressive scan...

 and 1080p
1080p
1080p is the shorthand identification for a set of HDTV high-definition video modes that are characterized by 1080 horizontal lines of resolution and progressive scan, meaning the image is not interlaced as is the case with the 1080i display standard....

 video files due to Xbox hardware limitations, but it can upscale all videos

XBMC4Xbox Video Player Cores

XBMC4Xbox uses two different multimedia
Multimedia
Multimedia is media and content that uses a combination of different content forms. The term can be used as a noun or as an adjective describing a medium as having multiple content forms. The term is used in contrast to media which use only rudimentary computer display such as text-only, or...

 video player 'cores' for video-playback. The first core, dubbed "DVDPlayer", is XBMC's in-house developed video-playback core with support for DVD-Video movies
DVD-Video
DVD-Video is a consumer video format used to store digital video on DVD discs, and is currently the dominant consumer video format in Asia, North America, Europe, and Australia. Discs using the DVD-Video specification require a DVD drive and a MPEG-2 decoder...

 and is based on libmpeg2
Libmpeg2
libmpeg2 is a free and open source software library for decoding MPEG-1 and MPEG-2 video streams. libmpeg2 is released under the terms of the GNU GPL license.-Legality and software patents:...

 and libmad for MPEG decoding yet FFmpeg
FFmpeg
FFmpeg is a free software project that produces libraries and programs for handling multimedia data. The most notable parts of FFmpeg are libavcodec, an audio/video codec library used by several other projects, libavformat, an audio/video container mux and demux library, and the ffmpeg command line...

 for media-container demuxing, splitting, as well as decoding other audio formats. Respective audio decoding is handled by liba52 for ac3 audio decoding and libdts / libdca
Libdca
libdca is a free library for decoding DTS Coherent Acoustics streams. It is released under the terms of the GNU General Public License license, and is developed by Gildas Bazin of the VideoLAN team...

 for DTS audio. Also included is support for DVD-menus through libdvdnav and dvdread. One relatively unusual feature of this DVD-player core is the capability to on-the-fly pause and play DVD-Video movies that are stored in ISO and IMG
ISO image
An ISO image is an archive file of an optical disc, composed of the data contents of every written sector of an optical disc, including the optical disc file system...

 DVD-images or DVD-Video (IFO
IFO
IFO is a type of DVD-Video file that stores information about chapters, subtitles and audio tracks.An IFO file is one of three types of files that are used on DVDs. It contains important navigational information, such as where a video chapter begins, and where audio and subtitle streams exist...

/VOB
VOB
A VOB file is a container format in DVD-Video media. VOB can contain video, audio, subtitle, menu and navigation contents multiplexed together into a stream form. VOB is based on the MPEG program stream format, but with additional limitations and specifications in the private streams...

/BUP
BUP
A BUP file is a backup of the IFO file on a DVD, which contains the information about the organization of tracks, menus, chapters, subtitles on the disc. BUP files are used in the event that the corresponding IFO file is unreadable, perhaps due to a scratch on the surface of the disc.Other DVD...

) images (even directly from uncompressed RAR and ZIP
ZIP (file format)
Zip is a file format used for data compression and archiving. A zip file contains one or more files that have been compressed, to reduce file size, or stored as is...

 archives), from either local harddrive storage or network-share storage.

The second video-player 'core' for video-playback is a ported version of the open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

 cross-platform
Cross-platform
In computing, cross-platform, or multi-platform, is an attribute conferred to computer software or computing methods and concepts that are implemented and inter-operate on multiple computer platforms...

 player, MPlayer
MPlayer
MPlayer is a free and open source media player. The program is available for all major operating systems, including Linux and other Unix-like systems, Microsoft Windows and Mac OS X. Versions for OS/2, Syllable, AmigaOS and MorphOS are also available. The Windows version works, with some minor...

, which today is only used as a backup player in XBMC4Xbox. MPlayer which is known for playing practically all common media-formats and XBMC4Xbox handles all codecs and containers normally supported by MPlayer, (which is all FFmpeg
FFmpeg
FFmpeg is a free software project that produces libraries and programs for handling multimedia data. The most notable parts of FFmpeg are libavcodec, an audio/video codec library used by several other projects, libavformat, an audio/video container mux and demux library, and the ffmpeg command line...

 supported codecs and also several external ones with the help of proprietary DLL
Dynamic-link library
Dynamic-link library , or DLL, is Microsoft's implementation of the shared library concept in the Microsoft Windows and OS/2 operating systems...

-files.

Programming and developing

XBMC4Xbox is a software application programmed in C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

, XBMC4Xbox uses Microsoft DirectX
DirectX
Microsoft DirectX is a collection of application programming interfaces for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms. Originally, the names of these APIs all began with Direct, such as Direct3D, DirectDraw, DirectMusic, DirectPlay,...

 multimedia framework and Direct3D
Direct3D
Direct3D is part of Microsoft's DirectX application programming interface . Direct3D is available for Microsoft Windows operating systems , and for other platforms through the open source software Wine. It is the base for the graphics API on the Xbox and Xbox 360 console systems...

 rendering, (as the Xbox
Xbox
The Xbox is a sixth-generation video game console manufactured by Microsoft. It was released on November 15, 2001 in North America, February 22, 2002 in Japan, and March 14, 2002 in Australia and Europe and is the predecessor to the Xbox 360. It was Microsoft's first foray into the gaming console...

 does not support OpenGL
OpenGL
OpenGL is a standard specification defining a cross-language, cross-platform API for writing applications that produce 2D and 3D computer graphics. The interface consists of over 250 different function calls which can be used to draw complex three-dimensional scenes from simple primitives. OpenGL...

).

The Xbox SDK (Xbox Development Kit, a.k.a. XDK)
Xbox Development Kit
The Xbox Development Kit is a software development kit created by Microsoft used to write software for the Xbox gaming system. The XDK includes libraries, a compiler, and various tools used to create software for the Xbox. The XDK has the option to integrate itself into Microsoft Visual Studio...

 software development kit
Software development kit
A software development kit is typically a set of software development tools that allows for the creation of applications for a certain software package, software framework, hardware platform, computer system, video game console, operating system, or similar platform.It may be something as simple...

 (with libraries) is required to compile
Compiler
A compiler is a computer program that transforms source code written in a programming language into another computer language...

 XBMC4Xbox. Also required to compile (and program
Computer programming
Computer programming is the process of designing, writing, testing, debugging, and maintaining the source code of computer programs. This source code is written in one or more programming languages. The purpose of programming is to create a program that performs specific operations or exhibits a...

 in) XBMC4Xbox is the older Microsoft Visual Studio .NET version 7.1

According to Microsoft, it is a common misconception that the Xbox
Xbox
The Xbox is a sixth-generation video game console manufactured by Microsoft. It was released on November 15, 2001 in North America, February 22, 2002 in Japan, and March 14, 2002 in Australia and Europe and is the predecessor to the Xbox 360. It was Microsoft's first foray into the gaming console...

 uses a modified Windows 2000
Windows 2000
Windows 2000 is a line of operating systems produced by Microsoft for use on personal computers, business desktops, laptops, and servers. Windows 2000 was released to manufacturing on 15 December 1999 and launched to retail on 17 February 2000. It is the successor to Windows NT 4.0, and is the...

 kernel
Kernel (computing)
In computing, the kernel is the main component of most computer operating systems; it is a bridge between applications and the actual data processing done at the hardware level. The kernel's responsibilities include managing the system's resources...

, instead they claim that the Xbox operating system was built from scratch but implements a subset of Windows API
Windows API
The Windows API, informally WinAPI, is Microsoft's core set of application programming interfaces available in the Microsoft Windows operating systems. It was formerly called the Win32 API; however, the name "Windows API" more accurately reflects its roots in 16-bit Windows and its support on...

s. The idea that it does, indeed, run a modified copy of the Windows kernel still persists in the community, however what is known for sure is that the Xbox's kernel works like a BIOS
BIOS
In IBM PC compatible computers, the basic input/output system , also known as the System BIOS or ROM BIOS , is a de facto standard defining a firmware interface....

 and is Win32 based, but does not have all of the resources or capabilities of a full Windows NT
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

 based operating system, (for example: neither DirectShow
DirectShow
DirectShow , codename Quartz, is a multimedia framework and API produced by Microsoft for software developers to perform various operations with media files or streams. It is the replacement for Microsoft's earlier Video for Windows technology...

, registry
Windows registry
The Windows Registry is a hierarchical database that stores configuration settings and options on Microsoft Windows operating systems. It contains settings for low-level operating system components as well as the applications running on the platform: the kernel, device drivers, services, SAM, user...

, nor DLL
Dynamic-link library
Dynamic-link library , or DLL, is Microsoft's implementation of the shared library concept in the Microsoft Windows and OS/2 operating systems...

 are natively supported on the Xbox), and because of the constraints on the hardware and environment of the Xbox, all software development of XBMC4Xbox for the Xbox is focused on reserving the limited resources that exist, the main hindrance of which is the amount of available RAM at any one time.

XBMC4Xbox software and related Xbox hardware limitations

  • UDF (Universal Disk Format)
    Universal Disk Format
    Universal Disk Format is an implementation of the specification known as ISO/IEC 13346 and ECMA-167 and is an open vendor-neutral file system for computer data storage for a broad range of media. In practice, it has been most widely used for DVDs and newer optical disc formats, supplanting ISO 9660...

     file-system limitation: XBMC4Xbox only supports UDF version 1.02 (designed for DVD-Video
    DVD-Video
    DVD-Video is a consumer video format used to store digital video on DVD discs, and is currently the dominant consumer video format in Asia, North America, Europe, and Australia. Discs using the DVD-Video specification require a DVD drive and a MPEG-2 decoder...

     media), which has a maximum file-size of 1 GB (meaning if you burn a DVD-media in a newer UDF version with a video that is larger than 1GB, XBMC will not be able to play that file), same goes for UDF/ISO hybrid formats (a.k.a. UDF Bridge format). Workaround: Burn all your CD/DVD-media in ISO 9660
    ISO 9660
    ISO 9660, also referred to as CDFS by some hardware and software providers, is a file system standard published by the International Organization for Standardization for optical disc media....

     format, which is the most common standard for recording CD/DVDs. Unfortunately ISO 9660
    ISO 9660
    ISO 9660, also referred to as CDFS by some hardware and software providers, is a file system standard published by the International Organization for Standardization for optical disc media....

     has a 2GB (Gigabyte)
    Gigabyte
    The gigabyte is a multiple of the unit byte for digital information storage. The prefix giga means 109 in the International System of Units , therefore 1 gigabyte is...

     file-size limitation, which cannot be bypassed.
  • The Xbox built-in harddrive is formatted in FATX (File Allocation Table for Xbox) which has a 4GB (4096 Megabyte
    Megabyte
    The megabyte is a multiple of the unit byte for digital information storage or transmission with two different values depending on context: bytes generally for computer memory; and one million bytes generally for computer storage. The IEEE Standards Board has decided that "Mega will mean 1 000...

    ) file-size limitation, and only supports file/folder-names up to 42 characters, a maximum of 255 in total file-structure character-depth and a maximum number of 4096 files/folders in a single subfolder, plus in the root of each partition, the maximum number of files/folders is 256. FATX also does not support all standard ASCII characters
    ASCII
    The American Standard Code for Information Interchange is a character-encoding scheme based on the ordering of the English alphabet. ASCII codes represent text in computers, communications equipment, and other devices that use text...

     in file/folder names (for example < > = ? : ; " * + , / \|¤ &). XBMC will automatically try to rename any files/folders you transfer to the Xbox according to these limitations. None of these file-size and file-name issues are XBMC bugs as the limitations are in the Xbox itself. Workaround: Store your files/folders on your computer or a Network-Attached Storage (NAS)
    Network-attached storage
    Network-attached storage is file-level computer data storage connected to a computer network providing data access to heterogeneous clients. NAS not only operates as a file server, but is specialized for this task either by its hardware, software, or configuration of those elements...

     device which supports SMB/CIFS
    Server Message Block
    In computer networking, Server Message Block , also known as Common Internet File System operates as an application-layer network protocol mainly used to provide shared access to files, printers, serial ports, and miscellaneous communications between nodes on a network. It also provides an...

    , FTP or UPnP and share them over a local-area-network
    Local area network
    A local area network is a computer network that interconnects computers in a limited area such as a home, school, computer laboratory, or office building...

     instead.
  • The USB flash drive
    USB flash drive
    A flash drive is a data storage device that consists of flash memory with an integrated Universal Serial Bus interface. flash drives are typically removable and rewritable, and physically much smaller than a floppy disk. Most weigh less than 30 g...

     (USB key-drives/memory-keys) reader/writer class
    Class (computer science)
    In object-oriented programming, a class is a construct that is used as a blueprint to create instances of itself – referred to as class instances, class objects, instance objects or simply objects. A class defines constituent members which enable these class instances to have state and behavior...

     used by XBMC for Xbox currently has a few limitations as well. It is limited to USB flash drives and harddisks compatible with USB Mass Storage Device Class
    USB mass storage device class
    The USB mass storage device class, otherwise known as USB MSC or UMS, is a protocol that allows a Universal Serial Bus device to become accessible to a host computing device, to enable file transfers between the two...

     following the USB 1.1 standard, with a maximum size of 4 GB. It can read and write to FATX formatted flash drives, but can only read FAT12, FAT16 (including VFAT), and FAT32. NTFS
    NTFS
    NTFS is the standard file system of Windows NT, including its later versions Windows 2000, Windows XP, Windows Server 2003, Windows Server 2008, Windows Vista, and Windows 7....

     formatted drives are not supported yet.
  • With its by today's standard old and slow 733 MHz Intel Pentium III-like CPU and 64MB shared memory
    Shared memory
    In computing, shared memory is memory that may be simultaneously accessed by multiple programs with an intent to provide communication among them or avoid redundant copies. Depending on context, programs may run on a single processor or on multiple separate processors...

    , the Xbox has neither a fast enough CPU nor sufficient amounts of RAM to play HDTV videos encoded in native 720p/1080i resolution. However, XBMC on the Xbox can up-convert all standard definition movies and output them at 720p or 1080i.
  • The Xbox is only able to play MPEG-4 AVC (H.264) encoded videos if the video-resolution is under 480p
    480p
    480p is the shorthand name for a video display resolution. The p stands for progressive scan, i.e. non-interlaced. The 480 denotes a vertical resolution of 480 pixel high vertically scanning lines, usually with a horizontal resolution of 640 pixels and 4:3 aspect ratio or a horizontal resolution of...

     (720x480 pixels).. If the video is however encoded with MPEG-4 ASP
    MPEG-4 Part 2
    MPEG-4 Part 2, MPEG-4 Visual is a video compression technology developed by MPEG. It belongs to the MPEG-4 ISO/IEC standards. It is a discrete cosine transform compression standard, similar to previous standards such as MPEG-1 and MPEG-2...

     instead, then the videos native-resolution can be anything up to 960x540 pixels (a resolution which is also known as HRHD resolution).

History

As the successor to Xbox Media Player (XBMP)
Xbox Media Player
Xbox Media Player, , now obsolete, was the predecessor to XBMC and XBMC4Xbox, a feature-rich free and open source media player for the Xbox...

, XboxMediaCenter (XBMC), was ported to other platforms and architectures, becoming XBMC or XBMC Media Center thus losing the XBOX connection. On May 27, 2010, to differentiate the now mainline multiplatform XBMC from the original XBOX, the team behind XBMC announced the splitting of the Xbox branch into a new project; "XBMC4Xbox" which will continue the development and support of XBMC for the old Xbox hardware platform as a separate project, with the original XBMC project no longer offering any support for the Xbox.
Apart from the name the next noticeable thing is the changed version numbering. The last official release of XBMC for Xbox was 9.11 Camelot, a release which at the time was more closely connected to the multiplatform XBMC that had been in development for some time. XBMC4Xbox project has since have reverted to version numbering that does not include a reference to a date for release, instead it is now a simple major.minor version, which is what was used also before Xbox Media Center became just XBMC. New releases have been said that they will from now be made when they are ready rather than having set release dates.

In previous years before XBMC4Xbox split from XBMC there has been less developer interest in the Xbox version of XBMC, as the new multiplatform version of XBMC became the primary concern for the XBMC team. As of last year, only one developer (Arnova) still looked after the Xbox version. Lack of interest from the XBMC developers got to a point where a new home was needed for the Xbox codebase, and earlier this year it was moved to its own home on SourceForge.

A new community site had already been set up at xbmc4xbox.org and was chosen to replace the forums on xbmc.org where XboxX discussion was no longer relevant, as xbmc.org only deals with the platforms that they actively develop for.

After the move, interest seemed to increase with some new developers joining to help out. Over the last year the Xbox has seen more development that it has for a long time. In fact even the mainline XBMC has benefited from at least a few fixes from our code base.

Legality and copyright

XBMCXbox software is just like XBMC licensed under the GNU General Public License (GPL)
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

 by its developers, meaning they allow anybody to redistribute XBMCXbox source code under very liberal conditions. However, in order to compile the Xbox build of XBMCXbox into executable
Executable
In computing, an executable file causes a computer "to perform indicated tasks according to encoded instructions," as opposed to a data file that must be parsed by a program to be meaningful. These instructions are traditionally machine code instructions for a physical CPU...

 form, it is currently necessary to use Microsoft
Microsoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...

's proprietary XDK (Xbox Development Kit)
Xbox Development Kit
The Xbox Development Kit is a software development kit created by Microsoft used to write software for the Xbox gaming system. The XDK includes libraries, a compiler, and various tools used to create software for the Xbox. The XDK has the option to integrate itself into Microsoft Visual Studio...

 which is only available to licensed developers and the resulting code may only be legally distributed by Microsoft. Accordingly, code compiled with an unauthorized copy of the Xbox Development Kit
Xbox Development Kit
The Xbox Development Kit is a software development kit created by Microsoft used to write software for the Xbox gaming system. The XDK includes libraries, a compiler, and various tools used to create software for the Xbox. The XDK has the option to integrate itself into Microsoft Visual Studio...

 may not be legally distributed by anyone other than Microsoft. A third-party project called "OpenXDK" is concerned with producing a replacement for Microsoft's XDK, and while this SDK could potentially allow legal binaries
Binary file
A binary file is a computer file which may contain any type of data, encoded in binary form for computer storage and processing purposes; for example, computer document files containing formatted text...

 of XBMC4Xbox to be compiled, it would however require significant changes to the XBMC4Xbox source code and is therefore unlikely to ever happen at the current stage of the project.

So while XBMC4Xbox's source code
Source code
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...

 is made publicly available by the developers under an open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

 (GNU GPL) license
License
The verb license or grant licence means to give permission. The noun license or licence refers to that permission as well as to the document recording that permission.A license may be granted by a party to another party as an element of an agreement...

, the developers themselves are legally unable to distribute executable
Executable
In computing, an executable file causes a computer "to perform indicated tasks according to encoded instructions," as opposed to a data file that must be parsed by a program to be meaningful. These instructions are traditionally machine code instructions for a physical CPU...

 versions of XBMC4Xbox. This is because XBMC4Xbox requires Microsoft's proprietary software development kit in order to compile. Thus, the only publicly available executable
Executable
In computing, an executable file causes a computer "to perform indicated tasks according to encoded instructions," as opposed to a data file that must be parsed by a program to be meaningful. These instructions are traditionally machine code instructions for a physical CPU...

 versions of XBMC4Xbox are from third parties, as a result, pre-compiled versions of XBMC4Xbox may be illegal to distribute in many countries around the world.

Also for audio and video codecs which are not natively supported via FFmpeg
FFmpeg
FFmpeg is a free software project that produces libraries and programs for handling multimedia data. The most notable parts of FFmpeg are libavcodec, an audio/video codec library used by several other projects, libavformat, an audio/video container mux and demux library, and the ffmpeg command line...

, XBMC4Xbox via MPlayer provides a DLL
Dynamic-link library
Dynamic-link library , or DLL, is Microsoft's implementation of the shared library concept in the Microsoft Windows and OS/2 operating systems...

 loader which can load third-party made audio and video codec
Codec
A codec is a device or computer program capable of encoding or decoding a digital data stream or signal. The word codec is a portmanteau of "compressor-decompressor" or, more commonly, "coder-decoder"...

 DLLs to decode unsupported formats. This is potentially legal if the user owns a licensed copy of the DLL. However, some third-party XBMC4Xbox builds incorporate all available third-party DLLs that XBMC4Xbox can support, and the redistribution of these without a license is copyright infringement.

See also

  • XBMC, the original cross-platform XBMC Media Center project from which the XBMC4Xbox is a spin-off project from.
  • Xbox
    Xbox
    The Xbox is a sixth-generation video game console manufactured by Microsoft. It was released on November 15, 2001 in North America, February 22, 2002 in Japan, and March 14, 2002 in Australia and Europe and is the predecessor to the Xbox 360. It was Microsoft's first foray into the gaming console...

    , Microsoft's first generation video game console
    Video game console
    A video game console is an interactive entertainment computer or customized computer system that produces a video display signal which can be used with a display device to display a video game...

    , originally released in 2001.
  • Home theater PC
    Home theater PC
    A Home Theater PC or Media Center appliance is a convergence device that combines some or all the capabilities of a personal computer with a software application that supports video, photo, music playback, and sometimes video recording functionality...


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK