Streaming Variable Bit-Rate Media Streams in .NET framework

Creator QR Code ISO/IEC18004 in .NET framework Streaming Variable Bit-Rate Media Streams
Streaming Variable Bit-Rate Media Streams
Read QR-Code In VS .NET
Using Barcode Control SDK for VS .NET Control to generate, create, read, scan barcode image in .NET applications.
of the system s performance. For example, McManus and Ross [2] suggested dividing the entire video stream into xed size intervals and then transmitting each interval with a constant bit-rate to enable control of the rate adjustment frequencies. Feng et al. investigated smoothing algorithms to minimize the number of rate increases [3], and to minimize the number of rate changes [4]. In another two studies by Feng [5, 6], the author observed that in some cases, an algorithm targeted at minimizing a certain parameter might make too aggressive prefetches or allow too large buffer residency times. The author then proposed a rate-constrained smoothing algorithm [5] and a time-constrained smoothing algorithm [6] to solve these problems. Chang et al. suggested that transmitting at a constant rate yields lower overhead and complexity. Therefore, they proposed a smoothing algorithm that switches a single constant transmission rate on and off to adapt to the video bit-rates [7]. Salehi et al. investigated the optimal smoothing algorithm [8] that produces smoothing schedules with minimum peak rates and rate variations. Interested readers are referred to the excellent study by Feng and Rexford [10] for a detailed survey and comparison of various smoothing algorithms. Besides smoothing algorithms based on nding a path inside the feasible region, there are also other related studies in this area. For example, Zhang [9] proposed smoothing using buffers located in multiple intermediate nodes in the network. Zhao and Tripathi [11] proposed an algorithm to multiplex smoothed VBR streams to further reduce bit-rate variations. Liu et al. [12] observed that scene changes in a video usually correlate with bit-rate variations, and thus proposed an algorithm to detect scene changes to allocate a constant bit-rate for each scene. For real-time videos, Rexford et al. [13] proposed an online, lossless smoothing algorithm that uses a sliding window. Liew and Tse [14] proposed using client buffer occupancy to control encoding parameters for smoother encoder output. In another study, Duf eld et al. [15] used network status feedback to control the encoding parameters.
Creating QR Code ISO/IEC18004 In .NET Framework
Using Barcode drawer for Visual Studio .NET Control to generate, create QR Code image in .NET framework applications.
7.2 Streaming in Mixed-Traf c Networks
QR Code JIS X 0510 Decoder In .NET
Using Barcode decoder for VS .NET Control to read, scan read, scan image in .NET framework applications.
After smoothing is performed, the transmission schedule of a VBR video will be reduced to a series of constant-rate segments (see Figure 7.1). The media server can then reserve bandwidth for these segments before transmitting them over the network to the client. As long as the bandwidth reservations are successful, timely delivery of the video data to the client can be guaranteed. However, two factors in practice often affect the effectiveness of this approach. First, although the bit-rate of each smoothed segment is constant, the system still needs to successfully complete the bandwidth reservation process before the next segment can be transmitted. The adjustments needed may contain both downward adjustments (switching from a higher bit-rate to a lower bit-rate), and upward adjustments (switching from a lower bit-rate to a higher bit-rate). The former case is straightforward as less network resource will be required, but the latter case is more complicated. In particular, if the network concurrently carries traf c from other applications (e.g., Web, FTP, other video streams, etc.), it is conceivable that the upward adjustments could fail when the additional bandwidth is not available at that moment. Clearly this will result in either disruption of the video stream or severe quality degradation such as playback jitter. As the instantaneous bandwidth consumption in a network with mixed traf cs is inherently unpredictable, this problem is unavoidable unless one dedicates a portion of the network resources to a video stream. However, this clearly will result in signi cant over-engineering and thus defeat the whole purpose of smoothing in the rst place.
Creating Bar Code In .NET
Using Barcode printer for Visual Studio .NET Control to generate, create barcode image in .NET applications.
Scalable Continuous Media Streaming Systems
Decoding Bar Code In VS .NET
Using Barcode scanner for .NET Control to read, scan read, scan image in .NET applications.
Second, the processing delay of bandwidth adjustment may introduce a subtle problem. Regardless of the resource reservation protocols adopted, a sender (e.g., a video server) that desires to adjust a connection s bandwidth must rst send protocol messages to one or more network controllers (e.g., routers). The network controllers may in turn need to contact other controllers along the path of the connection before the request can be granted or denied. In any case, this process will take time and the time it takes will depend on a lot of factors, such as the network topology, the reservation protocol adopted, the current utilization of the network, the number of resource-reservation requests being processed, loss of control messages, etc. The point is, not only the processing itself takes time, the time it takes also varies. This creates another problem in upward bit-rate adjustments as delay or even transmission losses may occur if an adjustment cannot be completed in time. Conceivably one can issue the upward adjustments well ahead of time to prevent delay/loss but estimating the correct lead-time is by no means trivial. We address the two previously discussed problems in this chapter by developing a scheduler for transmitting VBR videos that can provide deterministic performance guarantee in a mixedtraf c network and is immune to random delays in processing network resource reservation requests. The principle of the scheduler, called Monotonic Decreasing Rate (MDR) scheduler, is to eliminate upward bit-rate adjustments altogether. That is, the transmission schedule is composed of a series of segments, of which each segment is assigned a bit-rate strictly lower than the previous segment. Now without the need for upward bit-rate adjustment, resource reservations are guaranteed to be successful. Moreover, the timing of the bit-rate adjustments is no longer critical as video data transmission will not be affected by a later-than-expected downward bit-rate adjustment. Intuitively, one will expect the MDR scheduler to require more client buffer as video data are transmitted more aggressively than other smoothing algorithms. Using real-world VBR video bit-rate traces, we quantify the trade-off and show that for some video streams, the buffer requirement is indeed increased when compared to smoothing algorithms. To tackle this problem, we develop an Aggregated Monotonic Decreasing Rate (AMDR) scheduler to enable one to control the buffer requirement to the same level as smoothing algorithms. Surprisingly, simulation results show that the AMDR scheduler can achieve performance comparable to existing smoothing algorithms even when equipped with the same buffer requirement. Thus, using the AMDR scheduler, one can provide performance guarantee in streaming VBR videos over mixed-traf c networks with no trade-off in terms of admission complexity, network utilization, client waiting time, and client buffer requirement.
Denso QR Bar Code Creator In C#.NET
Using Barcode drawer for .NET framework Control to generate, create QR-Code image in .NET applications.
Print QR Code 2d Barcode In .NET Framework
Using Barcode drawer for ASP.NET Control to generate, create Denso QR Bar Code image in ASP.NET applications.
Code-128 Generation In Visual Studio .NET
Using Barcode creation for .NET framework Control to generate, create Code 128A image in .NET framework applications.
Bar Code Drawer In .NET
Using Barcode printer for Visual Studio .NET Control to generate, create bar code image in .NET applications.
Drawing Barcode In Visual C#
Using Barcode maker for VS .NET Control to generate, create barcode image in .NET applications.
Decode Data Matrix In VS .NET
Using Barcode decoder for Visual Studio .NET Control to read, scan read, scan image in .NET applications.
Generating UPC Code In Visual C#.NET
Using Barcode creation for Visual Studio .NET Control to generate, create UPC-A image in VS .NET applications.
GTIN - 12 Decoder In .NET
Using Barcode reader for Visual Studio .NET Control to read, scan read, scan image in VS .NET applications.