Bug 934412 - Add header offset in SharedRGBImage::GetBuffer r=nical
Bug 918135 - Parse VBR headers in MP3FrameParser for calculating exact duration r=cpearce

This patch adds support for Xing and VBRI headers to MP3FrameParser so that we
can calculate the exact duration of an MP3 file if these headers are present.
It is also now more robust against large ID3 tags and discontinuities in input.
Bug 918135 - Windows-specific changes for MP3FrameParser refactor r=cpearce
Bug 918135 - Use MP3FrameParser in GStreamer backend for MP3 duration estimation r=cpearce

This patch adds support for our home-grown MP3 frame parser to the GStreamer
backend so that our duration estimation is consistent across all platforms.
Bug 918135 - Reduce MAX_SKIPPED_BYTES in MP3FrameParser r=cpearce

Now that we have stopped counting ID3 tags towards our count of non-MP3 data in
the MP3 frame parser, our threshold for claiming a stream is not MP3 can be far
lower than before.
Bug 918135 - More tests for MP3FrameParser r=cpearce

This patch introduces two more MP3 test cases to exercise MP3FrameParser:
* vbr-head.mp3: This file contains a Xing header which gives an exact duration
    of 10 seconds. However, it only contains 4 MP3 frames total for a real
    duration of around 1 second. It is expected that we read the Xing header
    and report 10 seconds.
* huge-id3.mp3: This file contains more than 130KB of ID3 tags. When we search
    for MP3 frames, we give up after X KB of non-MP3 data. ID3 tags should not
    count towards the non-MP3 count, since they can be very large. This test
    case makes sure the skipping of ID3 tags works correctly.