public function getMedia($id) {
		// Make sure we're logged in and have a valid access token.
		if (!$this->auth_token || !$this->username) {
			return FALSE;
		}

		$timestamp = parent::timestamp();
		$result = parent::post(
			'/blob',
			array(
				'id' => $id,
				'timestamp' => $timestamp,
				'username' => $this->username,
			),
			array(
				$this->auth_token,
				$timestamp,
			)
		);

		if (parent::isMedia(substr($result, 0, 2))) {
			return $result;
		}
		else {
			$result = parent::decryptECB($result);

			if (parent::isMedia(substr($result, 0, 2))) {
				return $result;
			}
			
			//When a snapchat video is sent with "text" or overlay
			//the overlay is a transparent PNG file Zipped together
			//with the M4V file.
			//First two bytes are "PK" x50x4B; thus the previous media check
			//will fail and would've returned a FALSE on an available media.
			if (parent::isCompressed(substr($result, 0, 2))) {
				//Uncompress
				$result = parent::unCompress($result);
				//Return Media and Overlay
				return $result;
			}
		}

		return FALSE;
	}