Increased speed of processing of data received over a communications link
First Claim
1. A method for providing support for at least one media device driver, the method comprising:
- obtaining a channel order and a number of channels to process; and
based at least in part on the obtained channel order and the number of channels to process, determining;
a first element indicating the channel order, the channel order describing an order of packed data channels within frames of data;
a second element indicating at least one parameter, the at least one parameter determining a number of data samples to skip, corresponding to others of the data channels, between sequential data samples of the same data channel; and
a third element indicating one or more start addresses for the data channels.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for processing data samples utilizes a channel map populated by device descriptor, or by an application program interface. Packet processing code loops through all of the samples contained in a packet while incrementing through a channel map and steering table without having to look up a table to determine in what audio buffer the sample is to be stored or read. Additionally, the present invention utilizes a stride map, so the audio subsystem knows how many samples to skip in order to reach the next sample frame. The present invention can be used for handling received packets as well as forming packets to send over a bus.
-
Citations
24 Claims
-
1. A method for providing support for at least one media device driver, the method comprising:
-
obtaining a channel order and a number of channels to process; and based at least in part on the obtained channel order and the number of channels to process, determining; a first element indicating the channel order, the channel order describing an order of packed data channels within frames of data; a second element indicating at least one parameter, the at least one parameter determining a number of data samples to skip, corresponding to others of the data channels, between sequential data samples of the same data channel; and a third element indicating one or more start addresses for the data channels. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. An apparatus for processing frames of data comprising a plurality of data channels, each data channel comprising a plurality of sequential data samples, the data channels disposed within the frames of data, the apparatus comprising:
-
a first interface configured to receive packetized data comprising at least frames of data; a sample buffer configured for of storage of one or more of the frames of data; and a computer readable apparatus comprising media non-transitory storage comprising a plurality of instructions, the plurality of instructions which are configured to, when executed, cause the apparatus to; receive information enabling unpacking of the frames of data; read one or more of the frames of data in the sample buffer; unpack the read one or more frames of data into a first set of data channels based at least in part on the information; and publish a second set of data channels to at least one audio device driver. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method for processing data samples for at least one media device driver, the method comprising:
-
obtaining information enabling unpacking of frames of data stored in a buffer; reading one or more of the frames of data in the buffer; unpacking the read one or more frames into a first set of data channels based at least in part on the obtained information; packing a second set of data channels from the first set of data channels based at least in part on the obtained information; and publishing the second set of data channels to at least one media device driver; wherein the at least one media device driver processes only the published second set of data channels. - View Dependent Claims (20, 21, 22, 23, 24)
-
Specification