[FFmpeg-devel] [PATCH] dstdec: big-endian compatiblity
pross at xvid.org
Mon Jan 7 00:55:25 EET 2019
On Sun, Jan 06, 2019 at 12:57:37PM +0100, Carl Eugen Hoyos wrote:
> 2019-01-06 12:12 GMT+01:00, Peter Ross <pross at xvid.org>:
> > for the '127-bit shift left' algorithm to work as intended, little-endian
> > reads and writes must be used.
> Why not using AV_WL64() and and AV_RL64()?
> Is there a measurable speed difference?
x86: no difference, compiler output is identical.
other cpus that do not support unaligned reads: big difference, due to the
compiler inserting additional instructions to check the alignment of the data.
RN64A: bench: utime=105.902s stime=0.040s rtime=105.933s
RN64: bench: utime=230.055s stime=0.004s rtime=230.082s
why so much difference? the 127-bit shift left operation must happen for
each 1-bit DSD sample. in a single channel of DSD audio, there are at
least 2.8 millions 1-bit samples per second.
(A907 E02F A6E5 0CD2 34CD 20D2 6760 79C5 AC40 DD6B)
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 195 bytes
Desc: not available
More information about the ffmpeg-devel