Xpra: Ticket #413: fix csc_nvcuda compilation on win32

Assuming that this module can be made to work reliably, we want the build to succeed on win32 too. The module can then be used for win32 shadow servers, or for client side csc (with video encodings on non-gl windows).

At the moment, it does not (r4127 is needed for setting up the build path):

C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.exe /c /nologo /Ox /MD /W3 \
    /GS- /DNDEBUG -IE:\xpra\trunk\src\win32 -IC:\NVIDIA\CUDA\CUDAToolkit\include \
    -IC:\Python27\include -IC:\Python27\PC \
    /Tcxpra/codecs/csc_nvcuda/csc_nvcuda.c \
    /Fobuild\temp.win32-2.7\Release\xpra/codecs/csc_nvcuda/csc_nvcuda.obj
csc_nvcuda.c
xpra/codecs/csc_nvcuda/csc_nvcuda.c(69) : error C2059: syntax error : '['
xpra/codecs/csc_nvcuda/csc_nvcuda.c(76) : error C2059: syntax error : '['
xpra/codecs/csc_nvcuda/csc_nvcuda.c(83) : error C2059: syntax error : '['
xpra/codecs/csc_nvcuda/csc_nvcuda.c(112) : warning C4034: sizeof returns 0
xpra/codecs/csc_nvcuda/csc_nvcuda.c(129) : warning C4034: sizeof returns 0
xpra/codecs/csc_nvcuda/csc_nvcuda.c(131) : warning C4034: sizeof returns 0
xpra/codecs/csc_nvcuda/csc_nvcuda.c(141) : error C2275: 'va_list' : illegal use of this type as an expression

Looks like MSVC is being a bit behind the times again?



Fri, 09 Aug 2013 12:07:42 GMT - Antoine Martin: description changed


Fri, 09 Aug 2013 12:09:42 GMT - Antoine Martin: description changed


Fri, 09 Aug 2013 12:23:37 GMT - ahuillet:

client side csc (with video encodings on non-gl windows).

This use case is unrealistic. If you can do Cuda, you can do GL equally well, and Cuda setup times as well as stability means you'll want to do GL *more* than Cuda. Such a use case would be a waste of time.

Also, as it stands, csc_nvcuda doesn't even work on Linux. Bothering with Windows at this point is not a worthy goal.


Fri, 09 Aug 2013 12:27:10 GMT - Antoine Martin:

This use case is unrealistic

There is another uses case listed (ie: shadow server) and I can think of a few more, having code that builds on as many platforms as possible is a worthy goal in itself. And the fix doesn't look too hard either.

Also, as it stands, csc_nvcuda doesn't even work on Linux

That's why this ticket is scheduled for 0.11 and I also said: Assuming that this module can be made to work reliably


Thu, 29 Aug 2013 12:01:03 GMT - Antoine Martin:

Another way of dealing with this is to remove our glue layer and use PyCUDA which will make dealing with contexts a lot nicer and more OO-like.

Calling NPP and OpenCV webcam app in Python


Mon, 07 Oct 2013 15:22:08 GMT - Antoine Martin: status changed; resolution set

We now use pycuda which solves this problem, for further details see #384

(NPP is useless to us, and the C code to interface with it was very heavy)


Sat, 23 Jan 2021 04:54:42 GMT - migration script:

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/413