摘要:
Systems and methods are described that support variable play speed control for media streams. The variable play speed control for media streams discussed herein provides an end-to-end solution for media stream delivery, playback, and user interface that enables end users and software developers to dynamically control the playback speed of media streams without losing the ability to comprehend the media content.
摘要:
Media processing methods, systems and application program interfaces (APIs) are described. In but one embodiment, a media engine component, also referred to as a media engine, provides a simple and unified way of rendering media from an origin to a destination of choice without requiring intimate knowledge about the underlying components, their connectivity and management. Clients of the media engine need not worry about how to render the particular media, but rather can simply focus on what media to render and where to render the media. In at least one embodiment, a media session is provided and is encapsulated by the media engine and provides a mechanism by which additional components are made transparent to the application and, in at least some embodiment, the media engine. In some embodiments, the media engine and media session provide a simple API for building, configuring, and manipulating a pipeline of components (e.g. media sources, transforms, and sinks) for media flow control between an origin and one or more destinations.
摘要:
Media processing methods, systems and application program interfaces (APIs) are described. In but one embodiment, a media engine component, also referred to as a media engine, provides a simple and unified way of rendering media from an origin to a destination of choice without requiring intimate knowledge about the underlying components, their connectivity and management. Clients of the media engine need not worry about how to render the particular media, but rather can simply focus on what media to render and where to render the media. In at least one embodiment, a media session is provided and is used by the media engine and provides a mechanism by which additional components are made transparent to the application and, in at least some embodiment, the media engine. In some embodiments, the media engine and media session provide a simple API for building, configuring, and manipulating a pipeline of components (e.g. media sources, transforms, and sinks) for media flow control between an origin and one or more destinations.
摘要:
A timeline source is described. In an implementation, a method includes examining a plurality of nodes within a media timeline, where at least two of the nodes reference respective media. The media timeline is for exposure over an API. The media timeline is divided into one or more presentations. Each presentation describes rendering of the media for a particular interval of time.
摘要:
A request is received to play an audio file. A determination is made regarding whether volume normalization parameters associated with the audio file are stored in a media library. If the volume normalization parameters associated with the audio file are stored in the media library, the volume normalization parameters are retrieved from the media library. If the volume normalization parameters associated with the audio file are not stored in the media library, retrieving the volume normalization parameters from the audio file. The volume normalization parameters are applied while playing the audio file. The volume normalization process can be applied across multiple audio files during playback.
摘要:
A method of crossfading a plurality of audio files comprising opening a first process, opening a second process hosting an audio renderer in which a first audio file of the plurality of audio files is cross faded with a second audio file of the plurality of audio files.
摘要:
The present automatic update mechanism provides a method for determining whether computer-readable components loaded within a memory device are at a level of protection specified for protected content that a media application is attempting to process. If a current level of protection provides lower protection that the level specified, a file is updated to achieve at least the level of protection specified by the protected content. Updating the file to achieve the level of protection is performed in a manner that minimizes rebooting of a computing device.
摘要:
A “Concatenative Synthesizer” applies concatenative synthesis to create a musical output from a database of musical notes and an input musical score (such as a MIDI score or other computer readable musical score format). In various embodiments, the musical output is either a music score, or an analog or digital audio file. This musical output is constructed by evaluating the database of musical notes to identify sets of candidate notes for each note of the input musical score. An “optimal path” through candidate notes is identified by minimizing an overall cost function through the candidate notes relative to the input musical score. The musical output is then constructed by concatenating the selected candidate notes. In further embodiments, the database of musical notes is generated from any desired musical genre, performer, performance, or instrument. Furthermore, notes in the database may be modified to better fit notes of the input musical score.
摘要:
Relating higher-level descriptive musical metadata to lower-level musical elements to enable creation of a song map, song model, backing track, or the like. The musical elements are queried based on input metadata to create a set of musical elements of varying types such as notes, chords, song structures, and the like. The set of musical elements is provided to a user for selection of particular musical elements The selected musical elements represent the song model.
摘要:
A method of establishing a protected environment within a computing device including validating a kernel component loaded into a kernel of the computing device, establishing a security state for the kernel based on the validation, creating a secure process and loading a software component into the secure process, periodically checking the security state of the kernel, and notifying the secure process when the security state of the kernel has changed.