A method for processing media content at a client device, the method comprising: determining an estimated throughput; receiving, (604; 704; 754) from a server device, a priority value for each respective segment group of a plurality of segment groups, wherein for each respective segment group of the plurality of segment groups: the respective segment group includes a respective plurality of segments, each respective segment of the respective segment group represents a same respective temporal section of media content, is retrievable individually and is from a different representation of a plurality of representations of the media content, each of the representations encoded at different bit rates; and the respective priority value for the respective segment group indicates an importance of selecting a segment for the respective temporal section from a representation in the plurality of representations that has a higher bit rate than other ones of the representations; and selecting (606; 706, 708, 710; 756, 758, 760) a segment of each respective segment group of the plurality of segment groups based at least in part on the estimated throughput and the priority values for the segment groups; retrieving the one or more selected segments for playback at the client device. determining an estimated throughput; receiving, (604; 704; 754) from a server device, a priority value for each respective segment group of a plurality of segment groups, wherein for each respective segment group of the plurality of segment groups: the respective segment group includes a respective plurality of segments, each respective segment of the respective segment group represents a same respective temporal section of media content, is retrievable individually and is from a different representation of a plurality of representations of the media content, each of the representations encoded at different bit rates; and the respective priority value for the respective segment group indicates an importance of selecting a segment for the respective temporal section from a representation in the plurality of representations that has a higher bit rate than other ones of the representations; and selecting (606; 706, 708, 710; 756, 758, 760) a segment of each respective segment group of the plurality of segment groups based at least in part on the estimated throughput and the priority values for the segment groups; retrieving the one or more selected segments for playback at the client device. the respective segment group includes a respective plurality of segments, each respective segment of the respective segment group represents a same respective temporal section of media content, is retrievable individually and is from a different representation of a plurality of representations of the media content, each of the representations encoded at different bit rates; and the respective priority value for the respective segment group indicates an importance of selecting a segment for the respective temporal section from a representation in the plurality of representations that has a higher bit rate than other ones of the representations; and selecting (606; 706, 708, 710; 756, 758, 760) a segment of each respective segment group of the plurality of segment groups based at least in part on the estimated throughput and the priority values for the segment groups;