KEYWORDS: Multimedia, Prototyping, Control systems, Process control, Standards development, Video surveillance, Video processing, Video, Electronic imaging, Analytical research
General purpose workstations must support a wide variety of application characteristics; but it is hard to find a single CPU scheduling scheme that satisfactorily schedules processes from all types of applications. It is particularly difficult to get periodic deadline-driven continuous media processes to satisfactorily co-exist with others. A number of schemes have been proposed to address this issue, but these all suffer from one or more of the following limitations: i) unacceptable inefficiency, ii) non-determinism (i.e. introducing significant burstiness or jitter), iii) inability to explicitly support deadlines (so that deadlines may be missed even when the CPU is underloaded). This paper presents “SHRED (SHaretokens, Round-robin, Earliest-deadline-first, Deferred-processing)” -an efficient, proportional-share, deterministic, scheduling scheme that enables periodic deadline-driven processes to meet their explicit deadlines wherever possible, and degrades gracefully and adaptively when this is not possible. The scheme simultaneously ensures that non-deadline processes always obtain their fair share of CPU time whether in conditions of underload or overload. For experimental evaluation, a prototype of SHRED has been developed by replacing the Linux standard scheduler with the SHRED scheduler. The prototype has been evaluated against the standard Linux scheduler for various parameters and also against two proportional-share schemes, namely Stride and VTRR scheduling, for its overhead and its effect on jitter.
KEYWORDS: Visualization, Video, Java, Prototyping, Multimedia, Control systems, Visual analytics, Telecommunications, Distributed computing, Process control
Collaborative tools are developed to support work being undertaken by dispersed teams. As well as allowing voice and audio, several initiatives have supported collaborative information-rich tasks by enabling dispersed participants to share their visualization insights and to exercise some distributed control. In previous work, tools for collaborative visualization have been based on dataflow visualization systems, allowing visual programs to be rapidly prototyped and allowing not only the sharing of final results but also the process of obtaining them. However there are a number of issues: (1) the need for software policy changes, according to different meeting styles; (2) the presence of competing continuous flows, including voice and video of the participants and visualization movie sequences, in addition to bulk data flows; and (3) the dynamics of available resources which vary between participants or between mobile and office situations or within a single meeting. This need for adaptation is being studied in the Visual Beans project in the UK. The technologies under study include component technology, based on Java and CORBA, the use of continuous media in CORBA components, quality of service (QoS) monitoring and the use of open bindings.
KEYWORDS: Multimedia, Computer programming, Video, Signal processing, C++, Systems modeling, Signal generators, Detection and tracking algorithms, Clocks, Data compression
It is now recognized that object-oriented techniques are well suited to the design and implementation of multimedia applications. Objects may be used to encapsulate the great variety of hardware devices used in such applications and to abstract over the details of low level interfaces. Furthermore, complex media processing algorithms, such as compression/decompression, may be encapsulated within objects making them easier to reuse across applications. Real-time synchronization is also an essential aspect of multimedia which arises from the inherently temporal properties of media such as audio and video. In this paper, we propose a set of programming abstractions and an approach to address real-time synchronization requirements in an object-oriented framework. In our approach, active objects encapsulate media processing activities. Real-time synchronization is maintained by reactive objects that control the execution of media processing objects. A key advantage of our approach is that it allows the separation of synchronization from the behavior of objects. Both objects and synchronization specifications may be reused in different contexts. In addition, the approach enables the specification of real-time synchronization in a high-level notation that has proven well suited to this task.
Access to the requested content is limited to institutions that have purchased or subscribe to SPIE eBooks.
You are receiving this notice because your organization may not have SPIE eBooks access.*
*Shibboleth/Open Athens users─please
sign in
to access your institution's subscriptions.
To obtain this item, you may purchase the complete book in print or electronic format on
SPIE.org.
INSTITUTIONAL Select your institution to access the SPIE Digital Library.
PERSONAL Sign in with your SPIE account to access your personal subscriptions or to use specific features such as save to my library, sign up for alerts, save searches, etc.