Reducing utilization of a hardware resource by a media stream by downgrading from a high-complexity codec to a low-complexity codec to process the media stream
A computer-implemented method for conserving resources on constrained devices may include (i) identifying a media stream on a resource-constrained device, (ii) detecting that a utilization, at least in part by the media stream, of a hardware resource on the resource-constrained device meets a predetermined threshold for hardware resource strain, and (iii) in response to detecting that the utilization meets the predetermined threshold for hardware resource strain, reducing the utilization of the hardware resource by the media stream by downgrading a codec used by the resource-constrained device to process the media stream. Various other methods, systems, and computer-readable media are also disclosed.
1 . A computer-implemented method comprising:
initiating, via a resource-constrained device, a connection with an augmented-reality system, wherein the resource-constrained device comprises a wrist-wearable device;
receiving, from the augmented-reality system, information identifying one or more available codecs including a high-complexity codec and a low-complexity codec;
identifying, via the resource-constrained device, the high-complexity codec to use for a media stream between the resource-constrained device and the augmented-reality system;
initiating, via the resource-constrained device, a media stream using the high-complexity codec;
detecting that a utilization, at least in part by the media stream using the high-complexity codec, of a hardware resource on the resource-constrained device meets a predetermined threshold for hardware resource strain; and
in response to detecting that the utilization meets the predetermined threshold for hardware resource strain, reducing the utilization of the hardware resource by the media stream by downgrading from the high-complexity codec used by the resource-constrained device to the low-complexity codec to process the media stream.
2 . The computer-implemented method of claim 1 , wherein the hardware resource comprises a heat dissipation capability of the resource-constrained device.
3 . The computer-implemented method of claim 2 , wherein detecting that the utilization of the hardware resource meets the predetermined threshold for hardware resource strain comprises detecting, via one or more temperature sensors, that a temperature of the resource-constrained device meets a predetermined threshold for overheating.
4 . The computer-implemented method of claim 2 , wherein the resource-constrained device is resource-constrained at least in part due to having limited surface area to dissipate heat.
5 . The computer-implemented method of claim 2 , wherein reducing the utilization of the hardware resource by the media stream by downgrading from the high-complexity codec comprises reducing thermal output of a processor of the resource-constrained device by reducing computing operations performed by the processor via downgrading the high-complexity codec.
6 . The computer-implemented method of claim 1 , wherein the hardware resource comprises remaining battery charge.
7 . The computer-implemented method of claim 6 , wherein reducing the utilization of the hardware resource by the media stream by downgrading from the high-complexity codec comprises reducing a power consumption of a processor of the resource-constrained device by reducing computing operations performed by the processor via downgrading from the high-complexity codec.
8 . The computer-implemented method of claim 1 , wherein downgrading from the high-complexity codec comprises switching from a higher-complexity version of a codec to a lower-complexity version of the same codec that produces less resource strain on the hardware resource than the higher-complexity version of the same codec.
9 . The computer-implemented method of claim 1 , wherein downgrading from the high-complexity codec comprises switching from the high-complexity codec to the comparatively low-complexity codec that produces less resource strain on the hardware resource than the high-complexity codec.
10 . The computer-implemented method of claim 1 , further comprising:
detecting that the utilization, at least in part by the media stream, of the hardware resource on the resource-constrained device meets an additional predetermined threshold for hardware resource strain; and
in response to detecting that the utilization meets the additional predetermined threshold for hardware resource strain, further reducing the utilization of the hardware resource by the media stream by further downgrading from the low-complexity codec used by the resource-constrained device to process the media stream.
11 . The computer-implemented method of claim 1 , further comprising:
detecting that the utilization, at least in part by the media stream, of the hardware resource on the resource-constrained device meets a predetermined threshold for excess resource capacity; and
in response to detecting that the utilization meets the predetermined threshold for excess resource capacity, upgrading from the low-complexity codec used by the resource-constrained device to process the media stream.
12 . The computer-implemented method of claim 1 , wherein the high-complexity codec comprises an audio codec.
13 . The computer-implemented method of claim 1 , wherein the media stream comprises an audio call, wherein audio associated with the audio call is captured via one or more microphones and output via one or more speakers of the resource-constrained device.
14 . A system comprising:
at least one physical processor configured to:
initiate, via a resource-constrained device, a connection with an augmented-reality system, wherein the resource-constrained device comprises a wrist-wearable device;
receive, from the augmented-reality system, information identifying one or more available codecs including a high-complexity codec and a low-complexity codec;
identify, via the resource-constrained device, the high-complexity codec to use for a media stream between the resource-constrained device and the augmented-reality system;
initiate, via the resource-constrained device, a media stream using the high-complexity codec;
detect that a utilization, at least in part by the media stream using the high-complexity codec, of a hardware resource on the resource-constrained device meets a predetermined threshold for hardware resource strain; and
in response to detecting that the utilization meets the predetermined threshold for hardware resource strain, reduce the utilization of the hardware resource by the media stream by downgrading from the high-complexity codec used by the resource-constrained device to the low-complexity codec to process the media stream.
15 . The system of claim 14 , wherein the hardware resource comprises a heat dissipation capability of the resource-constrained device.
16 . The system of claim 15 , wherein detecting that the utilization of the hardware resource meets the predetermined threshold for hardware resource strain comprises detecting, via one or more temperature sensors, that a temperature of the resource-constrained device meets a predetermined threshold for overheating.
17 . The system of claim 15 , wherein the resource-constrained device is resource-constrained at least in part due to having limited surface area to dissipate heat.
18 . The system of claim 15 , wherein reducing the utilization of the hardware resource by the media stream by downgrading from the high-complexity codec comprises reducing thermal output of a processor of the resource-constrained device by reducing computing operations performed by the processor via downgrading from the high-complexity codec.
19 . A non-transitory computer-readable medium comprising one or more computer-readable instructions that, when executed by at least one processor of a computing device, cause the computing device to:
initiate, via a resource-constrained device, a connection with an augmented-reality system, wherein the resource-constrained device comprises a wrist-wearable device;
receive, from the augmented-reality system, information identifying one or more available codecs including a high-complexity codec and a low-complexity codec;
identify, via the resource-constrained device, the high-complexity codec to use for a media stream between the resource-constrained device and the augmented-reality system;
initiate, via the resource-constrained device, a media stream using the high-complexity codec;
detect that a utilization, at least in part by the media stream using the high-complexity codec, of a hardware resource on the resource-constrained device meets a predetermined threshold for hardware resource strain; and
in response to detecting that the utilization meets the predetermined threshold for hardware resource strain, reduce the utilization of the hardware resource by the media stream by downgrading from the high-complexity codec used by the resource-constrained device to a the low-complexity codec to process the media stream.