The MIDI port driver manages a MIDI synthesizer or capture device. The adapter driver provides a corresponding MIDI miniport driver that binds to the MIDI port driver object to form a MIDI filter (see MIDI and DirectMusic Filters) that can capture or render a MIDI stream. The MIDI port driver exposes an IPortMidi interface to the miniport driver. Orb will detect the type of device being used, and adapt the stream according to your player availability and the network quality. For example, on the Nokia N80, Orb will use the native web browser and RealPlayer. When I open device manager, there is no option for network adapters, unless I click on show hidden devices. My motherboard model is ASUS p7h55-m I tried instaling drivers for my model of motherboard, but nothing worked. Whenever I troubleshoot, it says that I need a driver for my network adapter. I tried instaling Realtek ethernet controller.
Developer(s) | Orb Networks |
---|---|
Stable release | |
Operating system | Mac OS X, Windows |
Available in | International (multiple languages) |
Type | Media player, media center |
License | Proprietary. Freeware for server, commercialshareware for portable players |
Website | www.orb.com |
Orb was a freewarestreaming software that enabled users to remotely access all their personal digital media files including pictures, music, videos and television.[1] It could be used from any Internet-enabled device, including laptops, pocket PC,[2]smartphones, PS3,[3]Xbox 360[4] and Wii[5]video game consoles.
In 2013, Orb Networks, Inc. announced that they were acquired by a strategic partner and would be shutting down operations.[6] Also in 2013, Co-founder Luc Julia indicated that Orb Networks' technology had been acquired by Qualcomm,[7] but no accompanying press release had been issued.
Orb's website (accessed May, 2014) announced: '...about a year ago Orb's team and technology were acquired by Qualcomm Connected Experiences, Inc.' and 'Orb Networks will no longer be offering any Orb software downloads or support for our web based products such as OrbLive and Mycast.' The statement invited people to 'check out Qualcomm's AllPlay media platform' but did not specify how Orb software may have been utilized.[8]
What it did[edit]
Orb was available for Intel Macintosh, Windows or Media Center PCs. Users create an online account to remotely access their computer.
Access to videos, audio, images[edit]

Orb Networks Port Devices Driver
All the music, pictures and video files stored on a home computer are made available for streaming, provided that the computer is connected to the Internet. The media files are transcoded and streamed directly from that PC, or available for download with the use of a file explorer plug-in.
The current version of Orb can be used as a replacement for Microsoft's Windows Media Connect software for computers running the Windows operating system. This allows the Xbox 360 or PlayStation 3 consoles to access the videos, audios, and images on the computer with Orb installed, natively. This allows the user to also watch videos not in the Windows Media Video format without having previously re-transcoded their videos. Orb will transcode the video files from the computer on the fly as they are requested as long as the computer running Orb has the correct codec for doing so.[9]
Access to a tuner card or Webcam and Web-based DVR[edit]
If there is a TV tuner card installed on that PC, live TV is also available for streaming. Furthermore, Orb offers a DVR functionality, like a TiVo. One can schedule TV recordings and stream the recorded video files remotely via the Web-based interface.[10]
The same is true for a webcam (there is also a webcam surveillance feature).
Sharing[edit]
Orb Networks Port Devices Drivers
Orb also allows the user to share photos and videos without having to upload them to an online service. To do that, one has to select the files one wants to share, and enter the email address of the person that should have access to that data. That person will receive an email with a link to view the files.
Mobile phone usage[edit]
Supported mobile phones[edit]
Orb supports streaming to Windows Media, RealPlayer, 3gp and Flash format, supporting a wide range of 3G cell phones, including the iPhone.
Adaptive streaming inside a LAN or to a mobile phone[edit]
Orb will detect the type of device being used, and adapt the stream according to your player availability and the network quality.[11]
For example, on the Nokia N80, Orb will use the native web browser and RealPlayer[12]
When the device used to connect is on the same local network as the PC where Orb is running, it will connect directly to the stream from the PC without going through the Internet (provided no firewall blocks the connection). This provides a much higher bit rate and quality when streaming inside a LAN.
New features in Orb 2.0[edit]
Orb 2.0beta is Ajax-based and offers a home page similar to GooglePersonalized Homepage or netvibes. It is organized into tabs, with each tab containing user-defined modules, such as TV guide, personal media files, RSS/Atom feeds such as YouTube videos, the local weather forecast, etc...[13]
Similar products[edit]
Similar solutions are Synology and Slingbox, which does not require a PC, but comes with its own hardware.

Another similar solution for remote access is ifunpix, which additionally includes tools to create and upload content to a personal mini-site support video as well as audio and music. Unlike Orb, iFunPix uses a proxy storage server between the user and the home computer which can help prevent attacks on the source computer. iFunPix is not able to stream live television.
There is also TVersity, another freeware program, much like orb. Other similar solution for remote access via mobile is Younity as well as Orbweb.me, both of those products enable mobile access to digital files in your computer.
References[edit]
- ^Why Buy Sling Mobile When Orb is Free? mobilecrunch.com
- ^11 Killer Freebies for Your Pocket PC, lifehacker.com
- ^Orb Networks Gives Playstation 3 Gamers TV Access to All Their PCs' Digital Media
- ^Stream Orb content to your Xbox 360
- ^Turn Your TV into a Media Center
- ^[1]
- ^[2]
- ^[3]Archived 2015-07-19 at the Wayback Machine
- ^Use Orb to access media on your Xbox 360
- ^Tech Review: Orb Lets You Watch Your Recorded Shows And Movies Over The Internet, blogcritics.org
- ^Orb Stress Tested at 36,000 Feet, TechCrunch
- ^Nokia First to Add Orb MyCasting Service; Premiers on Nokia N80 Internet Edition, Press Release
- ^Orb 2.0 beta - more Web 2.0ish, pvrwire.com
External links[edit]
- Official website dead
Overview of the TAO Real-time ORB Endsystem Architecture
TAO is an ORB endsystem that contains the following network interface,operating system, communication protocol, and CORBA middlewarecomponents and features shown in Figure 1.Figure 1. TAO Architectural Components | TAO Features |
|
Each component in Figure 1 is summarized below. Complete informationabout TAO's ORB endsystem architecture is available online.
1. Gigabit I/O Subsystem
An I/O subsystem is responsible for mediating ORB and applicationaccess to low-level network and OS resources such as device drivers,protocol stacks, and the CPU(s). The key challenges in building areal-time I/O subsystem are (1) to enforce QoS guarantees whileminimizing priority inversion and non-determinism, (2) to make itconvenient for applications to specify their QoS requirements, and (3)to enable ORB middleware to leverage the QoS guarantees provided bythe underlying network.To meet these challenges, we are developing a high-performance I/Osubsystem for TAO that is designed to run over Washington University'sGigabit ATMnetwork. The components in TAO's I/O subsystem include (1) ahigh-speed ATM Port Interface Controller (APIC),(2) a real-time I/O subsystem, (3) a Run-Time Scheduler, and (4) anadmission controller, shown in Figure 2.
Figure 2. TAO's Gigabit I/O Subsystem |
To guarantee the QoS needs of applications, TAO requires guaranteesfrom the underlying I/O subsystem. To accomplish this task, we aredeveloping a high-performance network I/O subsystem. The components ofthis subsystem are described below.

1.1. High-speed Network Adaptor
At the heart of our I/O subsystem is a daisy-chained interconnectcomprising one or more ATM Port Interconnect Controller (APIC)chips. APIC can be used both as a endsystem/network interface, aswell as an I/O interface chip. It sustains an aggregatebi-directional data rate of 2.4 Gbps. In addition, TAO is designedwith a layered architecture that can run on conventional embeddedplatforms linked via QoS-enabled networks (such as IPv6 with RSVP) andreal-time interconnects (such as VME backplanes and multi-processorshared memory environments).
1.2. Real-time I/O Subsystem
TAO enhances the STREAMS model provided by Solaris and real-timeoperating systems like VxWorks. TAO's real-time I/O subsystemminimizes priority inversion and hidden scheduling problems that ariseduring protocol processing. Our strategy for avoiding priorityinversion is to have a pool of kernel threads dedicated to protocolprocessing and to associate these threads with application threads.The kernel threads run at the same priority as the applicationthreads, which prevents various real-time scheduling hazards such aspriority inversion and hidden scheduling.
1.3. Run-Time Scheduler
TAO supports QoS guarantees via a real-time I/O scheduling class thatsupports periodic real-time applications. Once a thread of thereal-time I/O class is admitted by the OS, the scheduler isresponsible for (1) computing its priority relative to other threadsin the class and (2) dispatching the thread periodically so that itsdeadlines are met.
TAO's real-time I/O scheduling class allows applications to specifytheir requirements in a high-level, intuitive manner. For instance,one implementation of TAO's real-time I/O scheduling class is based onrate monotonic scheduling, where applications can specifytheir processing requirements in terms of computation time Cand period P. The OS then grants priorities to real-time I/Othreads so that schedulability is guaranteed.
1.4. Admission Controller
To ensure that application QoS requirements can be met, TAO performsadmission control for the real-time I/O scheduling class. Admissioncontrol allows the OS to either guarantee the specified computationtime or to refuse to admit the thread. Admission control is usefulfor real-time systems with deterministic and statistical QoSrequirements.
2. Real-time ORB Core
TAO's ORB Core manages transport connections, delivers client requeststo an Object Adapter, and returns responses (if any) to clients. Itis also responsible for handling the concurrency model used byapplication components. Figure 3 illustrates the components in theclient-side and server-side of TAO's ORB Core.Figure 3. Components in TAO's ORB Core |
TAO's ORB Core is based on the high-performance, cross-platform ACE components such as Acceptors and Connectors, Reactors, and Tasks. Figure 3 illustrates how theclient side of TAO's ORB Core uses ACE'sStrategy_Connector
to cache connections to the server,thus saving connection setup time and minimizing latencies betweeninvocation and execution. The server side uses ACE'sStrategy_Acceptor
, in conjunction with Reactor, to accept connections. Theacceptor delegates activation ofthe connection handler to one of ACE's various activation strategies(e.g., a threaded activation strategy shown in the diagram),which turns each handler into an ActiveObject. The connection handler extracts Inter-ORB Protocol (IOP)requests and hands them to TAO's Object Adapter,which dispatches the request to the servant operation.
3. Real-time Object Adapter
TAO's Object Adapter is responsible for demultiplexing andOrb Networks Port Devices Driver Updater
dispatching client requests onto target objectimplementations. A standard GIOP-compliant client request containsthe identity of its remote object implementation and remote operation.The remote object implementation is represented by an object key andthe remote operation is represented as a string. Conventional ORBendsystems demultiplex client requests to the appropriate operation ofthe target object implementation using the following steps (shown inFigure 4(A)):- Steps 1 and 2 -- The OS protocol stack demultiplexesthe incoming client request multiple times (e.g., through the datalink, network, and transport layers, as well as the user/kernelboundary) to the ORB's Object Adapter.
- Steps 3, 4, and 5 -- The ORB core uses the addressinginformation in the client's object key to locate the appropriateObject Adapter, servant, and the skeleton of the target IDL operation;
- Step 6 -- The IDL skeleton locates the appropriateoperation, demarshals the request buffer into operation parameters,and performs the operation upcall.
Figure 4. Layered and De-layered Demultiplexing |
Demultiplexing client requests through all these layers is expensive,particularly when a large number of operations appear in an IDLinterface and/or a large number of objects are managed by an ORB. Tominimize this overhead, TAO utilizes de-layered demultiplexing (shownin Figure 4(B)). This approach uses demultiplexing keys that the ORBassigns to clients. These keys map client requests toobject/operation tuples in O(1) time without requiring any hashing orsearching.
To further reduce the number of demultiplexing layers, the APIC can beprogrammed to directly dispatch client requests associated with ATMvirtual circuits. This strategy reduces demultiplexing latency andsupports end-to-end QoS on a per-request or per-object basis.
4. QoS Specification via Real-time IDL Schemas
Real-time applications that use TAO must specify their scheduledresource requirements to TAO's Real-timeScheduling Service. This QoS information is currently provided toTAO on a per-operation basis before program execution. For CPUrequirements, the QoS requirements are expressed byRT_Operations using the attributes of the RT_InfoIDL struct shown in Figure 5.Figure 5. TAO's QoS Specification Model |
An RT_Operation is a scheduled operation, i.e., onethat has expressed its scheduled resource requirements to TAO using anRT_Infostruct. The attributes in anRT_Info include worst-case execution time, period,importance, and data dependencies. Using scheduling techniques likeRMS and analysis approaches like RMA, TAO's Real-Time SchedulingService determines if there is a feasible schedule based on knowledgeof all RT_Info data for all the RT_Operations in anapplication.
This set of attributes is sufficient for rate monotonic analysis andis used by TAO to (1) validate the feasibility of the schedule and (2)allocate ORB endsystem and network resources. Currently, developersmust determine these parameters manually and provide them to TAO's Real-time Scheduling Service through itsCORBA interface. We are planning to enhance this process by creatinga tool that (1) monitors the execution of applications in examplescenarios and (2) automatically extracts the necessary run-timeparameters. Likewise, instead of actual execution, simulation resultscould be used to define RT_Info attributes for eachoperation.
5. Real-time Scheduling Service
TAO's real-time Scheduling Service is a CORBA object that has thefollowing off-line and run-time responsibilities:- Off-line feasibility scheduling analysis -- It performsoff-line feasibility analysis of IDL operations register with the Scheduling Service's RT_Info repository to determine whether there are sufficient CPU resources to perform all requested tasks.
- Thread priority assignment -- During that off-line analysis, the Scheduling Service assigns priorities to threads. At run-time, the Scheduling Service provides an interface that allows TAO's ORB Core to access these priorities, which are the mechanism for interfacing with the OS-level dispatcher.
- Coordinate mode changes -- At run-time, the Scheduling Service coordinates mode changes.
Figure 6. TAO's Scheduling Service |
- Work Task -- A
Work_Task
is a unit of work that encapsulates application-level processing and communication activity. In some MDA projects, a work task is also called a module or process, but we avoid these terms because of their overloaded usage. - RT_Task -- An
RT_Task
is a work task that has timing constraints. EachRT_Task
is considered to be a ``method' (function) that has its own QoS information specified in terms of the attributes in its run-time information (RT_Info
) descriptor. Thus, an application-level object with multiple methods may require multipleRT_Task
instances. - Thread -- A unit of concurrency. A thread corresponds to, e.g., a Solaris or POSIX thread, an Ada task, a VxWorks task, or a Win32 thread. All threads are contained within
RT_Task
s; anRT_Task
can contain zero or more threads. AnRT_Task
that does not contain any of its own threads will only execute in the context of anotherRT_Task
, i.e., it must ``borrow' another task's (e.g., the Object Adapter's) thread of control to run. - OS Dispatcher -- The OS dispatcher uses thread priorities to select the next runnable thread that it will assign to a CPU. It removes a thread from the CPU when the thread blocks (and therefore is no longer runnable), or when the thread is preempted by a higher priority thread. With preemptive dispatching, any runnable thread with a priority higher than any running thread will preempt the lower priority thread. At that point the higher priority, runnable thread can be dispatched onto the CPU.
Our analysis, based on RMA, assumes fixed priority, i.e., the operating system does not change the priority of a thread. This contrasts with time-shared OS Schedulers, which typically age long-running processes by decreasing their priority over time. Thus, from the point of view of the OS dispatcher, the priority of each thread is constant.
- RT_Info -- An
RT_Info
structure specifies anRT_Task
's scheduling characteristics (such as computation time and execution period). - Run-Time Scheduler -- At run-time, the primary visible vestige of the Scheduling Service is the Run-Time Scheduler. The Run-Time Scheduler manages one
RT_Info
structure for eachRT_Task
in the system. By using anRT_Task
'sRT_Info
, the Run-Time Scheduler can be queried for scheduling characteristics (e.g., a task's priority) of theRT_Task
. Currently, the data represented in theRT_Info
structures are computed off-line, i.e., priorities are statically assigned prior to run-time.
6. Presentation Layer Components and Optimizations

6.1. Presentation Layer Optimizations
The transformation between IDL definitions and the target programminglanguage is automated by TAO's IDL compiler. In addition to reducingthe potential for inconsistencies between client stubs and serverskeletons, this compiler support innovative automated optimizations.TAO's IDL compiler is designed to generate and configure multiplestrategies for marshaling and demarshaling IDL types. For instance,based on measures of a type's run-time usage, TAO can link in eithercompiled and/or interpreted IDL stubs and skeletons. This flexibilitycan achieve an optimal tradeoff between interpreted code (which isslow, but compact in size) and compiled code (which is fast, butlarger in size).
Likewise, TAO can cache premarshaled application data units (ADUs)that are used repeatedly. Caching improves performance when ADUs aretransferred sequentially in ``request chains' and each ADU variesonly slightly from one transmission to the other. In such cases, itis not necessary to marshal the entire every time. This optimizationrequires that the real-time ORB perform flow analysis of applicationcode to determine what request fields can be cached.
Although these techniques can significantly reduce marshaling overheadfor the common case, applications with strict real-time servicerequirements often consider only worst-case execution. As a result,the flow analysis optimizations described above can only be employedunder certain circumstances, e.g., for applications that canaccept statistical real-time service or when the worst-case scenariosare still sufficient to meet deadlines.
Back to the TAO intro page.

Last modified 18:06:18 CST 25 January 2019
Comments are closed.