Video streaming client.
This module sends one "video streaming request" to serverAddress:serverPort at time startTime and receives stream from UDPVideoStreamSvr server.
Statistics:
rcvdPkBytes: statistic of received packets and received bytes. endToEndDelay: statistic of delays of incoming packets.
See also: UDPVideoStreamSvr
The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Name | Type | Default value | Description |
---|---|---|---|
localPort | int | -1 |
local port (-1: use ephemeral port) |
serverAddress | string |
server address |
|
serverPort | int |
server port |
|
startTime | double | 1s |
Name | Value | Description |
---|---|---|
display | i=block/app |
Name | Direction | Size | Description |
---|---|---|---|
udpIn | input | ||
udpOut | output |
Name | Type | Unit |
---|---|---|
rcvdPk | cPacket |
Name | Title | Source | Record | Unit | Interpolation Mode |
---|---|---|---|---|---|
rcvdPk | packets received | rcvdPk | count, sum(packetBytes), vector(packetBytes) | none | |
throughput | throughput | throughput(rcvdPk) | vector | bps | |
endToEndDelay | end-to-end delay | messageAge(rcvdPk) | histogram, vector | s | none |
// // Video streaming client. // // This module sends one "video streaming request" to serverAddress:serverPort at time startTime // and receives stream from ~UDPVideoStreamSvr server. // // Statistics: // // rcvdPkBytes: statistic of received packets and received bytes. // endToEndDelay: statistic of delays of incoming packets. // // @see ~UDPVideoStreamSvr // simple UDPVideoStreamCli like IUDPApp { parameters: int localPort = default(-1); // local port (-1: use ephemeral port) string serverAddress; // server address int serverPort; // server port double startTime @unit(s) = default(1s); @display("i=block/app"); @signal[rcvdPk](type=cPacket); @statistic[rcvdPk](title="packets received"; source=rcvdPk; record=count,"sum(packetBytes)","vector(packetBytes)"; interpolationmode=none); @statistic[throughput](title="throughput"; unit=bps; source="throughput(rcvdPk)"; record=vector); @statistic[endToEndDelay](title="end-to-end delay"; source="messageAge(rcvdPk)"; unit=s; record=histogram,vector; interpolationmode=none); gates: input udpIn @labels(UDPControlInfo/up); output udpOut @labels(UDPControlInfo/down); }