Varying just noticeable difference (JND) threshold or bit rates for game video encoding based on power saving requirements
Techniques are described for reducing latency in computer game network streaming using a machine learning (ML) model to determine an optimal bite rate/frame rate/resolution for encoding the video of the computer game to satisfy a just noticeable difference (JND) threshold while minimizing the amount of data being sent.
1 . An apparatus comprising:
a processor assembly configured to:
input, to a machine learning (ML) model, a classification of a video;
input, to the ML model, an encoding parameter of the video, the encoding parameter comprising one of a frame rate, a bit rate, or a resolution;
determine, utilizing the ML model, a just noticeable difference (JND) threshold based on a first mean opinion score;
determine, utilizing the ML model, an updated encoding parameter based on the classification and set to achieve a second mean opinion score above the JND threshold; and
encode the video using the updated encoding parameter, wherein using the updated encoding parameter causes the video to be presented differently than using the encoding parameter and reduces bandwidth or power usage while maintaining viewer-perceived quality.
2 . The apparatus of claim 1 , wherein the processor assembly is further configured to:
send the video after encoding to at least one receiver over a computer network.
3 . The apparatus of claim 1 , wherein the processor assembly is configured to:
store the video after encoding.
4 . The apparatus of claim 1 , wherein the video comprises a computer game video.
5 . The apparatus of claim 1 , wherein the updated encoding parameter comprises an updated frame rate.
6 . The apparatus of claim 1 , wherein the updated encoding parameter comprises an updated bit rate.
7 . The apparatus of claim 1 , wherein the updated encoding parameter comprises an updated resolution.
8 . The apparatus of claim 1 , wherein the ML model is trained on a training set of data comprising at least one subjective index representing whether human viewers can notice differences based on updating of the encoding parameter.
9 . An apparatus comprising:
one or more processors; and
computer memory having stored thereon instructions that, when executed with the one or more processors, causes the apparatus to;
train a machine learning (ML) model using a data set comprising videos, respective classifications of the videos, and at least one subjective index representing whether human viewers can notice differences in updates of an encoding parameter, the at least one subject index comprising a just noticeable difference (JND) threshold based on a first mean opinion score;
train the ML model to receive the encoding parameter of the video, the encoding parameter comprising one of a frame rate, a bit rate, or a resolution;
train the ML model to determine an updated encoding parameter set to achieve a second mean opinion score above the JND threshold; and
encode at least a video using output from the ML model based on the updated encoding parameter such that bandwidth or power usage is reduced while maintaining viewer-perceived quality.
10 . The apparatus of claim 9 , wherein the instructions are executable to send the video after encoding to at least one receiver over a computer network.
11 . The apparatus of claim 9 , wherein the instructions are executable to:
store the video after encoding.
12 . The apparatus of claim 9 , wherein the video comprises a computer game video.
13 . The apparatus of claim 9 , wherein the output comprises an updated frame rate.
14 . The apparatus of claim 9 , wherein the output comprises an updated bit rate.
15 . The apparatus of claim 9 , wherein the output comprises an updated resolution.
16 . A method, comprising:
inputting to a machine learning (ML) model a classification of a video;
inputting, to the ML model, an encoding parameter of the video, the encoding parameter comprising one of a frame rate, a bit rate, or a resolution;
determining, utilizing the ML model, a just noticeable difference (JND) threshold based on a first mean opinion score;
determining, utilizing the ML model, an updated encoding parameter value based on the classification and set to achieve a second mean opinion score above the JND threshold;
receiving, from the ML model, the updated encoding parameter; and
encoding the video at least in part using the updated encoding parameter, wherein using the updated encoding parameter causes the video to be presented differently than using the encoding parameter and reduces bandwidth or power usage while maintaining viewer-perceived quality.
17 . The method of claim 16 , wherein the method further comprises:
sending the video after encoding to at least one receiver over a computer network.
18 . The method of claim 16 , wherein the video comprises computer game video.