[FFmpeg-devel] WinRT API support patch

Reimar Döffinger Reimar.Doeffinger at gmx.de
Fri Nov 21 08:59:37 CET 2014


On 21.11.2014, at 07:44, Jesse Jiang <jessejiang0214 at outlook.com> wrote:
> Now, I find a function get_generic_seed()
> So, I use this function will work fine?

It is already used as fallback so I don't see why you'd have to change the code at all.

> uint32_t av_get_random_seed(void){    uint32_t seed;
> #if HAVE_CRYPTGENRANDOM    HCRYPTPROV provider;    if (CryptAcquireContext(&provider, NULL, NULL, PROV_RSA_FULL,                            CRYPT_VERIFYCONTEXT | CRYPT_SILENT)) {        BOOL ret = CryptGenRandom(provider, sizeof(seed), (PBYTE) &seed);        CryptReleaseContext(provider, 0);        if (ret)            return seed;    }#endif
> #if HAVE_WINRTAPI    return get_generic_seed();#endif
>    if (read_random(&seed, "/dev/urandom") == sizeof(seed))        return seed;    if (read_random(&seed, "/dev/random")  == sizeof(seed))        return seed;    return get_generic_seed();}
>> From: jessejiang0214 at outlook.com
>> To: ffmpeg-devel at ffmpeg.org
>> Date: Fri, 21 Nov 2014 03:51:12 +0000
>> Subject: Re: [FFmpeg-devel] WinRT API support patch
>> 
>> Hi All,
>> I did some research, rand() is pseudo random. CryptGenRandom is the system-wide seed, but it cannot be used in Windows RT.
>> I try to use CryptographicBuffer, which is Windows RT API, but there is a problem. This API needs to link Windows.winmd. The Windows.winmd just like a DLL, but it may different from Windows RT and Windows Phone. First, the SDKs are in the different PATH,Second, the files are also different.
>> It means that developer need to choice platform first, and then compiler for different library.
>> I hope ffmpeg only depends on support win32 apis and CRT apis.
>> So is there any way to instead of srand(time(0)); rand(); ? How about c++11 <random> or Mersenne twister Algorithmic
>> Best regards,Jesse
>> Date: Fri, 21 Nov 2014 02:49:59 +0100
>> From: michaelni at gmx.at
>> To: ffmpeg-devel at ffmpeg.org
>> Subject: Re: [FFmpeg-devel] WinRT API support patch
>> 
>> On Fri, Nov 21, 2014 at 01:43:29AM +0000, Jesse Jiang wrote:
>>> Do you mean that we can use rand() instead of CryptGenRandom in ffmpeg?
>> 
>> rand() is completely wrong
>> its not even doing the correct operation
>> 
>> rand() is pseudo random
>> the code requires a strong (and non pseudo) random value
>> 
>> [...]
>> -- 
>> Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
>> 
>> When you are offended at any man's fault, turn to yourself and study your
>> own failings. Then you will forget your anger. -- Epictetus
>> 
>> _______________________________________________
>> ffmpeg-devel mailing list
>> ffmpeg-devel at ffmpeg.org
>> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel                         
>> _______________________________________________
>> ffmpeg-devel mailing list
>> ffmpeg-devel at ffmpeg.org
>> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>                         
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


More information about the ffmpeg-devel mailing list