contrib: Make the RTPReplay a a class so it can be shared
This commit is contained in:
parent
59043d8c94
commit
4552d8061a
|
@ -4,18 +4,29 @@ Simple UDP replay from the state files
|
|||
|
||||
PackageLoader fileInPackage: #Sockets.
|
||||
|
||||
Eval [
|
||||
| last_time last_image udp_send socket dest |
|
||||
Object subclass: RTPReplay [
|
||||
| filename |
|
||||
RTPReplay class >> on: aFile [
|
||||
^ self new
|
||||
file: aFile; yourself
|
||||
]
|
||||
|
||||
file: aFile [
|
||||
filename := aFile
|
||||
]
|
||||
|
||||
streamAudio: aHost port: aPort [
|
||||
| file last_time last_image udp_send socket dest |
|
||||
|
||||
last_time := nil.
|
||||
last_image := nil.
|
||||
file := FileStream open: 'rtp_ssrc13529910.240.240.1_to_10.240.240.50.state'.
|
||||
file := FileStream open: filename.
|
||||
|
||||
"Send the payload"
|
||||
dest := Sockets.SocketAddress byName: '127.0.0.1'.
|
||||
dest := Sockets.SocketAddress byName: aHost.
|
||||
socket := Sockets.DatagramSocket new.
|
||||
udp_send := [:payload | | datagram |
|
||||
datagram := Sockets.Datagram data: payload contents address: dest port: 4000.
|
||||
datagram := Sockets.Datagram data: payload contents address: dest port: aPort.
|
||||
socket nextPut: datagram
|
||||
].
|
||||
|
||||
|
@ -52,5 +63,15 @@ Eval [
|
|||
last_time := time.
|
||||
last_image := wait_image.
|
||||
]
|
||||
].
|
||||
]
|
||||
]
|
||||
]
|
||||
|
||||
Eval [
|
||||
| replay |
|
||||
|
||||
replay := RTPReplay on: 'rtp_ssrc6976010.240.240.1_to_10.240.240.50.state'.
|
||||
|
||||
Transcript nextPutAll: 'Going to stream now'; nl.
|
||||
replay streamAudio: '127.0.0.1' port: 4000.
|
||||
]
|
||||
|
|
Loading…
Reference in New Issue