Video transmission apparatus, method, electronic device, and storage medium
Patent Information
- Application Number
- CN202510438676.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-08
- Publication Date
- 2026-10-16
AI Technical Summary
[0004]本公开的一个目的是提供一种视频传输装置、方法、电子设备及存储介质,可以解决带宽受限场景下视频质量较低的问题
[0023] One technical advantage of this disclosure is that it provides a video transmission device that can monitor changes in transmission bandwidth in real time based on a dynamic bandwidth adjustment module. When network fluctuations occur, the resolution is automatically reduced to prioritize smooth video playback and avoid stuttering; when bandwidth is sufficient, high-resolution transmission is restored, balancing image quality and stability. Simultaneously, when network bandwidth is limited or resolution is reduced, the super-resolution adjustment module selects a matching super-resolution algorithm based on the terminal device's performance, enhancing the low-resolution video in real time to near-original image quality, reducing perceived quality loss for the user. Differentiated super-resolution algorithms are applied to different devices, preventing low-performance devices from overheating or experiencing latency due to super-resolution computational overload, achieving an optimal balance between computing power and image quality. In weak network environments, it can reduce the amount of data transmitted while utilizing terminal computing power to compensate for image quality, significantly improving the user experience in high-latency, high-packet-loss networks.
Smart Images

Figure CN122933903A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of video transmission, and more specifically, to a video transmission apparatus, method, electronic device, and storage medium. Background Technology
[0002] In the field of real-time video transmission, dynamic bandwidth adjustment technology, by monitoring network status in real time and adaptively adjusting video bitrate or compression parameters, has become a core means of ensuring low-latency transmission. However, in scenarios with limited bandwidth resources, reducing the transmission bitrate is often accompanied by a significant decrease in video resolution, leading to problems such as blurry images and loss of detail. Especially in high-resolution demand scenarios such as medical imaging consultations, 4K streaming media, and video conferencing, this quality degradation directly damages the user experience and may even affect the accurate transmission of critical information, becoming a bottleneck that current technology urgently needs to overcome.
[0003] Super-resolution algorithms offer a new approach to solving the aforementioned problems. However, despite significant progress in static scenes, current technologies still struggle to achieve real-time adaptive optimization in dynamic video transmission. Most current super-resolution algorithms rely on fixed models or offline preprocessing, failing to dynamically select the optimal algorithm based on real-time conditions. This limits the practicality of super-resolution technology in bandwidth-sensitive scenarios. Summary of the Invention
[0004] One object of this disclosure is to provide a video transmission apparatus, method, electronic device, and storage medium that can solve the problem of low video quality in bandwidth-limited scenarios.
[0005] According to a first aspect of this disclosure, a video transmission apparatus is provided, comprising:
[0006] A dynamic bandwidth adjustment module is used to obtain the transmission bandwidth of the video and adjust the target resolution of the video based on the transmission bandwidth.
[0007] The super-resolution adjustment module pre-stores multiple super-resolution algorithms to detect whether the video transmission meets preset conditions, and, if the preset conditions are met, determines the target super-resolution algorithm based on the performance parameters of the video playback device among the multiple super-resolution algorithms.
[0008] Optionally, detecting whether the video transmission status meets preset conditions includes:
[0009] If the video's image complexity is determined to be within a preset complexity range and the current transmission delay of the video is less than a preset delay parameter, then the video transmission situation is determined to meet preset conditions, wherein the preset delay parameter represents the maximum delay time that the user can receive.
[0010] Optionally, the performance parameters include the central processing unit parameters, graphics processing unit parameters, and super-resolution time parameters, wherein the super-resolution time parameter is the difference between a preset delay parameter and the current transmission delay of the video, and the preset delay parameter represents the maximum delay time that the user can receive.
[0011] Optionally, determining the target super-resolution algorithm based on the performance parameters of the video playback device among the multiple super-resolution algorithms includes:
[0012] The sum of the products of each performance parameter and its corresponding weight is used as the performance score, and the preset super-resolution interval in which the performance score is located is determined. The multiple preset super-resolution intervals correspond one-to-one with the pre-stored multiple types of super-resolution algorithms, and the upper and lower limits of the intervals between the preset super-resolution intervals are determined based on the processing time and performance requirements of the super-resolution algorithm.
[0013] The super-resolution algorithm corresponding to the preset super-resolution interval is used as the target super-resolution algorithm.
[0014] Optionally, the device further includes: a quality assessment module, which is used to determine whether the image quality assessment index of the video after adjustment by the target super-resolution algorithm is less than a preset quality threshold, and if it is less than the preset quality threshold, to determine a second target super-resolution algorithm, wherein the second target super-resolution algorithm is different from the target super-resolution algorithm.
[0015] Optionally, the device further includes a user feedback module, which collects user ratings for video latency and video quality after video transmission has ended.
[0016] Optionally, the user feedback module is further configured to: increase the weight value of the performance parameter corresponding to the score when the score is lower than a preset score threshold, wherein the increase in the weight value is positively correlated with the difference between the score and the preset score threshold.
[0017] According to a second aspect of this disclosure, a video transmission method is provided, comprising:
[0018] Obtain the transmission bandwidth of the video, and adjust the target resolution of the video based on the transmission bandwidth;
[0019] Check whether the video transmission meets the preset conditions;
[0020] Under the condition that the preset conditions are met, the target super-resolution algorithm is determined from a variety of pre-stored super-resolution algorithms based on the performance parameters of the video playback device.
[0021] According to a third aspect of this disclosure, a video transmission device is provided, comprising the video transmission apparatus of any one of the first aspects, or comprising a processor and a memory, the memory storing computer instructions which, when executed by the processor, implement the method of any one of the second aspects.
[0022] According to a fourth aspect of this disclosure, a storage medium is provided that stores computer instructions thereon, which, when executed by a processor, implement the steps of any of the methods of the second aspect.
[0023] One technical advantage of this disclosure is that it provides a video transmission device that can monitor changes in transmission bandwidth in real time based on a dynamic bandwidth adjustment module. When network fluctuations occur, the resolution is automatically reduced to prioritize smooth video playback and avoid stuttering; when bandwidth is sufficient, high-resolution transmission is restored, balancing image quality and stability. Simultaneously, when network bandwidth is limited or resolution is reduced, the super-resolution adjustment module selects a matching super-resolution algorithm based on the terminal device's performance, enhancing the low-resolution video in real time to near-original image quality, reducing perceived quality loss for the user. Differentiated super-resolution algorithms are applied to different devices, preventing low-performance devices from overheating or experiencing latency due to super-resolution computational overload, achieving an optimal balance between computing power and image quality. In weak network environments, it can reduce the amount of data transmitted while utilizing terminal computing power to compensate for image quality, significantly improving the user experience in high-latency, high-packet-loss networks.
[0024] Other features and advantages of the embodiments of this disclosure will become clear from the following detailed description of exemplary embodiments with reference to the accompanying drawings. Attached Figure Description
[0025] The accompanying drawings, which form part of this specification, illustrate embodiments of the present disclosure and, together with the specification, serve to explain the principles of the embodiments of the present disclosure.
[0026] Figure 1 This is a schematic diagram of the structure of the video transmission device provided in this application;
[0027] Figure 2 This is a flowchart of the video transmission method provided in this application. Detailed Implementation
[0028] Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that, unless otherwise specifically stated, the relative arrangement, numerical expressions, and values of the components and steps set forth in these embodiments do not limit the scope of the invention.
[0029] The following description of at least one exemplary embodiment is merely illustrative and is in no way intended to limit the invention or its application or use.
[0030] Technologies and equipment known to those skilled in the art may not be discussed in detail, but where appropriate, such technologies and equipment should be considered part of the instruction manual.
[0031] In all the examples shown and discussed herein, any specific values should be interpreted as merely exemplary and not as limitations. Therefore, other examples of exemplary embodiments may have different values.
[0032] It should be noted that similar labels and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be discussed further in subsequent figures.
[0033] It should be noted that all actions involving the acquisition of signals, information, or data in this embodiment are carried out in compliance with the relevant data protection laws and regulations of the country where the location is situated, and with authorization from the owner of the relevant equipment.
[0034] In one example of this embodiment, a video transmission device 100 is also provided, such as... Figure 1 As shown, this device can be applied to video playback devices and obtain various parameters of the video playback device and video transmission status through API. The device includes a dynamic bandwidth adjustment module 101, which obtains the video transmission bandwidth and adjusts the target resolution of the video based on the transmission bandwidth; and a super-resolution adjustment module 102, which pre-stores multiple super-resolution algorithms to detect whether the video transmission status meets preset conditions, and, if the preset conditions are met, determines the target super-resolution algorithm from among the multiple super-resolution algorithms based on the performance parameters of the video playback device.
[0035] In this embodiment, the dynamic bandwidth adjustment module can obtain the transmission bandwidth of the currently received video stream in real time based on dynamic bandwidth adjustment technology. It can calculate or predict the bandwidth at the current and next transmission moments by statistically analyzing the video download speed over a preset time period or by using algorithms such as moving averages or exponential weighting. Then, based on adaptive bitrate technology, the video resolution is dynamically adjusted. In this example, the video source file is typically encoded into multiple versions with different resolutions, bitrates, and qualities. The video is then transmitted in segments, with each segment's corresponding data packet transmitted independently.
[0036] In this example, the dynamic bandwidth adjustment module can store the correspondence between video resolution and transmission bandwidth ranges. Upon monitoring the real-time transmission bandwidth, it determines the bandwidth range within which the real-time transmission bandwidth falls, thereby determining the target resolution of the video for adjustment. In this embodiment, the dynamic bandwidth adjustment module can also be configured with different adjustment modes for switching, such as conservative mode, aggressive mode, and buffered adjustment mode. These modes can be switched in real-time according to user habits or scenario conditions. In this example, conservative mode can prioritize selecting a bitrate lower than the current bandwidth to avoid stuttering due to sudden fluctuations. Aggressive mode attempts to improve image quality with a higher corresponding bitrate, but carries a certain risk of buffering. Alternatively, it can dynamically adjust based on the video duration in the buffer: using conservative mode when the buffered video duration is below a threshold, and using aggressive mode when it is above or equal to the threshold.
[0037] In one example of this embodiment, the super-resolution adjustment module can pre-store multiple different super-resolution algorithms, and then dynamically select a suitable super-resolution algorithm based on the performance parameters of the video playback device, such as the margin of the CPU and GPU, thereby selecting an algorithm suitable for the current scenario.
[0038] In this example, a video transmission device is provided that can monitor changes in transmission bandwidth in real time based on a dynamic bandwidth adjustment module. When network fluctuations occur, the resolution is automatically reduced to prioritize smooth video playback and avoid stuttering. When bandwidth is sufficient, high-resolution transmission is restored, balancing image quality and stability. Simultaneously, when network bandwidth is limited or resolution is reduced, the super-resolution adjustment module selects a matching super-resolution algorithm based on the terminal device's performance, enhancing the low-resolution video in real time to near-original image quality, minimizing perceived quality loss for the user. Differentiated super-resolution algorithms are applied to different devices to avoid overheating or latency caused by overloaded super-resolution calculations on low-performance devices, achieving an optimal balance between computing power and image quality. In weak network environments, this reduces the amount of data transmitted while utilizing terminal computing power to compensate for image quality, significantly improving the user experience in high-latency, high-packet-loss networks.
[0039] In one example of this embodiment, detecting whether the video transmission status meets the preset conditions includes: determining that the video transmission status meets the preset conditions when the video's image complexity is within a preset complexity range and the current transmission delay of the video is less than a preset delay parameter, wherein the preset delay parameter represents the maximum delay time that the user can receive.
[0040] In this example, when detecting video transmission, the satisfaction of preset conditions can be determined based on the video's image complexity and transmission latency. Video image complexity can be determined through spatial or temporal complexity. In this example, pixel statistics can be used to determine the variance or entropy of pixel values in a segment of the image; a higher value indicates greater image complexity. Alternatively, edge detection methods can be used to calculate the percentage of edge pixels; a higher percentage of edge pixels also indicates greater image complexity. In another example, inter-frame difference analysis or scene transition detection methods can be used to quantify complexity in the temporal domain.
[0041] In this example, for different types of image complexity, the upper and lower limits of the complexity range can be set accordingly. In this example, the preset complexity range can be a range with moderate complexity to avoid the time consumption and performance requirements of the super-resolution algorithm being too high when the image is too complex, which may bring other negative effects. It can also avoid the situation where the super-resolution algorithm is unnecessary to use in simple scenes.
[0042] In one example of this embodiment, the performance parameters include central processing unit parameters, graphics processing unit parameters, and super-resolution time parameters. The super-resolution time parameter is the difference between a preset delay parameter and the current transmission delay of the video. The preset delay parameter represents the maximum delay time that the user can receive.
[0043] In this example, the video transmission device can obtain performance parameters of the video playback device via API. These parameters can include hardware performance parameters such as CPU and GPU usage (e.g., CPU usage, available video memory) and super-resolution time parameters. The super-resolution time parameter is the maximum time the super-resolution algorithm can take to apply. It can be dynamically determined by a preset delay parameter and the current transmission delay. In this example, the preset delay parameter is the maximum acceptable latency for the user. Those skilled in the art can test and set it based on experience, or dynamically adjust it based on user feedback. By adjusting the preset delay parameter, the maximum time for the super-resolution algorithm can be determined, ensuring that the overall user waiting time is not too long and guaranteeing a good user experience.
[0044] In one example of this embodiment, determining the target super-resolution algorithm among multiple super-resolution algorithms based on the performance parameters of the video playback device includes: summing the products of each performance parameter and its corresponding weight as a performance score, and determining the preset super-resolution interval where the performance score is located. Multiple preset super-resolution intervals correspond one-to-one with pre-stored multiple super-resolution algorithms, and the upper and lower limits of the preset super-resolution intervals are determined based on the processing time and performance requirements of the super-resolution algorithm; the super-resolution algorithm corresponding to the preset super-resolution interval is then selected as the target super-resolution algorithm.
[0045] In this example, for multiple performance parameters, a weight can be set for each parameter based on pre-tested data. Then, the product of each parameter and its corresponding weight is calculated in real time, and the sum of all products is determined as the device performance score. The corresponding interval for this score is then determined. In this example, each super-resolution algorithm can have a pre-set score interval based on its average processing time and performance requirements. In this example, performance requirements are typically positively correlated with processing effectiveness. In this embodiment, the intervals corresponding to each super-resolution algorithm can overlap. When the sum falls within multiple preset intervals, a super-resolution algorithm with a higher upper limit can be selected as the target super-resolution algorithm to obtain better processing results.
[0046] For example, a lightweight super-resolution algorithm with fast processing speed, relatively low performance requirements, and relatively poor performance corresponds to the range of 0-35. A super-resolution algorithm with moderate processing speed and performance requirements corresponds to the range of 30-60. A high-precision super-resolution algorithm with the slowest processing speed but the best performance corresponds to the range of 50-∞. When the cumulative sum is 34, the lightweight super-resolution algorithm is used as the target super-resolution algorithm. When the cumulative sum is 65, the high-precision super-resolution algorithm is used as the target super-resolution algorithm.
[0047] In this example, the above method avoids the problems of "high-performance devices calling inefficient algorithms" or "low-performance devices running under overload." It dynamically selects algorithms based on hardware computing power, balancing image quality enhancement and real-time requirements. Furthermore, it supports the flexible addition of new super-resolution algorithms, requiring only an update of the interval threshold to adapt to future hardware upgrades.
[0048] In one example of this embodiment, the device further includes a quality assessment module, which is used to determine whether the image quality assessment index of the video adjusted by the target super-resolution algorithm is less than a preset quality threshold, and if it is less than the preset quality threshold, to determine a second target super-resolution algorithm, wherein the second target super-resolution algorithm is different from the target super-resolution algorithm.
[0049] In this example, objective quality assessment metrics, such as PSNR (Peak Signal-to-Noise Ratio) and SSIM (Structural Similarity Index), can be used to dynamically evaluate the quality of the super-resolution video and determine the quality assessment result. PSNR is one of the most commonly used image / video quality assessment metrics. It measures the degree of difference between the original signal and the distorted signal by calculating the mean square error between them. Its core is based on pixel-level error statistics; a higher value indicates less distortion and better quality. SSIM is a quality assessment metric based on the human visual system. It compares the brightness, contrast, and structure of the original image and the distorted image, making it closer to subjective perception. When the quality assessment metric is less than the preset quality threshold, it indicates that the image quality processed by the super-resolution algorithm does not meet the requirements. At this time, the target super-resolution algorithm can be changed to process the subsequent video to improve the user experience. In this example, the second target algorithm can be an algorithm with better processing effect than the first target algorithm, that is, a super-resolution algorithm with a higher upper and lower limit of the preset super-resolution interval.
[0050] In another example, since the real-time bandwidth may change during video playback, the second target super-resolution algorithm can be re-determined based on the performance parameters of the video playback device, rather than simply choosing a better algorithm, thus avoiding excessively long waiting times for users.
[0051] In one example of this embodiment, the apparatus further includes a user feedback module, which is used to collect user ratings for video latency and video quality after the video transmission is completed.
[0052] The user feedback module is also used to: increase the weight value of the performance parameter corresponding to the score when the score is lower than the preset score threshold, wherein the increase in weight value is positively correlated with the difference between the score and the preset score threshold.
[0053] In this example, after the video playback ends, user feedback can collect user ratings for the video. This data can include two dimensions: video latency and video quality. Each dimension's rating can have a set threshold. When a user's rating is below the preset threshold, the module dynamically increases the adjustment priority of the corresponding performance parameters based on the difference between the rating and the threshold. The larger the difference, the higher the weight increase, thereby driving the device to specifically strengthen the performance of weak links in subsequent transmissions. For example, if the video latency rating threshold is 7, and the user gives a score of 5, which is below the threshold, the weight of the corresponding over-resolution time parameter can be increased. The increase can be determined based on the difference between the rating and the threshold; the larger the difference, the greater the weight increase. Similarly, when the video quality rating is below the threshold, the weight of the CPU parameters and GPU parameters can be increased accordingly.
[0054] In one example of this embodiment, a video transmission method is also provided, such as... Figure 2 As shown, the method includes steps S11-S13:
[0055] Step S11: Obtain the transmission bandwidth of the video and adjust the target resolution of the video based on the transmission bandwidth.
[0056] Step S12: Check whether the video transmission meets the preset conditions;
[0057] Step S13: Under the condition that the preset conditions are met, determine the target super-resolution algorithm from the pre-stored multiple super-resolution algorithms according to the performance parameters of the video playback device.
[0058] Optionally, detecting whether the video transmission status meets preset conditions includes: determining that the video transmission status meets preset conditions when the video's image complexity is within a preset complexity range and the current transmission delay of the video is less than a preset delay parameter, wherein the preset delay parameter represents the maximum delay time that the user can receive.
[0059] Optionally, the performance parameters include central processing unit parameters, graphics processing unit parameters, and super-resolution time parameters, wherein the super-resolution time parameter is the difference between a preset delay parameter and the current transmission delay of the video, and the preset delay parameter represents the maximum delay time that the user can receive.
[0060] Optionally, the target super-resolution algorithm is determined from among multiple super-resolution algorithms based on the performance parameters of the video playback device, including: the sum of the products of each performance parameter and its corresponding weight is used as a performance score, and a preset super-resolution interval is determined where the performance score is located. The multiple preset super-resolution intervals correspond one-to-one with the pre-stored multiple super-resolution algorithms, and the upper and lower limits of the intervals between the preset super-resolution intervals are determined based on the processing time and performance requirements of the super-resolution algorithm; the super-resolution algorithm corresponding to the preset super-resolution interval is used as the target super-resolution algorithm.
[0061] Optionally, the method further includes determining whether the image quality assessment index of the video adjusted by the target super-resolution algorithm is less than a preset quality threshold, and if it is less than the preset quality threshold, determining a second target super-resolution algorithm, wherein the second target super-resolution algorithm is different from the target super-resolution algorithm.
[0062] Optionally, the method further includes collecting user ratings for video latency and video quality after the video transmission is completed.
[0063] Optionally, the method further includes: increasing the weight value of the performance parameter corresponding to the score when the score is lower than a preset score threshold, wherein the amount of increase in the weight value is positively correlated with the difference between the score and the preset score threshold.
[0064] This application also provides a video transmission device, including any of the video transmission devices in the video transmission device embodiments, or including a processor and a memory, wherein the memory stores computer instructions, and when the computer instructions are executed by the processor, they implement any of the above-described video transmission method embodiments and can achieve the same technical effect. To avoid repetition, further details are omitted here.
[0065] This application also provides a storage medium storing computer instructions. When the computer instructions are executed by a processor, they implement any one of the above-described video transmission method embodiments and achieve the same technical effect. To avoid repetition, they will not be described again here.
[0066] The various embodiments in this disclosure are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the device and apparatus embodiments are basically similar to the method embodiments, so the descriptions are relatively simple; relevant parts can be referred to the descriptions of the method embodiments.
[0067] The foregoing has described specific embodiments of this disclosure. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired results. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0068] Embodiments of this disclosure may be systems, methods, and / or computer program products. A computer program product may include a computer-readable storage medium having computer-readable program instructions loaded thereon for causing a processor to implement various aspects of the embodiments of this disclosure.
[0069] Computer-readable storage media can be tangible devices capable of holding and storing instructions for use by an instruction execution device. Computer-readable storage media can be, for example—but not limited to—electrical storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any suitable combination thereof. More specific examples (a non-exhaustive list) of computer-readable storage media include: 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 compact disc read-only memory (CD-ROM), digital multifunction disc (DVD), memory sticks, floppy disks, mechanical encoding devices, such as punch cards or recessed protrusions storing instructions thereon, and any suitable combination thereof. The computer-readable storage media used herein are not to 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.
[0070] The computer-readable program instructions described herein can be downloaded from computer-readable storage media to various computing / processing devices, or downloaded via a network, such as the Internet, local area network, wide area network, and / or wireless network, to an external computer or external storage device. The network may include copper transmission cables, fiber optic transmission, 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 to the computer-readable storage media in the respective computing / processing device.
[0071] Computer program instructions used to perform the operations of embodiments of this disclosure 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 conventional procedural programming languages such as the "C" language or similar programming languages. The computer-readable program instructions may execute entirely on a user's computer, partially on a user's computer, as a standalone software package, partially on a user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, electronic circuitry, such as programmable logic circuitry, field-programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), is personalized by utilizing state information from the computer-readable program instructions. This electronic circuitry can execute the computer-readable program instructions to implement various aspects of embodiments of this disclosure.
[0072] Various aspects of embodiments of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block of 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.
[0073] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processor of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner; thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.
[0074] 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 data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.
[0075] 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 disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction, which contains one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions. It will be known to those skilled in the art that implementation in hardware, implementation in software, and implementation in a combination of software and hardware are equivalent.
[0076] The various embodiments of this disclosure have been described above. These descriptions are exemplary and not exhaustive, and are not limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope of the described embodiments. The terminology used herein is chosen to best explain the principles, practical application, or improvement of the technology in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.
Claims
1. A video transmission device, characterized in that, include: A dynamic bandwidth adjustment module is used to obtain the transmission bandwidth of the video and adjust the target resolution of the video based on the transmission bandwidth. The super-resolution adjustment module pre-stores multiple super-resolution algorithms to detect whether the video transmission meets preset conditions, and, if the preset conditions are met, determines the target super-resolution algorithm based on the performance parameters of the video playback device among the multiple super-resolution algorithms.
2. The apparatus according to claim 1, characterized in that, The detection of whether the video transmission meets preset conditions includes: If the video's image complexity is determined to be within a preset complexity range and the current transmission delay of the video is less than a preset delay parameter, then the video transmission situation is determined to meet preset conditions, wherein the preset delay parameter represents the maximum delay time that the user can receive.
3. The apparatus according to claim 1, characterized in that, The performance parameters include the central processing unit parameters, graphics processing unit parameters, and super-resolution time parameters, wherein the super-resolution time parameter is the difference between a preset delay parameter and the current transmission delay of the video, and the preset delay parameter represents the maximum delay time that the user can receive.
4. The apparatus according to claim 3, characterized in that, The step of determining the target super-resolution algorithm among multiple super-resolution algorithms based on the performance parameters of the video playback device includes: The sum of the products of each performance parameter and its corresponding weight is used as the performance score, and the preset super-resolution interval in which the performance score is located is determined. The multiple preset super-resolution intervals correspond one-to-one with the pre-stored multiple types of super-resolution algorithms, and the upper and lower limits of the intervals between the preset super-resolution intervals are determined based on the processing time and performance requirements of the super-resolution algorithm. The super-resolution algorithm corresponding to the preset super-resolution interval is used as the target super-resolution algorithm.
5. The apparatus according to claim 4, characterized in that, The device further includes a quality assessment module, which is used to determine whether the image quality assessment index of the video after adjustment by the target super-resolution algorithm is less than a preset quality threshold, and if it is less than the preset quality threshold, to determine a second target super-resolution algorithm, wherein the second target super-resolution algorithm is different from the target super-resolution algorithm.
6. The apparatus according to claim 4, characterized in that, The device further includes a user feedback module, which is used to collect user ratings on video latency and video quality after video transmission is completed.
7. The apparatus according to claim 6, characterized in that, The user feedback module is further configured to: increase the weight value of the performance parameter corresponding to the score when the score is lower than a preset score threshold, wherein the increase in the weight value is positively correlated with the difference between the score and the preset score threshold.
8. A video transmission method, characterized in that, include: Obtain the transmission bandwidth of the video, and adjust the target resolution of the video based on the transmission bandwidth; Check whether the video transmission meets the preset conditions; Under the condition that the preset conditions are met, the target super-resolution algorithm is determined from a variety of pre-stored super-resolution algorithms based on the performance parameters of the video playback device.
9. A video transmission device, characterized in that, The device includes the video transmission apparatus according to any one of claims 1-7, or includes a processor and a memory, wherein the memory stores computer instructions that, when executed by the processor, implement the method of claim 8.
10. A storage medium, characterized in that, It stores computer instructions, which, when executed by a processor, implement the steps of the method described in claim 8.