A non-transitory, machine-readable medium, comprising executable instructions that, when executed by a processing system including a processor of a communication device, facilitate performance of operations, the operations comprising:
- obtaining a data budget associated with a communication session for streaming video content over a communication network from a video content server;
- determining a first portion of the data budget that is associated with a first segment of the video content;
- identifying a first group of tracks for the first segment;
- determining an available bandwidth associated the communication network;
- obtaining quality information from the video content server over the communication network, wherein the quality information is associated with an amount of complexity of the video content;
- determining a first target quality for the first segment based on the first portion of the data budget, the quality information, and the available bandwidth;
- determining a second target quality for a second segment of the video content based on a second portion of the data budget and the quality information;
- and
- obtaining a quality threshold of the first target quality, wherein the determining the second target quality comprises determining that the second target quality is within the quality threshold of the first target quality.