In some embodiments, a method receives source content. A pre-processor pre-processes the source content to output pre-processed source content. The pre-processor includes a first parameter that is trained based on a differentiable proxy codec, and a calculated adjustment to a second parameter of the differentiable proxy codec is used to train the first parameter of the pre-processor. The method encodes the pre-processed source content into compressed pre-processed source content. The compressed pre-processed source content is output.
BACKGROUND
The delivery of content, such as video, audio, and image content, through a network continues to increase. The compression of the content before delivery is important to reduce the amount of data that is transmitted through the network. An encoder/decoder (codec) may encode the content for delivery to a client, which then uses a codec to decode the content. The compression may be lossy and may introduce artifacts, which may be visually undesirable. New standards for codecs may be developed that may improve the performance of codecs. However, the new standards take many years to develop. In the meantime, the existing codecs are used to compress content.
1. A method comprising: receiving source content; pre-processing, by a pre-processor, the source content to output pre-processed source content, wherein the pre-processor includes a first parameter that is trained based on a differentiable proxy codec, and wherein a calculated adjustment to a second parameter of the differentiable proxy codec is used to train the first parameter of the pre-processor; encoding the pre-processed source content into compressed pre-processed source content; and outputting the compressed pre-processed source content. ||
19. A non-transitory computer-readable storage medium having stored thereon computer executable instructions, which when executed by a computing device, cause the computing device to be operable for: receiving source content; pre-processing, by a pre-processor, the source content to output pre-processed source content, wherein the pre-processor includes a first parameter that is trained based on a differentiable proxy codec, and wherein a calculated adjustment to a second parameter of the differentiable proxy codec is used to train the first parameter of the pre-processor; encoding the pre-processed source content into compressed pre-processed source content; and outputting the compressed pre-processed source content. ||
20. An apparatus comprising: one or more computer processors; and a computer-readable storage medium comprising instructions for controlling the one or more computer processors to be operable for: receiving source content; pre-processing, by a pre-processor, the source content to output pre-processed source content, wherein the pre-processor includes a first parameter that is trained based on a differentiable proxy codec, and wherein a calculated adjustment to a second parameter of the differentiable proxy codec is used to train the first parameter of the pre-processor; encoding the pre-processed source content into compressed pre-processed source content; and outputting the compressed pre-processed source content.