[FFmpeg-devel] [PATCH 1/6] x86: huffyuvdsp: port mmx add_bytes to yasm
Christophe Gisquet
christophe.gisquet at gmail.com
Thu May 29 19:37:36 CEST 2014
2014-05-29 18:33 GMT+02:00 Michael Niedermayer <michaelni at gmx.at>:
>> +.2:
>> + and wq, 2*mmsize-1
>> + jz .end
>> + add dstq, wq
>> + add srcq, wq
>> + neg wq
>> + mov sizeb, [srcq + wq]
>> + add [dstq + wq], sizeb
>> + inc wq
>> + jmp .2
>
> this looks rather odd, i suspect this doesnt work
You're right, I've messed up my jump, and it didn't show up because
the fate files are 352x288.
Testing with attached patch "0005-"[...] (you may want to apply it):
1) ./tests/videogen out.yuv 162 144
2) Generate encoded files and reference crcs:
for i in 0 1 2 3; do
./ffmpeg_g -s 162x144 -pix_fmt yuv420p -i out.yuv -vcodec ffvhuff
-pred $i -y out$i.avi
./ffmpeg_g -cpuflags none -i out$i.avi -an -sn -f framecrc - | grep ^0 > ref$i
done
Then I ran:
for insn in "mmx" "mmx+mmxext" "sse2"; do
for i in 0 1 2 3; do
./ffmpeg_g -cpuflags $insn -i out$i.avi -an -sn -f framecrc - | grep
^0 > out$i; cmp out$i ref$i || echo "Mismatch"
done
done
While the previous patch crashed on -pred 1 and sse2, there is neither
crash nor mismatch now.
--
Christophe
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0005-tests-allow-passing-dimensions-to-videogen.patch
Type: text/x-patch
Size: 1411 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20140529/99bd0a08/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-x86-huffyuvdsp-port-add_bytes-to-yasm.patch
Type: text/x-patch
Size: 6126 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20140529/99bd0a08/attachment-0001.bin>
More information about the ffmpeg-devel
mailing list