# US 11,122,306 B2 · Synchronous playback system and synchronous playback method

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

- Number: US 11,122,306 B2
- Document ID: US11122306B2
- Status: Granted
- Kind: B2
- Application number: 16/247,591
- Filed: 2019-01-15
- Published: 2020-05-07
- Granted: 2021-09-14
- Earliest claimed: 2018-11-02
- Assignees: Wistron Corporation
- Applicants: Wistron Corporation
- Inventors: Yen-Yin Chu
- Web page: https://patentgrep.com/patent/US11122306B2

## CPC

- H04J 3/0664: {unidirectional timestamps}
- H04N 21/23611: {Insertion of stuffing data into a multiplex stream, e.g. to obtain a constant bitrate (synchronisation arrangements in time-division multiplex systems using bit stuffing for systems with different or fluctuating information rates H04J3/073)}
- H04J 3/06: Synchronising arrangements {(for television systems H04N5/04; bit-synchronisation H04L7/00)}
- H04J 3/0632: {Synchronisation of packets and cells, e.g. transmission of voice via a packet network, circuit emulation service [CES] (queuing arrangements in packet switching elements H04L49/90; synchronising systems for the synchronous transmission of a pulse code modulated video signal with one or more other pulse code modulated signals H04N7/56)}
- H04N 21/242: Synchronisation processes, e.g. processing of PCR [Programme Clock References] {(arrangements for synchronising broadcast or distribution via plural systems in broadcast distribution systems H04H20/18)}
- H04N 21/4305: {Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets (arrangements for synchronising receiver with transmitter by comparing receiver clock with transmitter clock H04L7/0012; arrangements for synchronising receiver with transmitter wherein the receiver takes measures against momentary loss of synchronisation H04L7/0083)}
- H04N 21/43076: {of the same content streams on multiple devices, e.g. when family members are watching the same movie on different devices}
- H04N 21/6543: for forcing some client operations, e.g. recording {(remote booting in general G06F9/4416)}
- H04J: MULTIPLEX COMMUNICATION (transmission in general H04B; peculiar to transmission of digital information H04L5/00; systems for the simultaneous or sequential transmission of more than one television signal H04N7/08; in exchanges H04Q11/00; stereophonic systems H04S)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A synchronous playback method adapted for enabling a plurality of playback devices to synchronously play media content stored by the playback devices. The method includes performing a time-calibrating operation on a time server by each of the playback devices to obtain a target time error value of each of the playback devices; issuing a plurality of playback commands to the playback devices through a control server; calculating adjusted target time of each of the playback devices according to target time of the received playback command and the target time error value of each of the playback devices through each of the playback devices; and playing a plurality of pieces of target media content corresponding to the playback commands according to the adjusted target time of the respective playback devices through the playback devices.

## Claims

### Claim 1

A synchronous playback system, comprising:
M playback devices, wherein each of the M playback devices stores one piece or a plurality of media content, wherein M is a positive integer;
a control server, connected to the M playback devices through network connection; and
a time server, configured to obtain standard time information through the Network Time Protocol, providing the standard time information to the M playback devices through the Internet,
wherein each of the M playback devices performs a time-calibrating operation on the time server to obtain a target time error value of each of the M playback devices,
wherein the control server issues M playback commands to the M playback devices, wherein the M playback commands are configured to instruct the M playback devices to individually play M pieces of target media content stored in the M playback devices at a same target time,
wherein the M playback devices calculate adjusted target time of each of the M playback devices according to the target time and the target time error value of each of the M playback devices,
the M playback devices play the M pieces of target media content according to the respective adjusted target time of the M playback devices,
wherein each of the M playback devices performs the following steps when executing the time-calibrating operation:
transmitting N time-calibrating packages to the time server to obtain N first time error values corresponding to the N time-calibrating packages;
sorting the N first time error values according to the values of the N first time error values to obtain a first time error value sequence; and
selecting P second time error values in the sorted N first time error values according to the first time error value sequence to calculate an average value of the P second time error values to be treated as the target time error value, wherein P is less than N, and N and P are both positive integers.

### Claim 2 (depends on 1)

The synchronous playback system as claimed in claim 1, wherein a total number of the first time error values sorted prior to the P second time error values in the first time error value sequence is a, and a total number of the first time en-or values sorted after the P second time en-or values in the first time error value sequence is b,
wherein (a+b)=(N−P), and a and b are positive integers.

### Claim 3 (depends on 1)

The synchronous playback system as claimed in claim 1, wherein the first time error value corresponding to one of the N time-calibrating packages transmitted by one playback device is calculated according to the following formula:
θ
=
(
t
1
-
t
0
)
+
(
t
2
-
t
3
)
2
wherein θ is the calculated first time error value, t0 is time of transmitting the time-calibrating package from the playback device, t1 is time of receiving the time-calibrating package by the time server, t2 is time of transmitting a response corresponding to the time-calibrating package by the time server, and t3 is time of receiving the response by the playback device, wherein the response is configured to indicate that the time-calibrating package is received by the time server, and the response comprises the standard time information, wherein the playback device adjusts device time of the playback device to standard time according to the standard time information.

### Claim 4 (depends on 1)

The synchronous playback system as claimed in claim 1, wherein
the adjusted target time of one playback device of the M playback devices is a difference value of the target time minus the target time error value of the playback device,
wherein the playback device begins to play target media content of the playback device in response to that the device time of the playback device of the M playback devices is equal to the adjusted target time.

### Claim 5

A synchronous playback method, adapted to enable M playback devices to synchronously play media content stored by each of the playback devices, wherein M is a positive integer, and the synchronous playback method comprises:
obtaining standard time information through a Network Time Protocol and providing the standard time information to the M playback devices through an Internet through a time server;
performing a time-calibrating operation on the time server through each of the M playback devices to obtain a target time error value of each of the M playback devices;
issuing M playback commands to the M playback devices through a control server, wherein the M playback commands are configured to instruct the M playback devices to individually play M pieces of target media content individually stored in the M playback devices at a same target time;
calculating adjusted target time of each of the M playback devices according to the target time and the target time error value of each of the M playback devices through the M playback devices; and
playing the M pieces of target media content according to the respective adjusted target time of the M playback devices through the M playback devices,
wherein the time-calibrating operation comprises the following steps:
transmitting N time-calibrating packages to the time server to obtain N first time error values corresponding to the N time-calibrating packages;
sorting the N first time error values according to the values of the N first time error values to obtain a first time error value sequence; and
selecting P second time error values in the sorted N first time error values according to the first time error value sequence to calculate an average value of the P second time error values to be treated as the target time error value, wherein P is less than N, and N and P are both positive integers.

### Claim 6 (depends on 5)

The synchronous playback method as claimed in claim 5, wherein a total number of the first time error values sorted prior to the P second time error values in the first time error value sequence is a, and a total number of the first time error values sorted after the P second time error values in the first time en-or value sequence is b,
wherein (a+b)=(N−P), and a and b are positive integers.

### Claim 7 (depends on 5)

The synchronous playback method as claimed in claim 5, wherein the first time error value corresponding to one of the N time-calibrating packages transmitted by one playback device is calculated according to the following formula:
θ
=
(
t
1
-
t
0
)
+
(
t
2
-
t
3
)
2
wherein θ is the calculated first time error value, t0 is time of transmitting the time-calibrating package from the playback device, t1 is time of receiving the time-calibrating package by the time server, t2 is time of transmitting a response corresponding to the time-calibrating package by the time server, and t3 is time of receiving the response by the playback device, wherein the response is configured to indicate that the time-calibrating package is received by the time server, and the response comprises the standard time information, wherein the playback device adjusts device time of the playback device to standard time according to the standard time information.

### Claim 8 (depends on 5)

The synchronous playback method as claimed in claim 5, wherein the step of calculating the adjusted target time of each of the M playback devices according to the target time and the target time error value of each of the M playback devices through the M playback devices comprises:
obtaining a difference value by subtracting the target time error value of the playback device from the target time to be treated as the adjusted target time of one playback device of the M playback devices,
wherein the step of playing the M pieces of target media content according to the respective adjusted target time of the M playback devices through the M playback devices comprises:
beginning to play target media content of the playback device by the playback device in response to that the device time of the playback device of the M playback devices is equal to the adjusted target time.
