Real-time and non-real-time audio streaming
By detecting the bit rate of audio data in a computing device and distinguishing between real-time and non-real-time audio streams, and by adopting appropriate processing strategies, the accuracy and cost issues of speech-to-text conversion in existing technologies are solved, achieving more efficient audio stream processing.
Patent Information
- Application Number
- CN202180063104.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-09-22
- Filing Date
- 2021-07-22
- Publication Date
- 2026-02-03
- Estimated Expiration
- 2041-07-22
AI Technical Summary
Existing technologies struggle to effectively distinguish between real-time and non-real-time audio streams, leading to issues with the accuracy and cost of speech-to-text conversion.
The audio program in the computing device automatically detects the bit rate of the audio data, calculates the R value using the expected bit rate and the input bit rate, compares the R value with a threshold, distinguishes between real-time and non-real-time audio streams, and adopts different processing strategies as needed to improve conversion accuracy and reduce costs.
It achieves efficient differentiation between real-time and non-real-time audio streams, improves the accuracy of speech-to-text conversion, and reduces the overall cost.
Smart Images

Figure CN116324975B_ABST
Abstract
Description
Background Technology
[0001] This invention generally relates to the field of audio streaming, and more specifically to determining real-time and non-real-time audio streaming for improved audio-to-text conversion.
[0002] Speech-to-text (STT) converts spoken language into text. Speech recognition has developed methods and technologies that enable computers to recognize and convert spoken language into text. Speech recognition can also be called Automatic Speech Recognition (ASR), Computer Speech Recognition, or Speech-to-Text (STT). Some speech recognition systems require “training,” in which a single speaker reads text or isolated words into the system. The system analyzes the person’s specific voice and uses it to fine-tune the recognition of that person’s speech, resulting in increased accuracy. Some systems do not use training and are called “speaker-independent” systems. Summary of the Invention
[0003] Embodiments of the present invention include a computer-implemented method, computer program product, and system for determining real-time and non-real-time audio stream transmissions. In one embodiment, one or more audio data are received. An expected bit rate for the one or more audio data is determined. An input bit rate for the one or more audio data is determined. An R value is determined using the expected bit rate and the input bit rate. The R value is compared to an R threshold. Attached Figure Description
[0004] Figure 1 This is a functional block diagram of a network computing environment (typically designated as 100) suitable for the operation of an audio program 112 according to at least one embodiment of the present invention.
[0005] Figure 2 This is a flowchart depicting the operational steps of an audio program 112 for determining real-time and non-real-time audio stream transmission according to at least one embodiment of the present invention.
[0006] Figure 3 It is a block diagram depicting components of a computer (generally designated 300) suitable for executing an audio program 112 according to at least one embodiment of the present invention. Detailed Implementation
[0007] This invention provides a method, computer program product, and computer system to automatically distinguish between real-time and non-real-time processing, thus allowing the application of the most suitable speech-to-text technology in each case, resulting in more accurate transcription and lower overall cost. Detection is based on a comparison between the bit rate of the received incoming audio and the encoded bit rate of that audio.
[0008] Embodiments of the present invention recognize that not all audio is either real-time or non-real-time. Embodiments of the present invention also recognize that performing speech-to-text conversion on real-time audio can be more costly than on non-real-time audio.
[0009] Embodiments of the present invention recognize that it is beneficial to know whether an audio stream must be processed in real-time with low latency, from both a quality of service and cost perspective. If it is known that the audio stream can be processed in batches (i.e., the transcription does not need to be delivered to the user in real time), it is then possible to apply more sophisticated speech-to-text techniques that work from the beginning to the end of the utterance in the audio, and vice versa (bidirectional), which can lead to higher accuracy. Since the end of the utterance is known in advance, it is also possible to perform multiple passes on the same utterance in the audio, which leads to improved accuracy. Furthermore, utilizing larger batches during inference accelerates speech-to-text computation, as low-latency constraints are not compatible with large batch processing of audio. Additionally, if the audio stream can be processed in batches, it can be given lower priority so that computational resources are first aligned with latency-critical audio jobs.
[0010] Reference will now be made in more detail to various embodiments of the invention. Figure 1 This is a functional block diagram of a network computing environment (typically designated as 100) suitable for the operation of an audio program 112 according to at least one embodiment of the present invention. Figure 1 The illustrations provided are merely one example of an implementation and do not imply any limitation on the environments in which different embodiments may be implemented. Those skilled in the art can make many modifications to the depicted environments without departing from the scope of the invention as set forth in the claims.
[0011] Network computing environment 100 includes computing devices 110 interconnected via network 120. In embodiments of the invention, network 120 may be a telecommunications network, a local area network (LAN), a wide area network (WAN) such as the Internet, or a combination of these, and may include wired, wireless, or fiber optic connections. Network 120 may include one or more wired and / or wireless networks capable of receiving and transmitting data, voice, and / or video signals (including multimedia signals, which include voice, data, and video information). Typically, network 120 may be any combination of connections and protocols that support communication between computing devices 110 and other computing devices (not shown) within network computing environment 100.
[0012] Computing device 110 is a computing device that can be a laptop computer, tablet computer, netbook computer, personal computer (PC), desktop computer, personal digital assistant (PDA), smartphone, smartwatch, or any programmable electronic device capable of receiving, sending, and processing data. Typically, computing device 110 refers to any programmable electronic device or combination of programmable electronic devices capable of executing machine-readable program instructions and communicating with other computing devices (not shown) within computing environment 100 via a network (such as network 120).
[0013] In various embodiments of the invention, computing device 110 may be a computing device, which may be a standalone device, management server, network server, media server, mobile computing device, or any other programmable electronic device or computing system capable of receiving, transmitting, and processing data. In other embodiments, computing device 110 represents a server computing system, such as one that utilizes multiple computers as server systems in a cloud computing environment. In one embodiment, computing device 110 represents a computing system utilizing clustered computers and components (e.g., database server computers, application server computers, network servers, and media servers) that, when accessed, act as a single, seamless pool of resources within the network computing environment 100.
[0014] In various embodiments of the present invention, computing device 110 includes audio program 112 and information storage library 114.
[0015] In one embodiment, computing device 110 includes a user interface (not shown). A user interface is a program that provides an interface between a user and an application. A user interface refers to the information (e.g., graphics, text, and sound) that a program presents to the user and the control sequences that the user uses to control the program. Many types of user interfaces exist. In one embodiment, the user interface may be a graphical user interface (GUI). Unlike text-based interfaces, typed command labels, or text navigation, a GUI is a user interface that allows a user to interact with an electronic device such as a keyboard and mouse through graphical icons and visual indicators, such as auxiliary symbols. In computers, GUIs were introduced as a response to the steep learning curve of perceived command-line interfaces, which require typing commands on a keyboard. Actions in a GUI are typically performed by directly manipulating graphical elements.
[0016] In one embodiment, computing device 110 includes an audio program 112. Embodiments of the present invention provide an audio program 112 for receiving audio data. In an embodiment of the present invention, the audio program 112 determines an expected bit rate. In an embodiment of the present invention, the audio program 112 determines an input bit rate. In an embodiment of the present invention, the audio program 112 determines an R value. In an embodiment of the present invention, the audio program 112 determines whether the R value is greater than a threshold. In an embodiment of the present invention, the audio program 112 adds audio to a real-time audio list. In an embodiment of the present invention, the audio program 112 adds audio to a batch audio list. In an embodiment of the present invention, the audio program 112 waits for a time threshold.
[0017] In one embodiment, computing device 110 includes an information repository 114. In one embodiment, the information repository 114 may be managed by an audio program 112. In an alternative embodiment, the information repository 114 may be managed by the operating system of computing device 110, another program (not shown), alone or together with the audio program 112. The information repository 114 is a data repository capable of storing, collecting, and / or analyzing information. In some embodiments, the information repository 114 is located outside computing device 110 and is accessed via a communication network such as network 120. In some embodiments, the information repository 114 is stored on computing device 110. In some embodiments, the information repository 114 may reside on another computing device (not shown), and the provided information repository 114 may be accessible by computing device 110. The information repository 114 may include, but is not limited to, speech-to-text settings, R values, input bitrate, expected bitrate, batch audio lists, real-time audio lists, R thresholds, time thresholds, etc.
[0018] As is known in the art, information storage 114 can be implemented using any volatile or non-volatile storage medium for storing information. For example, information storage 114 can be implemented using a tape library, an optical library, one or more individual hard disk drives, multiple hard disk drives in a redundant array of independent disks (RAID), a solid-state drive (SSD), or random access memory (RAM). Similarly, information storage 114 can be implemented using any suitable storage architecture known in the art, such as a relational database, an object-oriented database, or one or more tables.
[0019] As mentioned herein, all retrieved, collected, and used data are used in an opt-in manner, meaning the data provider has granted permission for the data to be used. For example, the received data received and used by audio program 112 determines real-time and non-real-time audio stream transmissions.
[0020] Figure 2This is a flowchart depicting the operational steps of an audio program 112 according to at least one embodiment of the present invention. In an alternative embodiment, the steps of the workflow 200 may be performed by any other program while working with the audio program 112. It should be understood that embodiments of the present invention at least provide for determining real-time and non-real-time audio streaming transmission. However, Figure 2 This illustration provides only one possible implementation and does not imply any limitation on the environment in which different embodiments may be implemented. Those skilled in the art can make numerous modifications to the depicted environment without departing from the scope of the invention as set forth in the claims. In a preferred embodiment, a user can invoke workflow 200 via a user interface (not shown) when the user wants audio program 112 to determine real-time and non-real-time audio stream transmissions.
[0021] Audio program 112 receives audio data (step 202). At step 202, audio program 112 receives audio data via network 120. In one embodiment, the audio data may not yet be classified as real-time or non-real-time audio. In an alternative embodiment, audio program 112 receives audio data stored in information storage 114 via a user interface through instructions from the user. In one embodiment, audio program 112 may receive a single segment of audio data. In an alternative embodiment, audio program 112 may be one or more segments of audio data in a continuous stream. In one embodiment, audio program 112 may receive audio associated with corresponding video data. In one embodiment, audio program 112 may analyze a first block of audio data received within a threshold time. In other words, audio program 112 may begin receiving audio data, wait for a threshold time (i.e., three seconds), and then proceed to the next step, regardless of whether the entire segment of audio data has been received. In one embodiment, the received audio data may include a header indicating whether the audio data is real-time or non-real-time audio. Here, in the case of real-time audio, processing may proceed directly to step 212, and in the case of non-real-time audio, processing may proceed directly to step 214. In one embodiment, the received audio may be a request to convert speech (audio) into text. In one embodiment, the request may be an HTTP / Websocket request or any other known network protocol in the art.
[0022] Audio program 112 determines the expected bit rate (step 204). At step 204, audio program 112 determines the expected bit rate of the received audio data. In one embodiment, the expected bit rate is determined from the header of the received audio data, and more specifically, from the metadata found within the header. In one embodiment, the expected bit rate is listed in the metadata of the header. Alternatively, in one embodiment, the sample rate and sample size are listed in the metadata of the header, and the expected bit rate is calculated by multiplying the sample rate by the sample size. In an alternative embodiment, when the audio data does not include a header, the expected bit rate is calculated based on the sample rate value and the bytes per sample value in the content type header entering the received audio.
[0023] Audio program 112 determines the input bit rate (step 206). At step 206, audio program 112 determines the input bit rate of the received audio data. In one embodiment, the input bit rate is determined based on how fast the computing device 110 receives bytes of audio via network 120. In one embodiment, audio program 112 may receive this information from the operating system of computing device 110 or from any other program running on computing device 110.
[0024] Audio program 112 determines the R value (decision step 208). At step 208, audio program 112 determines the R value of the received audio data. In one embodiment, the R value is calculated by dividing the input bit rate by the expected bit rate. In one embodiment, the R value is stored in information storage 114.
[0025] Audio program 112 determines whether R is greater than the R threshold (decision step 210). At decision step 210, audio program 112 compares the R value with the R threshold. If the R value is not greater than the R threshold (decision step 210, no branch), processing proceeds to real-time audio (step 212). If R is greater than the R threshold (decision step 210, yes branch), processing proceeds to batch audio (step 214).
[0026] Audio program 112 determines real-time audio (step 212). At step 212, audio program 112 determines that the received audio data is real-time audio. In one embodiment, audio program 112 may use techniques known in the art for processing real-time audio to process the received audio. In one embodiment, audio program 112 may add the received audio data to a real-time audio list or queue for processing by another program (not shown). In one embodiment, audio in the real-time audio list is processed with a higher priority than audio in a batch audio list.
[0027] Audio program 112 determines a batch of audio (step 214). At step 214, audio program 112 determines that the received audio data is a batch of audio. In one embodiment, audio program 112 may process the received audio using techniques known in the art for processing batch audio. In one embodiment, audio program 112 may add the received audio data to a batch audio list or queue for processing by another program (not shown). In one embodiment, audio in the batch audio list is processed with a lower priority than audio in the real-time audio list.
[0028] Audio program 112 waits for a time threshold (step 216). At step 216, audio program 112 waits for a time threshold before proceeding to step 206. In one embodiment, audio program 112 may receive the time threshold when receiving audio data from the user via a user interface. In an alternative embodiment, the time threshold may be stored as user preferences in an information store 114. In yet another alternative embodiment, the time threshold may be changed based on the processing time and / or date, which is based on preferences stored in the information store 114. In one embodiment, a larger time threshold results in better reliability of real-time and batch audio detection. In an alternative embodiment, a smaller time threshold results in earlier real-time and batch audio detection. It should be noted that the waiting time threshold allows audio files to be classified as real-time, and subsequently, as further time passes, the audio files may be changed to be classified as batch audio. This allows for variations in the speed at which audio files are received due to network 120 issues such as bandwidth and latency. In one embodiment, the time threshold may be based on the time of day, the day of the week, or a calendar. For example, the time threshold can be larger on weekends (when there is less processing) and smaller on weekdays (when there is more processing).
[0029] It should be noted that an audio data segment can end at any time, for example, when the audio data being processed has reached the end of the audio, and when a new audio data segment can be processed by the audio program 112 next. In this embodiment, when a new audio data segment is received, processing will begin from step 202.
[0030] In one example, a computing device 110 receives a 20MB audio file for processing by an audio program 112. Here, the file contains ten minutes of audio. In the first example, the audio program 112 can receive the file in just a few seconds, which is only limited by the bandwidth via network 120. Therefore, the audio file is determined to be batch audio. However, in the second example, if the audio file is received at a speed closer to real-time audio, then the audio file is subsequently determined to be real-time audio.
[0031] To provide a more detailed example, if the received audio stream is encoded at 16kHz corresponding to 32KB / s and 2 bytes per sample, and the audio is coming in at an average bit rate of 40KB / s, then we know that the stream is not coming in real-time, but rather much faster, thus we have a batch usage scenario. However, if the bit rate of the input stream is approximately 32KB / s plus / minus a small increment, then we know that the stream is likely real-time.
[0032] Figure 3 This is a block diagram depicting components of a computer 300 suitable for an audio program 112 according to at least one embodiment of the present invention. Figure 3 The display includes a computer 300, one or more processors 304 (including one or more computer processors), a communication structure 302, a memory 406 including RAM 316 and cache 318, a persistent storage device 308, a communication unit 312, an I / O interface 314, a display 322, and external devices 320. It should be understood that... Figure 3 This is merely an illustration of one embodiment and does not imply any limitation regarding the environment in which different embodiments may be implemented. Many modifications can be made to the depicted environment.
[0033] As depicted, computer 300 operates on communication architecture 302, which provides communication between one or more computer processors 304, memory 306, persistent storage device 308, communication unit 312, and one or more input / output (I / O) interfaces 314. Communication architecture 302 can be implemented using an architecture suitable for transferring data or control information between processor 304 (e.g., microprocessor, communication processor, and network processor), memory 306, external devices 320, and any other hardware components within the system. For example, communication architecture 302 can be implemented using one or more buses.
[0034] Memory 306 and persistent storage device 308 are computer-readable storage media. In the depicted embodiment, memory 306 includes random access memory (RAM) 316 and cache 318. Typically, memory 306 may include one or more suitable volatile or non-volatile computer-readable storage media.
[0035] Program instructions for audio program 112 may be stored in persistent storage device 308, or more generally, in any computer-readable storage medium, for execution by one or more of the respective computer processors 304 via one or more memories of memory 306. Persistent storage device 408 may be a magnetic hard disk drive, solid-state drive, semiconductor storage device, read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory, or any other computer-readable storage medium capable of storing program instructions or digital information.
[0036] The media used in persistent storage 308 can also be removable. For example, a removable hard disk drive can be used for persistent storage device 308. Other examples include optical discs and magnetic disks, thumb drives, and smart cards that are inserted into drives for transfer to another computer-readable storage medium that is also part of persistent storage device 308.
[0037] In these examples, communication unit 312 provides communication with other data processing systems or devices. In these examples, communication unit 312 may include one or more network interface cards. Communication unit 312 can provide communication by using one or both of physical and wireless communication links. In the context of some embodiments of the invention, various sources of input data may be physically located away from computer 300, enabling the input data to be received and output similarly transmitted via communication unit 312.
[0038] One or more I / O interfaces 314 allow data input and output using other devices that can be combined with computer 300. For example, I / O interface 314 can provide connectivity to external device 320, which may be a keyboard, keypad, touchscreen, or other suitable input device. External device 320 may also include portable computer-readable storage media, such as thumb drives, portable optical discs or disks, and memory cards. Software and data used to practice embodiments of the invention can be stored on such portable computer-readable storage media and can be loaded onto persistent storage device 308 via one or more I / O interfaces 314. One or more I / O interfaces 314 can similarly connect to display 322. Display 322 provides a mechanism for displaying data to a user and may be, for example, a computer monitor.
[0039] This invention can be a system, method, and / or computer program product at any possible level of technical detail integration. The computer program product may include a computer-readable storage medium (or media) having computer-readable program instructions to enable a processor to execute aspects of the invention.
[0040] Computer-readable storage media can be tangible devices capable of retaining and storing instructions for use by an instruction execution device. Computer-readable storage media can be, for example, but not limited to, electronic storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of computer-readable storage media includes the following: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable optical disc read-only memory (CD-ROM), digital multifunction disc (DVD), memory sticks, floppy disks, mechanical encoding devices such as punch cards or recessed structures on which instructions are recorded, and any suitable combination of the foregoing. As used herein, computer-readable storage media should not be construed as transient signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber optic cables), or electrical signals transmitted through wires.
[0041] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to a suitable computing / processing device, or via a network, such as the Internet, a local area network (LAN), a wide area network (WAN), and / or a wireless network, to an external computer or external storage device. The network may include copper cables, optical fibers, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them for storage in a computer-readable storage medium within the respective computing / processing device.
[0042] Computer-readable program instructions used to perform the operations of this invention may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages (including object-oriented programming languages such as Smalltalk, C++, etc.) and traditional procedural programming languages such as the "C" programming language or similar programming languages). The computer-readable program instructions may be executed entirely on the user's computer, partially on the user's computer, as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer via any type of network (including local area network (LAN) or wide area network (WAN)) or may be connected to an external computer (e.g., via the Internet provided by an Internet service provider). In some embodiments, to perform aspects of this invention, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGAs), or programmable logic arrays (PLAs) may execute the computer-readable program instructions via state information utilizing the computer-readable program instructions to personalize the electronic circuitry.
[0043] This document describes aspects of the invention with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.
[0044] These computer-readable program instructions may be provided to a processor of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions / actions specified in one or more boxes of a flowchart and / or block diagram. These computer-readable program instructions may also be stored in a readable storage medium that can instruct a computer, programmable data processing apparatus, and / or other device to operate in a particular manner, such that the computer-readable storage medium in which the instructions are stored includes an article of writing containing instructions that implement aspects of the functions / actions specified in the boxes or boxes of a flowchart and / or block diagram.
[0045] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer-implemented process, such that the instructions, which execute on the computer, other programmable apparatus or other device, perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.
[0046] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of computer program instructions, including one or more executable instructions for implementing a specified logical function(s). In some alternative implementations, the functions mentioned in the blocks may occur in a different order than those shown in the figures. For example, two blocks shown consecutively may actually be performed as a single step, simultaneously, substantially simultaneously, with partial or complete time overlap, or these blocks may sometimes be performed in reverse order, depending on the functions involved. It will also be noted that each block illustrated in the block diagrams and / or flowcharts, and combinations of blocks illustrated in the block diagrams and / or flowcharts, may be implemented by a dedicated hardware-based system that performs the specified function or action or executes a combination of dedicated hardware and computer instructions.
[0047] Various embodiments of the invention have been described for illustrative purposes, but are not intended to be exhaustive or limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein has been chosen to best explain the principles of the embodiments, their practical application, or improvements to existing technologies on the market, or to enable others skilled in the art to understand the embodiments disclosed herein.
Claims
1. A computer-implemented method for determining real-time and non-real-time audio stream transmissions, the computer-implemented method comprising: One or more audio data are received by one or more computer processors; The expected bit rate of the one or more audio data is determined by one or more computer processors; The input bit rate of the one or more audio data is determined by one or more computer processors; The R value is calculated by one or more computer processors using the expected bit rate and the input bit rate; One or more computer processors compare the R value with an R threshold, wherein, in response to the R value being greater than the R threshold, one or more computer processors add the one or more audio data to a batch audio list, and in response to the R value being less than the R threshold, one or more computer processors add the one or more audio data to a real-time audio list; as well as The audio data on the batch audio list is processed by one or more computer processors in a manner different from that used for processing the audio data on the real-time audio list.
2. The computer-implemented method according to claim 1, wherein the comparison is performed after a threshold time period.
3. The computer-implemented method according to claim 1 further includes: One or more computer processors process one or more audio data in the batch audio list with a lower priority than any one or more audio data in the real-time audio list.
4. The computer-implemented method according to claim 1 further includes: One or more audio data in the real-time audio list are processed by one or more computer processors with a higher priority than any one or more audio data in the batch audio list.
5. The computer-implemented method of claim 1, wherein the R value is calculated by dividing the input bit rate by the expected bit rate.
6. A computer program product for determining real-time and non-real-time audio stream transmission, the computer program product comprising program instructions, the program instructions including: Program instructions for receiving one or more audio data; Program instructions for determining the expected bit rate of the one or more audio data by one or more computer processors; Program instructions for determining the input bit rate of the one or more audio data by one or more computer processors; Program instructions for calculating the value of R by one or more computer processors using the expected bit rate and the input bit rate; Program instructions for comparing the R value with an R threshold by one or more computer processors, wherein, in response to the R value being greater than the R threshold, the one or more audio data are added to a batch audio list by one or more computer processors, and in response to the R value being less than the R threshold, the one or more audio data are added to a real-time audio list by one or more computer processors; Program instructions for processing audio data on a batch audio list by one or more computer processors in a manner different from processing audio data on a real-time audio list.
7. The computer program product of claim 6, wherein the comparison is performed after a threshold time period.
8. The computer program product according to claim 6, further comprising program instructions for: One or more audio data from the batch audio list are processed using a lower priority than any one or more audio data in the real-time audio list.
9. The computer program product according to claim 6, further comprising program instructions for: One or more audio data in the real-time audio list are processed with a higher priority than any one or more audio data in the batch audio list.
10. The computer program product of claim 6, wherein the R value is calculated by dividing the input bit rate by the expected bit rate.
11. A computer system for determining real-time and non-real-time audio stream transmissions, the computer system comprising: One or more computer processors; One or more computer-readable storage media; as well as Program instructions, stored on the one or more computer-readable storage media for execution by at least one of the one or more computer processors, the program instructions comprising: Program instructions for receiving one or more audio data; Program instructions for determining the expected bit rate of the one or more audio data by one or more computer processors; Program instructions for determining the input bit rate of the one or more audio data by one or more computer processors; Program instructions for calculating the value of R by one or more computer processors using the expected bit rate and the input bit rate; Program instructions for comparing the R value with an R threshold by one or more computer processors, wherein, in response to the R value being greater than the R threshold, the one or more audio data are added to a batch audio list by one or more computer processors, and in response to the R value being less than the R threshold, the one or more audio data are added to a real-time audio list by one or more computer processors; Program instructions for processing audio data on a batch audio list by one or more computer processors in a manner different from processing audio data on a real-time audio list.
12. The computer system of claim 11, wherein the comparison is performed after a threshold time period.
13. The computer system of claim 11, further comprising program instructions stored on the one or more computer-readable storage media for execution by at least one of the one or more computer processors, for: The one or more audio data in the batch audio list are processed with a lower priority than any one or more audio data in the real-time audio list.
14. The computer system of claim 11, further comprising program instructions stored on the one or more computer-readable storage media for execution by at least one of the one or more computer processors, for: The one or more audio data in the real-time audio list are processed with a higher priority than any one or more audio data in the batch audio list.
Citation Information
Patent Citations
Technologies for providing hints usable to adjust properties of digital media
US20170257411A1
Remote Creation of a Playback Queue for a Future Event
US20180004714A1