[Asterisk-video] problem with mp4play in sip and h324m

Tom De Wispelaere tom at besite.be
Wed Mar 21 10:53:57 MST 2007


Hello,

I recently got h324m up and running in asterisk 1.4.
Great work btw !
When i make a call from my nokia n70 to an E1, h324m_loop works fine
and i can also see the video from my camera feeded back to me. Very
cool. So far so good.

In a next step I tried getting mp4play (and mp4save) to stream an mp4
to my mobile but i don't see anything appearing on my mobile and the
call is finished abruptly.
I tried with different hinted mp4 files created with mp4creator that
seem to play ok on vlc, so i don't think they are the culprit. I did
try playing video with mp4play through a sip videocall (xmeeting on
osx), which also does not seem to work.
I'm a bit lost as to why i can't get mp4play to work correctly ; any
pointers on what i could try next would be much appreciated !

The h324 context i use for testing is as follows

[videocalltest3]
exten => s,1,h324m_gw(s at video)

[video]
exten => s,1,Wait(4)
exten => s,2,Answer
exten => s,3,Wait(4)
exten => s,4,mp4play(/tmp/video3G/menu1.mp4)
exten => t,1,Goto(s,4)

when i call from my nokia i see the following in the logs

 == Registered application 'mp4save'
 == Registered application 'mp4play'
...
 -- Accepting call from '' to 'xxxx' on channel 0/9, span 1
    -- Executing [xxxx at local:1] Macro("Zap/9-1",
"gotostuff|videocalltest3") in new stack
    -- Executing [s at macro-gotostuff:1] Set("Zap/9-1",
"dialedphonenb=xxxxx") in new stack
    -- Executing [s at macro-gotostuff:2] Set("Zap/9-1",
"CDR(accountcode)=") in new stack
    -- Executing [s at macro-gotostuff:3] Set("Zap/9-1", "country=") in new stack
    -- Executing [s at macro-gotostuff:4] Set("Zap/9-1", "language=") in new stack
    -- Executing [s at macro-gotostuff:5] Goto("Zap/9-1",
"videocalltest3|s|1") in new stack
    -- Goto (videocalltest3,s,1)
  == Channel 'Zap/9-1' jumping out of macro 'gotostuff'
    -- Executing [s at videocalltest3:1] h324m_gw("Zap/9-1", "s at video")
in new stack
[2007-03-21 18:05:58] WARNING[7123]: channel.c:627 ast_best_codec:
Don't know any of 0x2000 formats
    -- Executing [s at video:1] Wait("Local/s at video-19c7,2", "4") in new stack
    -- Executing [s at video:2] Answer("Local/s at video-19c7,2", "") in new stack
    -- Executing [s at video:3] Wait("Local/s at video-19c7,2", "4") in new stack
H245 TerminalCapabilitySet TransferRequest
-WriteControlPDU [request]
Encode PDU [95]
Sending CMD [0,87]
H245 Request MasterSlaveDetermination
-WriteControlPDU [request]
Encode PDU [20]
Sending CMD [1,7]
Sending CMD [0] - 1 left
Received SRP_NSRP_RESPONSE [0]
Received SRP_SRP_COMMAND [0]
Sending NSRP [0]
-OnControlPDU [request]
-OnH245Request
H245 Received TerminalCapabilitySet
-Event!!
-WriteControlPDU [response]
Encode PDU [20]
Sending CMD [2,3]
-OnControlPDU [indication]
-OnH245Indication
Unknown Indication
-OnControlPDU [request]
-OnH245Request
H245 MasterSlaveDetermination
-WriteControlPDU [response]
Encode PDU [20]
Sending CMD [3,2]
-Event!!
H245 Request MasterSlaveDetermination
-OnControlPDU [response]
-OnH245Response
H245 Received TerminalCapabilitySetAck
-Event!!
...
Received SRP_SRP_COMMAND [1]
Sending NSRP [1]
-OnControlPDU [response]
-OnH245Response
H245 MasterSlave Ack
-Event!!
H245 H245LogicalChannels Establish Request [1]
-WriteControlPDU [request]
Encode PDU [34]
Sending CMD [4,26]
H245 H245LogicalChannels Establish Request [2]
-WriteControlPDU [request]
Encode PDU [20]
Sending CMD [5,17]
H245 MultiplexEntrySend
-WriteControlPDU [request]
Encode PDU [20]
Sending CMD [6,15]
Received out of order SRP_NSRP_RESPONSE [1]
Received out of order SRP_NSRP_RESPONSE [1]
Received out of order SRP_NSRP_RESPONSE [1]
Received out of order SRP_NSRP_RESPONSE [1]
Received out of order SRP_NSRP_RESPONSE [1]
    -- Executing [s at video:4] mp4play("Local/s at video-19c7,2",
"/var/video3G/menu1.mp4") in new stack
MP4ERROR: FindTrackId: Track index doesn't exist - track 1 type hint
mp4play /var/video3G/menu1.mp4
found hint track 2
track 1 vide
Received SRP_SRP_COMMAND [2]
Sending NSRP [2]
-OnControlPDU [request]
-OnH245Request
H245 H245OpenLogicalChannel received [1]
-Event!!
-OnLogicalChannel
-OnEstablishIndication [1]
-Creating receiving layer [1,1,40d47a50,0,0,4,0]
-WriteControlPDU [response]
Encode PDU [20]
Sending CMD [7,4]
-OnControlPDU [request]
-OnH245Request
H245 H245OpenLogicalChannel received [2]
-Event!!
-OnLogicalChannel
-OnEstablishIndication [2]
-Creating receiving layer [2,2,40d58e20,1,1,3,1]
-WriteControlPDU [response]
Encode PDU [20]
Sending CMD [8,4]
-OnControlPDU [request]
-OnH245Request
H245 MultiplexEntrySend request
Check
request multiplexEntrySend {
        sequenceNumber = 1
 multiplexEntryDescriptors = 2 entries {
          [0]={
            multiplexTableEntryNumber = 1
            elementList = 1 entries {
              [0]={
                type = logicalChannelNumber 1
                repeatCount = untilClosingFlag <<null>>
              }
       MP4ERROR: MP4Array::[]: index 2 of 2: Numerical result out of range
     }
          }
          [1]={
            multiplexTableEntryNumber = 2
            elementList = 1 entries {
              [0]={
                type = logicalChannelNumber 2
                repeatCount = untilClosingFlag <<null>>
              }
            }
          }
        }
      }
-Event!!
-OnMultiplexTable
-WriteControlPDU [response]
Encode PDU [20]
Sending CMD [9,5]
MP4ReadRtpHint failed
  == Auto fallthrough, channel 'Local/s at video-19c7,2' status is 'UNKNOWN'

The sip videocall via xmeeting goes something like this :

-- Executing [1200 at inbound-from-sip:1] Answer("SIP/1000-081d9eb0", "")
in new stack
    -- Executing [1200 at inbound-from-sip:2]
mp4play("SIP/1000-081d9eb0", "/var/video3G/menu1.mp4") in new stack
MP4ERROR: FindTrackId: Track index doesn't exist - track 1 type hint
MP4ERROR: MP4Array::[]: index 2 of 2: Numerical result out of range
mp4play /var/video3G/menu1.mp4
found hint track 2
track 1 vide
MP4ReadRtpHint failed
  == Auto fallthrough, channel 'SIP/1000-081d9eb0' status is 'UNKNOWN'


Tom


More information about the asterisk-video mailing list