On Thu, Apr 23, 2015 at 05:54:05PM -0400, Tucker DiNapoli wrote: > I've revised the code and now the linear_interpolate and median deinterlace > filters > give the exact same results for both C and sse2/avx2. I'm almost certain the > reason > the other deinterlace filters don't give the exact same result is due to the > use > of tempory memory to hold some lines, I'm not exactly sure what to do about > this > however. > > Unfortunately this patch causes the C/MMX versions to produce different > results than before. I'm not exactly sure why this is, I changed the code > to work 4 blocks at a time, which I'm guessing is the issue, but I don't > know why that would be. If anyone has any idea why this is happening and > how to fix it it would be appreciated.
i really wish i knew and could fix all bugs in this quickly now but i cant :( > > ____________________________________________________________________________ > > This commit adds several new files containing yasm assembly code, they are: > PPContext.asm; Defines the PPContext struct using the yasm struc command > PPUtil.asm; Various utility macros used in the other asm code > block_copy.asm; Implements the block copy function, the sse2 and avx2 > versions copy multiple blocks at once. > deinterlace.asm; Contains implemenations of the postprocessing filters > with support for sse2 and avx2. > > Adding these new functions to postprocess_template entailed adding a new > templates for AVX2 and modifying the current SSE2 template to use the > sse2 functions. A new deinterlace function was added to move the logic > of which deinterlace function to use out of the postprocess function and > make adding the new functions eaiser. The inline code for packing QP > into pQPb was moved into a seperate asm file and uptaded for sse2/avx2. > ./ffplay matrixbench_mpeg2.mpg -vf tinterlace=4,pp=lb shows some remaining interlacing artifacts in some individual blocks thats even happening with -cpuflags 0 after the patch this patch also seems to break the deblocking filters -vf 'pp=fq|50/va/ha' looks vissibly different after it with a low bitrate video [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Complexity theory is the science of finding the exact solution to an approximation. Benchmarking OTOH is finding an approximation of the exact
signature.asc
Description: Digital signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel