Patents by Inventor Lenin Ravindranath Sivalingam
Lenin Ravindranath Sivalingam has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11170819Abstract: Described herein is a mechanism for creating a dynamic video highlight from a plurality of video segments. A metadata collection agent collects metadata comprising attributes about a video, segments within the video where one or more events occur, attributes about the creator of the video and so forth. The metadata is collected and used to create highlight video definitions comprising a set of metadata attribute-value pairs. The highlight video definitions can be created in an interactive fashion by presenting a user interface allowing selection of a combination of attribute-value pairs to include/exclude segments from the definition and/or manual selection of custom segments. The highlight video definitions can be stored and/or shared among users. The video highlight definitions are utilized to instantiate one or more video players to play the video segments in an identified order without assembling the video segments into a separate video.Type: GrantFiled: May 14, 2019Date of Patent: November 9, 2021Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Donald Frank Brinkman, Jr., Suvamsh Shivaprasad, Max Artemov, Lenin Ravindranath Sivalingam, Matthai Philipose, Peter Bodik
-
Publication number: 20200365188Abstract: Described herein is a mechanism for creating a dynamic video highlight from a plurality of video segments. A metadata collection agent collects metadata comprising attributes about a video, segments within the video where one or more events occur, attributes about the creator of the video and so forth. The metadata is collected and used to create highlight video definitions comprising a set of metadata attribute-value pairs. The highlight video definitions can be created in an interactive fashion by presenting a user interface allowing selection of a combination of attribute-value pairs to include/exclude segments from the definition and/or manual selection of custom segments. The highlight video definitions can be stored and/or shared among users. The video highlight definitions are utilized to instantiate one or more video players to play the video segments in an identified order without assembling the video segments into a separate video.Type: ApplicationFiled: May 14, 2019Publication date: November 19, 2020Inventors: Donald Frank Brinkman, JR., Suvamsh Shivaprasad, Max Artemov, Lenin Ravindranath Sivalingam, Matthai Philipose, Peter Bodik
-
Patent number: 10509694Abstract: System and methods are provided for optimal error detection in programmatic environments through the utilization of at least one user-defined condition. Illustratively, the conditions can include one or more triggers initiating the collection of log data for methods associated with the provided at least one condition. Operatively, the disclosed systems and methods observe the run-time of the programmatic environment and initiate the collection of log data based on the occurrence of a condition trigger. A rank score can also be calculated to rank the methods associated with the defined condition to isolate those methods that have higher probability of causing the defined condition. Dynamic instrumentation of the methods associated with the user defined conditions during run time are used to calculate the rank score, which is used for ranking the methods.Type: GrantFiled: June 23, 2017Date of Patent: December 17, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Lenin Ravindranath Sivalingam, Sergey Kanzhelev, Suman Kumar Nath, Madan Musuvathi
-
Publication number: 20190370147Abstract: Aspects of the subject disclosure are directed towards monitoring application performance during actual use, particularly mobile application performance. Described is instrumenting mobile application binaries to automatically identify a critical path in user transactions, including across asynchronous-call boundaries. Trace data is logged by the instrumented application to capture UI manipulations, thread execution, asynchronous calls and callbacks, UI updates and/or thread synchronization. The trace data is analyzed to assist developers in improving application performance.Type: ApplicationFiled: June 12, 2018Publication date: December 5, 2019Inventors: Lenin Ravindranath Sivalingam, Jitendra D. Padhye, Sharad Agarwal, Ratul Mahajan, Ian Obermiller, Shahin Shayandeh
-
Publication number: 20180373581Abstract: System and methods are provided for optimal error detection in programmatic environments through the utilization of at least one user-defined condition. Illustratively, the conditions can include one or more triggers initiating the collection of log data for methods associated with the provided at least one condition. Operatively, the disclosed systems and methods observe the run-time of the programmatic environment and initiate the collection of log data based on the occurrence of a condition trigger. A rank score can also be calculated to rank the methods associated with the defined condition to isolate those methods that have higher probability of causing the defined condition. Dynamic instrumentation of the methods associated with the user defined conditions during run time are used to calculate the rank score, which is used for ranking the methods.Type: ApplicationFiled: June 23, 2017Publication date: December 27, 2018Inventors: Lenin Ravindranath SIVALINGAM, Sergey KANZHELEV, Suman Kumar NATH, Madan MUSUVATHI
-
Patent number: 10075508Abstract: An application may be augmented for application-centric socialization activities for a user of the application, based on instrumenting the application for the application-centric socialization activities. The application-centric socialization activities may be launched from within the augmented application on a device, the application-centric socialization activities determined based on one or more contexts associated with the user that are determined during execution of the augmented application on the device.Type: GrantFiled: June 25, 2013Date of Patent: September 11, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Lenin Ravindranath Sivalingam, Paramvir Bahl, Abm Musa, David Chu
-
Patent number: 10055762Abstract: The deep application crawling technique described herein crawls one or more applications, commonly referred to as “apps”, in order to extract information inside of them. This can involve crawling and extracting static data that are embedded within apps or resource files that are associated with the apps. The technique can also crawl and extract dynamic data that apps download from the Internet or display to the user on demand, in order to extract data. This extracted static and/or data can then be used by another application or an engine to perform various functions. For example, the technique can use the extracted data to provide search results in response to a user query entered into a search engine. Alternately, the extracted static and/or dynamic data can be used by an advertisement engine to select application-specific advertisements. Or the data can be used by a recommendation engine to make recommendations for goods/services.Type: GrantFiled: March 12, 2015Date of Patent: August 21, 2018Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Jie Liu, Suman Kumar Nath, Jitendra D. Padhye, Lenin Ravindranath Sivalingam
-
Patent number: 10013332Abstract: Aspects of the subject disclosure are directed towards monitoring application performance during actual use, particularly mobile application performance. Described is instrumenting mobile application binaries to automatically identify a critical path in user transactions, including across asynchronous-call boundaries. Trace data is logged by the instrumented application to capture UI manipulations, thread execution, asynchronous calls and callbacks, UI updates and/or thread synchronization. The trace data is analyzed to assist developers in improving application performance.Type: GrantFiled: July 8, 2016Date of Patent: July 3, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Lenin Ravindranath Sivalingam, Jitendra D. Padhye, Sharad Agarwal, Ratul Mahajan, Ian Obermiller, Shahin Shayandeh
-
Patent number: 9965823Abstract: The claimed subject matter includes techniques for live migration of a graphics processing unit (GPU) state. An example method includes receiving recorded GPU commands from a relay at a destination GPU. The method also includes replaying the recorded GPU commands at the destination GPU. The method also includes detecting a downtime for the GPU commands. The method further includes establishing a connection between the destination GPU and the client during the detected downtime.Type: GrantFiled: February 25, 2015Date of Patent: May 8, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Kiryong Ha, Paramvir Bahl, David Chiyuan Chu, Eduardo Cuervo, Lenin Ravindranath Sivalingam, Alastair Wolman
-
Publication number: 20170246544Abstract: A system is provided that allows a spectator to spectate video gameplay over a network. Recorded information associated with a selected recording of a player playing a video game that includes a game engine is received over the network. The recorded information includes game commands that were input to the game engine as the player was playing the game, and inputs the player made to the game to control it. The recorded information is replayed to the game at the timing in which this information was originally recorded, where this replay includes replaying the game commands to the game engine. The replay generates a playback of the selected recording which is displayed on the display screen of the spectator's computer. Upon receiving a request from the spectator to view the inputs the player made to the game they are highlighted on the screen during the playback of the selected recording.Type: ApplicationFiled: February 26, 2016Publication date: August 31, 2017Inventors: Sharad Agarwal, Stefan Saroiu, Alastair Wolman, Lenin Ravindranath Sivalingam, Eduardo Cuervo, Paramvir Bahl, Petko Ivanov Georgiev
-
Publication number: 20170235828Abstract: A digest generation system obtains video streams and includes an admission control module that selects, for each video stream, a subset of the frames of the video stream to analyze. A frame-to-text classifier generates a digest for each selected frame and the generated digests are stored in a digest store in a manner so that each digest is associated with the video stream from which the digest was generated. The digest for a frame is text that describes the frame, such as objects identified in the frame. A viewer desiring to view a video stream having particular characteristics inputs a text search query to a search system. The search system, based on the digests, generates search results that are an indication of video streams that satisfy the search criteria. The search results are presented to the user, allowing the user to select and view one of the video streams.Type: ApplicationFiled: February 12, 2016Publication date: August 17, 2017Inventors: Matthai Philipose, Lenin Ravindranath Sivalingam, Paramvir Bahl, Yu-Han Chen
-
Publication number: 20170132111Abstract: Aspects of the subject disclosure are directed towards monitoring application performance during actual use, particularly mobile application performance. Described is instrumenting mobile application binaries to automatically identify a critical path in user transactions, including across asynchronous-call boundaries. Trace data is logged by the instrumented application to capture UI manipulations, thread execution, asynchronous calls and callbacks, UI updates and/or thread synchronization. The trace data is analyzed to assist developers in improving application performance.Type: ApplicationFiled: July 8, 2016Publication date: May 11, 2017Inventors: Lenin Ravindranath Sivalingam, Jitendra D. Padhye, Sharad Agarwal, Ratul Mahajan, Ian Obermiller, Shahin Shayandeh
-
Publication number: 20170060731Abstract: Methods and systems for dynamically providing application analytic information are provided herein. The method includes inserting instrumentation points into an application file via an application analytic service and dynamically determining desired instrumentation points from which to collect application analytic data. The method also includes receiving, at the application analytic service, the application analytic data corresponding to the desired instrumentation points and analyzing the application analytic data to generate application analytic information. The method further includes sending the application analytic information to a client computing device.Type: ApplicationFiled: November 10, 2016Publication date: March 2, 2017Applicant: Microsoft Technology Licensing, LLCInventors: Lenin Ravindranath Sivalingam, Jitendra Padhye, Ian Obermiller, Ratul Mahajan, Sharad Agarwal, Ronnie Ira Chaiken, Shahin Shayandeh, Christopher M. Moore, Sirius Kuttiyan
-
Patent number: 9524225Abstract: Methods and systems for dynamically providing application analytic information are provided herein. The method includes inserting instrumentation points into an application file via an application analytic service and dynamically determining desired instrumentation points from which to collect application analytic data. The method also includes receiving, at the application analytic service, the application analytic data corresponding to the desired instrumentation points and analyzing the application analytic data to generate application analytic information. The method further includes sending the application analytic information to a client computing device.Type: GrantFiled: March 26, 2012Date of Patent: December 20, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Lenin Ravindranath Sivalingam, Jitendra Padhye, Ian Obermiller, Ratul Mahajan, Sharad Agarwal, Ronnie Ira Chaiken, Shahin Shayandeh, Christopher M. Moore, Sirius Kuttiyan
-
Publication number: 20160247248Abstract: The claimed subject matter includes techniques for live migration of a graphics processing unit (GPU) state. An example method includes receiving recorded GPU commands from a relay at a destination GPU. The method also includes replaying the recorded GPU commands at the destination GPU. The method also includes detecting a downtime for the GPU commands. The method further includes establishing a connection between the destination GPU and the client during the detected downtime.Type: ApplicationFiled: February 25, 2015Publication date: August 25, 2016Inventors: Kiryong Ha, Paramvir Bahl, David Chiyuan Chu, Eduardo Cuervo, Lenin Ravindranath Sivalingam, Alastair Wolman
-
Patent number: 9405654Abstract: Aspects of the subject disclosure are directed towards monitoring application performance during actual use, particularly mobile application performance. Described is instrumenting mobile application binaries to automatically identify a critical path in user transactions, including across asynchronous-call boundaries. Trace data is logged by the instrumented application to capture UI manipulations, thread execution, asynchronous calls and callbacks, UI updates and/or thread synchronization. The trace data is analyzed to assist developers in improving application performance.Type: GrantFiled: June 20, 2013Date of Patent: August 2, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Lenin Ravindranath Sivalingam, Jitendra D. Padhye, Sharad Agarwal, Ratul Mahajan, Ian Obermiller, Shahin Shayandeh
-
Publication number: 20160086225Abstract: The deep application crawling technique described herein crawls one or more applications, commonly referred to as “apps”, in order to extract information inside of them. This can involve crawling and extracting static data that are embedded within apps or resource files that are associated with the apps. The technique can also crawl and extract dynamic data that apps download from the Internet or display to the user on demand, in order to extract data. This extracted static and/or data can then be used by another application or an engine to perform various functions. For example, the technique can use the extracted data to provide search results in response to a user query entered into a search engine. Alternately, the extracted static and/or dynamic data can be used by an advertisement engine to select application-specific advertisements. Or the data can be used by a recommendation engine to make recommendations for goods/services.Type: ApplicationFiled: December 4, 2015Publication date: March 24, 2016Inventors: Jie Liu, Suman Kumar Nath, Jitendra D. Padhye, Lenin Ravindranath Sivalingam
-
Patent number: 9246982Abstract: Methods and systems for reducing network usage of a computing device are provided herein. The method includes receiving a network call relating to a network transfer from an application at an application programming interface of the computing device. The method also includes determining whether the network transfer is relevant to a current state of the application and procrastinating the network transfer if it is not relevant to the current state of the application.Type: GrantFiled: September 14, 2012Date of Patent: January 26, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Sharad Agarwal, Christopher Riederer, Lenin Ravindranath Sivalingam, Jitendra Padhye
-
Publication number: 20150186524Abstract: The deep application crawling technique described herein crawls one or more applications, commonly referred to as “apps”, in order to extract information inside of them. This can involve crawling and extracting static data that are embedded within apps or resource files that are associated with the apps. The technique can also crawl and extract dynamic data that apps download from the Internet or display to the user on demand, in order to extract data. This extracted static and/or data can then be used by another application or an engine to perform various functions. For example, the technique can use the extracted data to provide search results in response to a user query entered into a search engine. Alternately, the extracted static and/or dynamic data can be used by an advertisement engine to select application-specific advertisements. Or the data can be used by a recommendation engine to make recommendations for goods/services.Type: ApplicationFiled: March 12, 2015Publication date: July 2, 2015Inventors: Jie Liu, Suman Kumar Nath, Jitendra D. Padye, Lenin Ravindranath Sivalingam
-
Patent number: 8990183Abstract: The deep application crawling technique described herein crawls one or more applications, commonly referred to as “apps”, in order to extract information inside of them. This can involve crawling and extracting static data that are embedded within apps or resource files that are associated with the apps. The technique can also crawl and extract dynamic data that apps download from the Internet or display to the user on demand, in order to extract data. This extracted static and/or data can then be used by another application or an engine to perform various functions. For example, the technique can use the extracted data to provide search results in response to a user query entered into a search engine. Alternately, the extracted static and/or dynamic data can be used by an advertisement engine to select application-specific advertisements. Or the data can be used by a recommendation engine to make recommendations for goods/services.Type: GrantFiled: June 6, 2012Date of Patent: March 24, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Jie Liu, Suman Kumar Nath, Jitendra D. Padhye, Lenin Ravindranath Sivalingam