Here's another patch series, this time aimed at accelerating the
playback of MPEG transport streams (including BluRay ISOs). I was
primarily targeting the ARM11 again (ARMv6) but in practice most of
these are actually cross-platform optimisations.

Benchmarks are given for Raspberry Pi (ARM1176JZF-S), measuring an
avconv command with arguments
  -f null -vcodec copy -acodec copy
The patch series as a whole shows a speedup of 29%.

I realise that there may be some question over whether I've put the
new h264_find_start_code_candidate function pointer in the right
place, or whether it's actually a bug that there are two
H264DSPContext structs, but I'm sure there will be discussion on
those points if so.

Ben Avison (6):
  Add missing h264dsp initialisation call
  New h264dsp method, h264_find_start_code_candidate
  arm: Add assembly version of h264_find_start_code_candidate
  Remove one 64-bit integer modulus operation per MPEGTS packet
  Remove one memcpy per MPEGTS packet
  Made discard_pid() faster for single-program MPEGTS streams

 libavcodec/arm/Makefile           |    1 +
 libavcodec/arm/h264dsp_armv6.S    |  251 +++++++++++++++++++++++++++++++++++++
 libavcodec/arm/h264dsp_init_arm.c |    4 +
 libavcodec/h264_parser.c          |   28 +----
 libavcodec/h264dsp.c              |   29 +++++
 libavcodec/h264dsp.h              |    9 ++
 libavformat/avio.h                |   15 +++
 libavformat/aviobuf.c             |   12 ++
 libavformat/mpegts.c              |   58 +++++++--
 9 files changed, 369 insertions(+), 38 deletions(-)
 create mode 100644 libavcodec/arm/h264dsp_armv6.S

-- 
1.7.5.4

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to