# US 10,455,050 B2 · Media player distribution and collaborative editing

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,455,050 B2
- Document ID: US10455050B2
- Status: Granted
- Kind: B2
- Application number: 15/495,828
- Filed: 2017-04-24
- Published: 2017-11-09
- Granted: 2019-10-22
- Earliest claimed: 2015-02-05
- Assignees: Qwire Inc.
- Applicants: Qwire Inc.
- Inventors: Leigh B. Roberts, Jr.; Jonathan Louis Ehrlich; Scott Freiman
- Web page: https://patentgrep.com/patent/US10455050B2

## CPC

- H04L 67/306: User profiles
- H04L 65/612: for unicast
- G06F 3/165: {Management of the audio stream, e.g. setting of volume, audio stream path}
- H04L 67/1095: Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
- H04N 21/00: Selective content distribution, e.g. interactive television or video on demand [VOD] (real-time bi-directional transmission of motion video data H04N7/14 {; broadcast or conference over packet switching networks H04L12/18})
- H04N 21/472: End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content {(end-user interfaces for retrieving video data from a database G06F16/739; network services for supporting unicast streaming H04L65/612)}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

In one approach, a server computer receives a playlist from a first client computer, wherein the playlist identifies a plurality of media assets and includes synchronization information that specifies how to present the plurality of media assets as a synchronized media presentation. The server computer receives a request from the first client computer to share the playlist with a second client computer. The server computer causes the plurality of media assets to be deposited in a client storage accessible to the second client computer. The server computer sends the playlist to the second client computer. The second client computer presents the synchronized media presentation based on the plurality of media assets deposited in the client storage and the synchronization information of the playlist.

## Claims

### Claim 1

A method comprising:
using a server computer, over a computer network, receiving digital message comprising a playlist from a first client computer, wherein the playlist identifies a plurality of media assets and includes synchronization information that specifies how to present the plurality of media assets as a synchronized media presentation;
the plurality of media assets comprising a video asset and an audio asset, the synchronization information specifying when the audio asset should be played concurrently with the video asset;
wherein the synchronization information includes at least an identifier that controls whether the volume controls can be modified and an identifier that controls whether playback of video assets can be adjusted separately from playback of audio assets;
using the server computer, receiving a request from the first client computer to share the playlist with a second client computer;
using the server computer, causing the plurality of media assets to be deposited in a digital client storage that is accessible to the second client computer via a background process of the second client computer;
using the server computer, sending the playlist to the second client computer via a non-background application process;
using the second client computer, determining whether the identifier is active, locking the playback of video assets in synchronization with the playback of audio assets upon determining the identifier is active, the locking causing automatically manipulating the playback of video assets and the playback of audio assets together;
using the second client computer, presenting the synchronized media presentation based on the plurality of media assets deposited in the client storage and the synchronization information of the playlist.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
the server computer receiving an updated playlist from the first client computer, wherein the updated playlist is an updated version of the playlist;
using the server computer, sending the updated playlist to the second client computer;
using the second client computer, presenting an updated synchronized media presentation based on the synchronization information of the updated playlist and the plurality of media assets.

### Claim 3 (depends on 1)

The method of claim 1, wherein the synchronization information further includes one or more of: volume controls for one or more audio assets in the plurality of media assets, a sync point identifying where within playback of a video asset an audio asset is to begin playback, an identifier indicating a position of an audio asset to begin playback.

### Claim 4 (depends on 1)

The method of claim 1, further comprising, using the server computer, depositing the plurality of media assets in the client storage in a shared folder established by the second client computer for receiving media assets.

### Claim 5 (depends on 1)

The method of claim 1, further comprising, using the second client computer, presenting the synchronized media presentation in a media player that includes controls for adjusting playback of audio assets within the synchronized media presentation respective to a video asset within the synchronized media presentation.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
presenting the synchronized media presentation in an interface that includes widgets for collecting one or more comments regarding the playlist;
using the second client computer, sending the one or more comments to the server computer;
using the server computer, in response to receiving the one or more comments, causing an update to an interface of the first client computer to display the one or more comments.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
the server computer generating a link to the playlist and sending the link to an account associated with the second client computer;
the server computer receiving a request for the playlist from the second client computer, wherein the request is generated by the second client computer in response to receiving user input selecting the link;
the server computer sending data to the second client computer, which when interpreted by a third party application, causes the third party application to display an interface that presents the synchronized media presentation.

### Claim 8 (depends on 7)

The method of claim 7, wherein the data represents a web page and the third party application represents a web browser.

### Claim 9 (depends on 1)

The method of claim 1, further comprising: wherein the second client computer presents the synchronized media presentation by at least causing a portion of a first media asset of the plurality of media assets and a portion of a second media asset of the plurality of media assets to be presented simultaneously based on the synchronization information.

### Claim 10 (depends on 1)

The method of claim 1, further comprising, using the server computer, sending the playlist to the second client computer in response to receiving a message from the non-background application process.

### Claim 11 (depends on 1)

The method of claim 1, further comprising, using the second client computer, adjusting the playback of video assets and the playback of audio assets separately upon determining the identifier is not active.

### Claim 12

A non-transitory computer-readable storage medium storing one or more instructions which, when executed by one or more processors, cause the one or more processors to perform steps comprising:
a server computer receiving a playlist from a first client computer, wherein the playlist identifies a plurality of media assets and includes synchronization information that specifies how to present the plurality of media assets as a synchronized media presentation;
the plurality of media assets comprising a video asset and an audio asset, the synchronization information specifying when the audio asset should be played concurrently with the video asset;
wherein the synchronization information includes at least an identifier that controls whether the volume controls can be modified and an identifier that controls whether playback of video assets can be adjusted separately from playback of audio assets;
the server computer receiving a request from the first client computer to share the playlist with a second client computer;
the server computer causing the plurality of media assets to be deposited in a client storage accessible to the second client computer via a background process of the second client computer;
using the server computer, sending the playlist to the second client computer via a non-background application process;
using the second client computer, determining whether the identifier is active, locking the playback of video assets in synchronization with the playback of audio assets upon determining the identifier is active, the locking causing automatically manipulating the playback of video assets and the playback of audio assets together;
using the second client computer, presenting the synchronized media presentation based on the plurality of media assets deposited in the client storage and the synchronization information of the playlist.

### Claim 13 (depends on 12)

The non-transitory computer-readable storage medium of claim 12, wherein the steps further comprise:
the server computer receiving an updated playlist from the first client computer, wherein the updated playlist is an updated version of the playlist;
using the server computer, sending the updated playlist to the second client computer;
using the second client computer, presenting an updated synchronized media presentation based on the synchronization information of the updated playlist and the plurality of media assets.

### Claim 14 (depends on 12)

The non-transitory computer-readable storage medium of claim 12, wherein the synchronization information further includes one or more of: volume controls for one or more audio assets in the plurality of media assets, a sync point identifying where within playback of a video asset an audio asset is to begin playback, an identifier indicating a position of an audio asset to begin playback.

### Claim 15 (depends on 12)

The non-transitory computer-readable storage medium of claim 12, wherein the steps further comprise the server computer depositing the plurality of media assets in the client storage in a shared folder established by the second client computer for receiving media assets.

### Claim 16 (depends on 12)

The non-transitory computer-readable storage medium of claim 12, wherein the steps further comprise the second client computer presenting the synchronized media presentation in a media player that includes controls for adjusting playback of audio assets within the synchronized media presentation respective to a video asset within the synchronized media presentation.

### Claim 17 (depends on 12)

The non-transitory computer-readable storage medium of claim 12, wherein the steps further comprise:
presenting the synchronized media presentation in an interface that includes widgets for collecting one or more comments regarding the playlist;
using the second client computer, sending the one or more comments to the server computer;
using the server computer, in response to receiving the one or more comments, causing an update to an interface of the first client computer to display the one or more comments.

### Claim 18 (depends on 12)

The non-transitory computer-readable storage medium of claim 12, wherein the steps further comprise:
the server computer generating a link to the playlist and sending the link to an account associated with the second client computer;
the server computer receiving a request for the playlist from the second client computer, wherein the request is generated by the second client computer in response to receiving user input selecting the link;
the server computer sending data to the second client computer, which when interpreted by a third party application, causes the third party application to display an interface that presents the synchronized media presentation.

### Claim 19 (depends on 18)

The non-transitory computer-readable storage medium of claim 18, wherein the data represents a web page and the third party application represents a web browser.

### Claim 20 (depends on 12)

The non-transitory computer-readable storage medium of claim 12, wherein the steps further comprise: wherein the second client computer presents the synchronized media presentation by at least causing a portion of a first media asset of the plurality of media assets and a portion of a second media asset of the plurality of media assets to be presented simultaneously based on the synchronization information.

### Claim 21 (depends on 12)

The non-transitory computer-readable storage medium of claim 12, wherein the steps further comprise the server computer sending the playlist to the second client computer in response to receiving a message from the non-background application process.

### Claim 22 (depends on 12)

The non-transitory computer-readable storage medium of claim 12, wherein the steps further comprise using the second client computer, adjusting the playback of video assets and the playback of audio assets separately upon determining the identifier is not active.
