Closed GoogleCodeExporter closed 9 years ago
https://webrtc-codereview.appspot.com/1216005/
Original comment by fbarch...@chromium.org
on 19 Mar 2013 at 7:15
[deleted comment]
r612 adds a 'psnr' tool which supports SSIM, PSNR and MSE.
e.g.
psnr -ssim tulip_vp9.webm.1280x720_30Hz_P420.yuv tulip.1280x720_30Hz_P420.yuv
Frame SSIM-Y SSIM-U SSIM-V SSIM-All Frame
Avg: 0.912013 0.944272 0.945908 0.923039 500
Min: 0.889490 0.926664 0.928087 0.902563 125
r613 adds a Makefile in the util/ folder.
Original comment by fbarch...@chromium.org
on 21 Mar 2013 at 1:09
r616 fixes this:
util\psnr_main.cc(21) : warning C4005: '_CRT_SECURE_NO_WARNINGS' : macro
redefinition
Original comment by fbarch...@chromium.org
on 22 Mar 2013 at 6:58
Future work
1. convert to c - allows msys cross compile. needs to use malloc instead of new
2. move psnr.cc and ssim.cc into source/ folder, asis.
3. remove compare.cc psnr/ssim functions - move to psnr.cc and ssim.cc
4. add sln for windows
Original comment by fbarch...@chromium.org
on 23 Mar 2013 at 9:19
I've been asked for pre-compiled binaries of PSNR tool. The plan is to post
them on 'downloads'. Likely one per platform, but may contain more than one
binary for 32 vs 64 or openmp vs single thread, or sse2 vs non-sse2.
The Makefile works for g++, but fails for c++ (clang) on OSX?
make
c++ -msse2 -O3 -fopenmp -o psnr psnr.cc ssim.cc psnr_main.cc
ld: library not found for -lgomp
clang: error: linker command failed with exit code 1 (use -v to see invocation)
This works
g++ -msse2 -O3 -fopenmp -o psnr psnr.cc ssim.cc psnr_main.cc
Its also unlikely to work for icc, which seems to use -openmp option.
Original comment by fbarch...@chromium.org
on 25 Mar 2013 at 7:43
r621 makes -t option visible only to omp build
Original comment by fbarch...@chromium.org
on 26 Mar 2013 at 9:37
Changes planned for next version of binaries:
-static -m32 for linux, so it will work on more cpus and distros
-minos for osx
omp build only
Provide sample data in another download for testing.
Original comment by fbarch...@google.com
on 27 Mar 2013 at 5:38
r634 posted for windows and linux
https://code.google.com/p/libyuv/downloads/list
Built with:
g++ -msse2 -O3 -static -fopenmp -o psnr psnr.cc ssim.cc psnr_main.cc
-Wl,--strip-all
-static used to run on most OSs. tested on lucid and precise.
-omp for best performance
-strip-all produces smaller binary than strip -g
-msse2 for both psnr and ssim optimization
For windows the following static pthread lib is used with g++ 4.6:
ftp://sourceware.org/pub/pthreads-win32
copy c:\pthreads-w32-2-9-1-release\Pre-built.2\lib\x86\libpthreadGC2.a
c:\MinGW\lib\libpthread.a
Original comment by fbarch...@chromium.org
on 3 Apr 2013 at 5:08
Mac version of r634 posted. Its built with
g++ -msse2 -O3 -fopenmp -o psnr psnr.cc ssim.cc psnr_main.cc
Linux version tested on Fedora 13, Ubuntu Lucid and Ubuntu Precise.
Initial tool complete. Report issues/feature requests for additional changes.
Original comment by fbarch...@chromium.org
on 4 Apr 2013 at 7:18
Original comment by fbarch...@chromium.org
on 4 Apr 2013 at 7:19
Original issue reported on code.google.com by
fbarch...@chromium.org
on 18 Mar 2013 at 7:26