PDA

View Full Version : netAvs2Yuv 0.3.1


sh0dan
31st December 2006, 01:30
I have created a command line client for TCPDeliver, and has a friend help me with the Linux port.

It allows for you to send uncompressed video over LAN from an AviSynth server, and deliver it to ffmpeg/mencoder/mplayer/x264, etc.

I have used a version of avs2yuv as base for the code, and usage is the same as avs2yuv, just instead of the filename, you give the ip-adress. So you can use like this:

netavs2yuv 192.168.0.5 -o -|ffmpeg -i - out.mpg
netavs2yuv 192.168.0.5 -o -|mplayer -

Download here:
http://klauspost.googlepages.com/netAvs2yuv-0.3.1.tar.bz2

(Makefile and Windows Binary included)

d'Oursse
31st December 2006, 10:25
at least, I can make a configuration system like avs3, or else a good old autofoo build system. For packages like ebuild, deb or rpm, i will be of no help

sh0dan
31st December 2006, 16:15
@d'Oursse: I guess a makefile or similar would be enough. I still have a few C++ things in there - a "new" and some exceptions from avisynth.h, so right now it requires g++.

Could you list the errors that pop up with gcc, I can see if I can fix them?

d'Oursse
31st December 2006, 17:04
I've attached an archive (remove the .zip suffix). I've seen some warnings in netavs2yuv.cpp:

1) Some that I've corrected :
netavs2yuv.cpp:309: warning: format '%s' expects type 'char*', but argument 3 has type 'const char**'
netavs2yuv.cpp:327: warning: format '%ld' expects type 'long int', but argument 5 has type 'unsigned int'
netavs2yuv.cpp:327: warning: format '%ld' expects type 'long int', but argument 6 has type 'unsigned int'

2) some that i've not corrected :
netavs2yuv.cpp:377: warning: unused variable 'planes'
netavs2yuv.cpp:390: warning: 'data' may be used uninitialized in this function

There is an error in tcpcommon2-5.h:
tcpcommon2-5.h:205: error: 'HINSTANCE' does not name a type

it suffices to add guards (I've added them). In 2.6, you've commented it. I don't really know what should be done here.

There's also a Makefile in the archive

It compiles with AVS2_5 defined or not.

Maybe you should another variable than _MSC_VER, so that mingw or cygwin users can compile it (like _WIN32). Maybe there are other warnings/errors with mingw, I've not tested it.

sh0dan
12th January 2007, 20:45
@d'Oursse: Thanks a bundle!

I have added a frame prefetching option to allow frame prefetching, which should increase performance. Default is 5 frames.