We need to generate compressed version of every texture in "active" creatives. Specifically, read ad textures from S3, compress in a variety of formats (ETC1, PVRTC, ATITC, S3TC, and more), then upload back to S3 for ad serving.
The compressed textures need to be destroyed when creatives are disabled, and creatives are only "active" after compression finishes (so don't just fire and forget).