Media player (software)
A media player is a computer program/software for playing multimedia files like audios, videos and music. Media players display standard media control icons known from physical devices such as tape recorders and CD players, such as play, fastforward and stop buttons. In addition, they have progress bars to locate the current position in the duration of the media file. Mainstream operating systems have at least one built-in media player. For example, Windows comes with Windows Media Player while macOS comes with QuickTime Player and iTunes. Linux distributions may come with a media player, such as SMPlayer, Audacious, Banshee, MPlayer, Rhythmbox, Totem, VLC Media Player, xine. Android OS comes with Google Play Music as default media player and many apps like Poweramp, Beautiful Music Player, VLC Media Player. Different media players may have different goals and feature sets. Video players are a group of media players that have their features geared more towards playing digital video. For example, Windows DVD Player plays DVD-Video discs and nothing else.
Media Player Classic can play individual audio and video files but many of its features such as color correction, picture sharpening, set of hotkeys, DVB support and subtitle support are only useful for video material such as films and cartoons. Audio players, on the other hand, specialize in digital audio. For example, AIMP plays audio formats. MediaMonkey can play both audio and video format but many of its features including media library, lyric discovery, music visualization, online radio, audiobook indexing and tag editing are geared toward consumption of audio material. In addition, watching video files on it can be a trying feat. General-purpose media players do exist. For example, Windows Media Player has exclusive features for both audio and video material, although it cannot match the feature set of Media Player Classic and MediaMonkey combined. 3D video players are used to play 2D video in 3D format. A high-quality three-dimensional video presentation requires that each frame of a motion picture be embedded with information on the depth of objects present in the scene.
This process involves shooting the video with special equipment from two distinct perspectives or modelling and rendering each frame as a collection of objects composed of 3D vertices and textures, much like in any modern video game, to achieve special effects. Tedious and costly, this method is only used in a small fraction of movies produced worldwide, while most movies remain in the form of traditional 2D images, it is, possible to give an otherwise two-dimensional picture the appearance of depth. Using a technique known as anaglyph processing a "flat" picture can be transformed so as to give an illusion of depth when viewed through anaglyph glasses. An image viewed through anaglyph glasses appears to have both protruding and embedded objects in it, at the expense of somewhat distorted colours; the method itself is old enough, dating back to mid-19th century, but it is only with recent advances in computer technology that it has become possible to apply this kind of transformation to a series of frames in a motion picture reasonably fast or in real time, i.e. as the video is being played back.
Several implementations exist in the form of 3D video players that render conventional 2D video in anaglyph 3D, as well as in the form of 3D video converters that transform video into stereoscopic anaglyph and transcode it for playback with regular software or hardware video players. A home theater PC or media center computer is a convergence device that combines some or all the capabilities of a personal computer with a software application that supports video, audio playback, sometimes video recording functionality. Although computers with some of these capabilities were available from the late 1980s, the "Home Theater PC" term first appeared in mainstream press in 1996. Since 2007, other types of consumer electronics, including gaming systems and dedicated media devices have crossed over to manage video and music content; the term "media center" refers to specialized computer programs designed to run on standard personal computers. Comparison of video player software Comparison of audio player software
A video card is an expansion card which generates a feed of output images to a display device. These are advertised as discrete or dedicated graphics cards, emphasizing the distinction between these and integrated graphics. At the core of both is the graphics processing unit, the main part that does the actual computations, but should not be confused as the video card as a whole, although "GPU" is used to refer to video cards. Most video cards are not limited to simple display output, their integrated graphics processor can perform additional processing, removing this task from the central processor of the computer. For example, Nvidia and AMD produced cards render the graphics pipeline OpenGL and DirectX on the hardware level. In the 2010s, there has been a tendency to use the computing capabilities of the graphics processor to solve non-graphic tasks; the graphics card is made in the form of a printed circuit board and inserted into an expansion slot, universal or specialized. Some have been made using dedicated enclosures, which are connected to the computer via a docking station or a cable.
Standards such as MDA, CGA, HGC, Tandy, PGC, EGA, VGA, MCGA, 8514 or XGA were introduced from 1982 to 1990 and supported by a variety of hardware manufacturers. 3dfx Interactive was one of the first companies to develop a GPU with 3D acceleration and the first to develop a graphical chipset dedicated to 3D, but without 2D support. Now the majority of modern video cards are built with either AMD-sourced or Nvidia-sourced graphics chips; until 2000, 3dfx Interactive was an important, groundbreaking, manufacturer. Most video cards offer various functions such as accelerated rendering of 3D scenes and 2D graphics, MPEG-2/MPEG-4 decoding, TV output, or the ability to connect multiple monitors. Video cards have sound card capabilities to output sound – along with the video for connected TVs or monitors with integrated speakers. Within the industry, video cards are sometimes called graphics add-in-boards, abbreviated as AIBs, with the word "graphics" omitted; as an alternative to the use of a video card, video hardware can be integrated into the motherboard, CPU, or a system-on-chip.
Both approaches can be called integrated graphics. Motherboard-based implementations are sometimes called "on-board video". All desktop computer motherboards with integrated graphics allow the disabling of the integrated graphics chip in BIOS, have a PCI, or PCI Express slot for adding a higher-performance graphics card in place of the integrated graphics; the ability to disable the integrated graphics sometimes allows the continued use of a motherboard on which the on-board video has failed. Sometimes both the integrated graphics and a dedicated graphics card can be used to feed separate displays; the main advantages of integrated graphics include cost, compactness and low energy consumption. The performance disadvantage of integrated graphics arises because the graphics processor shares system resources with the CPU. A dedicated graphics card has its own random access memory, its own cooling system, dedicated power regulators, with all components designed for processing video images. Upgrading to a dedicated graphics card offloads work from the CPU and system RAM, so not only will graphics processing be faster, but the computer's overall performance may improve.
Both AMD and Intel have introduced CPUs and motherboard chipsets which support the integration of a GPU into the same die as the CPU. AMD markets CPUs with integrated graphics under the trademark Accelerated Processing Unit, while Intel markets similar technology under the "Intel HD Graphics and Iris" brands. With the 8th Generation Processors, Intel announced the Intel UHD series of Integrated Graphics for better support of 4K Displays. Although they are still not equivalent to the performance of discrete solutions, Intel's HD Graphics platform provides performance approaching discrete mid-range graphics, AMD APU technology has been adopted by both the PlayStation 4 and Xbox One video game consoles; as the processing power of video cards has increased, so has their demand for electrical power. Current high-performance video cards tend to consume a great deal of power. For example, the thermal design power for the GeForce GTX TITAN is 250 watts; when tested while gaming, the GeForce GTX 1080 Ti Founder's Edition averaged 227 watts of power consumption.
While CPU and power supply makers have moved toward higher efficiency, power demands of GPUs have continued to rise, so video cards may have the largest power consumption in a computer. Although power supplies are increasing their power too, the bottleneck is due to the PCI-Express connection, limited to supplying 75 watts. Modern video cards with a power consumption of over 75 watts include a combination of six-pin or eight-pin sockets that connect directly to the power supply. Providing adequate cooling becomes a challenge in such computers. Computers with multiple video cards may need power supplies in the 1000–1500 W range. Heat extraction becomes a major design consideration for computers with two or more high-end video cards. Video cards for desktop computers come in one of two size profiles, which can allow a graphics card to be added to small-sized PCs; some video cards are not of usual size, are thus categorized as being low profile. Video card profiles are based on height only, with low-profile cards taking up less than the height of a
A computing platform or digital platform is the environment in which a piece of software is executed. It may be the hardware or the operating system a web browser and associated application programming interfaces, or other underlying software, as long as the program code is executed with it. Computing platforms have different abstraction levels, including a computer architecture, an OS, or runtime libraries. A computing platform is the stage. A platform can be seen both as a constraint on the software development process, in that different platforms provide different functionality and restrictions. For example, an OS may be a platform that abstracts the underlying differences in hardware and provides a generic command for saving files or accessing the network. Platforms may include: Hardware alone, in the case of small embedded systems. Embedded systems can access hardware directly, without an OS. A browser in the case of web-based software; the browser itself runs on a hardware+OS platform, but this is not relevant to software running within the browser.
An application, such as a spreadsheet or word processor, which hosts software written in an application-specific scripting language, such as an Excel macro. This can be extended to writing fully-fledged applications with the Microsoft Office suite as a platform. Software frameworks. Cloud computing and Platform as a Service. Extending the idea of a software framework, these allow application developers to build software out of components that are hosted not by the developer, but by the provider, with internet communication linking them together; the social networking sites Twitter and Facebook are considered development platforms. A virtual machine such as the Java virtual machine or. NET CLR. Applications are compiled into a format similar to machine code, known as bytecode, executed by the VM. A virtualized version of a complete system, including virtualized hardware, OS, storage; these allow, for instance, a typical Windows program to run on. Some architectures have multiple layers, with each layer acting as a platform to the one above it.
In general, a component only has to be adapted to the layer beneath it. For instance, a Java program has to be written to use the Java virtual machine and associated libraries as a platform but does not have to be adapted to run for the Windows, Linux or Macintosh OS platforms. However, the JVM, the layer beneath the application, does have to be built separately for each OS. AmigaOS, AmigaOS 4 FreeBSD, NetBSD, OpenBSD IBM i Linux Microsoft Windows OpenVMS Classic Mac OS macOS OS/2 Solaris Tru64 UNIX VM QNX z/OS Android Bada BlackBerry OS Firefox OS iOS Embedded Linux Palm OS Symbian Tizen WebOS LuneOS Windows Mobile Windows Phone Binary Runtime Environment for Wireless Cocoa Cocoa Touch Common Language Infrastructure Mono. NET Framework Silverlight Flash AIR GNU Java platform Java ME Java SE Java EE JavaFX JavaFX Mobile LiveCode Microsoft XNA Mozilla Prism, XUL and XULRunner Open Web Platform Oracle Database Qt SAP NetWeaver Shockwave Smartface Universal Windows Platform Windows Runtime Vexi Ordered from more common types to less common types: Commodity computing platforms Wintel, that is, Intel x86 or compatible personal computer hardware with Windows operating system Macintosh, custom Apple Inc. hardware and Classic Mac OS and macOS operating systems 68k-based PowerPC-based, now migrated to x86 ARM architecture based mobile devices iPhone smartphones and iPad tablet computers devices running iOS from Apple Gumstix or Raspberry Pi full function miniature computers with Linux Newton devices running the Newton OS from Apple x86 with Unix-like systems such as Linux or BSD variants CP/M computers based on the S-100 bus, maybe the earliest microcomputer platform Video game consoles, any variety 3DO Interactive Multiplayer, licensed to manufacturers Apple Pippin, a multimedia player platform for video game console development RISC processor based machines running Unix variants SPARC architecture computers running Solaris or illumos operating systems DEC Alpha cluster running OpenVMS or Tru64 UNIX Midrange computers with their custom operating systems, such as IBM OS/400 Mainframe computers with their custom operating systems, such as IBM z/OS Supercomputer architectures Cross-platform Platform virtualization Third platform Ryan Sarver: What is a platform
In computing, executable code or an executable file or executable program, sometimes referred to as an executable, 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. The exact interpretation depends upon the use - while "instructions" is traditionally taken to mean machine code instructions for a physical CPU, in some contexts a file containing bytecode or scripting language instructions may be considered executable. Executable files can be hand-coded in machine language, although it is far more convenient to develop software as source code in a high-level language that can be understood by humans. In some cases, source code might be specified in assembly language instead, which remains human-readable while being associated with machine code instructions; the high-level language is compiled into either an executable machine code file or a non-executable machine-code object file of some sort.
Several object files are linked to create the executable. Object files, executable or not, are in a container format, such as Executable and Linkable Format; this structures the generated machine code, for example dividing it into sections such as the.text.data, and.rodata. In order to be executed by the system, an executable file must conform to the system's application binary interface. Most a file is executed by loading the file into memory and jumping to the start of the address space and executing from there, but in more complicated interfaces executable files have additional metadata, specifying a separate entry point. For example, in ELF, the entry point is specified in the header in the e_entry field, which specifies the memory address at which to start execution. In the GCC this field is set by the linker based on the _start symbol. Executable files also include a runtime system, which implements runtime language features and interactions with the operating system, notably passing arguments and returning an exit status, together with other startup and shutdown features such as releasing resources like file handles.
For C, this is done by linking in the crt0 object, which contains the actual entry point and does setup and shutdown by calling the runtime library. Executable files thus contain significant additional machine code beyond that directly generated from the specific source code. In some cases it is desirable to omit this, for example for embedded systems development or to understand how compilation and loading work. In C this can be done by omitting the usual runtime, instead explicitly specifying a linker script, which generates the entry point and handles startup and shutdown, such as calling main to start and returning exit status to kernel at end. Comparison of executable file formats EXE File Format at What Is
Productivity software is application software used for producing information. Its names arose from the fact that it increases productivity of individual office workers, from typists to knowledge workers, although its scope is now wider than that. Office suites, which brought word processing and relational database programs to the desktop in the 1980s, are the core example of productivity software, they revolutionized the office with the magnitude of the productivity increase they brought as compared with the pre-1980s office environments of typewriters, paper filing, handwritten lists and ledgers. Some 78% of "middle-skill" occupations now require the use of productivity software. In the 2010s, productivity software has become more consumerized than it was, as computing becomes more integrated into daily personal life. Productivity software traditionally runs directly on a computer. For example, Commodore Plus/4 model of computer contained in ROM for applications of productivity software. Productivity software is one of the reasons.
Productivity software can fall into the following categories: Time Management Software: With time management software, one is able to track time on a desktop without any user intervention. This allows the person to analyse how much time is spent on each task and what one can do to re-prioritise his tasks and spend time on the most important tasks. Project Management Software: With project management software, one is able to delegate, track major projects and have a quick overview of the progress made by each team member. An office suite is a collection of bundled productivity software intended to be used by knowledge workers; the components are distributed together, have a consistent user interface and can interact with each other, sometimes in ways that the operating system would not allow. The earliest office suite for personal computers was Starburst in the early 1980s, comprising the word processor WordStar, together with companion apps CalcStar and DataStar. Various other suites arose in the 1980s, over the course of the 1990s Microsoft Office came to dominate the market, a position it retains as of 2018.
Existing office suites contain wide range of various components. Most the base components include: Word processor Spreadsheet Presentation programOther components of office suites include: Database software Graphics suite Desktop publishing software Formula editor Diagramming software Email client Communication software Personal information manager Notetaking software Groupware Project management software Web log analysis software Office Suites at Curlie
Intellectual property is a category of property that includes intangible creations of the human intellect. Intellectual property encompasses two types of rights, it was not until the 19th century that the term "intellectual property" began to be used, not until the late 20th century that it became commonplace in the majority of the world. The main purpose of intellectual property law is to encourage the creation of a large variety of intellectual goods. To achieve this, the law gives people and businesses property rights to the information and intellectual goods they create – for a limited period of time; this gives economic incentive for their creation, because it allows people to profit from the information and intellectual goods they create. These economic incentives are expected to stimulate innovation and contribute to the technological progress of countries, which depends on the extent of protection granted to innovators; the intangible nature of intellectual property presents difficulties when compared with traditional property like land or goods.
Unlike traditional property, intellectual property is "indivisible" – an unlimited number of people can "consume" an intellectual good without it being depleted. Additionally, investments in intellectual goods suffer from problems of appropriation – a landowner can surround their land with a robust fence and hire armed guards to protect it, but a producer of information or an intellectual good can do little to stop their first buyer from replicating it and selling it at a lower price. Balancing rights so that they are strong enough to encourage the creation of intellectual goods but not so strong that they prevent the goods' wide use is the primary focus of modern intellectual property law; the Statute of Monopolies and the British Statute of Anne are seen as the origins of patent law and copyright firmly establishing the concept of intellectual property. "Literary property" was the term predominantly used in the British legal debates of the 1760s and 1770s over the extent to which authors and publishers of works had rights deriving from the common law of property.
The first known use of the term intellectual property dates to this time, when a piece published in the Monthly Review in 1769 used the phrase. The first clear example of modern usage goes back as early as 1808, when it was used as a heading title in a collection of essays; the German equivalent was used with the founding of the North German Confederation whose constitution granted legislative power over the protection of intellectual property to the confederation. When the administrative secretariats established by the Paris Convention and the Berne Convention merged in 1893, they located in Berne, adopted the term intellectual property in their new combined title, the United International Bureaux for the Protection of Intellectual Property; the organization subsequently relocated to Geneva in 1960, was succeeded in 1967 with the establishment of the World Intellectual Property Organization by treaty as an agency of the United Nations. According to legal scholar Mark Lemley, it was only at this point that the term began to be used in the United States, it did not enter popular usage there until passage of the Bayh-Dole Act in 1980.
"The history of patents does not begin with inventions, but rather with royal grants by Queen Elizabeth I for monopoly privileges... 200 years after the end of Elizabeth's reign, however, a patent represents a legal right obtained by an inventor providing for exclusive control over the production and sale of his mechanical or scientific invention... the evolution of patents from royal prerogative to common-law doctrine." The term can be found used in an October 1845 Massachusetts Circuit Court ruling in the patent case Davoll et al. v. Brown. In which Justice Charles L. Woodbury wrote that "only in this way can we protect intellectual property, the labors of the mind and interests are as much a man's own...as the wheat he cultivates, or the flocks he rears." The statement that "discoveries are..property" goes back earlier. Section 1 of the French law of 1791 stated, "All new discoveries are the property of the author. In Europe, French author A. Nion mentioned propriété intellectuelle in his Droits civils des auteurs, artistes et inventeurs, published in 1846.
Until the purpose of intellectual property law was to give as little protection as possible in order to encourage innovation. Therefore, they were granted only when they were necessary to encourage invention, limited in time and scope; this is as a result of knowledge being traditionally viewed as a public good, in order to allow its extensive dissemination and improvement thereof. The concept's origins can be traced back further. Jewish law includes several considerations whose effects are similar to those of modern intellectual property laws, though the notion of intellectual creations as property does not seem to exist – notably the principle of Hasagat Ge'vul was used to justify limited-term publisher copyright in the 16th century. In 500 BCE, the government of the Greek state of Sybaris offered one year's patent "to all who should discover any new refinement in luxury". According to Jean-Frédéric Morin, "the global inte
X Window System
The X Window System is a windowing system for bitmap displays, common on Unix-like operating systems. X provides the basic framework for a GUI environment: drawing and moving windows on the display device and interacting with a mouse and keyboard. X does not mandate the user interface – this is handled by individual programs; as such, the visual styling of X-based environments varies greatly. X originated at the Massachusetts Institute of Technology in 1984; the X protocol has been version 11 since September 1987. The X. Org Foundation leads the X project, with the current reference implementation, X. Org Server, available as free and open source software under the MIT License and similar permissive licenses. X is an architecture-independent system for remote graphical user interfaces and input device capabilities; each person using a networked terminal has the ability to interact with the display with any type of user input device. In its standard distribution it is a complete, albeit simple and interface solution which delivers a standard toolkit and protocol stack for building graphical user interfaces on most Unix-like operating systems and OpenVMS, has been ported to many other contemporary general purpose operating systems.
X provides the basic framework, or primitives, for building such GUI environments: drawing and moving windows on the display and interacting with a mouse, keyboard or touchscreen. X does not mandate the user interface. Programs may use X's graphical abilities with no user interface; as such, the visual styling of X-based environments varies greatly. Unlike most earlier display protocols, X was designed to be used over network connections rather than on an integral or attached display device. X features network transparency, which means an X program running on a computer somewhere on a network can display its user interface on an X server running on some other computer on the network; the X server is the provider of graphics resources and keyboard/mouse events to X clients, meaning that the X server is running on the computer in front of a human user, while the X client applications run anywhere on the network and communicate with the user's computer to request the rendering of graphics content and receive events from input devices including keyboards and mice.
The fact that the term "server" is applied to the software in front of the user is surprising to users accustomed to their programs being clients to services on remote computers. Here, rather than a remote database being the resource for a local app, the user's graphic display and input devices become resources made available by the local X server to both local and remotely hosted X client programs who need to share the user's graphics and input devices to communicate with the user. X's network protocol is based on X command primitives; this approach allows both 2D and 3D operations by an X client application which might be running on a different computer to still be accelerated on the X server's display. For example, in classic OpenGL, display lists containing large numbers of objects could be constructed and stored in the X server by a remote X client program, each rendered by sending a single glCallList across the network. X provides no native support for audio. X uses a client–server model: an X server communicates with various client programs.
The server sends back user input. The server may function as: an application displaying to a window of another display system a system program controlling the video output of a PC a dedicated piece of hardwareThis client–server terminology – the user's terminal being the server and the applications being the clients – confuses new X users, because the terms appear reversed, but X takes the perspective of the application, rather than that of the end-user: X provides display and I/O services to applications, so it is a server. The communication protocol between server and client operates network-transparently: the client and server may run on the same machine or on different ones with different architectures and operating systems. A client and server can communicate securely over the Internet by tunneling the connection over an encrypted network session. An X client itself may emulate an X server by providing display services to other clients; this is known as "X nesting". Open-source clients such as Xnest and Xephyr support such X nesting.
To use an X client application on a remote machine, the user may do the following: on the local machine, open a terminal window use ssh with the X forwarding argument to connect to the remote machine request local display/input service The remote X client application will make a connection to the user's local X server, providing display and input to the user. Alternatively, the local machine may run a small program that connects to the remote machine and starts the client application. Practical examples of remote clients include: administering a remote machine graphically using a client application to join with large numbers of other terminal users in collaborative workgroups running a computationally intensive simulation on a remote machine and displaying the results on