2014-01-06 43 views
0

我使用pjsua Python包装做出SIP呼叫,并播放wav文件。下面是它试图播放文件的代码:无法打开播放文件:无效的参数[状态= 120022]

# Notification when call's media state has changed. 
    def on_media_state(self): 
     global lib 
     if self.call.info().media_state == pj.MediaState.ACTIVE: 
      # Connect the call to sound device 
      call_slot = self.call.info().conf_slot 
      lib.conf_connect(call_slot, 0) 
      lib.conf_connect(0, call_slot) 
      print "Media is now active" 

      # stream wav file 
     # calculate wav time 
     wfile = wave.open("test.wav") 
     time = (1.0 * wfile.getnframes())/wfile.getframerate() 
     print str(time) + "ms" 
     wfile.close() 

     # stream wav file 
     player_id = pj.Lib.instance().create_player("test.wav", loop=False) 
     print "Wav player id is: ", player_id 
     lib.conf_connect(lib.player_get_slot(player_id), call.info().conf_slot) 

     sleep(time) 
     lib.conf_disconnect(lib.player_get_slot(player_id), call.info().conf_slot) 
     lib.player_destroy(player_id) 

     else: 
      print "Media is inactive" 

我在日志中看到的如下:

Media is now active 
23.3436281179ms 
08:08:55.455 pjsua_aud.c .....Creating file player: voice_tag_for_wolfgang.wav.. 
08:08:55.456 pjsua_aud.c ......Unable to open file for playback: Invalid argument [status=120022] 

有没有人有任何线索,为什么它不能打开文件?

回答

0

显然,这是由于错误的MediaConfig PARAMS。

相关问题