This question puzzled me for a couple of days, I have search all the forum again and again, but no result.
def playing(self):
print "begining of opening"
# self.tex = MovieTexture("WelcomeVideo")
# assert self.tex.read("sounds/Welcome.avi"), "Failed to load video!"
self.tex = loader.loadTexture("sounds/Welcome.avi")
self.tex.play()
print "x--------x"
# Set up a fullscreen card to set the video texture on.
self.cm = CardMaker("My Fullscreen Card")
# self.cm.setFrame( -1, 1, -1, 1 )
self.cm.setFrameFullscreenQuad()
self.cm.setUvRange(self.tex)
self.card = NodePath(self.cm.generate())
self.card.reparentTo(render2d)
self.card.setTexture(self.tex)
self.card.setTexScale(TextureStage.getDefault(), self.tex.getTexScale())
self.sound=loader.loadSfx("sounds/piantou.mp3")#using sounds/piantou.avi in p3d, it give messages:unsupported format
print "y--------y"
# Synchronize the video to the sound.
# self.tex.synchronizeTo(self.sound)
self.sound.play()
I run the upper code in python, all is ok. But after I pack it to p3d file, the avi file cannot be played.
Using MovieTexture, no message and a white window. Using loadTexture, messages are:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'C:\DOCUME~1\ADMINI~1\LOCALS~1\APPLIC~1\
Panda3D\start\sounds\piantou.avi':
Duration: 00:00:09.6, start: 0.000000, bitrate: 270 kb/s
Stream #0.0(und): Video: mpeg4, yuv420p, 320x240, 18.00 fps(r)
Stream #0.1(und): Audio: mp4a / 0x6134706D, 22050 Hz, stereo
,but give a black window.
I tried to convet it using mpeg or xidv codecs, but no use.
All the above, self.sound could be played well.