Automatic screen brightness and camera exposure adjustment for remote multimedia collaboration sessions

The present disclosure provides methods and systems related to automatic adjustment of screen brightness for optimized presentation to both physically present and remote audience during the multimedia collaboration session. In one aspect, a method includes detecting presence of a screen in the field of view of a camera in a meeting room; determining if exposure of the camera or brightness of the screen is to be adjusted, to yield a determination; and controlling at least one of the exposure of the camera or the brightness of the screen based on the determination such that viewing of meeting room and the screen are legible for one or more audience and the screen is legible for one or more audience present in the meeting room.

TECHNICAL FIELD

The present technology pertains to managing remote multimedia collaboration sessions and more specifically to automatic adjustment of screen brightness and camera exposure for optimized presentation to both physically present and remote audience during the multimedia collaboration session.

BACKGROUND

In today's interconnected world, video conferencing presents a very suitable option for many users located in different geographical locations to communicate and collaborate. Step by step, advancements in technologies related to video conferencing enable users to have an experience that resembles in person meetings where all users are physically present in a single location, can listen to other participants, present material and collaborate.

Use of digital screens and boards such as smart whiteboards during such collaboration/video conferencing sessions is typical. As such digital screens are typically in the field of view of camera(s) that are broadcasting the sessions to remote audience and the digital screens can appear very bright. Adjusting the brightness of the digital screens for audience who are physically present in the room may result in overexposure (bright and unreadable) of the digital screens for the remote audience through the broadcasting cameras while proper brightness of the digital screens for the remote audience results in underexposure (dark and unreadable) of the digital screens for physically present audience. Furthermore, adjusting screen brightness or camera exposure may also negatively impact, for the remote audience, depiction of the a conference room and physically present audience in the conference room.

DETAILED DESCRIPTION

References to one or an embodiment in the present disclosure can be, but not necessarily are, references to the same embodiment; and, such references mean at least one of the embodiments.

Specific details are provided in the following description to provide a thorough understanding of embodiments. However, it will be understood by one of ordinary skill in the art that embodiments may be practiced without these specific details. For example, systems may be shown in block diagrams so as not to obscure the embodiments in unnecessary detail. In other instances, well-known processes, structures and techniques may be shown without unnecessary detail in order to avoid obscuring example embodiments.

The present disclosure describes several example embodiments directed to optimizing brightness of screens/exposures of cameras that are used to convey information in a multimedia collaboration session, for both in person users present in a physical location in which the screens are installed as well as remote users who are connected to and are able to view the screens using their remotely connected multimedia devices.

In one aspect, a method includes detecting presence of a screen in the field of view of a camera in a meeting room; determining if exposure of the camera or brightness of the screen is to be adjusted, to yield a determination; and controlling at least one of the exposure of the camera or the brightness of the screen based on the determination such that viewing of meeting room and the screen are legible for one or more audience and the screen is legible for one or more audience present in the meeting room.

In another aspect, a system includes a screen; a camera configured to capture live images within a room for transmission to one or more remote end users; and a controller. The controller is configured to detect presence of the screen; determine if exposure of the camera or brightness of the screen is to be adjusted, to yield a determination; and control at least one of the exposure of the camera or the brightness of the screen based on the determination such that viewing of meeting room and the screen are legible for one or more audience and the screen is legible for one or more audience present in the meeting room.

In another aspect, a non-transitory computer-readable medium has computer-readable instructions, which when executed by at least one processor, causes the at least one processor to detect presence of a screen in a field of view of a camera in a meeting room; determine if exposure of the camera or brightness of the screen is to be adjusted, to yield a determination; and control the exposure of the at least one camera or the brightness of the screen based on the determination such that viewing of meeting room and the screen are legible for one or more audience and the screen is legible for one or more audience present in the meeting room.

The present disclosure provides methods and systems related to automatic adjustment of screen brightness and/or camera exposure for optimized presentation to both physically present and remote audience during the multimedia collaboration session. The disclosure begins with a description of example settings in which the concepts presented herein may be implemented.

FIG. 1illustrates a multimedia collaboration setting, according to one aspect of the present disclosure. In an example of a multimedia collaboration session using video conferencing, setting100includes three separate parties participating in the multimedia collaboration session. Setting100includes a conference room102, a remote mobile device104and another conference room106. WhileFIG. 1illustrates an example three separate parties, the present disclosure is not limited thereto and there may be more or less parties participating in the multimedia collaboration session.

The conference rooms102and106and the mobile device104are remotely connected to one another through the appropriate local area connections and over the internet, as is known (e.g., cloud based collaboration server128). In other words, the conference rooms102and106and the mobile device104are located in different geographical locations.

Conference room102includes a table108, with one or more audience110sitting at table108. There may also be at least one other audience, which may be referred to as presenter112who may have material content to present to audience110and/or any other remotely connected audience such as audience present in conference room106and/or audience associated with mobile device104. Presence of presenter112is optional and the concepts disclosed herein are applicable to situations where no particular presenter is making a presentation to audience110and/or remote audience.

Conference room102may further include display114and main camera116. Display114may be a digital display such as a digital whiteboard and/or any other display device that may be used by presenter112to present content/make presentations to audience110and/or remote audience. Display (screen)114may be any known or to be developed display device capable of presenting content to audience. Display114may have an adjustable brightness that may be controlled by processing unit (controller)124, as will be further described below with reference toFIG. 4.

Optionally, display114can be configured to present a view of other remote participating parties (e.g., audience using mobile device104and/or audience in conference room106). In such case, display114may have a display section with a plurality of thumbnail display sections, each of which may display a view of a current speaker during the multimedia collaboration session. For example, when a participant associated with mobile device104speaks, display114can display a view of the participating associated with mobile device104(which may also include the surrounding areas of the participant visible through a camera of mobile device104). At the same time, each of thumbnail display sections represents a small version of a view of each different remote location and its associated participants taking part in the video conferencing session. For example, assuming that conference room102is a branch of company A located in New York and conference room106is another branch of company A located in Los Angeles and mobile device104is associated with an employee of company A teleworking from Seattle, then one of thumbnail display regions corresponds to a view of conference room102and its participants as observed by main camera116, another one of thumbnail display regions corresponds to a view of conference room106and its participants as observed by cameras installed therein and another one of thumbnail display regions corresponds to a view of the teleworking employee of company A using mobile device104. Furthermore, each thumbnail display region can have a small caption identifying a geographical location of each of conference rooms102and106and mobile device104(e.g., New York office, Los Angeles office, Seattle, Wash., etc.).

Main camera116may operate to provide a view of conference room102to remote audience at mobile device104and/or in conference room106. In one example, main camera116may utilize a technology capable of tracking and focusing on presenter(s) and/or individual audience110who may be actively participating, commenting, speaking during the multimedia collaboration session, etc. This tracking system can be the SpeakerTrack system developed, manufactured and distributed by Cisco Technology, Inc., of San Jose, Calif. For example, if one audience110is currently speaking, main camera116can zoom in (and/or tilt horizontally, vertically, diagonally, etc.) in order to present/capture a focused stream of audience110to participants at mobile device104and/or conference room106, a close up version of audience110rather than a view of the entire conference room102which results in audience110and/or other users/presenters being shown relatively smaller (which makes it more difficult for remote participants to determine accurately who the current speaker in conference room102is). In one example, instead of one, there may be a pair of main cameras116utilized for better tracking of users/speakers inside conference room102.

In one example, conference room102, mobile device104and conference room106may be connected to cloud based collaboration server128. Collaboration server128can have one or more processors and one or more memories to implement functionalities thereof to ensure establishing and maintaining connections between conference rooms102and106and mobile device104during the multimedia collaboration session.

Furthermore, collaboration server128can be used by a participant to setup the multimedia collaboration session (e.g., create an event with a given date and duration as well as identification of participants, etc.). The created event may then be shared with identified participants or associated parties via for example, an electronic mail, a text message, an application-based notification, etc. Identified participants can then interact with the invitation to accept, reject or provide any other indication with respect to their participation status in the event.

While certain components and number of different elements are described as being included in setting100, the present disclosure is not limited thereto. For example, there may be more or less participants participating in a video conferencing session via their corresponding devices than that shown inFIG. 1. There may be more or less participants in each conference room shown inFIG. 1. Mobile device104is not limited to being a mobile telephone device but can instead be any known or to be developed mobile computing device having necessary components (e.g., a microphone, a camera, a processor, a memory, a wired/wireless communication means, etc.) for communicating with other remote devices in a video conferencing session.

Furthermore, software/hardware for enabling the video conferencing session may be provided by various vendors such as Cisco Technology, Inc. of San Jose, Calif. Such software program may have to be downloaded on each device or in each conference room prior to being able to participate in an online video conferencing session. By installing such software program, participants can create, schedule, log into, record and complete one or more video conferencing sessions.

FIG. 1describes above provides an example setting with a camera having the entire conference room102including its users, presenter, screen and main camera in its FOV. Furthermore, example setting ofFIG. 1is one where cameras and display are coupled to the same audio/video codec for adjusting exposure of camera122and/or brightness of display114and ultimately optimizing view of display114as well as conference room102and audience110for physically present as well as remote users.

Alternatively, setting100ofFIG. 1may be replaced with one, where not all components are connected to the same audio/video codec but instead several disparate systems (digital whiteboards, cameras, displays, etc.) may be utilized in a conference room and more broadly in a multimedia collaboration session. Examples of such settings to which the present disclosure is applicable will be described below with reference toFIGS. 2A-B.

FIGS. 2A-Billustrate multimedia collaboration settings, according to one aspect of the present disclosure. In describingFIGS. 2A-B, components that are the same as those described above with reference toFIG. 1, are numbered the same and thus will be not described further, for sake of brevity.

In setting200ofFIG. 2A, components104,106,108,110,112,114,116,118,120and126are the same as those described above with reference toFIG. 1and thus will not be described again.

In setting200ofFIG. 2A, in addition to display114, there is an additional digital board204installed on a sidewall of conference room202. Such digital board204, similar to display114, may have an adjustable brightness. While inFIGS. 2A-B, a digital board204is referenced, digital board204may be the same as screen114, which can simply be a display showing content. For purposes of this disclosure, screen114, digital board/whiteboard204may be used interchangeably and the inventive concepts are equally applicable to both. Furthermore, in setting200and in contrast to setting100ofFIG. 1, main camera116may perform the functionalities of camera122ofFIG. 1and digital board204as well as audience110, presenter112, table108, microphones118and control unit120fall within FOV of main camera116.

Furthermore and in contrast toFIG. 1, digital board204, display114, camera116as well as mobile device104and components in conference room are each registered with cloud service (controller)206. Cloud service206may be, for example, WebEx service, developed and commercially available via Cisco Technology, Inc. of San Jose, Calif. With Cisco WebEx service as a non-limiting example, various components may be communicatively coupled via WebEx Lyra service.

In setting250ofFIG. 2B, components104,106,108,110,112,114,116,118,120,126,204and206are the same as those described above with reference toFIG. 2Aand thus will not be described again for sake of brevity.

The only difference between setting200ofFIG. 2Aand setting250ofFIG. 2Bis that digital board204is installed on the back wall of conference room252directly opposite of (and in FOV of) main camera116, whereas inFIG. 2A, digital board204is installed on a side wall of conference room202.

Furthermore and in contrast toFIG. 1, digital board204, display114, camera116as well as mobile device104and components in conference room are each registered with cloud service206. Cloud service206may be, for example, WebEx service, developed and commercially available via Cisco Technology, Inc. of San Jose, Calif. With Cisco WebEx service as a non-limiting example, various components may be communicatively coupled via WebEx Lyra service.

It should be noted that whileFIGS. 1 and 2A-B provide a single display114/digital board204on which content may be displayed and brightness thereof may be adjusted and a single camera122/116the exposure of which may be adjusted in conjunction with brightness of the display/digital board, the present disclosure is not limited thereto. In other words, there may be multiple displays and cameras in a conference room whose respective brightness and exposure may be automatically adjusted to optimize display of content for both in person and remote audience.

As briefly mentioned above, use of screens such as display114and/or digital board204during multimedia collaboration/video conferencing sessions is prevalent. As such digital screens are typically in the field of view of camera(s) that are broadcasting the sessions to remote audience the digital screens may appear very bright and unreadable. Adjusting the brightness of the digital screens for audience who are physically present in the room may result in overexposure (bright and unreadable) of the digital screens for the remote audience through the broadcasting cameras while proper exposure for the remote audience results in underexposure (dark and unreadable) for physically present audience.FIG. 3provides a visual example of content over/under exposure problem.

FIG. 3provides two snapshots of display114ofFIG. 1, which would equally be applicable to digital board204ofFIGS. 2A-B. Snapshot300is display114as viewed by audience110present in conference room102while snapshot302is display114as viewed by remote audience in conference room106and/or via mobile device104. In this scenario, brightness of display114is adjusted to provide the right exposure/visibility of display114to audience110(e.g., content (1, 2, 3) provided on display114is legible and clearly visible to audience110). At the same time, auto exposure algorithms being implemented by camera122(or similarly main camera116inFIGS. 2A-B) attempt to ensure that faces of audience110and/or presenter112are properly captured for display to remote audiences at mobile device104and/or in conference room106. Due to this attempt, content (e.g., 1, 2, 3) on display114and/or digital board204are completely overexposed (bright and unreadable/blurry). As will be described below with reference toFIG. 4, it is possible to adjust exposure of camera122and/or brightness of display114or digital whiteboard204to improve visibility of content displayed on display114or digital whiteboard204for the remote audience while maintaining legibility and visibility thereof for audience110present in conference room102.

FIG. 4illustrates a method of automatically adjusting screen brightness of one or more digital screens of the video conferencing session, according to one aspect of the present disclosure.FIG. 4will be described from perspective of processing unit124and more generally with respect toFIG. 1. However, functionalities of processing unit124may be implemented in a similar manner by cloud service206described above with reference toFIGS. 2A-BandFIG. 4is equally applicable to settings200and252ofFIGS. 2Aand B.

At S400, processing unit124detects presence of display114in FOV of camera122in conference room102. Alternatively and with reference to example settings ofFIGS. 2A-B, cloud service206may detect the presence of digital board204in FOV of main camera116in conference room202or252.

In one example, locating/detecting display114in the conference room102may be performed via an installation wizard. For integrated endpoints including microphones and speakers, the ‘double active radar’ method disclosed in U.S. application Ser. No. 15/729,160 filed on Oct. 10, 2017 can be used, the entire content of which is incorporated herein by reference. Another example detection method may be based on machine learning, where over time location of screens and displays in conference room102is learned (e.g., using sensors126). Another example method, which can be combined with the machine learning method is for display114to display known patterns on all available screens inside conference room102and use known or to be developed computer vision techniques to detect the location of screens inside conference room102.

Upon detection of display114, at S402, processing unit124analyzes characteristics of display114and camera122.

These characteristics, at any given instance, are communicated to and thus are known to processing unit124. More specifically, detected characteristics can include capabilities of the display114and camera122, such as the range of screen brightness level of display114, lens iris of camera122, digital gain range of camera122, etc., are known to processing unit124.

Based on these characteristics of display114and camera122, processing unit124, at S404, determines target brightness (e.g., LCD backlight intensity) of display114(first target) and target exposure level and appropriate exposure settings for camera122(second target).

The above described example targets may be determined based on experiments and/or empirical. For example, for target exposure level of camera122, artificial intelligence (AI) may be utilized to determine appropriate exposure or pixel average for different models of cameras and different manufactures.

At S405, processing unit124analyzes a captured image of conference room102to determine a current exposure level of camera122and/or a current brightness of display114, according to any known or to be developed image/video processing methods. For example, determining a current exposure level of camera122and/or current brightness of display114can be done by examining pixel values (e.g., a room may be exposed such that the average linear pixel value is 18%). By knowing location of display114in a captured image, processing unit124can examine legibility by evaluating pixel values of the location of display114within the captured image.

At S406, processing unit124determines if current brightness of display114and/or current exposure of camera122(determined at S405) is/are to be adjusted based on comparison of the current brightness of display114and/or the current exposure of camera122to the corresponding one of target brightness and target exposure level. For example, if the a current exposure level of camera122is lower or higher than the above described target exposure level, then processing unit124may determine to adjust the exposure of camera122.

The same analysis applies to display114. For example, if the current brightness is higher or lower than the target brightness described above, processing unit124may determine to adjust the brightness of display114.

In another example, the above described targets may constitute ranges (e.g., range of acceptable iris opening for camera122, range of acceptable LCD backlight intensity for display114). While exposure of camera122and brightness of display114may be within a permissible range, processing unit124may still make adjustments to the exposure of camera122and/or brightness of display114in order to optimize/improve visibility of content on display114for both in person/present as well as remote audience and also ensure optimized and legible depiction of conference room102(including audience110) for the remote audience. For example, processing unit124may utilize a machine learning based model, where over time and based on various data analysis (based on data collected using sensors126, for example) as well as user feedback, optimal exposure or camera122and brightness of display114may be learned and applied.

In another example, any changes to content of display114, lighting of conference room102, movement of camera122and/or main camera116may trigger re-evaluation and adjustment of exposure of camera122and/or brightness of display114.

If at S406, processing unit124determines that adjustments to exposure of camera122and/or brightness of display114are needed, then at S408, processing unit124controls exposure of camera122and/or brightness of display114such that legibility of display114for both physically present and remote audience is optimized while at the same time depiction of other elements (e.g., conference room102in general and in particular audience110) are also optimized for the remote audience. Achieving the correct exposure level in camera122may be done by modifying analog gain, digital gain, integration time or moving iris of camera122. Achieving correct brightness of display114may be done by reducing or increasing brightness level of display114.

As a non-limiting example, a simple exposure algorithm may be designed to keep the pixel average for an entire scene of conference room102at middle gray intensity (e.g., 18% on linear pixel data). A different non-limiting approach is to look at parts of the scene (e.g. faces of audience) and keep the pixel average of these parts of the scene at middle gray intensity. In another example and for other parts in a scene (e.g., display114), the algorithms may allow lower pixel averages for display114relative to other parts such as faces. A few non-limiting examples are provided below.

As an example, if current exposure level of camera122indicates that conference room102and its content including audience110are correctly exposed but display114is not (e.g., too bright), then processing unit124may only adjust (e.g., lower) brightness of display114in an attempt to improve legibility of display114for remote audience.

In another example, if current exposure level of camera122indicates that conference room102and its content including audience110are underexposed but display114is correctly exposed, then processing unit124may increase exposure of camera122. However, increasing exposure of camera122alone may result in display114becoming less legible to remote audience. Therefore, in one example, simultaneous with increasing exposure of camera122, processing unit124may also lower brightness of display114to adjust (compensate) for increased exposure of camera122.

In another example, if current exposure level of camera122indicates that conference room102and its content including audience110are overexposed but display114is correctly exposed, then processing unit124may reduce exposure of camera122. Reducing exposure of camera122may allow for increasing brightness of display114.

In another example, if current exposure level of camera122indicates that conference room102and its content including audience110are overexposed and display114is not legible (e.g., overexposed or underexposed), then processing unit124may reduce exposure of camera122(e.g., gradually) and each time evaluate pixel values corresponding to display114to determine if display114is legible.

As another non-limiting example, if at S406, processing unit124determines that a current exposure level of camera122is lower than the above described target exposure level, then at S408, processing unit124may increase camera122's exposure level (e.g., increase Iris opening of camera122with one step, e.g. from f/2.8-f/2.0), in an attempt to adjust exposure of faces of audience in conference room102and improve brightness and legibility of display114as well as conference room102including audience110for remote audience while maintaining a legible display of content on display114for audience present in conference room102. In another example, if at S406, processing unit124determines that a current exposure level of camera122is more than the target exposure level, then at S408, processing unit124may lower camera122's exposure level to avoid bright and illegible display of content on display114to the remote audience.

With respect to display114, if at S406, processing unit124determines that the current brightness of display114is less than the target brightness described above, then at S408, processing unit124may increase brightness of display114(e.g., from 40% to 50%) to improve and adjust legibility of display114for both present and remote audience. Similarly, if at S406, processing unit124determines that the current brightness of display114is more than the target brightness described above, then at S408, processing unit124may decrease the brightness of display114(e.g., from 60% to 55%) to improve and adjust legibility of display114for both present and remote audience. The brightness can be reduced in small steps while an auto exposure algorithm evaluates the result of change in screen brightness. In such case and after each small step, the process reverts back to S402and processing unit124performs S402, S404, S406and S408to evaluate and implement the next small step. In another example, processing unit124may estimate the required brightness reduction and reduce this in larger steps, with subsequent evaluation using the auto exposure algorithm. An implementation of this could be to control the screen brightness via the auto exposure algorithm in camera122. Accordingly, adjustments to brightness of display114and exposure of camera122may constitute a trade-off between the values of two until processing unit124determines no further adjustments to exposure level of camera122and/or brightness of display114is/are needed.

In one example, controlling the brightness of display114(and/or board204) is possible using a proprietary API for integrated displays/systems and HDMI Consumer Electronic Control (CEC) for non-integrated/general displays/systems.

Components of setting100(e.g., display114, main camera116, camera122, etc.) form an integrated system where communication standards and extensions are defined by the same provider. For example, setting100forms an integrated system when display114, main camera116, camera122are developed and provided by Cisco Technologies, Inc. of San Jose, Calif. Accordingly, the proprietary API may be XAPI developed by Cisco Technologies, Inc. of San Jose, Calif.

In another example, components of setting100(e.g., display114, main camera116, camera122, etc.) form a non-integrated/general system when one or more components such as display114, main camera116, camera122, etc. are provided by different providers (e.g., display114is not a Cisco provided display). For such non-integrated displays, controlling the brightness of display114may be performed via HDMI CEC with a defined extension supported by manufacturer/provider of such display114.

Once adjustments are completed, process ofFIG. 4returns to S400(or optional to S402) and processing unit124may periodically or upon detection of a triggering condition, repeat S400, S402, S404, S406and S408(or alternatively S402, S404, S406and S408, if the process reverts back to S402). Such triggering condition can include, but is not limited to, changes to content of display114, lighting of conference room102, movement of camera122and/or main camera116, etc.

Referring back to S406, if at S406, processing unit124determines that adjustments to exposure of camera122and/or brightness of display114are not needed, then process ofFIG. 4returns to S400(or optionally to S402) and processing unit124implements S400, S402, S404, S405, S406and S408(or alternatively S402, S404, S406and S408, if the process reverts back to S402), as described above.

With above examples of automatic adjustments to camera exposures and display brightnesses for optimizing visibility of content on display for both present and remote audience, the disclosure now turns to description of example components and system architecture for implement elements in settings100,200and250ofFIGS. 1 and 2A-B including, but not limited to, processing unit124, cloud service206, etc.

FIG. 5illustrates example components and system architectures, according to aspects of the present disclosure.FIG. 5illustrates computing system architecture for use in setting ofFIG. 1and/orFIGS. 2A-B, according to an aspect of the present disclosure. Computing system architecture (device)500has components that are in electrical communication with each other using a system connection505, such as a bus. Exemplary computing device500includes a processing unit (CPU or processor)510and a system connection505that couples various system components including the system memory515, such as read only memory (ROM)520and random access memory (RAM)525, to the processor510. The computing device500can include a cache of high-speed memory connected directly with, in close proximity to, or integrated as part of the processor510. The computing device500can copy data from the system memory515and/or the storage device530to the cache512for quick access by the processor510. In this way, the cache can provide a performance boost that avoids processor510delays while waiting for data. These and other modules can control or be configured to control the processor510to perform various actions. Other system memory515may be available for use as well. The system memory515can include multiple different types of memory with different performance characteristics. The processor510can include any general purpose processor and a hardware or software service, such as service (SVC) 1532, service (SVC) 2534, and service (SVC) 3536stored in storage device530, configured to control the processor510as well as a special-purpose processor where software instructions are incorporated into the actual processor design. The processor510may be a completely self-contained computing system, containing multiple cores or processors, a bus, memory controller, cache, etc. A multi-core processor may be symmetric or asymmetric.

To enable user interaction with the computing device500, an input device545can represent any number of input mechanisms, such as a microphone for speech, a touch-sensitive screen for gesture or graphical input, keyboard, mouse, motion input, speech and so forth. An output device535can also be one or more of a number of output mechanisms known to those of skill in the art. In some instances, multimodal systems can enable a user to provide multiple types of input to communicate with the computing device500. The communications interface540can generally govern and manage the user input and system output. There is no restriction on operating on any particular hardware arrangement and therefore the basic features here may easily be substituted for improved hardware or firmware arrangements as they are developed.

The storage device530can include services532,534,536for controlling the processor510. Other hardware or software modules are contemplated. The storage device530can be connected to the system connection505. In one aspect, a hardware module that performs a particular function can include the software component stored in a computer-readable medium in connection with the necessary hardware components, such as the processor510, system connection505, output device535, and so forth, to carry out the function.

The network device500can also include an application-specific integrated circuit (ASIC), which can be configured to perform routing and/or switching operations. The ASIC can communicate with other components in the network device500via the bus505, to exchange data and signals and coordinate various types of operations by the network device500, such as routing, switching, and/or data storage operations, for example.

Claim language reciting “at least one of” refers to at least one of a set and indicates that one member of the set or multiple members of the set satisfy the claim. For example, claim language reciting “at least one of A and B” means A, B, or A and B.