Abstract: A technique for recording a high-definition multimedia session under low bandwidth conditions is disclosed. The technique includes initiating a centralized recording for an ongoing multimedia session at a server (216). The technique includes monitoring network characteristics of client devices (202) participating in the multimedia session and determining whether at least one of network characteristics for at least one client device (202) is below a predefined threshold. Thereafter, the technique includes determining whether a participant of said client device is an active participant and initiating a local recording for said multimedia session at the client device upon determining that the participant of said client device is an active participant. Moreover, the technique includes transmitting said local recording to the remote server. The remote server generates a high-definition recording for said multimedia session based on the centralized recording and the local recording.
FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENTS RULES, 2003
COMPLETE SPECIFICATION (See section 10, rule 13)
“METHOD FOR RECORDING A HIGH-QUALITY
MULTIMEDIA SESSION UNDER LOW BANDWIDTH
CONDITIONS AND SYSTEM THEREOF”
ZENSAR TECHNOLOGIES LIMITED., of Plot#4 Zensar Knowledge Park, MIDC, Kharadi, Off Nagar Road, Pune, Maharashtra – 411014, India
The following specification particularly describes the invention and the manner in which it is to be performed.
TECHNICAL FIELD
[0001] The present invention relates to online multimedia sessions, and more particularly to recording of said online multimedia sessions, on multiple devices, in a low bandwidth environment.
BACKGROUND OF THE INVENTION
[0002] “Web conferencing” or “virtual conferencing” refers to various forms of online collaborative services including multimedia sessions, web seminars, webcasts, and peer-level web meetings. Web conferencing systems today support real-time audio and video streaming between participants, typically under the coordination of a central web conferencing server. Applications for web conferencing include online classrooms, meetings, training sessions, lectures, and seminars and so forth.
[0003] Though, said communication channel has now become essential backbone in remote work culture, such communication become highly unreliable when it comes to quality of internet connectivity at different locations of participants. Conventional web conferencing tools fail to tackle the problems associated with low/fluctuating internet bandwidths when multiple participants connect remotely into a meeting channel. Moreover, when it comes to recording such online sessions, current tools provide a centralized recording system i.e., a single place stores recording either at a cloud storage and/or at a local system of a host of such session. However, said centralized recording system is prone to information loss due to bandwidth issues faced by different participants located remotely at different locations. Thus, there is need for techniques to provide high-quality multimedia recording of such online multimedia sessions by preventing the information loss due to bandwidth issues.
[0004] The information disclosed in this background of the disclosure section is only for enhancement of understanding of the general background of the invention and should not be taken as an acknowledgement or any form of suggestion that this information forms the prior art already known to a person skilled in the art.
SUMMARY OF THE INVENTION
[0005] The present disclosure overcomes one or more shortcomings of the prior art and provides additional advantages discussed throughout the present disclosure. Additional features and advantages are realized through the techniques of the present disclosure. Other embodiments and aspects of the disclosure are described in detail herein and are considered a part of the claimed disclosure.
[0006] In one embodiment of the present disclosure, a method for recording a high-definition multimedia session under low bandwidth conditions is disclosed. The method includes initiating, at a remote server, a centralized recording for an ongoing multimedia session. Further, the method includes monitoring one or more network characteristics for each of plurality of client devices participating in said multimedia session and determining whether at least one of the one or more monitored network characteristics for the at least one client device is below a predefined threshold by a network monitoring unit. The method further includes determining, by an activity detector unit, whether a participant of said at least one client device is an active participant in said multimedia session, in response to determining that the at least one of the network characteristics of said at least one client device is below the predefined threshold. The method also includes initiating, at said at least one client device, a local recording for said multimedia session, in response to determining that the participant of said at least one client device is an active participant. Said recording continues for a period till the at least one of the network characteristics continue to remain below the predefined threshold. Further, the method includes transmitting, by said at least one client device, the local recording of the multimedia session to the remote server. The method also includes generating, by the remote server, a high-definition recording for said multimedia session based on the centralized recording and local recording of the multimedia session received from said at least one client device. Precisely, the remote server is configured to selectively merge the local recording with the centralized recording based on at least one of one or more audio signatures and timestamps associated with said recordings to generate the high-definition recording of the multimedia session.
[0007] According to yet another aspect, the local recording of the multimedia session from said at least one client device is transmitted to the remote server upon completion of the multimedia session.
[0008] According to still another aspect, the active participant is determined based on at least one of the following conditions:
if the participant of said at least one client device is sharing any video inputs in the multimedia session; or
if the participant of said at least one client device is sharing any audio inputs in the multimedia session.
[0009] According to yet another aspect, a video recording is initiated as local recording upon determining that the participant is sharing any video inputs, and an audio recording is initiated as local recording upon determining that the participant is sharing any audio inputs.
[0010] According to still another aspect, said method includes determining, by an audio processing unit, an audio signature associated with each of the active participant present in the multimedia session. Further, the method includes identifying, by the audio processing unit, one or more audio signatures from the received local recording and selectively, merging audio components in the said recordings of the multimedia session based on the said audio signatures and an associated timestamp information.
[0011] According to yet another aspect, the method includes determining, by the remote server, a portion of centralized recording as corrupt. The corrupt portion is a portion recorded during the period when at least one of the network characteristics of the at least one client device, identified as the active participant, is below the predefined threshold and selectively replacing, by the remote server, the corrupted portion of the centralized recording with the local recording received from said at least one client device.
[0012] In one embodiment of the present disclosure, a system for recording a high-definition multimedia session under low bandwidth conditions is disclosed. The system includes a remote server configured to initiate a centralized recording for an ongoing
multimedia session and one or more client devices, communicably coupled to the remote server. The one or more client devices configured to participate in said ongoing multimedia session. Each of the one or more client devices comprises a network monitoring unit. The network monitoring unit configured to monitor one or more network characteristics of respective client device and determine whether at least one of the one or more monitored network characteristics is below a predefined threshold. Each of one or more client devices also includes an activity detector unit configured to determine whether a participant of said client device is an active participant in said multimedia session, in response to determining that the at least one of the network characteristics of said client device is below the predefined threshold. Each of the one or more client device also includes a processing unit configured to initiate a local recording for said multimedia session, in response to determining that the participant of said client device is an active participant, wherein said recording continues for a period till the at least one of the one or more network characteristics continue to remain below the predefined threshold. The processing unit is further configured to transmit the local recording of the multimedia session to the remote server. The remote server is configured to generate the high-definition recording for said multimedia session based on the centralized recording and local recording of the multimedia session by selectively merging the local recording with the centralized recording based on at least one of one or more audio signatures and timestamps associated with said recordings to generate the high-definition recording of the multimedia session.
[0013] According to still another aspect, the processing unit is configured to transit the local recording to the remote server upon completion of the multimedia session.
[0014] According to yet another aspect, the activity detector unit is configured to
determine the active participant by determining:
if the participant is sharing any video inputs in the multimedia session; or if the participant is sharing any audio inputs in the multimedia session.
[0015] According to still another aspect, a video recording is initiated as local recording upon determining that the participant is sharing any video inputs, and an
audio recording is initiated as local recording upon determining that the participant is sharing any audio inputs.
[0016] According to yet another aspect, the remote server further includes an audio processing unit configured to determine an audio signature associated with each of the active participant present in the multimedia session. The audio processing unit is also configured to identify one or more audio signatures from the received local recording and selectively merge the audio components in the recording of multimedia session based on the said audio signatures and an associated timestamp information.
[0017] According to still another aspect, the remote server is further configured to determine a portion of centralized recording as corrupt. The corrupt portion is a portion recorded during the period when at least one of the network characteristics of the at least one client device, identified as the active participant, is below the predefined threshold. Thereafter, the remote server is configured to selectively replace the corrupted portion of the centralized recording with the local recording received from said at least one client device.
[0018] The foregoing summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features will become apparent by reference to the drawings and the following detailed description.
BRIEF DESCRIPTION OF THE DRAWINGS
[0019] The embodiments of the disclosure itself, as well as a preferred mode of use, further objectives and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawings. One or more embodiments are now described, by way of example only, with reference to the accompanying drawings in which:
[0020] Figure 1 shows an exemplary environment 100 of a system for recording a high-quality multimedia session, in accordance with an embodiment of the present disclosure;
[0021] Figure 2 shows a block diagram 200 illustrating a system for recording a high-quality multimedia session, in accordance with an embodiment of the present disclosure;
[0022] Figure 3 shows a method 300 for recording a high-quality multimedia session, in accordance with an embodiment of the present disclosure; and
[0023] Figure 4 shows a block diagram of an exemplary computer system 400 for implementing the embodiments consistent with the present disclosure.
[0024] The figures depict embodiments of the disclosure for purposes of illustration only. One skilled in the art will readily recognize from the following description that alternative embodiments of the structures and methods illustrated herein may be employed without departing from the principles of the disclosure described herein.
DETAILED DESCRIPTION OF THE INVENTION
[0025] The foregoing has broadly outlined the features and technical advantages of the present disclosure in order that the detailed description of the disclosure that follows may be better understood. It should be appreciated by those skilled in the art that the conception and specific embodiment disclosed may be readily utilized as a basis for modifying or designing other structures for carrying out the same purposes of the present disclosure.
[0026] The novel features which are believed to be characteristic of the disclosure, both as to its organization and method of operation, together with further objects and advantages will be better understood from the following description when considered in connection with the accompanying figures. It is to be expressly understood, however, that each of the figures is provided for the purpose of illustration and description only and is not intended as a definition of the limits of the present disclosure.
[0027] Disclosed herein is a method and a system for recording a high-quality multimedia session. It may be understood to a person skilled in art that multimedia session may include any online conference including two or more participants. According to embodiments of the present disclosure, the multimedia session is
recorded at a remote server to generate a centralized recording and locally at a client device in case of a low bandwidth environment at a client device to generate local recordings (also referred as “participant snippets”). Thereafter, a corrupted portion of the centralized recording due to local bandwidth environment at the client device is selectively replaced by the local recordings received from the client device. Accordingly, the system prevents loss of information due to low bandwidth conditions at client devices.
[0028] The term “user” or “participant” may be used interchangeably throughout the description.
[0029] Figure 1 shows an exemplary environment 100 of a system for recording a high-quality multimedia session under low bandwidth conditions, in accordance with an embodiment of the present disclosure. It must be understood to a person skilled in art that the system may also be implemented in various environments, other than as shown in Fig. 1.
[0030] Figure 1 illustrates two perspectives, one from a client side and another from a server side. The client side includes a plurality of client devices and the server side includes a server. In an exemplary embodiment, said plurality of client devices may be participants in an online multimedia session implemented via user’s client applications installed on respective devices which may be supported and/or implemented by the server. When the multimedia session begins the server initiates a centralized recording 102 of the multimedia session. The server may initiate said centralized recording 102 either automatically or based on an input received from any one of client device. Further, upon initiation of multimedia session, the client device may simultaneously initiate monitoring of network characteristics of the client device. Further, in case the client device identifies a low bandwidth condition based on said monitoring, the client device may determine an activity being performed by a user of said client device to determine if the client device is an active participant in the multimedia session or not. In case, it is determined that the said client device is an active participant, the client device may initiate a local recording for a period at which the client device is at low bandwidth condition and stores the said recording at the local storage. Further, either
upon completion of the said local recording or the multimedia session, the client device may send the local recording as participant snippets 104 to the server.
[0031] The functionality of the client device, as explained below, may be performed by any of the client devices 1-n. Upon completion of the multimedia session, the server may take centralized recoding 102 and the participant snippets 104, as inputs and generates a high-quality final recording of the multimedia session. Specifically, the server identifies a portion of centralized recording 102 as corrupt which is a portion recorded during the period when at least one of the network characteristics of the at least one client device, identified as the active participant, is below the predefined threshold. Thereafter, the remote server may selectively replace the corrupted portion of the centralized recording 102 with the participant snippets 104 received from said at least one client device. The server may perform various operations such as audio processing, video processing and multimedia generation in order to generate said high-quality recording of the multimedia session.
[0032] The detailed explanation of the exemplary environment 100 is explained in conjunction with Figure 2 that shows a block diagram 200 of a system for recording a high-quality multimedia session under low bandwidth conditions, in accordance with an embodiment of the present disclosure.
[0033] The system 200 includes a plurality of client devices 202a-202n (interchangeably referred to as “the client device 202”), a remote server 216 (interchangeably referred to as “the server 216”), and a network 214 connecting the client devices 202 and the server 216.
[0034] In one implementation, the network 214 may be a wireless network, a wired network or a combination thereof. The network 214 can be implemented as one of the different types of networks, such as intranet, local area network (LAN), wide area network (WAN), the internet, and the like. The network 214 may either be a dedicated network or a shared network. The shared network represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Hypertext Transfer Protocol Secure (HTTPS),
Transmission Control Protocol/Internet Protocol (TCP/IP), Wireless Application Protocol (WAP), and the like, to communicate with one another. Further the network 214 may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, and the like.
[0035] As shown in Figure 2, the plurality of client devices 202a-202n may be communicably coupled to each other via the network 214. The client devices 202a-202n may enable their respective users to participate in an online multimedia session. According to embodiments of the present disclosure, the online multimedia session may be in any form such as, but not limited to, web seminars, webcasts, and peer-level web meetings etc. Examples of the client device 202 may include any suitable communication device such as, but not limited to, smartphone, mobile phone, laptop, tablet, portable communication device and so forth.
[0036] In an exemplary embodiment, each of the client device 202 may include a network monitoring unit 204 (illustrated as a network monitoring unit 204a for client device 202a), an activity detector unit 206 (illustrated as an activity detector unit 206a for client device 202a), a processing unit 208 (illustrated as a processing unit 208a for client device 202a), a local storage unit 210 (illustrated as a local storage unit 210a for client device 202a) and a transceiver unit 212 (illustrated as a transceiver unit 212a for client device 202a). Illustration of all of above-mentioned components of the client device 202 is only made with respect to client device 202a for the sake of brevity. However, a person skilled would understand each of the client device 202 includes similar components. Further, each of the client device 202 may be configured to implement an online conference platform to enable the user of the client device 202 to participate in the multimedia session. In an illustrative embodiment, the functionality disclosed in below paragraphs is explained in view of one client device 202, however same functionality may be performed by any of the client devices 202a-202n.
[0037] Those skilled in the art will appreciate that the network monitoring unit 204 may be configured to monitor network condition at a respective client device 202. In an exemplary embodiment, the network monitoring unit 204 may be configured to monitor one or more network characteristics of the client device 202. In some
embodiments, the network monitoring unit 204 may be configured to monitor the network characteristics continuously throughout a duration of the multimedia session. In alternative embodiments, the network monitoring unit 204 may be configured to monitor the network characteristics at predetermined intervals during the duration of the multimedia session. The network characteristics may include characteristics such as, but not limited to, bandwidth, signal strength, signal to noise ratio and so forth. The network monitoring unit 204 may be configured to continuously monitor the network quality at the client device 202 to determine if any of the one or more network characteristics goes below a predefined threshold. In some embodiments, the network monitoring unit 204 may interact with the online conference platform and/or one or more network devices of the client device, to determine low bandwidth conditions at the client device 202. It is to be appreciated that the predefined threshold may be defined based on values of said network characteristics required for an effective information transmission. The network monitoring unit 204 may comprise hardware components like processor, microprocessor, microcontrollers, application-specific integrated circuit for performing the desired operations.
[0038] Further, the activity detector unit 206, may be configured to determine whether a user/participant of said client device 202 is an active participant in said multimedia session or not. In an exemplary embodiment, the active participant may be determined based on at least one of the following conditions i.e., if the participant of said at least one client device is sharing any video inputs in the multimedia session or if the participant of said at least one client device is sharing any audio inputs in the multimedia session, at any given point of time during the multimedia session. It is further to be noted that the video inputs may include inputs such as, but not limited to, a camera input, a screen share, a remote screen control and so forth. Whereas audio inputs may include inputs such as, but not limited to, a voice input, a media audio input and so forth. In some embodiments, the activity detector unit 206 may interact with the online conference platform and/or one or more Input/Output components of the client device 202, to determine said inputs by the user. Those skilled in art will agree that the activity detector unit 206 may comprise hardware components like processor,
microprocessor, microcontrollers, application-specific integrated circuit for performing the desired operations.
[0039] In an alternative embodiment, the operations of the network monitoring unit 204 and the activity detector unit 206 may be performed by the processing unit 208. Further, the processing unit 208 may also be configured to initiate a local recording of the multimedia session upon determining that the client device 202 is under low bandwidth condition and the participant associated with the client device 202 is an active participant. In an exemplary embodiment, the processing unit 208 may be configured to initiate a video recording of the ongoing multimedia session as the local recording upon determining that the participant is sharing any video input and initiate an audio recording of the ongoing multimedia session as the local recording upon determining that the participant is sharing any audio input. Alternatively, the processing unit 208 may initiate a video recording to capture both video and audio components of the multimedia session. The processing unit 208 may be configured to continues to record the multimedia session as the local recording till the network characteristics of the client device 202 continue to remain below the predefined threshold. In some embodiments, the processing unit 208 may generate multiple local recordings based on the network characteristics of the client device 202. The processing unit 208 may interact with the online conference platform, the network monitoring unit 204, the activity detector unit 206, the local storage unit 210 to record and store local recording of the multimedia session in low bandwidth condition. Further, each said local recording may be timestamped and include any additional meta data which may be required to perform the desired functionality of the system 200. The meta data may include information such as, but not limited to, location, user ID and so forth.
[0040] The client device 202 may further include the local storage unit 210 configured to store the local recording generated by the processing unit 208 along with associated meta data including timestamp information. The local storage unit 210 may also be configured to store any further information which may be required during the operation of the client device 202. The local storage unit 210 may include any suitable memory device such as, but not restricted to, a Random Access Memory (RAM) unit and/or a non-volatile memory unit such as a Read Only Memory (ROM), optical disc drive,
magnetic disc drive, flash memory, Electrically Erasable Read Only Memory (EEPROM), and so forth
[0041] Further, as shown in Figure 2, the client device 202 may include the transceiver unit 212 configured to enable transmission and reception of data/information from and at the client device 202. In an exemplary embodiment, the processing unit 208 may be configured to transmit the one or more local recordings to the server 216 via the transceiver unit 212. For the sake of clarity, the local recordings may be interchangeably referred as participant snippets 104 in the present disclosure.
[0042] Now coming to the other important aspect of the invention, as shown in Figure 2, which is the server 216 is disclosed. The server 216 may include a transceiver 218. The transceiver 218 may be configured to enable transmission and reception of data/information from and at the server 216. In an exemplary embodiment, the server 216 may receive the participant snippets 104 from the client device 202 via the transceiver 218. The server 216 may receive the participant snippets 104 either upon completion of said participant snippet or completion of the multimedia session.
[0043] The server 216 may include a processor 220 configured to initiate a centralized recording 102 of the multimedia session at the server 216. In some embodiments, the recording 102 may be initiated based on a command received from at least participant of the multimedia session. In alternative embodiments, the recording 102 may be automatically initiated with the start of the multimedia session.
[0044] Further, the server 216 may include a memory 222 configured to store data/information required for the operation of the server 216. In an exemplary embodiment, the memory 222 may configured to store the centralized recording 102 and the participant snippets 104 and associated metadata. In an alternative embodiment, the centralized recording 102 may be stored at a remote location and the server 216 may retrieve the said recording 102, when required. In some embodiments, the metadata may include information, such as, but not limited to, timestamp, location, user ID and so forth.
The server 216 may further include an audio processing unit 224. The audio processing unit 224 may be configured to determine an audio signature associated with each of the active participant present in the multimedia session from the centralized recording 102 and the participant snippets 204. To determine audio signature associated with various participants, the audio processing unit 224 may be configured to perform following steps:
Pre-processing: the step of pre-processing may include at least one of the following steps:
Pre-emphasis - This is achieved by passing the signal through a first-order finite
impulse response (FIR) filter.
Frame blocking - partitioning the speech signal into frames.
Windowing - The framed speech signal is then windowed. Bandpass filter is a
suitable window that is applied to minimize disjointedness at the start and finish
of each frame. The Bandpass filter can be designed to only allow frequencies
that relate to human voice (50Hz - 3KHz). The two categories of windows are
Hamming and Rectangular windows. It increases the sharpness of harmonics,
eliminates the discontinuous of signal by tapering beginning and ending of the
frame zero. It also reduces the spectral distortion formed by the overlap.
Feature Extraction:
The audio processing unit 224 may utilize any suitable feature extraction technique, to perform the desired operation. These feature extract techniques may include, but not limited to, Mel Frequency Cepstral Coefficients (MFCC), Linear Prediction Coefficients (LPC), Linear Prediction Cepstral Coefficients (LPCC), Line Spectral Frequencies (LSF), Discrete Wavelet Transform (DWT) and Perceptual Linear Prediction (PLP) and so forth.
Clustering:
After extracting the features, the audio processing unit 224 may be configured to apply clustering techniques to group similar features together. The audio processing unit 224 may align similar features to a same speaker. In an exemplary embodiment, the audio processing unit 224 may utilize K-means
clustering technique for said clustering. However, embodiments either cover or indent to cover any suitable clustering technique which may be implemented to perform the desired operation of clustering.
In some embodiments, the audio processing unit 224 may be configured to selectively merge audio components in the said recordings of the multimedia session based on the said audio signatures and an associated timestamp information. Specifically, the audio processing unit 224 map the features form each participant snippet to the cluster discussed above and assign an identification to each participant. Thereafter, the audio processing unit 224 may be configured to replace a corrupt version of audio component of the centralized recording 102 with the suitable participant snippet 104 based on audio signature and timestamp information. Thereby, the audio processing unit 224 may avoid removing speech signal of other speaker in that time interval and only replenish the required participant's voice signal. Thus, the audio processing unit 224 provides an effective and efficient technique to replace corrupted audio component.
[0050] Referring back to Figure 2, it may be seen that the server 216 may also include a video processing unit 226. Precisely, the video processing unit 226 may be configured to replace a corrupt version of video component of the centralized recording 102 with the suitable participant snippet 104 based on timestamp information. Thus, the video processing unit 226 creates a high-quality video component for the duration of the multimedia session. The video processing unit 226 may identify the duration and timestamp information of the participant snippets 104 and replaces the portions of centralized recording 102 for said time duration with the participant snippets 104 to generate high-quality video content.
Finally, the server 216 may also include a multimedia generation unit 228 configured to generate the high-quality recording of the multimedia session based on audio component and video components processed by the audio processing unit 224 and the video processing unit 226, respectively. The multimedia generation unit 228 may combine the processed audio component and the high-quality video component based on time stamped information associated with said components. According to
embodiments of present disclosure, these units 224-228 may comprise hardware components like processor, microprocessor, microcontrollers, application-specific integrated circuit for performing desired operations. It must be understood to a person skilled in art that the processor 220 may perform all the functions of the units 224-226 according to various embodiments of the present disclosure.
Figure 3 depicts a method 300 for recording a high-quality multimedia session under low bandwidth conditions, in accordance with an embodiment of the present disclosure.
As illustrated in Figure 3, the method 300 includes one or more blocks illustrating a method for facilitating the meeting content. The method 300 may be described in the general context of computer executable instructions. Generally, computer executable instructions can include routines, programs, objects, components, data structures, procedures, modules, and functions, which perform specific functions or implement specific abstract data types.
The order in which the method 300 is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method. Additionally, individual blocks may be deleted from the methods without departing from the spirit and scope of the subject matter described.
At block 302, the method 300 may include initiating, at a remote server 216, a centralized recording for an ongoing multimedia session. The remote server 216 may initiate said centralized recording upon initiation of the multimedia session. In alternative embodiment, the remote server 216 may initiate said centralized recording upon receiving an input from the one of the client devices 202.
At block 304, the method 300 may include monitoring, by a network monitoring unit 204 of the client device 202, one or more network characteristics for each of plurality of client devices participating in said multimedia session. The network monitoring unit 204 may indicate said monitoring simultaneously at the initiation of the centralized recording at the server 216.
At block 306, the method 300 may include determining, by the network monitoring unit 204, whether at least one of the one or more monitored network characteristics for the at least one client device is below a predefined threshold.
At block 308, the method 300 may include determining, by the activity detector unit 206, whether a participant of said at least one client device is an active participant in said multimedia session, in response to determining that the at least one of the network characteristics of said at least one client device is below the predefined threshold.
At blocks 310, the method 300 may include initiating, at said at least one client device 202, a local recording for said multimedia session, in response to determining that the participant of said at least one client device 202 is an active participant. Said recording continues for a period till the at least one of the network characteristics continue to remain below the predefined threshold.
At blocks 312, the method 300 may include transmitting, by said at least one client device 202, the local recording of the multimedia session to the remote server 216
At block 314, the method 300 may include generating, by the remote server 216, a high-definition recording for said multimedia session based on the centralized recording and local recording of the multimedia session received from said at least one client device 202.
Computer System
Figure 4 illustrates a block diagram of an exemplary computer system 400 for implementing embodiments consistent with the present disclosure. It may be understood to a person skilled in art that the computer system 400 and its components is similar to the client device 202 or the remote server 216 referred in Fig. 2. In an embodiment, the computer system 400 may be a peripheral device, which is used for facilitating systematic escalation of information related to an event in an organizational hierarchy. The computer system 400 may include a central processing unit ("CPU" or "processor") 402. The processor 402 may comprise at least one data processor for
executing program components for executing user or system-generated business processes. The processor 402 may include specialized processing units such as integrated system (bus) controllers, memory management control units, floating point units, graphics processing units, digital signal processing units, etc.
The processor 402 may be disposed in communication with one or more input/output (I/O) devices via I/O interface 401. The I/O interface 401 may employ communication protocols/methods such as, without limitation, audio, analog, digital, stereo, IEEE-1394, serial bus, Universal Serial Bus (USB), infrared, PS/2, BNC, coaxial, component, composite, Digital Visual Interface (DVI), high-definition multimedia interface (HDMI), Radio Frequency (RF) antennas, S-Video, Video Graphics Array (VGA), IEEE 802.n /b/g/n/x, Bluetooth, cellular (e.g., Code-Division Multiple Access (CDMA), High-Speed Packet Access (HSPA+), Global System For Mobile Communications (GSM), Long-Term Evolution (LTE) or the like), etc. Using the I/O interface, the computer system 400 may communicate with one or more I/O devices.
In some embodiments, the processor 402 may be disposed in communication with a communication network 414 via a network interface 403. The network interface 403 may communicate with the communication network 414. The communication unit may employ connection protocols including, without limitation, direct connect, Ethernet (e.g., twisted pair 10/100/1000 Base T), Transmission Control Protocol/Internet Protocol (TCP/IP), token ring, IEEE 802.11a/b/g/n/x, etc.
The communication network 414 can be implemented as one of the several types of networks, such as intranet or Local Area Network (LAN) and such within the organization. The communication network 414 may either be a dedicated network or a shared network, which represents an association of several types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), Wireless Application Protocol (WAP), etc., to communicate with each other. Further, the communication network 414 may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, etc.
In some embodiments, the processor 402 may be disposed in communication with a memory 405 (e.g., RAM 412, ROM 413, etc. as shown in FIG. 4) via a storage interface 404. The storage interface 404 may connect to the memory 405 including, without limitation, memory drives, removable disc drives, etc., employing connection protocols such as Serial Advanced Technology Attachment (SATA), Integrated Drive Electronics (IDE), IEEE-1394, Universal Serial Bus (USB), fiber channel, Small Computer Systems Interface (SCSI), etc. The memory drives may further include a drum, magnetic disc drive, magneto-optical drive, optical drive, Redundant Array of Independent Discs (RAID), solid-state memory devices, solid-state drives, etc.
The memory 405 may store a collection of program or database components, including, without limitation, user /application, an operating system, a web browser, mail client, mail server, web server and the like. In an exemplary embodiment, the memory 405 may store the centralized recording 102 and participant snippets 104. In some embodiments, computer system may store user/application data, such as the data, variables, records, etc. as described in this invention. Such databases may be implemented as fault-tolerant, relational, scalable, secure databases such as OracleR or SybaseR.
The operating system may facilitate resource management and operation of the computer system. Examples of operating systems include, without limitation, APPLE MACINTOSHR OS X, UNIXR, UNIX-like system distributions (E.G., BERKELEY SOFTWARE DISTRIBUTIONTM (BSD), FREEBSDTM, NETBSDTM, OPENBSDTM, etc.), LINUX DISTRIBUTIONSTM (E.G., RED HATTM, UBUNTUTM, KUBUNTUTM, etc.), IBMTM OS/2, MICROSOFTTM WINDOWSTM (XPTM, VISTATM/7/8, 10 etc.), APPLER IOSTM, GOOGLER ANDROIDTM, BLACKBERRYR OS, or the like. A user interface may facilitate display, execution, interaction, manipulation, or operation of program components through textual or graphical facilities. For example, user interfaces may provide computer interaction interface elements on a display system operatively connected to the computer system, such as cursors, icons, check boxes, menus, windows, widgets, etc. Graphical User Interfaces (GUIs) may be employed, including, without limitation, APPLE MACINTOSHR operating systems, IBMTM OS/2, MICROSOFTTM
WINDOWSTM (XPTM, VISTATM/7/8, 10 etc.), UnixR X-Windows, web interface libraries (e.g., AJAXTM, DHTMLTM, ADOBE® FLASHTM, JAVASCRIPTTM, JAVATM, etc.), or the like.
[0070] Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present invention. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e., non-transitory. Examples include Random Access Memory (RAM), Read-Only Memory (ROM), volatile memory, non-volatile memory, hard drives, Compact Disc (CD) ROMs, Digital Video Disc (DVDs), flash drives, disks, and any other known physical storage media.
[0071] A description of an embodiment with several components in communication with each other does not imply that all such components are required. On the contrary, a variety of optional components are described to illustrate the wide variety of possible embodiments of the invention.
[0072] When a single device or article is described herein, it will be clear that more than one device/article (whether they cooperate) may be used in place of a single device/article. Similarly, where more than one device or article is described herein (whether they cooperate), it will be clear that a single device/article may be used in place of the more than one device or article or a different number of devices/articles may be used instead of the shown number of devices or programs. The functionality and/or the features of a device may be alternatively embodied by one or more other devices which are not explicitly described as having such functionality/features. Thus, other embodiments of the invention need not include the device itself.
[0073] Finally, the language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate or circumscribe the inventive subject matter. It is therefore intended that the scope of the invention be limited not by this detailed description, but rather by any claims that issue on an application based here on. Accordingly, the embodiments of the present invention are intended to be illustrative, but not limiting, of the scope of the invention, which is set forth in the following claims.
[0074] While various aspects and embodiments have been disclosed herein, other aspects and embodiments will be apparent to those skilled in the art. The various aspects and embodiments disclosed herein are for purposes of illustration and are not intended to be limiting, with the true scope and spirit being indicated by the following claims.
Reference Numerals:
Reference Numeral Description
100 Exemplary environment of a system for identifying at least a pair of entities for a meeting
102 Centralized recording
104 Participant Snippets
200 Block diagram of the system
202 Client Device
204 Network Monitoring Unit
206 Activity Detector Unit
208 Processing Unit
210 Local Storage Unit
212 Transceiver Unit
214 Network
216 Remote Server
218 Transceiver
220 Processor
222 Memory
224 Audio Processing Unit
226 Video Processing Unit
228 Multimedia Generation Unit
300 Method for recording a high-quality multimedia session under low bandwidth conditions
We Claim:
1. A method for recording a high-definition multimedia session under low
bandwidth conditions, the method comprising:
initiating, at a remote server (216), a centralized recording (102) for an ongoing multimedia session;
monitoring, by a network monitoring unit (204), one or more network characteristics for each of plurality of client devices (202) participating in said multimedia session;
determining, by the network monitoring unit (204), whether at least one of the one or more monitored network characteristics for the at least one client device (202) is below a predefined threshold;
determining, by an activity detector unit (206), whether a participant of said at least one client device (202) is an active participant in said multimedia session, in response to determining that the at least one of the network characteristics of said at least one client device is below the predefined threshold;
initiating, at said at least one client device (202), a local recording for said multimedia session, in response to determining that the participant of said at least one client device is an active participant, wherein said recording continues for a period till the at least one of the network characteristics continue to remain below the predefined threshold;
transmitting, by said at least one client device (202), the local recording of the multimedia session to the remote server (216); and
generating, by the remote server (216), a high-definition recording for said multimedia session based on the centralized recording and local recording of the multimedia session received from said at least one client device (202);
wherein the remote server (216) is configured to selectively merge the local recording with the centralized recording based on at least one of one or more audio signatures and timestamps associated with said recordings to generate the high-definition recording of the multimedia session.
2. The method as claimed in claim 1, wherein the local recording of the multimedia session from said at least one client device (202) is transmitted to the remote server (216) upon completion of the multimedia session.
3. The method as claimed in claim 1, wherein the active participant is determined based on at least one of the following conditions:
if the participant of said at least one client device is sharing any video inputs in the multimedia session; or
if the participant of said at least one client device is sharing any audio inputs in the multimedia session.
4. The method as claimed in claim 3, wherein:
a video recording is initiated as local recording upon determining that the participant is sharing any video inputs, and
an audio recording is initiated as local recording upon determining that the participant is sharing any audio inputs.
5. The method as claimed in claim 4, further comprising:
determining, by an audio processing unit (224), an audio signature associated with each of the active participant present in the multimedia session;
identifying, by the audio processing unit (224), one or more audio signatures from the received local recording; and
selectively, merging audio components in the said recordings of the multimedia session based on the said audio signatures and an associated timestamp information.
6. The method as claimed in claim 1, generating, by the remote server (216), the
high-definition recording for said multimedia session further comprising:
determining a portion of centralized recording as corrupt, wherein the corrupt portion is a portion recorded during the period when at least one of the network characteristics of the at least one client device, identified as the active participant, is below the predefined threshold; and
selectively replacing the corrupted portion of the centralized recording with the local recording received from said at least one client device (202).
7. A system for recording a high-definition multimedia session under low
bandwidth conditions, the system comprising:
a remote server (216) configured to initiate a centralized recording for an ongoing multimedia session; and
one or more client devices (202a-202n), communicably coupled to the remote server (216), configured to participate in said ongoing multimedia session, wherein each of the one or more client devices (202a-202n) comprising:
a network monitoring unit (204) configured to:
monitor one or more network characteristics of respective client device; and
determine whether at least one of the one or more monitored network characteristics is below a predefined threshold;
an activity detector unit (206) configured to determine whether a participant of said client device is an active participant in said multimedia session, in response to determining that the at least one of the network characteristics of said client device is below the predefined threshold; and
a processing unit (208) configured to:
initiate a local recording for said multimedia session, in response to determining that the participant of said client device is an active participant, wherein said recording continues for a period till the at least one of the one or more network characteristics continue to remain below the predefined threshold; and
transmit the local recording of the multimedia session to the remote server;
wherein the remote server (216) is configured to generate the high-definition recording for said multimedia session based on the centralized recording and local recording of the multimedia session by selectively merging the local recording with the centralized recording based on at least one of one or more audio signatures and timestamps associated with said recordings to generate the high-definition recording of the multimedia session.
8. The system as claimed in claim 7, wherein the processing unit (208) is configured to transit the local recording to the remote server upon completion of the multimedia session.
9. The system as claimed in claim 7, wherein the activity detector unit (206) configured to determine the active participant by determining:
if the participant is sharing any video inputs in the multimedia session; or
if the participant is sharing any audio inputs in the multimedia session.
10. The system as claimed in claim 9, wherein:
a video recording is initiated as local recording upon determining that the participant is sharing any video inputs, and
an audio recording is initiated as local recording upon determining that the participant is sharing any audio inputs.
11. The system as claimed in claim 10, wherein the remote server (216) further
comprising:
an audio processing unit (224) configured to:
determine an audio signature associated with each of the active participant present in the multimedia session;
identify one or more audio signatures from the received local recording; and
selectively merge the audio components in the recording of multimedia session based on the said audio signatures and an associated timestamp information.
12. The system as claimed in claim 7, wherein to generate the high-definition
recording of multimedia session, the remote server is further configured to:
determine a portion of centralized recording as corrupt, wherein the corrupt portion is a portion recorded during the period when at least one of the network characteristics of the at least one client device, identified as the active participant, is below the predefined threshold; and
selectively replace the corrupted portion of the centralized recording with the local recording received from said at least one client device.
| # | Name | Date |
|---|---|---|
| 1 | 202121014290-STATEMENT OF UNDERTAKING (FORM 3) [30-03-2021(online)].pdf | 2021-03-30 |
| 2 | 202121014290-POWER OF AUTHORITY [30-03-2021(online)].pdf | 2021-03-30 |
| 3 | 202121014290-FORM 18 [30-03-2021(online)].pdf | 2021-03-30 |
| 4 | 202121014290-FORM 1 [30-03-2021(online)].pdf | 2021-03-30 |
| 5 | 202121014290-DRAWINGS [30-03-2021(online)].pdf | 2021-03-30 |
| 6 | 202121014290-DECLARATION OF INVENTORSHIP (FORM 5) [30-03-2021(online)].pdf | 2021-03-30 |
| 7 | 202121014290-COMPLETE SPECIFICATION [30-03-2021(online)].pdf | 2021-03-30 |
| 8 | 202121014290-Proof of Right [16-07-2021(online)].pdf | 2021-07-16 |
| 9 | Abstract1.jpg | 2021-10-19 |
| 10 | 202121014290-FER.pdf | 2023-03-22 |
| 11 | 202121014290-OTHERS [21-09-2023(online)].pdf | 2023-09-21 |
| 12 | 202121014290-FER_SER_REPLY [21-09-2023(online)].pdf | 2023-09-21 |
| 13 | 202121014290-US(14)-HearingNotice-(HearingDate-10-09-2024).pdf | 2024-08-08 |
| 14 | 202121014290-Correspondence to notify the Controller [06-09-2024(online)].pdf | 2024-09-06 |
| 15 | 202121014290-FORM-26 [10-09-2024(online)].pdf | 2024-09-10 |
| 16 | 202121014290-Written submissions and relevant documents [25-09-2024(online)].pdf | 2024-09-25 |
| 17 | 202121014290-PatentCertificate01-10-2024.pdf | 2024-10-01 |
| 18 | 202121014290-IntimationOfGrant01-10-2024.pdf | 2024-10-01 |
| 1 | 202121014290SEARCHSTRATEGYE_22-03-2023.pdf |