1. A method comprising: receiving, at a computing device, a request from a media module associated with a user on a user device, the request identifying a media file; streaming, from the computing device, a first portion of the media file to the media module; generating, via the computer device, a first set of one or more keywords associated with the first portion of the media file; selecting, via the computing device, based on the first set of one or more keywords associated with the first portion, a first advertisement; and transmitting, from the computing device, the first advertisement and first information associating the first advertisement with the first portion of the media file to the media module for display to the user on a display on the user's device.
8. The method of claim 1 wherein generating a first set of one or more keywords comprises: associating a user identifier with the request; and retrieving demographic information associated with the user identifier from a user information database.