[FFmpeg-devel] sws support xyz input floors MS Antivirus Program

Jan Ehrhardt phpdev at ehrhardt.nl
Sun May 5 21:29:56 CEST 2013


Jan Ehrhardt in gmane.comp.video.ffmpeg.devel (Sun, 05 May 2013 19:50:40
+0200):
>Carl Eugen Hoyos in gmane.comp.video.ffmpeg.devel (Sun, 5 May 2013
>>Which line in fill_xyztables() is responsible?
>
>Any of the 2 lines with the lrint in it:
>
>        xyzgamma_tab[i] = lrint(pow(i / 4095.0, xyzgamma) * 4095.0);
>        rgbgamma_tab[i] = lrint(pow(i / 4095.0, rgbgamma) * 4095.0);
>
>I do not know what these lines are supposed to do and if there is
>another way to achieve the same without using lrint.

This is as far as I could get (in MingW64 on Windows):
No crash:
    /* set gamma vectors */
    for (i = 0; i < 17; i++) {
        xyzgamma_tab[i] = lrint(pow(i / 4095.0, xyzgamma) * 4095.0);
        rgbgamma_tab[i] = lrint(pow(i / 4095.0, rgbgamma) * 4095.0);
    }

$ ls -la *.exe
-rwxr-xr-x 1 Jan Administrators 16257536 May  5 21:09 ffmpeg.exe
-rwxr-xr-x 1 Jan Administrators 95009620 May  5 21:09 ffmpeg_g.exe
-rwxr-xr-x 1 Jan Administrators 16199680 May  5 21:09 ffprobe.exe
-rwxr-xr-x 1 Jan Administrators 94756199 May  5 21:09 ffprobe_g.exe

Crash:
    /* set gamma vectors */
    for (i = 0; i < 18; i++) {
        xyzgamma_tab[i] = lrint(pow(i / 4095.0, xyzgamma) * 4095.0);
        rgbgamma_tab[i] = lrint(pow(i / 4095.0, rgbgamma) * 4095.0);
    }

$ ls -la *.exe
-rwxr-xr-x 1 Jan Administrators 16257024 May  5 21:03 ffmpeg.exe
-rwxr-xr-x 1 Jan Administrators 95006036 May  5 21:03 ffmpeg_g.exe
-rwxr-xr-x 1 Jan Administrators 16198656 May  5 21:04 ffprobe.exe
-rwxr-xr-x 1 Jan Administrators 94751591 May  5 21:03 ffprobe_g.exe

The weird thing is that the <17 variant is actually larger than the <18
one. <16 is as large as <17.

<4096 (the original version, that floors MSE) is as small as <18:

$ ls -la *.exe
-rwxr-xr-x 1 Jan Administrators 16257024 May  5 21:18 ffmpeg.exe
-rwxr-xr-x 1 Jan Administrators 95006036 May  5 21:17 ffmpeg_g.exe
-rwxr-xr-x 1 Jan Administrators 16198656 May  5 21:17 ffprobe.exe
-rwxr-xr-x 1 Jan Administrators 94751591 May  5 21:17 ffprobe_g.exe

I sense some issues in compiler optimization, but that is far above my
head. The Windows event log does not make me wiser:

Microsoft Antimalware engine has been terminated due to an unexpected
error.
 	Failure Type: Crash
 	Exception code: 0xc0000005
 	Resource:
file:D:\MinGW\msys\home\Jan\mplayer\ffmpeg\ffprobe_g.exe

The Microsoft Antimalware Service service terminated unexpectedly. It
has done this 16 time(s).

Jan



More information about the ffmpeg-devel mailing list