A method comprising, generating, by a media device , a first query fingerprint of first media content being consumed by the media device ; sending, by the media device , the first query fingerprint to a server; in response to the server finding a match to the first query fingerprint : (i) receiving, at the media device from the server, an identification of a first channel being watched via the media device ; (ii) receiving, from the server, a first plurality of fingerprints generated from frames of the first media content occurring after a frame of the first media content currently being consumed by the media device; (iii) receiving, from the server, a second plurality of fingerprints generated from second media content being streamed on a second channel, the second channel being sequentially adjacent to the first channel on a channel guide; storing, by the media device , the first plurality of fingerprints and the second plurality of fingerprints in a local database of computer-readable storage medium of the media device ; generating, by the media device , a second query fingerprint of second media content being consumed by the media device ; comparing, by the media device , the second query fingerprint with the first plurality of fingerprints and with the second plurality of fingerprints stored in the local database ; and determining, by the media device , whether the media device remains set on the first channel or has changed to the second channel based on the comparison of the second query fingerprint. generating, by a media device , a first query fingerprint of first media content being consumed by the media device ; sending, by the media device , the first query fingerprint to a server; in response to the server finding a match to the first query fingerprint : (i) receiving, at the media device from the server, an identification of a first channel being watched via the media device ; (ii) receiving, from the server, a first plurality of fingerprints generated from frames of the first media content occurring after a frame of the first media content currently being consumed by the media device; (iii) receiving, from the server, a second plurality of fingerprints generated from (i) receiving, at the media device from the server, an identification of a first channel being watched via the media device ; (ii) receiving, from the server, a first plurality of fingerprints generated from frames of the first media content occurring after a frame of the first media content currently being consumed by the media device; (iii) receiving, from the server, a second plurality of fingerprints generated from second media content being streamed on a second channel, the second channel being sequentially adjacent to the first channel on a channel guide; storing, by the media device , the first plurality of fingerprints and the second plurality of fingerprints in a local database of computer-readable storage medium of the media device ; generating, by the media device , a second query fingerprint of second media content being consumed by the media device ; comparing, by the media device , the second query fingerprint with the first plurality of fingerprints and with the second plurality of fingerprints stored in the local database ; and determining, by the media device , whether the media device remains set on the first channel or has changed to the second channel based on the comparison of the second query fingerprint. <EOS>