networkTrafficVideoConference
Download Required: To use networkTrafficVideoConference
,
first download the Communications Toolbox Wireless Network Simulation Library add-on.
Description
The networkTrafficVideoConference
object specifies the configuration parameters to
generate a video conference application traffic pattern based on the IEEE®
802.11ax™ Evaluation Methodology.
You can use the video conference application traffic pattern in system-level simulations to model real-world data traffic.
Creation
Description
creates a default video application traffic pattern object.cfgVideo
= networkTrafficVideoConference
sets properties using one or more name-value arguments. For example,
cfgVideo
= networkTrafficVideoConference(Name=Value)HasJitter=false
specifies that the video application pattern does not
model jitter.
Properties
FrameInterval
— Time interval between two consecutive video frames
40
(default) | positive integer
Time interval between two consecutive video frames, specified as a positive integer. This value is expressed in milliseconds.
Data Types: double
FrameSizeMethod
— Option to set source for video frame size
'WeibullDistribution'
(default) | 'FixedSize'
Option to set a source for the video frame size, specified as one of these values.
'WeibullDistribution'
— Use the video frame size value calculated by the Weibull probability distribution function.'FixedSize'
— Use the video frame size value specified by theFixedFrameSize
property.
FixedFrameSize
— Size of video frame
5000
(default) | integer in the range [1, 15,000]
Size of the video frame, specified as an integer in the range [1, 15,000]. This value is expressed in bytes. The video frame can be segmented into multiple network packets based on this value.
Dependencies
To enable this property, set the
FrameSizeMethod
property to 'FixedSize'
.
Data Types: double
WeibullScale
— Scale parameter for Weibull distribution
6950
(default) | scalar in the range (0, 54,210]
Scale parameter for the Weibull distribution to calculate the video frame size, specified as a scalar in the range (0, 54,210].
Dependencies
To enable this property, set the
FrameSizeMethod
property to
'WeibullDistribution'
.
Data Types: double
WeibullShape
— Shape parameter for Weibull distribution
0.8099
(default) | scalar in the range (0, 1]
Shape parameter for the Weibull distribution to calculate the video frame size, specified as a scalar in the range (0, 1].
Dependencies
To enable this property, set the
FrameSizeMethod
property to
'WeibullDistribution'
.
Data Types: double
HasJitter
— Flag to indicate whether to model network jitter
true
or 1
(default) | false
or 0
Flag to indicate whether to model network jitter, specified as a
logical
1
(true
) or 0
(false
). The object applies jitter between the segmented packets.
If you set this property to 1
(true
), the object
models jitter using the Gamma probability distribution function.
Data Types: logical
GammaShape
— Shape parameter for Gamma distribution
0.2463
(default) | scalar in the range (0, 5]
Shape parameter for the Gamma distribution to calculate network jitter, specified as a scalar in the range (0, 5].
Dependencies
To enable this property, set the
HasJitter
property to true
.
Data Types: double
GammaScale
— Scale parameter for Gamma distribution
60.227
(default) | scalar in the range (0, 100]
Scale parameter for the Gamma distribution to calculate network jitter, specified as a scalar in the range (0, 100].
Dependencies
To enable this property, set the
HasJitter
property to 1
(true
).
Data Types: double
ProtocolOverhead
— Protocol overheads in network traffic
28
(default) | integer in the range [0, 60]
Protocol overheads in network traffic, specified as an integer in the range [0, 60]. To add layer 3, layer 4, and application protocol overheads in network traffic, enable this property. This value is expressed in bytes.
Data Types: double
GeneratePacket
— Flag to indicate whether to generate video packet with payload
false
or 0
(default) | true
or 1
Flag to indicate whether to generate a video packet with payload, specified as a
logical 0
(false
) or 1
(true
). To generate a video packet with payload, set this property
to true
. If you set this property to false
, the
generate
object function generates no application data packet.
Data Types: logical
ApplicationData
— Application data to be added in video packet
1500-by-1 vector of 1s (default) | column vector of integers in the range [0, 255]
Application data to be added in the video packet, specified as a column vector of integers in the range [0, 255].
If the size of the application data is greater than the packet size, the object truncates the application data.
If the size of the application data is less than the packet size, the object appends zeros.
Dependencies
To enable this property, set the
GeneratePacket
property to true
.
Data Types: double
Object Functions
Specific to This Object
generate | Generate next FTP, On-Off, VoIP, or video conference application traffic packet |
Examples
Generate Video Conference Traffic Using Default Values
Create a default video application traffic pattern object.
cfgVideo = networkTrafficVideoConference
cfgVideo = networkTrafficVideoConference with properties: FrameInterval: 40 FrameSizeMethod: 'WeibullDistribution' WeibullScale: 6950 WeibullShape: 0.8099 HasJitter: 1 GammaShape: 0.2463 GammaScale: 60.2270 ProtocolOverhead: 28 GeneratePacket: 0
Generate a video application traffic pattern.
[dt,packetSize] = generate(cfgVideo);
Generate Video Conference Traffic with Frame Interval and Data Packet
Create a video application traffic pattern object to generate a video data packet. Specify the frame interval in milliseconds.
cfgVideo = networkTrafficVideoConference(GeneratePacket=true); cfgVideo.FrameInterval = 60;
Generate a video application traffic pattern and data packet.
[dt,packetSize,packet] = generate(cfgVideo);
Generate Multiple Video Data Packets Using Elapsed Time
Create a video application traffic pattern object to generate a video frame of size 400 bytes.
cfgVideo = networkTrafficVideoConference( ... FrameSizeMethod='FixedSize', ... FixedFrameSize=400);
Specify the elapsed time in milliseconds.
elapsedTime = 10;
After every elapsed time value, invoke the video application traffic pattern object to generate five video data packets.
numPkts = 5; for i = 1:numPkts while true [dt,packetSize] = generate(cfgVideo,elapsedTime); if packetSize fprintf('Video data packet %d generated\n',i); break; end end end
Video data packet 1 generated Video data packet 2 generated Video data packet 3 generated Video data packet 4 generated Video data packet 5 generated
Generate Video Conference Traffic Pattern to Visualize Packet Sizes and Intervals
Create a default video application traffic pattern object.
cfgVideo = networkTrafficVideoConference;
Generate a video application traffic pattern with 100 video packets.
numPkts = 100; dt = zeros(1,numPkts); packetSize = zeros(1,numPkts); for packetCount = 1:100 [dt(packetCount),packetSize(packetCount)] = generate(cfgVideo); end
Visualize the video packet sizes.
stem(packetSize); title('Packet Size Versus Packet Number'); xlabel('Packet Number'); ylabel('Packet Size in Bytes');
Visualize the video packet intervals.
figure; stem(dt); title('dt Versus Packet Number'); xlabel('Packet Number'); ylabel('dt in milliseconds');
References
[1] IEEE 802.11™-14/0571r12. "11ax Evaluation Methodology." IEEE P802.11. Wireless LANs. https://www.ieee.org.
Extended Capabilities
C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.
Version History
Introduced in R2021aR2023a: Moved to Communications Toolbox Wireless Network Simulation Library from 5G Toolbox and WLAN Toolbox
Previously, networkTrafficVideoConference
required 5G Toolbox™ or WLAN Toolbox™.
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)