IP Library Granted Patent US 11,404,072
Granted Patent B2
US 11,404,072 · App. 16/671,829 · Granted Aug 2, 2022

Encoded output data stream transmission

Inventors: Joe Mammone (Kanata, CA); Michael Mead Truman (Washington, DC)
Assignee: BlackBerry Limited
G10L19/26H04H60/11G10L19/005G10L19/008G10L19/012G10L19/0208
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 11,404,072
App. No.
16/671,829
Granted
Aug 2, 2022
Kind
B2
Abstract

In some examples, an audio sending device receives a stream of application audio data, encodes the stream of application audio data, and in response to detecting an end of the stream of application audio data, provides pre-encoded filler audio data from a buffer in the audio sending device as an encoded stream of filler audio data. The audio sending device transmits the encoded stream of application audio data and the encoded stream of filler audio data in an encoded output data stream over a transport to an audio receiving device.

Claims (79)

1. A method for transmitting encoded audio data from an audio sending device to an audio receiving device, the method comprising:

receiving, by a transmitter, a stream of application audio data from any of a plurality of audio source applications on the audio sending device;

encoding, by the transmitter, the stream of application audio data;

in response to an end of the stream of application audio data, providing, by the transmitter, pre-encoded filler audio data as an encoded stream of filler audio data;

receiving an audio enable indication;

starting, responsive to receiving the audio enable indication, to produce an encoded output data stream;

transmitting, by the transmitter, the encoded stream of application audio data and the encoded stream of filler audio data in the encoded output data stream over a transport to the audio receiving device for decoding;

receiving an audio disable indication, and in response to the audio disable indication starting a timer; and

stopping, responsive to the timer exceeding a timeout threshold, production of the encoded output data stream.

2. The method of claim 1 , wherein the providing of the pre-encoded filler audio data as the encoded stream of filler audio data stops responsive to receiving a further stream of application audio data, the method further comprising:

encoding, by the transmitter, the further stream of application audio data; and

transmitting, by the transmitter, the encoded further stream of application audio data in the encoded output data stream over the transport to the audio receiving device for decoding.

3. The method of claim 1 , wherein the encoded stream of application audio data and the encoded stream of filler audio data comprise constant audio data characteristics in the encoded output data stream.

4. The method of claim 3 , wherein the constant audio data characteristics comprise any one or more of a constant audio sample rate, a constant number of audio channels, and a constant audio resolution in the encoded output data stream.

5. The method of claim 1 , wherein the pre-encoded filler audio data represents digital silence or noise.

6. The method of claim 1 , wherein the audio enable indication and the audio disable indication are responsive to any of a component power state, a mute indication state, availability of a stream of application audio data, and activity of the transport.

7. The method of claim 1 , wherein the encoded output data stream comprises one of uncompressed audio data and compressed audio data.

8. A method for transmitting encoded audio data from an audio sending device to an audio receiving device, the method comprising:

receiving, by a transmitter, a stream of application audio data from any of a plurality of audio source applications on the audio sending device;

encoding, by the transmitter, the stream of application audio data;

in response to an end of the stream of application audio data, providing, by the transmitter, pre-encoded filler audio data as an encoded stream of filler audio data; and

transmitting, by the transmitter, the encoded stream of application audio data and the encoded stream of filler audio data in an encoded output data stream over a transport to the audio receiving device for decoding,

wherein the encoded stream of application audio data and the encoded stream of filler audio data comprise constant audio data characteristics in the encoded output data stream, and wherein the constant audio data characteristics comprise any one or more of a constant audio sample rate, a constant number of audio channels, and a constant audio resolution in the encoded output data stream.

9. The method of claim 8 , further comprising:

receiving an audio enable indication;

starting, responsive to receiving the audio enable indication, to produce the encoded output data stream;

receiving an audio disable indication, and in response to the audio disable indication starting a timer; and

stopping, responsive to the timer exceeding a timeout threshold, production of the encoded output data stream.

10. An audio sending device comprising:

a processor;

a memory to store a plurality of audio source applications executable on the processor;

a transmitter configured to:

receive a stream of application audio data from any of the plurality of audio source applications;

encode the stream of application audio data;

in response to the stream of application audio data ending, copy pre-encoded filler audio data to provide an encoded stream of filler audio data; and

transmit the encoded stream of application audio data and the encoded stream of filler audio data in an encoded output data stream over a transport to an audio receiving device; and

machine-readable instructions executable on the processor to:

receive an audio enable indication;

cause starting, responsive to receiving the audio enable indication, of production of the encoded output data stream;

receive an audio disable indication, and in response to the audio disable indication start a timer; and

cause stopping, responsive to the timer exceeding a timeout threshold, of the production of the encoded output data stream.

11. The audio sending device of claim 10 , wherein the encoded stream of application audio data and the encoded stream of filler audio data comprise a constant audio data characteristic in the encoded output data stream.

12. The audio sending device of claim 11 , wherein the constant audio data characteristic comprises any one or more of a constant audio sample rate, a constant number of audio channels, and a constant audio resolution in the encoded output data stream.

13. The audio sending device of claim 10 , wherein the pre-encoded filler audio data represents digital silence or noise.

14. An audio sending device comprising:

a processor;

a memory to store a plurality of audio source applications executable on the processor; and

a transmitter configured to:

receive a stream of application audio data from any of the plurality of audio source applications;

encode the stream of application audio data;

in response to the stream of application audio data ending, copy pre-encoded filler audio data to provide an encoded stream of filler audio data; and

transmit the encoded stream of application audio data and the encoded stream of filler audio data in an encoded output data stream over a transport to an audio receiving device,

wherein the encoded stream of application audio data and the encoded stream of filler audio data comprise a constant audio data characteristic in the encoded output data stream, and wherein the constant audio data characteristic comprises any one or more of a constant audio sample rate, a constant number of audio channels, and a constant audio resolution in the encoded output data stream.

15. The audio sending device of claim 14 , further comprising machine-readable instructions executable on the processor to:

receive an audio enable indication;

cause starting, responsive to receiving the audio enable indication, of production of the encoded output data stream;

receive an audio disable indication, and in response to the audio disable indication start a timer; and

cause stopping, responsive to the timer exceeding a timeout threshold, of the production of the encoded output data stream.

16. A non-transitory storage medium storing instructions that upon execution cause an audio sending device to:

receive a stream of application audio data from any of a plurality of audio source applications;

encode the stream of application audio data;

in response to an end of the stream of application audio data, provide pre-encoded filler audio data from a buffer in the audio sending device as an encoded stream of filler audio data;

receive an audio enable indication;

cause starting, responsive to receiving the audio enable indication, of production of an encoded output data stream;

cause transmission of the encoded stream of application audio data and the encoded stream of filler audio data in the encoded output data stream over a transport to an audio receiving device;

receive an audio disable indication, and in response to the audio disable indication start a timer; and

cause stopping, responsive to the timer exceeding a timeout threshold, of the production of the encoded output data stream.

17. The non-transitory storage medium of claim 16 , wherein the encoded stream of application audio data and the encoded stream of filler audio data comprise a constant audio data characteristic in the encoded output data stream.

18. A non-transitory storage medium storing instructions that upon execution cause an audio sending device to:

receive a stream of application audio data from any of a plurality of audio source applications;

encode the stream of application audio data;

in response to an end of the stream of application audio data, provide pre-encoded filler audio data from a buffer in the audio sending device as an encoded stream of filler audio data; and

cause transmission of the encoded stream of application audio data and the encoded stream of filler audio data in an encoded output data stream over a transport to an audio receiving device,

wherein the encoded stream of application audio data and the encoded stream of filler audio data comprise a constant audio data characteristic in the encoded output data stream, and wherein the constant audio data characteristic comprises any one or more of a constant audio sample rate, a constant number of audio channels, and a constant audio resolution in the encoded output data stream.

19. The non-transitory storage medium of claim 18 , wherein the instructions upon execution cause the audio sending device to:

receive an audio enable indication;

cause starting, responsive to receiving the audio enable indication, of production of the encoded output data stream;

receive an audio disable indication, and in response to the audio disable indication start a timer; and

cause stopping, responsive to the timer exceeding a timeout threshold, of the production of the encoded output data stream.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 12, 2020
From: 8758271 CANADA INC.
To: 2236008 ONTARIO INC.
Reel/Frame 052921/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2020
From: 2236008 ONTARIO INC.
To: BLACKBERRY LIMITED
Reel/Frame 053313/0315 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2019
From: TRUMAN, MICHAEL MEAD
To: QNX SOFTWARE SYSTEMS, INC.
Reel/Frame 051038/0974 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2019
From: MAMMONE, JOE
To: QNX SOFTWARE SYSTEMS LIMITED
Reel/Frame 051039/0022 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2019
From: QNX SOFTWARE SYSTEMS, INC.
To: QNX SOFTWARE SYSTEMS LIMITED
Reel/Frame 051039/0121 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2019
From: QNX SOFTWARE SYSTEMS LIMITED
To: 8758271 CANADA INC.
Reel/Frame 051046/0796 →