diff --git a/openbsc/contrib/rtp/rtp_replay.st b/openbsc/contrib/rtp/rtp_replay.st index 7fa9a4c9d..e26d07388 100644 --- a/openbsc/contrib/rtp/rtp_replay.st +++ b/openbsc/contrib/rtp/rtp_replay.st @@ -7,11 +7,15 @@ FileStream fileIn: 'rtp_replay_shared.st'. Eval [ - | replay | + | replay file host dport | + file := Smalltalk arguments at: 1 ifAbsent: [ 'rtpstream.state' ]. + host := Smalltalk arguments at: 2 ifAbsent: [ '127.0.0.1' ]. + dport := (Smalltalk arguments at: 3 ifAbsent: [ '4000' ]) asInteger. + sport := (Smalltalk arguments at: 4 ifAbsent: [ '0' ]) asInteger. - replay := RTPReplay on: Smalltalk arguments first. + replay := RTPReplay on: file fromPort: sport. Transcript nextPutAll: 'Going to stream now'; nl. - replay streamAudio: '127.0.0.1' port: 4000. + replay streamAudio: host port: dport. ] diff --git a/openbsc/contrib/rtp/rtp_replay_shared.st b/openbsc/contrib/rtp/rtp_replay_shared.st index dd32aed7a..7b68c0f5e 100644 --- a/openbsc/contrib/rtp/rtp_replay_shared.st +++ b/openbsc/contrib/rtp/rtp_replay_shared.st @@ -42,8 +42,18 @@ Object subclass: RTPReplay [ file: aFile; yourself ] + RTPReplay class >> on: aFile fromPort: aPort [ + ^ self new + initialize: aPort; + file: aFile; yourself + ] + initialize [ - socket := Sockets.DatagramSocket new. + self initialize: 0. + ] + + initialize: aPort [ + socket := Sockets.DatagramSocket local: '0.0.0.0' port: aPort. ] file: aFile [ @@ -59,7 +69,7 @@ Object subclass: RTPReplay [ last_time := nil. last_image := nil. - file := FileStream open: filename. + file := FileStream open: filename mode: #read. "Send the payload" dest := Sockets.SocketAddress byName: aHost.