Hello,
Great stuff this pyvnc2swf!
I just want to report an issue with the mpg output, probably due to
PyMedia rather than pyvnc2swf.
I'm running Ubuntu 6.06 (Dapper Drake) i386. With PyMedia 1.3.7.3 (the
latest version) I get the following exception:
--
mirko@nefertiti:~$ ./apps/pyvnc2swf-0.8.2/edit.py -o demo.mpg demo.swf
Using pygame 1.7.1release
Using pymedia 1.3.7.0
Scanning source swf file: demo.swf...
Input movie: version=7, size=600x450, framerate=12fps, frames=145,
duration=12.1 s.
Output movie size: 600x450
Creating MPEG: 'demo.mpg': codec=mpeg2video, size=600x450, framerate=12.0
.Traceback (most recent call last):
File "./apps/pyvnc2swf-0.8.2/edit.py", line 234, in ?
if __name__ == "__main__": main(sys.argv[1:])
File "./apps/pyvnc2swf-0.8.2/edit.py", line 229, in main
mp3seek=mp3seek, mp3skip=mp3skip)
File "./apps/pyvnc2swf-0.8.2/edit.py", line 84, in reorganize
builder.build(r)
File "/home/mirko/apps/pyvnc2swf-0.8.2/output.py", line 874, in build
self.stream.next_frame()
File "/home/mirko/apps/pyvnc2swf-0.8.2/output.py", line 758, in next_frame
self.out_file.write(encFrame)
TypeError: argument 1 must be string or read-only buffer, not
pymedia.video.vcod ec.VFrame
--
So I've tried PyMedia version 1.3.5.0 instead, which is the version
mentioned on the pyvnc2swf web page, and it works correctly.
Seems like the API for Encoder.encode() has changed and it now returns a
VFrame instead of a string? If that's the case (why an API change in a
minor release?) maybe it could be mentioned in the documentation that
pyvnc2swf required *exactly* version 1.3.5.0 of PyMedia.
Thanks
Mirko
|