1. A method of providing video data, comprising: encoding a subject video stream by a feature-based compression process that utilizes feature models from a global feature model library, said encoding implicitly using the feature models to indicate macroblocks in the subject video to encode by forming tracks using location information from one or more of the feature models in multiple reference frames, the tracks indicating respective locations of macroblocks in a current frame of the subject video stream being encoded, and explicitly using pixels of the feature models to improve prediction of said macroblocks relative to a first prediction of said macroblocks, where the encoding results in an encoded video data, where the use of feature models to indicate macroblocks in the subject video avoids the need to segment features from non-features during the feature-based compression process of the subject video, and wherein the feature-based compression process applies feature-based prediction across multiple different video sources based on the feature models, the multiple different video sources being at least the subject video stream and one or more input videos used to generate the global feature model library; transmitting the encoded video data to a requesting device upon command, said feature models from the global feature model library being made accessible to the requesting device and enabling decoding of the encoded video data at the requesting device; wherein the global feature model library is formed by: receiving the one or more input videos, each input video being different from the subject video stream; for each of the input videos, generating feature information and a respective feature model; and storing in a data storage device or on cloud storage the feature models generated from the input videos, the data store or cloud storage providing pertinent feature models to the feature-based compression process and the requesting device.