[FFmpeg-devel] [PATCH] ARMv6 bswap

Siarhei Siamashka siarhei.siamashka
Wed Sep 5 07:50:19 CEST 2007


Hello All,

ARMv6 has instructions for swapping bytes, a patch for using them is attached.
A minor performance improvement can be observed on MP3 decoding (benchmarked
with mplayer).

Before patch:

# mplayer -benchmark -quiet -ao pcm:file=/dev/null -ac ffmp3 -loop 5 
Road_To_Ruin.mp3 | grep BENCHMARKs

BENCHMARKs: VC:   0.000s VO:   0.000s A:  12.339s Sys:   0.052s =   12.391s
BENCHMARKs: VC:   0.000s VO:   0.000s A:  12.353s Sys:   0.053s =   12.405s
BENCHMARKs: VC:   0.000s VO:   0.000s A:  12.345s Sys:   0.053s =   12.398s
BENCHMARKs: VC:   0.000s VO:   0.000s A:  12.334s Sys:   0.053s =   12.387s
BENCHMARKs: VC:   0.000s VO:   0.000s A:  12.333s Sys:   0.053s =   12.386s

After patch:

# mplayer -benchmark -quiet -ao pcm:file=/dev/null -ac ffmp3 -loop 5 
Road_To_Ruin.mp3 | grep BENCHMARKs

BENCHMARKs: VC:   0.000s VO:   0.000s A:  12.217s Sys:   0.055s =   12.272s
BENCHMARKs: VC:   0.000s VO:   0.000s A:  12.253s Sys:   0.057s =   12.311s
BENCHMARKs: VC:   0.000s VO:   0.000s A:  12.243s Sys:   0.054s =   12.297s
BENCHMARKs: VC:   0.000s VO:   0.000s A:  12.256s Sys:   0.054s =   12.310s
BENCHMARKs: VC:   0.000s VO:   0.000s A:  12.241s Sys:   0.054s =   12.296s

Except for 'flashsv' which fails to work with A32_BITSTREAM_READER properly,
ffmpeg regression tests passed (using Nokia N800, chrooted into
debian EABI rootfs) with this bswap patch applied and also with an older
dsputil patch which would be also very nice to get committed:
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-April/028133.html
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-April/028153.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bswap-armv6.diff
Type: text/x-diff
Size: 660 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20070905/1e4faf42/attachment.diff>



More information about the ffmpeg-devel mailing list