XBMC4Xbox is a
free and open source media player software made solely for the first-generation
Xbox video-game console. The software was forked from the XBMC project (now known as
Kodi
KODI (1400 AM) is a radio station broadcasting a news/talk format. Licensed to Cody, Wyoming, United States, the station is currently owned by the Big Horn Radio Network, a division of Legend Communications of Wyoming, LLC, and features programm ...
and formerly known as Xbox Media Player) after XBMC removed support for the Xbox console.
Other than the audio / video playback and
media center functionality, XBMC4Xbox also has the ability to catalog and launch original Xbox games, and
homebrew
Homebrewing mainly refers to small-scale, non-commercial manufacture of a drink, typically beer.
Homebrew or home brew may also refer to:
Computing
* Homebrew Computer Club
* Homebrew (package manager), for macOS and Linux
* Homebrew (video game ...
applications such as
console emulators from the Xbox's built-in
harddrive.
Since the XBMC4Xbox is homebrew software that is not endorsed or supported by
Microsoft in any way, it means XBMC4Xbox requires a
modchip or
softmod exploit installed 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 of binary-builds are made by independent third-parties who compile and distribute unofficial versions of the application.
[ Review of XBMC in Hardcore Gamer Magazine]
Overview
XBMC4XBox's
10-foot user interface
In computing, 10-foot user interface ("10-foot UI"), also known as a 3-meter user interface (especially for international marketing), is a graphical user interface designed for televisions. Compared to desktop computer and smartphone user int ...
is designed for the living-room
TV, and the large icons and text in the
graphical user interface 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 an Xbox's game-controller or the Xbox DVD-Kit
remote control. It also has a
skinnable and user-configurable interface and
plugin support.
XBMC4Xbox does also just like
XBMC feature; audio visualizations, slideshows,
weather forecasts
Weather forecasting is the application of science and technology to predict the conditions of the atmosphere for a given location and time. People have attempted to predict the weather informally for millennia and formally since the 19th centu ...
reporting, and a
Python-based
API for third-party plugins. Add-ons 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.
[https://code.google.com/p/xbmc-addons/ XBMC-Addons on Google Code (Addon plugins for XBMC)][http://www.xbmczone.com/ XBMC Zone (third-party Addon extensions for XBMC4Xbox)][http://passion-xbmc.org/ Passion XBMC (third-party Addon extensions for XBMC and XBMC4Xbox)]
The software is not an
authorized/signed Microsoft product, therefore a
modification of the Xbox is required in order to run XBMC4Xbox on an
Xbox game-console. On a modded Xbox, XBMC4Xbox can be run as an
application
Application may refer to:
Mathematics and computing
* Application software, computer software designed to help the user to perform specific tasks
** Application layer, an abstraction layer that specifies protocols and interface methods used in a c ...
(like any Xbox game), or as a
dashboard that appears directly when the
Xbox is turned on.
Since XBMC4Xbox is an
open source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
software program, its development
source code is stored on a publicly accessible
subversion repository. Accordingly, unofficial
executable
In computing, executable code, an executable file, or an executable program, sometimes simply referred to as an executable or binary, causes a computer "to perform indicated tasks according to encoded instruction (computer science), instructi ...
builds from the subversion repository are often released by
third parties on sites unaffiliated with the XBMC4Xbox project.
XBMC4Xbox
source code is distributed as open source under
GPL (GNU General Public License),
and is
community developed by a group of
volunteering 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 which it was forked:
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
Homebrewing mainly refers to small-scale, non-commercial manufacture of a drink, typically beer.
Homebrew or home brew may also refer to:
Computing
* Homebrew Computer Club
* Homebrew (package manager), for macOS and Linux
* Homebrew (video game ...
) and
applications/
emulator directly off the Xbox built-in
harddrive, all from a
GUI
The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
with
thumbnail and list options. This replaces the original
Xbox Dashboard from
Microsoft, and with the exception of flashing new
BIOS
In computing, BIOS (, ; Basic Input/Output System, also known as the System BIOS, ROM BIOS, BIOS ROM or PC BIOS) is firmware used to provide runtime services for operating systems and programs and to perform hardware initialization during the ...
to an Xbox
modchip it also features many extra functions that other
homebrew
Homebrewing mainly refers to small-scale, non-commercial manufacture of a drink, typically beer.
Homebrew or home brew may also refer to:
Computing
* Homebrew Computer Club
* Homebrew (package manager), for macOS and Linux
* Homebrew (video game ...
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 (such as
cheat code) through altering retail functions in game values by way of using
TSR (Terminate and Stay Resident) keys. There are many things that can be
modified
Modified may refer to:
* ''Modified'' (album), the second full-length album by Save Ferris
* Modified racing, or "Modifieds", an American automobile racing genre
See also
* Modification (disambiguation)
* Modifier (disambiguation)
Modifier may ...
including ammunition, extra-lives, or even how high a character can jump. Trainer support in XBMC4Xbox was achieved through collaboration with
Team Xored
A team is a group of individuals (human or non-human) working together to achieve their goal.
As defined by Professor Leigh Thompson of the Kellogg School of Management, " team is a group of people who are interdependent with respect to infor ...
. 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 an
XLink Kai 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 formats. However, it cannot playback most native
720p and
1080p
1080p (1920×1080 progressively displayed pixels; also known as Full HD or FHD, and BT.709) is a set of HDTV high-definition video modes characterized by 1,920 pixels displayed across the screen horizontally and 1,080 pixels down the screen vert ...
video files due to Xbox hardware limitations. XBMC4Xbox can upscale the resolution of many standard definition videos.
XBMC4Xbox multimedia playback cores
XBMC4Xbox uses two different
multimedia 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 and is based on
libmpeg2 and
libmad
MPEG Audio Decoder (MAD) is a GPL library for decoding files that have been encoded with an MPEG audio codec. It was written by Robert Leslie and produced by Underbit Technologies. It was developed as a new implementation, on the ISO/IEC standar ...
for
MPEG decoding yet
FFmpeg 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 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
On the fly is a phrase used to describe something that is being changed while the process that the change affects is ongoing. It is used in the automotive, computer, and culinary industries. In cars, on the fly can be used to describe the changing ...
pause and play DVD-Video movies that are stored in
ISO and IMG DVD-images or DVD-Video (
IFO/
VOB
VOB (for video object) is the container format in DVD-Video media. VOB can contain digital video, digital audio, subtitles, DVD menus and navigation contents multiplexed together into a stream form. Files in VOB format may be encrypted.
File fo ...
/
BUP) images (even directly from uncompressed
RAR RAR or Rar may refer to:
* Radio acoustic ranging, a non-visual technique for determining a ship's position at sea
* "rar", the ISO 639-2 code for the Cook Islands Māori language
* RAR (file format), a proprietary compressed archive file format in ...
and
ZIP
Zip, Zips or ZIP may refer to:
Common uses
* ZIP Code, USPS postal code
* Zipper or zip, clothing fastener
Science and technology Computing
* ZIP (file format), a compressed archive file format
** zip, a command-line program from Info-ZIP
* Zi ...
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 is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
cross-platform player,
MPlayer, 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 supported codecs and also several external ones with the help of proprietary
DLL-files.
The third 'core', PAPlayer (abbreviated from Psycho-acoustic Audio Player), only supports audio playback. PAPlayer was also developed by the XBMC team, before the projects split, in 2005. The PAPlayer supports more codecs than MPlayer, and is therefore the default audio playback 'core'. Some file formats that don't work with MPlayer play with PAPlayer and there are less bugs (e.g. the visualisation bug in MPlayer, where visualisations 'break' after a file has been played). After the previous XBMC4Xbox site went down, the wiki was lost, so there is no record for supported filetypes for PAPlayer in XBMC4Xbox. However, XBMC.org has a page o
PAPlayer supported formats
Programming and development
XBMC4Xbox is a software application programmed in
C++, XBMC4Xbox uses
Microsoft DirectX multimedia framework and
Direct3D
Direct3D is a graphics application programming interface (API) for Microsoft Windows. Part of DirectX, Direct3D is used to render three-dimensional graphics in applications where performance is important, such as games. Direct3D uses hardware a ...
rendering, (as the
Xbox does not support
OpenGL
OpenGL (Open Graphics Library) is a cross-language, cross-platform application programming interface (API) for rendering 2D and 3D vector graphics. The API is typically used to interact with a graphics processing unit (GPU), to achieve hardwa ...
).
The
Xbox SDK (Xbox Development Kit, a.k.a. XDK) software development kit (with
libraries) is required to
compile XBMC4Xbox.
Also required to compile (and
program in) XBMC4Xbox is the older
Microsoft Visual Studio .NET
Visual Studio is an integrated development environment (IDE) from Microsoft. It is used to develop computer programs including websites, web apps, web services and mobile apps. Visual Studio uses Microsoft software development platforms such ...
version 7.1
According to Microsoft, it is a common misconception that the
Xbox uses a modified
Windows 2000 kernel, instead they claim that the Xbox operating system was built from scratch but implements a subset of
Windows APIs. 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
In computing, BIOS (, ; Basic Input/Output System, also known as the System BIOS, ROM BIOS, BIOS ROM or PC BIOS) is firmware used to provide runtime services for operating systems and programs and to perform hardware initialization during the ...
and is
Win32 based, but does not have all of the resources or capabilities of a full
Windows NT based operating system, (for example: neither
DirectShow,
registry, nor
DLL 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) file-system limitation: XBMC4Xbox only supports UDF version 1.02 (designed for
DVD-Video
DVD-Video is a consumer video format used to store digital video on DVD discs. DVD-Video was the dominant consumer home video format in Asia, North America, Europe, and Australia in the 2000s until it was supplanted by the high-definition Blu-r ...
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 format, which is the most common standard for recording CD/DVDs. Unfortunately
ISO 9660 has a 2
GB (Gigabyte) 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
The megabyte is a multiple of the unit byte for digital information. Its recommended unit symbol is MB. The unit prefix ''mega'' is a multiplier of (106) in the International System of Units (SI). Therefore, one megabyte is one million bytes o ...
) 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 ( ), abbreviated from American Standard Code for Information Interchange, is a character encoding standard for electronic communication. ASCII codes represent text in computers, telecommunications equipment, and other devices. Because of ...
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) device which supports
SMB/CIFS,
FTP or
UPnP
Universal Plug and Play (UPnP) is a set of networking protocols that permits networked devices, such as personal computers, printers, Internet gateways, Wi-Fi access points and mobile devices to seamlessly discover each other's presence on the n ...
and share them over a
local-area-network instead.
*The
USB flash drive (USB
key-drives/memory-keys) reader/writer
class 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 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 formatted drives are not supported yet.
*With its by today's standard old and slow 733 MHz
Intel Pentium III-like
CPU
A central processing unit (CPU), also called a central processor, main processor or just processor, is the electronic circuitry that executes instructions comprising a computer program. The CPU performs basic arithmetic, logic, controlling, and ...
and 64MB
shared memory, 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 is the shorthand name for a family of video display resolutions. The p stands for progressive scan, i.e. non-interlaced. The ''480'' denotes a vertical resolution of 480 pixels, usually with a horizontal resolution of 640 pixels and 4:3 ...
(720x480 pixels). If the video is however encoded with
MPEG-4 ASP 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), 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. The XBMC4Xbox project has since reverted to version numbering that does not include a reference to a date for release. Instead it is now uses a simpler major.minor version system, which is what was used before Xbox Media Center became just XBMC. New releases are now made available when they are ready rather than having set release dates.
In previous years before XBMC4Xbox split from XBMC, there was less developer interest in the Xbox version of XBMC, as the new multiplatform version of XBMC became the primary concern for the XBMC team. 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 in 2010 it was moved to
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.
[http://www.xbmc4xbox.org/xbmc4xbox-3-0-1-stable-released XBMC4XBOX 3.0.1 Stable Released!]
Legality and copyright
XBMCXbox software is just like
XBMC licensed under the
GNU General Public License (GPL) 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
In computing, executable code, an executable file, or an executable program, sometimes simply referred to as an executable or binary, causes a computer "to perform indicated tasks according to encoded instruction (computer science), instructi ...
form, it is currently necessary to use
Microsoft's proprietary
XDK (Xbox Development Kit) 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 may not be legally distributed by anyone other than Microsoft.
So while XBMC4Xbox's
source code is made publicly available by the developers under an
open-source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
(
GNU GPL
The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end users the four freedoms to run, study, share, and modify the software. The license was the first copyleft for general us ...
)
license
A license (or licence) is an official permission or permit to do, use, or own something (as well as the document of that permission or permit).
A license is granted by a party (licensor) to another party (licensee) as an element of an agreeme ...
, the developers themselves are legally unable to distribute
executable
In computing, executable code, an executable file, or an executable program, sometimes simply referred to as an executable or binary, causes a computer "to perform indicated tasks according to encoded instruction (computer science), instructi ...
versions of XBMC4Xbox. This is because XBMC4Xbox requires Microsoft's proprietary software development kit in order to compile. Thus, the only publicly available
executable
In computing, executable code, an executable file, or an executable program, sometimes simply referred to as an executable or binary, causes a computer "to perform indicated tasks according to encoded instruction (computer science), instructi ...
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, XBMC4Xbox via MPlayer provides a
DLL loader which can load
third-party made audio and video
codec 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
*
Home theater PC
References
External links
www.xbmc4xbox.org.uk - XBMC4Xbox Official WebsiteOfficial SourceForge Project Page with source code
{{Home theater PC (application software)
Free multimedia software
Free media players
Free software programmed in C++
Free video software
Multimedia software
Xbox (console) software