This updates our in-tree copy of libvpx to match the 1.2.0 git
tag. All but one of the patches we were carrying are in this
upstream version. Our update.sh script should copy the new
files needed but will not remove the old ones for you.
Runtime cpu detection was rewritten upstream. We now generate
per-platform headers for this and include the correct one from
a vpx_rtcd.h wrapper like we were already doing for vpx_config.h
This revision includes improved assembly optimizations and should
be faster on all platforms.
Includes work by Jan Gerber and Ralph Giles.
--HG--
rename : media/libvpx/vp8/common/arm/neon/save_neon_reg.asm => media/libvpx/vp8/common/arm/neon/save_reg_neon.asm
rename : media/libvpx/vp8/common/arm/armv6/vp8_mse16x16_armv6.asm => media/libvpx/vp8/encoder/arm/armv6/vp8_mse16x16_armv6.asm
rename : media/libvpx/vp8/common/arm/neon/vp8_mse16x16_neon.asm => media/libvpx/vp8/encoder/arm/neon/vp8_mse16x16_neon.asm
rename : media/libvpx/vp8/encoder/x86/x86_csystemdependent.c => media/libvpx/vp8/encoder/x86/vp8_enc_stubs_mmx.c
rename : media/libvpx/vpx_config_arm-linux-gcc.c => media/libvpx/vpx_config_armv7-android-gcc.c
rename : media/libvpx/vpx_config_arm-linux-gcc.h => media/libvpx/vpx_config_armv7-android-gcc.h
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.
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.
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.
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.
After calling SkBitmap::copyTo, the InitFromData method assumed
that the stride of the destination SkBitmap was now the same as the
stride of the source bitmap. This was, however, not the case. Now
the stride is read back out of the destination bitmap.
This was causing a crash due to memory corruption for FORMAT_B8G8R8X8
surfaces.
We monitor the stream's output current time via a new MediaStreamListener
owned by DecodedStreamData. We also track its main-thread Finished status.
While we're writing to a DecodedStreamData stream that hasn't finished its
output, we stay in the DECODER_STATE_COMPLETED state so we can keep updating
video and firing timeupdates.
GetClock() uses the DecodedStreamData stream's current time as the source for
the clock if there is one.
--HG--
extra : rebase_source : aba1d092d3d347e26ebd823d61fcbfa40a8cd1fe