IP Library Granted Patent US 8,817,725
Granted Patent B2
US 8,817,725 · App. 13/349,716 · Granted Aug 26, 2014

Scheduling transmission of traffic treated less preferentially despite timing requirements

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,817,725
App. No.
13/349,716
Granted
Aug 26, 2014
Kind
B2
Abstract

A source device has a wireless communication interface. Through the wireless communication interface, the source device establishes a communication session over a wireless medium with a sink device and determines a maximum capacity of a buffer at the sink device for receipt of audio samples to be transmitted in packets from the source device to the sink device in an asynchronous connectionless link over the wireless medium. Scheduling access to the wireless medium by the wireless communication interface for transmission of audio samples on the link takes into account the maximum capacity of the buffer.

Claims (64)

1. A method in a first device having a first communication interface compatible with a first communication protocol for communications over a wireless medium and a second communication interface compatible with a second communication protocol for communications over the wireless medium, the method comprising:

establishing a communication session over the wireless medium with an external device compatible with the first communication protocol;

determining a maximum capacity of a buffer at the external device for receipt of audio samples to be transmitted in packets from the first device to the external device in an asynchronous connectionless link over the wireless medium;

determining a playout rate at the external device of the audio samples from the buffer;

determining that a future event at the first device will preempt or supplant transmission of the audio samples from the first device to the external device;

determining a forecasted deficit in audio samples for playout at the buffer due to the future event; and

scheduling access by the first communication interface to the wireless medium in advance of the future event for transmission of audio samples in packets from the first device to the external device to reduce the forecasted deficit.

2. The method as recited in claim 1 , wherein the future event at the first device involves the second communication interface.

3. The method as recited in claim 1 , wherein the future event at the first device involves high priority traffic at the first communication interface.

4. The method as recited in claim 1 , wherein the second communication protocol comprises a wireless local area network protocol.

5. The method as recited in claim 1 , wherein the first communication protocol comprises an adaptive frequency hopping spread spectrum wireless personal area network protocol.

6. The method as recited in claim 5 , wherein determining the maximum capacity of the buffer comprises:

transmitting, via the first communication interface to the external device, a request for an indication of the maximum capacity of the buffer; and

in response to transmitting the request, receiving from the external device via the first communication interface the indication of the maximum capacity of the buffer.

7. The method as recited in claim 6 , wherein transmitting the request comprises transmitting an Audio Video Distribution Transport Protocol (AVDTP) Get_Capabilities command signal including a buffer_size field and receiving the indication comprises receiving a buffer_size_response message indicating the maximum capacity of the buffer.

8. The method as recited in claim 1 , wherein determining the maximum capacity of the buffer comprises:

transmitting, via the first communication interface to the external device, a request for an indication of the maximum capacity of the buffer; and

in response to transmitting the request, receiving from the external device via the first communication interface the indication of the maximum capacity of the buffer.

9. The method as recited in claim 1 , wherein determining the maximum capacity of the buffer comprises:

transmitting audio samples in packets from the first device to the external device in the asynchronous connectionless link over the wireless medium until the external device signals to the first device that the buffer is full;

calculating an average time to transmit a single audio sample from the first device to the external device;

calculating an average time to playback a single audio sample at the external device; and

calculating an estimated maximum capacity of the buffer from the average time to transmit and the average time to playback.

10. A first device comprising:

a first communication interface, the first communication interface compatible with a first communication protocol for communications over a wireless medium;

a second communication interface, the second communication interface compatible with a second communication protocol for communications over the wireless medium;

an audio coder coupled to the first communication interface; and

a scheduler coupled to the first communication interface,

wherein the first device is operable to establish via the first communication interface a communication session over the wireless medium with an external device compatible with the first communication protocol,

wherein the first device is operable to determine a maximum capacity of a buffer at the external device for receipt of audio samples to be transmitted in packets from the first device to the external device in an asynchronous connectionless link over the wireless medium,

wherein the scheduler is to take the maximum capacity of the buffer into account in scheduling access by the first communication interface to the wireless medium for transmission of the audio samples, and

wherein the first device is operable to determine the maximum capacity of the buffer by:

transmitting audio samples in packets from the first device to the external device in the asynchronous connectionless link over the wireless medium until the external device signals to the first device that the buffer is full;

calculating an average time to transmit a single audio sample from the first device to the external device;

calculating an average time to playback a single audio sample at the external device; and

calculating an estimated maximum capacity of the buffer from the average time to transmit and the average time to playback.

11. A first device comprising:

a first communication interface, the first communication interface compatible with a first communication protocol for communications over a wireless medium;

a second communication interface, the second communication interface compatible with a second communication protocol for communications over the wireless medium;

an audio coder coupled to the first communication interface; and

a scheduler coupled to the first communication interface,

wherein the first device is operable:

to establish via the first communication interface a communication session over the wireless medium with an external device compatible with the first communication protocol;

to determine a maximum capacity of a buffer at the external device for receipt of audio samples to be transmitted in packets from the first device to the external device in an asynchronous connectionless link over the wireless medium;

to determine a playout rate at the external device of the audio samples from the buffer;

to determine that a future event at the first device will preempt or supplant transmission of the audio samples from the first device to the external device;

to determine a forecasted deficit in audio samples for playout at the buffer due to the future event; and

to schedule access by the first communication interface to the wireless medium in advance of the future event for transmission of audio samples in packets from the first device to the external device to reduce the forecasted deficit.

12. The first device as recited in claim 11 , wherein the future event at the first device involves the second communication interface.

13. The first device as recited in claim 11 , wherein the future event at the first device involves high priority traffic at the first communication interface.

14. The first device as recited in claim 11 , wherein the second communication protocol comprises a wireless local area network protocol.

15. The first device as recited in claim 11 , wherein the first communication protocol comprises an adaptive frequency hopping spread spectrum wireless personal area network protocol.

16. The first device as recited in claim 15 , wherein the first device is operable to determine the maximum capacity of the buffer by:

transmitting, via the first communication interface to the external device, a request for an indication of the maximum capacity of the buffer; and

in response to transmitting the request, receiving from the external device via the first communication interface the indication of the maximum capacity of the buffer.

17. The first device as recited in claim 16 , wherein the first communication protocol comprises an adaptive frequency hopping spread spectrum wireless personal area network protocol and wherein transmitting the request comprises transmitting an Audio Video Distribution Transport Protocol (AVDTP) Get_Capabilities command signal including a buffer_size field and receiving the indication comprises receiving a buffer_size_response message indicating the maximum capacity of the buffer.

18. The first device as recited in claim 11 , wherein the first device is operable to determine the maximum capacity of the buffer by:

transmitting, via the first communication interface to the external device, a request for an indication of the maximum capacity of the buffer; and

in response to transmitting the request, receiving from the external device via the first communication interface the indication of the maximum capacity of the buffer.

19. The first device as recited in claim 11 , wherein the first device is operable to determine the maximum capacity of the buffer by:

transmitting audio samples in packets from the first device to the external device in the asynchronous connectionless link over the wireless medium until the external device signals to the first device that the buffer is full;

calculating an average time to transmit a single audio sample from the first device to the external device;

calculating an average time to playback a single audio sample at the external device; and

calculating an estimated maximum capacity of the buffer from the average time to transmit and the average time to playback.

Assignments (4)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064270/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Jul 9, 2014
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 033283/0679 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2012
From: KEZYS, VYTAUTAS ROBERTAS; SMADI, MOHAMMED NAWAF; MONTEMURRO, MICHAEL PETER
To: RESEARCH IN MOTION LIMITED
Reel/Frame 028276/0942 →