(1) Dynamically switching codec settings (bandwidth, resolution, etc.) on the fly due to changes in congestion on the network. (2) Dynamically switching video codecs on the fly in order to achieve the ...