Creating audio-visual objects through multimodal analysis

By analyzing video and audio data to generate audio-visual objects, the method addresses the inefficiencies in current spatial audio creation and editing techniques, providing a more accessible and efficient solution for user-generated content creators.

WO2025060998A1PCT designated stage expired Publication Date: 2025-03-27DOLBY LABORATORIES LICENSING CORP +2
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/119243
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-09-20
Filing Date
2024-09-17
Publication Date
2025-03-27

AI Technical Summary

Technical Problem

Current techniques for creating and editing spatial audio are cumbersome and inefficient, requiring expensive equipment, specialized software, and expertise, which limits their accessibility for user-generated content creators.

Method used

The method involves capturing media data including video and audio, analyzing both to identify visual and audio objects, and generating audio-visual objects by associating audio objects with visual objects, allowing for faster and more efficient creation and editing of spatial audio content.

Benefits of technology

This approach simplifies the process of creating and editing spatial audio, reducing the cognitive burden on users and conserving power in battery-operated devices, while enabling new downstream use cases.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024119243_27032025_PF_FP_ABST
    Figure CN2024119243_27032025_PF_FP_ABST
Patent Text Reader

Abstract

Devices, methods, and user interfaces for processing signals related to multimedia content. An example method includes capturing, with an electronic device, media data including video data and contemporaneously captured audio data associated with the video data. The method includes analyzing, with an electronic processor, the video data to identify one or more visual objects and to assign an object class to each of the one or more visual objects and analyzing, with the electronic processor, the audio data to identify one or more audio objects and to assign an object class to each of the one or more audio objects. The method includes generating, with the electronic processor, one or more audio-visual objects by associating each of the one or more audio objects with a respective visual object of the one or more visual objects.
Need to check novelty before this filing date? Find Prior Art

Description

CREATING AUDIO-VISUAL OBJECTS THROUGH MULTIMODAL ANALYSISTECHNICAL FIELD

[0001] The present disclosure relates generally to signal processing, and more specifically to techniques, and associated devices and user interfaces for processing signals related to multimedia content.SUMMARY

[0002] An electronic device (e.g., a smart phone) can be used to capture audio-visual content. Information concerning the audio-visual content can be used to process or edit the captured content using an electronic device (e.g., the same electronic device that captured the content or a different electronic device) . However, the current paradigm for multimedia analysis and processing is based on treating audio and video information separately. Algorithms do not leverage the strong inter-dependence between audio and video information.

[0003] Creating spatial audio is an especially challenging task for user generated content (UGC) creators. For example, existing approaches to the creation and editing of spatial audio include (1) using binaural microphones to record spatial audio, and (2) mixing spatial audio with audio editing and mixing software. The first approach requires expensive microphones that are not embedded in current mobile devices or cameras, while the second approach requires expertise in mixing spatial audio through complex and time-consuming editing and mixing work. Often, editing and mixing work requires specialized equipment and software as well as the requisite knowledge to use such resources. Thus, there is a need for techniques, and associated devices, systems, and user interfaces, that simplify the process of creating and editing spatial audio for creators, especially UGC creators, while simultaneously enabling new downstream use cases.

[0004] As noted previously herein, some techniques for creation and editing of spatial audio using electronic devices are generally cumbersome and inefficient. For examples, some existing techniques require use of a complex and time-consuming user interfaces, which may require numerous user inputs (e.g., key presses or keystrokes, taps, clicks, etc. ) and the requisite expertise. Existing techniques may require more time than necessary for UGC creators, wasting user time and device energy. This latter consideration is particularly important in battery-operated devices such as  smart phones or other portable multifunction devices (e.g., tablets, laptops, etc. ) . Accordingly, described herein are techniques that provide faster, more efficient methods and interfaces for creating audio-visual objects and editing content including audio-visual objects. Such methods and interfaces optionally complement or replace other methods for creating audio-visual objects and editing content including audio-visual objects. Such methods and interfaces reduce the cognitive burden on a user and produce a more efficient human-machine interface. For battery-operated computing devices, such methods and interfaces conserve power and increase the time between battery charges.

[0005] Executable instructions for performing these functions are, optionally, included in a non-transitory computer-readable storage medium or other computer program product configured for execution by one or more electronic processors. Executable instructions for performing these functions are, optionally, included in a transitory computer-readable storage medium or other computer program product configured for execution by one or more electronic processors.

[0006] Thus, devices are provided with faster, more efficient methods and interfaces for creating and editing spatial audio content, thereby increasing the effectiveness, efficiency, and user satisfaction with such devices. Such methods and associated interfaces may complement or replace other methods for creating or editing spatial audio content.

[0007] In one aspect of the present disclosure, there is provided a method including capturing, with an electronic device, media data including video data and contemporaneously captured audio data associated with the video data. The method includes analyzing, with an electronic processor, the video data to identify one or more visual objects and to assign an object class to each of the one or more visual objects and analyzing, with the electronic processor, the audio data to identify one or more audio objects and to assign an object class to each of the one or more audio objects. The method includes generating, with the electronic processor, one or more audio-visual objects by associating each of the one or more audio objects with a respective visual object of the one or more visual objects.

[0008] In some aspects, the method includes rendering, for output (i) on a display of the electronic device and (ii) via one or more audio output devices of the electronic device, at least one audio-visual object of the one or more audio-visual objects based on a first set of parameters  associated with the at least one audio-visual object, and rendering, for output (i) on the display of the electronic device and (ii) via the one or more audio output devices of the electronic device, the at least one audio-visual object based on a second set of parameters associated with the at least one audio-visual object, wherein at least one value of at least one parameter of the second set of parameters is different than that of the first set of parameters. The first set of parameters and the second set of parameters may include at least one of the group consisting of object position data, object size data, object gain data, object trajectory data, content type data, rendering constraint data, data representing one or more visual editing operations, and combinations thereof.

[0009] In some aspects, the first set of parameters and the second set of parameters each include coordinate data describing a position of the at least one audio-visual object in a three-dimensional (3D) world reference system. In some aspects, rendering the at least one audio-visual object includes spatializing a mono track associated with the at least one audio-visual object based on the coordinate data.

[0010] In some aspects, the first set of parameters is determined (i) in response to a first user input received at a user interface of the electronic device prior to rendering, (ii) automatically by the electronic processor prior to rendering, or (iii) by a combination of the first user input and automatic determination by the electronic processor prior to rendering.

[0011] In some aspects, the method includes, while rendering the at least one audio-visual object, detecting a second user input at a user interface of the electronic device. The second user input indicates a user request to modify a viewing characteristic associated with the rendering of the at least one audio-visual object. The method includes, in response to detecting the second user input, determining, with the electronic processor, a modified viewing characteristic set by the second user input, determining, with the electronic processor, the second set of parameters associated with the at least one audio-visual object based on the modified viewing characteristic, and rendering, for output (i) on the display of the electronic device and (ii) via the one or more audio output devices of the electronic device, the second set of parameters different than the first set of parameters.

[0012] In some aspects, determining the second set of parameters associated with the at least one audio-visual object based on the modified viewing characteristics includes determining, with  the electronic processor, a change in size, location, or both size and location of the at least one audio-visual object on the display based on the modified viewing characteristic, and determining, with the electronic processor, a corresponding change in an audio output associated with the at least one audio-visual object based on the change in size, location, or both size and location of the at least one audio-visual object on the display.

[0013] In some aspects, the one or more audio-visual objects includes at least two audio-visual objects that are each configured to be rendered according to a respective set of parameters, and the respective set of parameters for each audio-visual object is user-adjustable in a separate manner from other respective sets of parameters for other audio-visual objects.

[0014] In some aspects, analyzing the video data to identify the one or more visual objects includes performing, with the electronic processor, object segmentation, face detection, or both object segmentation and face segmentation on the video data to determine, for detected objects or detected faces, respective mask data, respective coordinate data, and respective video object class data.

[0015] In some aspects, the respective mask data includes a series of regional mask data from a plurality of frames of the video data, and the respective coordinate data includes a series of locations corresponding to the regional mask data in each frame of the plurality of frames of the video data.

[0016] In some aspects, analyzing the audio data to identify the one or more audio objects includes performing, with the electronic processor, source separation on the audio data to identify audio sources, and applying, with the electronic processor, audio classification on the identified audio sources to assign an audio object class to each of the identified audio sources.

[0017] In some aspects, the method includes performing, with the electronic processor, speech enhancement to audio data corresponding to identified audio sources assigned to a speech audio object class.

[0018] In some aspects, performing source separation, performing speech enhancement, or performing both source separation and speech enhancement is based in part on data from a face detection process performed on the video data.

[0019] In some aspects, associating each of the one or more audio objects with the respective visual object is based on data specifying a relationship between a video object class and an audio object class, a similarity analysis between an assigned audio object class and an assigned video object class, or both the data specifying the relationship between the video object class and the audio object class and the similarity analysis between the assigned audio object class and the assigned video object class.

[0020] In some aspects, the electronic processor includes a first electronic processor of the electronic device, a remote electronic processor configured to communicate with the electronic device, or both the first electronic processor and the remote electronic processor.

[0021] In some aspects, generating the one or more audio-visual objects includes encoding, with the electronic processor, at least one audio-visual object according to a first set of parameters. The first set of parameters include at least one of the group consisting of object position data, object size data, object gain data, object trajectory data, content type data, rendering constraint data, data representing one or more visual editing operations, and combinations thereof.

[0022] In some aspects, the method includes rendering, with the electronic processor and via a user interface of the electronic device, an image of the at least one audio-visual object during an editing process, receiving a user input on the electronic device to edit the at least one audio-visual object, and encoding, with the electronic processor, the at least one audio-visual object according to a second set of parameters based at least in part on the user input, wherein at least one value of at least one parameter of the second set of parameters is different than that of the first set of parameters.

[0023] In some aspects, the user interface of the electronic device displays the at least one audio-visual object and a visualization of at least one parameter type of the sets of parameters. The visualization of the at least one parameter type is adjustable via the user input and the at least one audio-visual object displayed on the user interface is adjusted according to the user input.

[0024] In some aspects, the user input indicates a user request to modify a viewing characteristic of the at least one audio-visual object. In some aspects, the method further includes, in response to detecting the user input, determining, with the electronic processor, a modified viewing  characteristic set by the user input, determining, with the electronic processor, the second set of parameters associated with the at least one audio-visual object based on the modified viewing characteristic, and encoding, with the electronic processor, the at least one audio-visual object according to the second set of parameters.

[0025] In some aspects, determining the second set of parameters associated with the at least one audio-visual object based on the modified viewing characteristic includes determining, with the electronic processor, a change in size, location, or both size and location of the at least one audio-visual object on the user interface based on the modified viewing characteristic and determining, with the electronic processor, the at least one value of the second set of parameters based on the change in size, location, or both size and location of the at least one audio-visual object on the user interface. The at least one value relates to an audio output associated with the at least one audio-visual object. The audio output is changed in manner corresponding to the change in size, location, or both size and location of the at least one audio-visual object on the user interface.

[0026] In some aspects, the method includes rendering the at least one audio-visual object based on the second set of parameters associated with the at least one audio-visual object for output (i) on a first display of the electronic device and via one or more first audio output devices of the electronic device, (ii) on a second display of another electronic device and via one or more second audio output devices of the another electronic device, or both (i) and (ii) .

[0027] In some aspects, the method includes rendering the at least one audio-visual object during a viewing process and, while rendering the at least one audio-visual object during the viewing process, detecting a second user input at a user interface of the electronic device that is rendering the at least one audio-visual object. The second user input indicates a user request to modify a second viewing characteristic associated with the rendering of the at least one audio-visual object. The method includes, in response to detecting the second user input, determining, with an electronic processor of the electronic device that is rendering the at least one audio-visual object, a modified viewing characteristic set by the second user input, determining, with the electronic processor of the electronic device that is rendering the at least one audio-visual object, a modified audio output characteristic of the at least one audio-visual object based on the modified viewing characteristic, and rendering, for output (i) on the display of the electronic device that is rendering the at least one audio-visual object and (ii) via the one or more audio output devices of the  electronic device that is rendering the at least one audio-visual object, the at least one audio-visual object according to the modified viewing characteristic and the modified audio output characteristic.

[0028] In another aspect of the present disclosure, there is provided a non-transitory computer-readable storage medium storing instructions which, when executed by a computing apparatus, cause the computing apparatus to perform a method including capturing, with an electronic device, media data including video data and contemporaneously captured audio data associated with the video data. The method includes analyzing, with an electronic processor, the video data to identify one or more visual objects and to assign an object class to each of the one or more visual objects and analyzing, with the electronic processor, the audio data to identify one or more audio objects and to assign an object class to each of the one or more audio objects. The method includes generating, with the electronic processor, one or more audio-visual objects by associating each of the one or more audio objects with a respective visual object of the one or more visual objects.

[0029] In another aspect of the present disclosure, there is provided a computing apparatus comprising an electronic processor and a memory storing instructions, which when executed by the electronic processor, cause the computing apparatus to perform a method including capturing, with the computing apparatus, media data including video data and contemporaneously captured audio data associated with the video data. The method includes analyzing, with the electronic processor, the video data to identify one or more visual objects and to assign an object class to each of the one or more visual objects and analyzing, with the electronic processor, the audio data to identify one or more audio objects and to assign an object class to each of the one or more audio objects. The method includes generating, with the electronic processor, one or more audio-visual objects by associating each of the one or more audio objects with a respective visual object of the one or more visual objects.

[0030] Other aspects of the embodiments will become apparent by consideration of the detailed description and accompanying drawings.BRIEF DESCRIPTION OF THE DRAWINGS

[0031] FIG. 1 is a hardware block diagram of an electronic device, in accordance with some embodiments.

[0032] FIG. 2 is a functional block diagram of a system implemented by the electronic device of FIG. 1 for creating audio-visual objects from audio-visual captures (i.e., captured media data) and editing captured audio-visual media data, in accordance with some embodiments.

[0033] FIG. 3 illustrates a portion of an audio-visual capture, in accordance with some embodiments.

[0034] FIGS. 4A and 4B illustrate aspects of face detection using a face detection algorithm on the audio-visual capture of FIG. 3, in accordance with some embodiments.

[0035] FIGS. 5A and 5B illustrate aspects of object segmentation and object classification on the audio-visual capture of FIG. 3, in accordance with some embodiments.

[0036] FIG. 5C illustrates assignment of coordinates to objects within the audio-visual capture of FIG. 3, in accordance with some embodiments.

[0037] FIGS. 6A and 6B illustrates aspects of depth estimation on the audio-visual capture of FIG. 3, in accordance with some embodiments.

[0038] FIG. 7 illustrates aspects of source separation performed by the system of FIG. 2, in accordance with some embodiments.

[0039] FIGS. 8A and 8B illustrate examples of multimodal architectures able to perform speech enhancement and separation, in accordance with some embodiments.

[0040] FIG. 9 illustrate an audio-visual spatialization system, in accordance with some embodiments.

[0041] FIGS. 10A-10C illustrates aspects of audio-visual object deletion, in accordance with some embodiments.

[0042] FIG. 11 illustrates an example perceived 3D position of the audio-visual objects relative to the electronic device of FIG. 1 in different zoom and pan situations, in accordance with some embodiments.

[0043] FIGS. 12 and 13 are flow diagrams illustrating methods for creating and editing audio-visual objects, in accordance with some embodiments.DETAILED DESCRIPTION

[0044] The following description sets forth exemplary methods, parameters, and the like. It should be recognized, however, that such description is not intended as a limitation on the scope of the present disclosure but is instead provided as a description of example embodiments.

[0045] Although the following description uses terms “first, ” “second, ” etc. to describe various elements, these elements should not be limited by the terms. These terms are only used to distinguish one element from another. For example, a first touch could be termed a second touch, and, similarly, a second touch could be termed a first touch, without departing from the scope of the various described embodiments. The first touch and the second touch are both touches, but they are not the same touch.

[0046] The terminology used in the description of the various described embodiments herein is for the purpose of describing particular embodiments only and is not intended to be limiting. As used in the description of the various described embodiments and the appended claims, the singular forms “a, ” “an, ” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that the term “and / or” as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms “includes, ” “including, ” “comprises, ” and / or “comprising, ” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.

[0047] The term “if” is, optionally, construed to mean “when” or “upon” or “in response to determining” or “in response to detecting, ” depending on the context. Similarly, the phrase “if it is determined” or “if [astated condition or event] is detected” is, optionally, construed to mean “upon determining” or “in response to determining” or “upon detecting [the stated condition or event] ” or “in response to detecting [the stated condition or event] , ” depending on the context. The term “based on” is to be read as “based at least in part on. ” The term “one example implementation” and  “an example implementation” are to be read as “at least one example implementation. ” The term “another implementation” is to be read as “at least one other implementation. ” The terms “determined, ” “determines, ” or “determining” are to be read as obtaining, receiving, computing, calculating, estimating, predicting, or deriving. In addition, in the following description and claims, unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skills in the art to which this disclosure belongs.

[0048] As described previously herein, there is a need for electronic devices that provide efficient methods and interfaces for processing audio-visual content (e.g., multimedia content; data or signals associated with contemporaneously captured video and associated audio) . For example, there is a need for an electronic device that provides a user with the capability to easily manipulate aspects of captured audio-visual content in understandable and convenient manner. In another example, there is a need for an electronic device that effectively enables users of the electronic device to adjust distinct visual aspects of audio-visual content, while automatically causing corresponding changes to audio aspects of the audio-visual content associated with the adjusted visual aspects, and vice versa (e.g., adjusting audio aspects of audio-visual content while automatically causing corresponding video aspects to update accordingly) . Such techniques provide an improved user interface that reduces the cognitive burden on a user performing content creation, thereby enhancing productivity. Further, such techniques reduce processor and battery power otherwise wasted on redundant user inputs. Such techniques may also reduce the need to export captured content to additional devices for analysis or editing, further reducing costs in terms of equipment and labor required to perform the similar tasks. As noted above, such techniques are particularly useful for user generated content (UGC) creators. However, such techniques may also be useful in other contexts (e.g., professional editing in a television and / or movie studio, etc. ) .

[0049] FIG. 1 is a hardware block diagram of an electronic device 105 according to some example embodiments. The electronic device 105 may be a smart phone, tablet, or other computing system (e.g., desktop, laptop) , that includes audio and video capture capability (either natively or via hardware capture devices communicatively coupled to the device) . The electronic device 105 may additionally or alternatively include audio and video playback capability (either natively or via hardware capture devices communicatively coupled to the device) . In some instances, the electronic  device 105 is of a device type frequently used by a non-professional content creator to capture media content (sometimes, referred to as user-generated content or UGC) .

[0050] In the example illustrated in FIG. 1, the electronic device 105 includes an electronic processor 110 (for example, a microprocessor or other electronic device) . The electronic processor 110 includes input and output interfaces (not shown) and is electrically coupled to a memory 115, a network interface 120, a speaker (s) 125 (e.g., one or more audio output devices) , a display screen 130, a microphone (s) 135, a camera (s) 140, and a sensor (s) 145. In some instances, the electronic device 105 includes fewer or additional components in configurations different from that illustrated in FIG. 1 and / or optionally combines two or more components shown in FIG. 1. For example, the electronic device 105 may include more than one speaker 125, microphone 135, camera 140, and / or sensor 145 (e.g., multiple of the same type of sensor 145 or multiple sensors 145 of different types) . As another example, the electronic device 105 may not include the sensor 145. As yet another example, the electronic processor 110 may include multiple electronic processors 110 within the electronic device 105 that together function to control various aspects of the electronic device 105. In some instances, the electronic device 105 is implemented within a distributed system including one or more components located in different locations. For example, in some embodiments, the electronic device 105 (e.g., the electronic processor 110) includes local hardware components and one or more remote hardware components (e.g., cloud-based components, hosted on public and / or private cloud infrastructure, Software as a Service (SaaS) , Platform as a Service (PaaS) , etc. ) . In other words, the electronic processor 110 may include any one or a combination of electronic processors located within a single device (e.g., the electronic device 105) or distributed among various devices and / or systems (e.g., the electronic device 105, a cloud-based device, etc. ) . For example, the electronic processor 110 may include a first electronic processor of the electronic device 105, a remote electronic processor configured to communicate with the electronic device 105, or both the first electronic processor and the remote electronic processor. Thus, in the claims, if an apparatus or system is claimed, for example, as including an electronic processor or other element configured in a certain manner, for example, to make multiple determinations, the claim or claim element should be interpreted as meaning one or more electronic processors (or other element) where any one of the one or more electronic processors (or other element) is configured as claimed, for example, to make some or all of the multiple determinations. To reiterate, those  electronic processors and processing may be distributed within a single device or across multiple devices.

[0051] In some instances, the electronic device 105 performs functionality other than the functionality described below. The various components of the electronic device 105 described herein are implemented in hardware, software, or a combination of both hardware and software, including one or more signal processing and / or application-specific integrated circuits.

[0052] The memory 115 may include read only memory (ROM) , random access memory (RAM) , other non-transitory computer-readable media, or a combination thereof. The electronic processor 110 is configured to receive instructions and data from the first memory 115 and execute, among other things, the instructions. In particular, the electronic processor 110 executes instructions stored in the memory 115 to perform the methods described herein.

[0053] The network interface 120 sends data to and receives data from other devices (e.g., other electronic devices 105 such as smart phones, cloud-based devices, servers, etc. ) . In some instances, the network interface 120 includes one or more transceivers for wirelessly communicating with the other devices. Alternatively or in addition, the network interface 120 may include a connector or port for receiving a wired connection to one or more of the other devices, such as connector to receive a coaxial cable. The electronic processor 110 may receive media data (for example, audio data, video / image data, and / or the like) captured by a capture device such as the microphone 135 and / or the camera 140. The electronic processor 110 also may receive media data from other devices (e.g., from other electronic devices 105 and / or from media servers or the like that provide video and audio data to the electronic device 105 to be output by the electronic device 105) via the network interface 120. The electronic processor 110 may output the media data captured by its own components and / or received from external sources via the speaker 125, the display screen 130, or a combination thereof. In some instances, the speaker 125 may include a plurality of speakers (e.g., multiple built-in speakers and / or multiple external speakers communicatively coupled to the electronic device 105) .

[0054] The display screen 130 is configured to display images, video, text, and / or data to the user. The display screen 130 may be a liquid crystal display (LCD) screen, an organic light emitting display (OLED) display screen, a waveguide display, a quantum dot display, or the like. In some  embodiments, a touch sensitive input interface may be incorporated into the display screen 130 as well, allowing the user to interact with content provided on the display screen 130. In some embodiments, the display screen 130 includes future-developed display technologies. In some embodiments, the speaker 125 and the display screen 130 are referred to as output devices that output media data (e.g., image / video and audio) and other information to a user of the electronic device 105 as explained herein. The display screen 130 may be referred to a user interface that may act as an input device (e.g., to receive user inputs) and / or an output device (e.g., to provide media data to the user) . In some instances, the electronic device 105 optionally additionally or alternatively includes one or more physical user-interface devices, such as a physical keyboard, a mouse, and / or a joystick and typically supports a variety of applications.

[0055] The sensor 145 may also be considered capture devices. In some instances, the sensor 145 includes depth sensors, laser imaging detection and ranging (LIDAR) sensors, structured light-based sensor systems, etc. In some instances, the sensor 145, such as a depth sensor (e.g., a depth camera sensor) , receives data from an environment to create a three-dimensional model of an object (e.g., a face or non-face object) within a scene from a viewpoint. In some instances, in conjunction with other image captures devices (e.g., the camera 140) , a depth sensor is optionally used to determine a depth map of different portions of an image captured by a separate image capture devices (e.g., an RGB camera acting as the camera 140) . Optionally, the electronic device 105 includes additional sensors 145 (e.g., one or more inertial measurement units (IMUs) , accelerometers, magnetometers, global positioning system (GPS) (or global navigation satellite system (GLONASS) or other global navigation system) ) or receivers for obtaining information about a location and / or orientation (e.g., portrait or landscape) of the electronic device 105. In some instances, information is displayed on the display screen 130 in a portrait view or a landscape view based on an analysis of data received from one or more accelerometers. The sensors 145 and / or the other components of the electronic device 105 optionally communicate over one or more communication buses or signal lines.

[0056] Attention is now directed towards embodiments of techniques and user interfaces for creating audio-visual objects and editing content including audio-visual objects that are, optionally, implemented on, for example, the electronic device 105 described previously herein.

[0057] FIG. 2 is a functional block diagram of a system 200 implemented by the electronic device 105 for creating audio-visual objects from audio-visual captures (i.e., captured media data) and editing captured audio-visual media data, in accordance with some embodiments. The components of the system 200 may be implemented in hardware and / or in software / firmware. For example, the electronic processor 110 may be configured to execute many of the components of the system 200.

[0058] The system 200 and the examples provided herein relate to techniques, and associated devices and user interfaces, for creating audio-visual objects from audio-visual captures and editing captured audio-visual content. In some implementations, audio-visual content captures include associated sensor data from the sensor (s) 145, such as depth information obtained by LIDAR or structured light sensors. In some implementations, depth information is not required or utilized. In some implementations, the creation of audio-visual objects is achieved by analyzing an audio-visual capture using the system 200 (e.g., as implemented by the electronic device 105 and, in particular, the electronic processor 110) .

[0059] In some instances, the electronic device 105 captures media data including video data and contemporaneously captured audio data associated with the video data (see block 1205 of FIG. 12) . For example, the camera 140 of the electronic device 105 may capture video data of a scene / environment within a field of view of the camera 140. Contemporaneously (i.e., at the same time as the camera 140 is capturing the video data) , the microphone 135 of the electronic device 105 may capture audio data of the scene / environment. The audio data may include audio data from objects that are not within the field of view of the camera 140 for part of the duration of the video or for the entire duration of the video. During the capturing of the video data and the audio data, the sensor (s) 145 may optionally collect sensor data. For example, if the electronic device 105 capturing the media data is enabled with depth and / or inertial measurement unit (IMU) sensors, then sensor information is also included. Sensor information is represented by depth information, for example, if the electronic device 105 includes LIDAR or structured light sensors, and IMU data if the device includes accelerometers (e.g., 3-or 6-axis accelerometers) .

[0060] As shown in FIG. 2, the video data and the audio data are represented as audio-visual capture data 205 (i.e., input data) . Sensor data 210 (i.e., additional input data) is also represented in FIG. 2. The system 200 includes three main analysis steps that each include multiple sub-steps.

[0061] The three main analysis steps performed by the electronic processor 110 are video analysis 215, audio analysis 220, and multimodal analysis 225. In some instances, the video analysis 215 includes the electronic processor 110 analyzing the video data (e.g., the captured video data) to identify one or more visual objects and to assign an object class to each of the one or more visual objects (see block 1210 of FIG. 12) . In some instances, the audio analysis 220 includes analyzing the audio data to identify one or more audio objects and to assign an object class to each of the one or more audio objects (see block 1215 of FIG. 12) . In some instances, the multimodal analysis includes generating one or more audio-visual objects by associating each of the one or more audio objects with a respective visual object of the one or more visual objects (see block 1220 of FIG. 12) . Each of the analysis steps 215, 220, and 225 is explained in greater detail below.

[0062] As indicated in FIG. 2, the electronic processor 110 may be configured to analyze the video data from the audio-visual capture data 205 to identify the one or more visual objects by performing object segmentation 230, face detection 235, or both object segmentation 230 and face detection 235 on the video data. In some instances, performing object segmentation 230 and / or face detection 235 allows the electronic processor 110 to detect objects and / or faces and to determine, for detected objects or detected faces, respective mask data, respective coordinate data, and respective video object class data. In some instances, the respective mask data includes a series of regional mask data from a plurality of frames of the video data. In some instances, the respective coordinate data includes a series of locations corresponding to the regional mask data in each frame of the plurality of frames of the video data. In other words, the respective coordinate data indicates the location of the respective mask data in each of a plurality of frames of the video data (i.e., the location of respective detected objects in different frames (i.e., at different times) throughout a video) . In some instances, the electronic processor 110 is configured to identify faces of people in the video using a face detection algorithm and extract respective coordinates (e.g., x, y) of faces in the video with an associated person ID for each face and for each frame in the video. In some instances, the electronic processor 110 is similarly configured to identify objects in the video (e.g., an animal, a certain type of animal, a certain type of instrument such as a guitar, etc. ) using an object segmentation algorithm and assign coordinates (e.g., x, y) of each object in the video for each frame in the video. The electronic processor 110 may be configured to classify segmented objects using one or more algorithms for object classification or localization, and assign an object ID to  each of the visual objects, for each frame in the video, with a consistent ID for each object across all frames of the video.

[0063] A face detection component 235 is used to identify one or more faces that are present in the captured video scene. In some embodiments, the one or more faces are a subset of all faces in the captured scene. The electronic processor may associate a face to a speech audio source if the electronic processor determines that a person is speaking. For face detection, state-of-the-art face detection or face landmark detection algorithms may be used. Once a face bounding box is detected, the position of the face in the frame is detected as the center coordinates of the box. Each face can be identified by the (x, y) coordinates defining the position of the face in the frame.

[0064] Object segmentation / detection may function in a similar manner. For example, object segmentation 230 and object classification 240 are used by the electronic processor 110 to identify relevant objects in the visual scene and associate corresponding labels to the objects. For this purpose, a vision transformer, or other architectures can be used. The output of the segmentation is a sequence of masks with associated labels defining the objects in the captured scene as mentioned previously herein. The two-dimensional (2D) coordinates of the objects can be inferred by the electronic processor by estimating the centroid of the masks. Object classifiers can be used in combination with the segmentation algorithms to assign labels to the objects.

[0065] In some instances, the electronic processor 110 analyzes the video data to identify one or more visual objects based in part on contextual data of the electronic device 105 capturing the video data. In some instances, contextual data is non-video contextual data (e.g., data derived from sources other than the video data) . For example, the contextual data may include capture location data (e.g., derived from a GPS sensor on the electronic device 105) , calendar data (e.g., derived from a calendar application on the electronic device 105) , and / or other data from other data sources that include data associated with the time, location, and / or other contextual data of the electronic device 105 capturing the media data. As an example of the electronic processor 110 using contextual data to identify objects, the location of the electronic device 105 at the time of capturing the media data may allow the electronic processor 110 to correctly identify an object from two possibilities based on its shape. For example, certain animals may be more likely to be found in some locations than in other locations. Thus, the electronic processor 110 may be able to correctly  identify certain animals (or at least eliminate some types of animals as being present in a video) based on a location of the electronic device 105 at the time the media data was captured.

[0066] A primary goal of the video analysis 215 is to convert the input video data into a volumetric representation of the captured scene. Accordingly, the electronic processor 110 also may perform depth estimation 245 of the faces and objects identified in the scene. Any one or more of several strategies may be used by the electronic processor 110 to extract depth information from the captured scene (e.g., to generate a depth map for each frame of the video) . For example, the electronic processor 110 may use an approach leveraging the video data and an estimate of a depth map through a deep neural network, using monocular depth estimation algorithms. If a mobile phone is used for capture, depth and / or IMU data returned by the phone (through a LIDAR or structured light sensor) may be used in place of or in conjunction with monocular video analysis to estimate distance of faces and visual objects. Using Simultaneous Localization and Mapping (SLAM) and the recorded depth data, the electronic processor 110 may reconstruct accurate three-dimensional (3D) information and create a volumetric map of the visual objects and faces in the scene (at block 250 of FIG. 2) .

[0067] At the end of the video analysis 215, the algorithms return a list of visual objects (including both objects and faces if both are present) , with corresponding object IDs, 3D coordinates expressed in relationship to the camera or to the world reference system (e.g., a 3D map of visual objects with associated ID information for each frame of the video) , and a mask for each visual object. For example, this representation is characterized by a list of visual objects, with associated object IDs and corresponding coordinates (e.g., x, y, z) expressed relative to the camera 140 or to the world reference system. One aspect of the video analysis 215 is ensuring that the visual objects IDs are consistent across the different frames of the video. The algorithms ensure that visual objects are tracked over time and that there is no mistake in ID assignment when a visual object leaves of field of view of the camera 140 and re-enters the field of view, or when a visual object is temporarily hidden by a different visual object.

[0068] An example use case for the techniques described herein with respect to the video analysis 215 is shown in FIGS. 3-6C. FIG. 3 shows an example image 300 (i.e., a frame of a video captured by the camera 140 of the electronic device 105) , according to some embodiments. The image 300 includes a first person 305 speaking on the right side of the image 300 and a second  person 310 playing guitar on the left side of the image. The image also includes background noise (e.g., from the environment such as wind and / or from more distant objects such as other people, vehicles, animals, etc. ) as will be explained in greater detail below.

[0069] FIG. 4A illustrates the identification of a face 405 of the first person 305 by the electronic processor 110 using a face detection algorithm. As explained previously herein, by computing the center of the region corresponding to the face, the electronic processor 110 may assign coordinates to the face 405 (e.g., 2D coordinates) as shown in FIG. 4B.

[0070] FIGS. 5A and 5B illustrate object segmentation and object classification being performed by the electronic processor 110, according to some embodiments. The electronic processor 110 may use object segmentation and object classification algorithms to identify relevant objects in the scene and define object masks and object IDs. For example, as shown in FIG. 5A, the electronic processor 110 may identify different types of surfaces included in the scene such as background, hair, clothes, facial skin, body skin, other / uncategorized, etc. Using these algorithms (and in some instances, in combination with facial detection algorithms) , the electronic processor 110 may identify different objects (e.g., objects and / or people) to a particular level of certainty as shown in FIG. 5B where the first person 305 and the second person 310 are identified as people and the guitar 505 is identified as a guitar. Then, by computing the center of objects masks, the electronic processor 110 may assign coordinates (e.g., 2D coordinates) to the different objects in the scene as shown in FIG. 5C.

[0071] Further building on the 2D coordinates of the identified visual objects, the electronic processor 110 uses monocular depth estimation algorithms and / or depth sensor data and a SLAM algorithm to determine the distance of each object from the camera 140 of the electronic device 105. For example, the electronic processor 110 may reconstruct 3D information and create a volumetric map 600 as shown in FIG. 6A for each frame of the video. By combining depth information with the other video analysis steps, the electronic processor 110 may define the 3D position of the visual objects in the scene with respect to the electronic device 105 as shown in FIG. 6B.

[0072] Returning to FIG. 2, before, after, or contemporaneously with performing the video analysis 215 described previously herein, the electronic processor 110 performs the audio analysis 220. As indicated in FIG. 2, the electronic processor 110 may be configured to analyze the audio  data from the audio-visual capture data 205 to identify the one or more audio objects by performing audio source separation 255 on the audio data to identify audio sources, and by applying audio classification 260 on the identified audio sources to assign an audio object class to each of the identified audio sources. The audio analysis 220 includes the electronic processor 110 processing the mono or stereo audio data recorded as part of the audio-visual capture 205, isolating the different audio objects, and classifying them. State-of-the-art algorithms for audio source separation may be applied to process the input audio, effectively isolating each individual audio object, as depicted in FIG. 7. Isolated sound objects can be classified through an audio classification algorithm (e.g., using neural network such as YAMNet or other known classification techniques) . The output of this process is the generation of IDs for the different audio objects that have been recorded and are part of the mix included in the input audio data from the audio-visual capture 205. For example, as shown in FIG. 7, the electronic processor 110 executes a universal source separation step 255 with respect to input mono or stereo audio data 205 to identify different audio sources 705 within the audio data. The electronic processor 110 then classifies the individual audio sources 705 (at block 260) and defines an object ID 710 for each one of the audio sources 705.

[0073] The electronic processor 110 may classify one or more of the audio sources 705 as including speech data. In such instances, the electronic processor 110 may perform speech enhancement (and separation) 265 (see FIG. 2) to audio data corresponding to identified audio sources assigned to a speech audio object class. For example, the electronic processor 110 may utilize facial visual cues to attribute the speech to distinct faces in the video data. This process is enabled by leveraging multimodal architectures that ingest input noisy speech and input segmented faces to extract the speech generated by that specific face.

[0074] FIGS. 8A-8B illustrate two examples of multimodal architectures able to perform speech enhancement and separation 265 for the generation of clean speech from input video of a talking head with corresponding noisy speech, in accordance with some embodiments. FIG. 8A shows how it is possible to feed video data corresponding to the segmented face 805 and audio data corresponding to the noisy speech 810 to a multimodal artificial intelligence (AI) architecture 815 with early or late fusion to extract the corresponding clean speech 820. For example, the AI architecture may include a neural network that is trained to identify lip movement patterns that  indicate certain words in order to improve speech analysis. FIG. 8B shows a system that leverages generative AI architectures, such as a vector quantized variational autoencoder 825 (VQ-VAE 825) (i.e., a generative autoencoder 825) . The VQ-VAE architecture 825 is an autoencoder with quantized latent space that is trained to re-synthesize clear speech. For example, speech 835 represents speech that may be used to train the VQ-VAE architecture 825 to allow the VQ-VAE architecture 825 to re-synthesize clear speech. Speech 835 may be clean speech that is ingested by the VQ-VAE architecture 825 to train the VQ-VAE architecture 825 to generate the same speech as output / synthesized speech 840, for example, by minimizing the difference between input speech 835 and output speech 840. In some instances, block 835 is only present during training of the VQ-VAE architecture 825 and is not present during speech enhancement and separation for the generation of clean speech from an input video. In some instances, the input noisy speech 810 and the segmented face 805 are fed to a multimodal architecture 830 that generates embeddings that are used to condition the quantized latent space of the autoencoder 825, enabling the synthesis of the clean speech 840 corresponding to the speaking head. By feeding the noisy speech 810, the segmented face 805, and / or the output of the multimodal architecture to the VQ-VAE architecture 825, the VQ-VAE architecture 825 may synthesize output / synthesized speech 840. In other words, the VQ-VAE architecture 825 may act as a speech generator at inference / analysis time (i.e., while analyzing video and / or audio) in order to perform a speech separation task. As indicated by FIG. 2 and by FIGS. 8A-8B, in some instances, the electronic processor 110 performing source separation, performing speech enhancement, or performing both source separation and speech enhancement may be based in part on data from a face detection process 235 performed on the video data.

[0075] Referring back to FIG. 2, in some instances, after the electronic processor 110 completes the video analysis 215 and the audio analysis 220, the electronic processor 110 performs the multimodal analysis 225. Multimodal analysis 225 is the process of combining the isolated and classified audio objects from audio classification 260 with the corresponding segmented and classified video objects from video object classification 240 (i.e., matching audio objects and video objects at block 270) . The electronic processor 110 may perform the multimodal analysis in any one or a combination of different manners (e.g., using a look-up table, text embeddings, or similar strategies) . In some instances, the electronic processor 110 leverages the visual object IDs and the audio object IDs to guarantee a direct match between audio and video objects through group clustering and a look-up table. For example, by determining the output of a video classifier, the  electronic processor 110 may cluster the video objects into groups and eliminate video objects that do not generate sound (e.g., see Table 1 below) . Table 1 is a group classification based on video objects. Table 1 represents a small subset of example video classifier output classes.

[0076] Table 1

[0077] The electronic processor 110 may take the same approach with respect to the output of an audio group classifier. For example, by determining the output of an audio classifier, the electronic processor 110 may cluster the audio objects into groups (e.g., see Table 2 below) . Table 2 is a group classification based on audio objects. Table 2 represents a small subset of example audio classifier output classes.

[0078] Table 2

[0079] After group assignment, the electronic processor 110 assigns video objects to audio objects to create audio-visual objects (at block 275 of FIG. 2) , by making sure that the group category of each audio object matches the group category of the video object to which the respective audio object is matched. In other words, the electronic processor 110 associating each of the one or more audio objects with the respective visual object to generate audio-visual objects (at block 275) may be based on (i) data specifying a relationship between a video object class and an audio object class, (ii) a similarity analysis between an assigned audio object class and an assigned video object class, or (iii) both the data specifying the relationship between the video object class and the audio object class and the similarity analysis between the assigned audio object class and the assigned video object class. For example, the electronic processor 110 is configured to avoid matching a face of a person who is speaking with audio data from a musical instrument because the face of the person is in a different group classification (i.e., person) than the musical instrument (i.e., instrument or a specific type of instrument) . On the other hand, the electronic processor 110 is configured to match the face of a person who is speaking with audio data classified as speech data because both the face of the person and the speech data have the same group classifier (i.e., person) . In some instances, the electronic processor 110 may identify a single audio object (e.g., speech data) in addition to background noise such that only a single visual object source is identified by the electronic processor 110 as being associated with the audio object. In some instances, the electronic  processor 110 may identify only two distinct audio objects in different group classifications (e.g., speech data and musical data according to the example shown in FIGS. 3-6B) in addition to background noise such that only two visual object sources of different group classifications are identified by the electronic processor 110 as being associated with a respective one of the two audio objects.

[0080] Other strategies for creating / generating audio-visual objects may also be used. For example, a text representation (such as a word embedding strategy based on a textual representations of object class, a semantic clustering strategy, etc. ) of the audio ID and the video ID may be used to match audio and video IDs that are closest in the embeddings space. In this example, the electronic processor 110 may use natural language processing to determine text information included in the audio data and may use a lip reading algorithm, neural network, and / or the like to determine text information corresponding to the lips of a face detected in the video. The electronic processor 110 may then compare the text information derived from the audio object and the text information derived from the visual object (i.e., the face) to determine whether they match. In response to determining matching text information greater than a predetermined match threshold, the electronic processor 110 determines that the visual object and the audio object should be associated with each other to form an audio-visual object. In some instances, for the proper match between speech audio objects and corresponding faces in the video, dedicated audio-visual speech enhancement and separation algorithms may be employed by the electronic processor 110.

[0081] In some instances, audio-visual objects are characterized by a binary mask describing the position of the object in the image (i.e., in each frame of the video) , by 3D coordinates (e.g., x, y, z) describing the position of the object in the 3D world reference system (e.g., relative to the camera 140 of the electronic device 105) , by a mono track (e.g., audio signal, audio data, etc. ) representing the associated audio object, and by an object ID defining the object class and providing a unique identifier for each audio object.

[0082] The creation of audio-visual objects by the electronic processor 110 enables any one or a combination of multiple downstream tasks that may improve editing of the video and / or consumption of the video by a user. For example, the creation of audio-visual objects in the captured media data establishes a binary mask describing the position of each audio-visual object in the image (i.e., in each frame of the video) , and establishes 3D coordinates (x, y, z) describing the  position of the object in the 3D world reference system. The creation of audio-visual objects allows for downstream applications such as audio-visual (AV) spatialization 280 (i.e., spatializing the audio within the scene using the video information) , audio-visual object editing 285 (i.e., enabling editing of audio-visual objects as separate / unique entities) , and / or audio-visual zoom and panning 290 (i.e., allowing the user to dynamically interact with the captured media content (e.g., during editing of the media content and / or during consumption of the media content) , so video pans and zooms result in corresponding audio pans and zooms) as described in greater detail herein.

[0083] In some instances, AV spatialization 280 includes the ability of the electronic processor 110 to create spatial audio information using the visual information extracted from the captured video. After the creation of audio-visual objects, the electronic processor 110 may extract a mono track associated with the audio object, with corresponding 3D coordinates (x, y, z) of the corresponding video object, as well as an audio-visual object ID. The electronic processor 110 uses this information to spatialize the audio in relation to the position of the visual object in the scene.

[0084] FIG. 9 illustrates an example of the AV spatialization system 280, according to some example embodiments. The audio associated to the audio-visual objects is spatialized by leveraging the 3D coordinates (x, y, z) extracted from the video analysis 215 in accordance with some embodiments. As shown in the example of FIG. 9, the input audio-object mono track 905, the visual-object 3D coordinates 910 (x, y, z) , and the audio-visual object ID 915 are received / ingested by a mapping inference system 920. The mapping inference system 920 converts the input 3D coordinates into a new set of 3D coordinates (x, y, z) based on the input audio-visual object ID class. For example, certain audio objects such as speech might be mapped towards the center of the auditory scene, while other objects such as background noise or environmental noise might be diffused. In general, the input audio-visual object ID and input 3D coordinates define the mapping strategy.

[0085] Updated 3D coordinates 925 (x, y, z) and the audio-object mono audio 930 may then be processed by an audio renderer 935 implemented by the electronic device 105. The audio renderer 935 may generate one or more audio mixes (e.g., a Dolby Atmos Mix 940 and / or a Binaural Mix 945) . The audio renderer parameters are instructed by the audio-visual object ID. In this way, each audio-visual object type may have a defined set of parameters during the rendering process. In some instances, the electronic processor 110 generating the one or more audio-visual objects  includes encoding, with the electronic processor 110, at least one audio-visual object according to a first set of parameters. The first set of parameters may include at least one of the group consisting of object position data, object size data, object gain data, object trajectory data, content type data, rendering constraint data, data representing one or more visual editing operations, and combinations thereof. The set of parameters corresponding to an audio-visual object may change as the audio-visual object is moved within the scene and / or into and / or out of the scene during an editing process and / or a consumption / viewing process as explained in greater in detail below.

[0086] The output of the AV spatialization system 280 implemented by the electronic processor 110 is represented by one or more audio mixes (e.g., the Dolby Atmos Mix 940 and / or the Binaural Mix 945) . Through this approach, the creation of audio-visual objects enables the creation of spatial audio using video information.

[0087] In some instances, the electronic processor 110 may automatically determine the first set of parameters of each audio visual-object in accordance with default instructions and the above-noted information about each audio-visual object. In some instances, one or more values of the set of parameters may be edited by a user (via a user input (s) ) during an editing process. For example, rendering parameters 950 may be edited by the user for each individual audio-visual object as single / individual entities as explained in greater detail below. In some instances, a personalization rendering parameter 955 may be edited by a user to modify a sound of one or more audio-visual objects according to characteristics or a taste of the listener (e.g., compensating for hearing loss, introducing binaural cues that reflect the listener’s anthropometric data, etc. ) . In some instances, an equalization rendering parameter 960 may be edited by a user to apply frequency-dependent gains to change the timbre of one or more audio-visual objects. For example, boosting or attenuating different frequency bands of the audio-visual object allows, among other things, to i) compensate for less-than-ideal recording conditions (e.g., where speech sounds dull because the speaker is off the microphone axis) , and / or ii) make the audio-visual object fit better in the mix, for example, by either boosting bands that are masked by other sounds or attenuating bands that mask other sounds. The ways in which equalization may be applied and changed include bass / treble controls, parametric filters, gains per band, etc. In some instances, a room impulse response (RIR) rendering parameter 965 may be edited by a user to add reverberation (early reflections and or late reflections) by convolving one or more audio / visual objects with a RIR. The purposes for doing so are typically  i) to make the audio-visual object sound as though the audio-visual object belongs to the space to which the RIR corresponds, and / or ii) to add the impression of “externalization” and “distance” when the audio-visual object is rendered binaurally. RIRs may be selected from a database and / or generated based on high-level parameters such as room size and reverberation time. In both cases, RIRs may then be modified (e.g. by shortening or stretching, changing the proportion of dry sound and reverberation, etc. ) .

[0088] In some instances, the electronic device 105 (or another electronic device 105 that receives the captured media data from the electronic device 105) implements an editing process that outputs at least a portion of the captured media data via a user interface (e.g., the display screen 130 and / or the speaker 125) to allow a user (e.g., a UGC creator) to edit the media data to create a finalized video to be shared with other users via their electronic devices 105. In some instances, the electronic processor 110 may render, via a user interface of the electronic device 105, an image (i.e., a frame) of the at least one audio-visual object during the editing process. For example, FIGS. 10A-10C illustrate the example image 300 of the captured video referenced previously herein with respect to FIGS. 3-6B. FIGS. 10A-10C all illustrate selectable audio representations 1005 associated with each audio-visual object in the image 300 that includes associated audio data (including background noise that is not associated with a specific visual object) .

[0089] In some instances, one of the audio representations 1005 may be select by a user (via a user input) during the editing process to edit parameters associated with the audio parameters of a selected audio-visual object and / or to play the video while outputting audio only from one or more selected audio-visual objects. In other words, the electronic processor 110 may receive a user input on the electronic device 105 (e.g., via the touch screen display screen 130, which also may be referred to as a user interface) to edit the at least one audio-visual object. In some instances, the user interface of the electronic device 105 displays at least one audio-visual object and a visualization of at least one parameter type of the set of parameters for the at least one audio-visual object. The visualization of the at least one parameter type is adjustable via the user input, and the at least one audio-visual object displayed on the user interface is adjusted, by the electronic processor 110, according to the user input.

[0090] The visualization of the at least one parameter type may include the audio representations 1005 and / or displayed user input elements (e.g., sliders, textboxes, etc. ) that show  numerical values and / or percentage values of the parameters of the audio-visual object (e.g., object position data, object size data, object gain data, object trajectory data, content type data, rendering constraint data, range compression, relative volume, equalization (EQ) , and / or the like) . The user input elements to adjust parameters may be displayed in conjunction with the audio representations 1005 whenever the audio representations 1005 are displayed. Alternatively, the user input elements to adjust parameters may only be displayed in response to user selection of the visual representation of the audio-visual object and / or in response to user selection of the audio representation 1005 of the audio-visual object. Similarly, during the editing process, the audio representations 1005 for all audio-visual objects may always be displayed on the user interface. Alternatively, the audio representation 1005 for each audio-visual object may only be displayed in response to user selection of the visual representation of one or more respective audio-visual object. Display settings that indicate how and when the user input elements and / or audio representations 1005 are displayed on the user interface may be configurable settings that can be selected by the user.

[0091] As indicated by the above explanation of parameter definition by the electronic processor 110 and parameter adjustment via user input, during the editing process, the electronic device 105 provides a user interface for visualizing interactive and real-time adjustment of audio-visual object parameters based on received user input (s) .

[0092] FIGS. 10A-10C illustrate an example of audio-visual object editing (during the editing process) , according to some embodiments. The example of FIGS. 10A-10C illustrates the deletion of audio objects due to the deletion of corresponding video objects via a user input during the editing process. FIG. 10A shows the image 300 with three audio-visual objects that were detected by the electronic processor 110 performing analyses 215, 220, and 225: guitar audio 1005A associated with a corresponding guitar 505, speech audio 1005B corresponding with the face 405 of the person that is speaking, and background audio that is not associated with a specific single visual object. During the editing process, the displayed audio-visual objects may include at least two audio-visual objects (e.g., the guitar 505 and the face 405 of the speaking person 305) that are each configured to be rendered according to a respective set of parameters. The respective set of parameters for each audio-visual object is user-adjustable in a separate manner from other respective sets of parameters for other audio-visual objects. Additionally, adjustment of a visual representation of the audio-visual object in the image 300 may cause a corresponding adjustment of  the audio data associated with the audio-visual object. For example, the deletion of a visual representation of audio-visual objects implies the deletion of both the audio and the video information associated with the respective audio-visual objects. As shown in FIG. 10B, the visual representation of the guitar 505 (and the guitar player) has been deleted from the image 300 during the editing process (e.g., in response to a user input) . In response to the visual representation of the guitar 505 being deleted, the electronic processor 110 also deletes the audio track associated with the guitar 505, thereby treating the video data and the audio data associated with the guitar audio-visual object as a single entity. A similar audio-visual object deletion is shown in FIG. 10C where the speaking person 305 (including their face 405) is deleted in response to a user input during the editing process. In response to the visual representation of the person 305 being deleted, the electronic processor 110 also deletes the audio track associated with the person 305 and their face 405. In some instances, the deletion of the visual objects is possible by replacing the visual object with generative AI-based content-aware filling, or using other similar strategies. The deletion of the audio-object is obtained by deleting the audio mono-track before the audio mix by the audio renderer 935.

[0093] In addition to deleting audio-visual objects, a user input may edit one or more audio-visual objects during the editing process. For example, the user input may include an intuitive action such as selecting a visual representation (i.e., image data) of an audio-visual object (e.g., via a touchscreen) , which results in the highlighting of the selected visual representation and may result in the activation of object specific editing tools (i.e., user input elements associated with a specific audio-visual object as explained previously herein) . The user input may adjust values of these editing tools to adjust the visual representation parameters and / or the audio data parameters associated with the selected audio-visual object. For example, by isolating the audio and video components of an audio-visual object through selection, users gain access to tailored editing functionalities that may include audio refinement, such as leveling, and / or precise video enhancements, including adjustments to contrast, brightness, clarity, etc. The user input may also include dragging the selected visual representation to a different location within the video scene (or outside of the video scene) , which also may be referred to as adjust spatialization of one or more audio-visual objects within the scene and / or with respect to each other. The user input may additionally or alternatively include re-sizing the selected visual representation to make it smaller or larger within the video scene.

[0094] As an example of an audio-visual object being edited in response to a user input received during the editing process, the person with the guitar 505 in the image 300 of FIG. 10A may be selected via a user input and may be dragged from the left side of the image 300 to the right side of the image 300. In response to the movement of the visual representation (i.e., image data) of the guitar 505 being moved, the set of audio parameters associated with the guitar audio-visual object may also be updated. For example, the audio parameters may be updated such that when the audio data is rendered for output, the mono track associated with guitar audio-visual object is perceived as coming from the right side of the video instead of from the left side of the video. As another example of an audio-visual object being edited in response to a user input received during the editing process, the person with the guitar 505 in the image 300 of FIG. 10A may be selected via a user input and may be made smaller in size such that they appear to be further away from the camera 140 of the electronic device 105. In response to the change in size of the visual representation (i.e., image data) of the guitar 505, the set of audio parameters associated with the guitar audio-visual object may also be updated. For example, the audio parameters may be updated such that when the audio data is rendered for output, the mono track associated with guitar audio-visual object is at a lower volume than initially captured in order to allow the guitar audio to be perceived as coming from a further distance away than in the original capturing of video. Additionally or alternatively, a volume for the audio of each audio-visual object (e.g., the guitar 505, the speaking person 305, etc. ) may be optionally independently adjustable via user input while the location and / or size of the audio-visual object remains constant in the image 300.

[0095] The creation of audio-visual objects also enables the ability to generate audio zoom and pans through user inputs corresponding to video zoom and pans (e.g., during the editing process and / or during the viewing / consumption process) . For example, the act of zooming and panning via a user input within the visual content (e.g., the image 300) corresponds to traversing the auditory landscape, causing audio objects to reposition in accordance with the extent of zoom and pan within the video, for example, as illustrated in FIG. 11. In other words, the movement of visual entities (i.e., visual representations of audio objects) is directly linked to the movement and / or volume of their corresponding audio counterparts.

[0096] Several strategies can be used to quantify the degree of the zoom in the video and relate that to the corresponding zoom in the audio. For example, the depth of the visual representation of  each audio-visual object can be re-estimated using monocular depth estimation at different zoom levels. Alternatively, pre-emptive knowledge of object size (such as knowing the average head size in the human population) , and relative dimension of that object in the frame could be used to estimate the perceived distance of the object from the camera at different zoom levels.

[0097] FIG. 11 illustrates an example perceived 3D position of the audio-visual objects 505 and 405 relative to the electronic device in different zoom and pan situations. In FIG. 11, the electronic device 105A represents the actual location of in 3D space of the electronic device 105 when the video was captured. Point 105B represents a perceived location of the electronic device 105 due to a user input being received that zooms in on the video / image 300 during the editing process. In response to this zooming in, the electronic processor 110 may adjust audio parameters of one or more audio-visual objects accordingly. For example, if the zooming in results in the guitar 505 becoming larger in the image 300 while the speaking person’s face 405 moved to the side of image 300, the audio parameters may be adjusted to make the guitar audio output volume higher and make the speech output volume lower and / or be perceived as coming from a side of the video. Similarly, movement of the speaking person’s face 405 from position 405A to position 405B may indicate a panning of the video to the left to remove the speaking person’s face 405 from the display. In response to this panning, the audio parameters may be adjusted to make the speech output volume lower and / or be perceived as coming from a side of the video. Continuing this example, if the video is panned back toward to speaking person’s face 405 or zoomed out to include the speaking person’s face 405, the visual representation of the face 405 may re-enter the display and the audio parameters may be adjusted to make the speech output volume higher and / or be perceived as coming from a middle of the video in accordance with the video panning and / or zooming user inputs. As indicated by this example, an audio-visual object may exist outside of the 3D viewing area that is displayed on the display 130 (e.g., audio captured from the audio-object may be output during a viewing / consumption process even when the audio-object is not present on the display 130 due to user inputs that zoom and / or pan the video being output) .

[0098] As indicated by the above explanation, in some instances, during the editing process, audio parameters of one or more audio-visual objects may be adjusted based on a user input that affects the entire image 300 such as a panning input, a zooming input, and / or the like. For example, in response to a user input that zooms in on the face 405 of the speaking person 305, audio  parameters associated with the speaking person audio-visual object may increase the volume of the speech while decreasing the volume of background audio and adjusting audio parameters associated with the guitar 505 to decrease the volume of the guitar 505 (or stop outputting audio related to the guitar audio-visual object.

[0099] In some instances, while rendering the at least one audio-visual object (e.g., during the editing process) , the electronic processor 110 detects a user input (e.g., a second user input) at a user interface of the electronic device 105. The user input may indicate a user request to modify a viewing characteristic associated with the rendering of the at least one audio-visual object. For example, the viewing characteristic may be any one of the modified characteristics of the image 300 described previously herein (e.g., changing the size and / or location of a specifically selected audio-visual object, zooming, panning, and / or rotating the displayed image / video, etc. ) . In response detecting the user input that modifies the viewing characteristic, the electronic processor 110 determines a modified viewing characteristic set by the user input, and determines an updated set of parameters (e.g., a second set of parameters) associated with the at least one audio-visual object based on the modified viewing characteristic. For example, the updated set of parameters includes updated audio parameters associated with one or more audio-visual object whose visual perception has been changed by the user input. The electronic processor 110 also may render, for output (i) on the display 130 of the electronic device 105 and (ii) via the one or more audio output devices of the electronic device 105, the second set of parameters different than the first set of parameters (e.g., during the editing process for review by an editing user or during a viewing / consumption process as explained in greater detail herein) . As indicated by the examples described previously herein, the electronic processor 110 may determine the updated / second set of parameters associated with the at least one audio-visual object based on the modified viewing characteristics by (i) determining a change in size, location, or both size and location of the at least one audio-visual object on the display 130 based on the modified viewing characteristic, and (ii) determining a corresponding change in an audio output associated with the at least one audio-visual object based on the change in size, location, or both size and location of the at least one audio-visual object on the display 130. The corresponding change in the audio output may be directly proportional, inversely proportional, or otherwise based on the change in size, location, or both size and location of the at least one audio-visual object on the display 130. In some instances, the electronic processor 110 determines at least one value of at least one parameter of the updated / second set of parameters that is different  than that of the first set of parameters based on the change in size, location, or both size and location of the at least one audio-visual object on the user interface. The at least one value may relate to an audio output associated with the at least one audio-visual object, and the change in the at least one value may cause the change in the audio output in the manner corresponding to the change in size, location, or both size and location of the at least one audio-visual object on the user interface.

[0100] Once the parameters of each audio-visual object are defined by the electronic processor 110 and / or received via user input during the editing process, the electronic processor 110 encodes the at least one audio-visual object according to the second / updated set of parameters based at least in part on the user input. In some instances, at least one value of at least one parameter of the second set of parameters (as adjusted by the user) is different than that of the first set of parameters (as initially determined by the electronic processor 110 based on the captured video data and audio data) . For example, the first set of parameters for an audio-visual object may be determined automatically by the electronic processor 110 prior to rendering the audio-visual object during the editing process. The second set of parameters may include at least one adjusted parameter value that was adjusted by the user during the editing process as described previously herein. However, in some instances, the user may not adjust any parameters during the editing process (e.g., the editing process may be optionally skipped by the user in some instances) . Thus, the second set of parameters may be determined (i) in response to a first user input received at a user interface of the electronic device 105 prior to rendering, (ii) automatically by the electronic processor 110 prior to rendering (during the editing process) , or (iii) by a combination of the first user input and automatic determination by the electronic processor 110 prior to rendering (during the editing process) . As described previously herein, the first set of parameters and the second set of parameters may each include coordinate data describing a position of the at least one audio-visual object in a three-dimensional (3D) world reference system, audio data associated with the audio-visual object (and associated with a 3D auditory landscape) . Rendering the at least one audio-visual object (e.g., during the editing process and / or during a viewing / consumption process) may include spatializing a mono track associated with the at least one audio-visual object based on the coordinate data and the audio data.

[0101] While the editing process and the rendering of the audio-visual objects for output during the editing process were primarily described above as occurring on the same electronic device 105  that captured the media content / data, in some instances, the editing process and the rendering of the audio-visual objects for output during the editing process may occur at a different electronic device 105. For example, a UGC user may use their smart phone to capture the media data but may transmit the captured media data to their laptop computer, desktop computer, and / or the like to complete the editing process.

[0102] Similarly, rendering the audio-visual objects for output during a viewing / consumption process that is implemented on an edited video that has already gone through the editing process may be done on the same electronic device 105 that captured the media content / data and / or on a different electronic device 105 (e.g., of the UGC user and / or of other users that are followers of the UGC user) . In other words, the at least one audio-visual object may be rendered based on the updated / second set of parameters associated with the at least one audio-visual object for output (during a viewing / consumption process) (i) on a first display 130 of the electronic device 105 and via one or more first audio output devices 125 of the electronic device 105, (ii) on a second display 130 of another electronic device 105 and via one or more second audio output devices 125 of the another electronic device 105, or both (i) and (ii) .

[0103] Similar to the description previously herein with respect to the editing process, the use of audio-visual objects also enables the ability to generate audio zoom and pans through user inputs corresponding to video zoom and pans during the viewing / consumption process. In some instances, at least one audio-visual object is rendered during a viewing / consumption process (e.g., viewing of the final video that was previously edited during the editing process) . While rendering the at least one audio-visual object during the viewing / consumption process, the electronic processor 110 of the electronic device 105 that is rendering the at least one audio-visual object detects a user input (e.g., a second user input) at a user interface of the electronic device 105 that is rendering the at least one audio-visual object. In some instances, the second user input indicates a user request to modify a second viewing characteristic (e.g., the pan, zoom, and / or rotate viewing modifications described previously herein with respect to the editing process) associated with the rendering of the at least one audio-visual object. In response detecting the second user input, the electronic processor 110 of the electronic device 105 that is rendering the at least one audio-visual object determines a modified viewing characteristic set by the second user input, and determines a modified audio output characteristic of the audio-visual object based on the modified viewing characteristic. Also in  response detecting the second user input, the electronic processor 110 of the electronic device 105 that is rendering the at least one audio-visual object renders, for output (i) on the display of the electronic device 105 that is rendering the at least one audio-visual object and (ii) via the one or more audio output devices of the electronic device 105 that is rendering the at least one audio-visual object, the at least one audio-visual object according to the modified viewing characteristic and the modified audio output characteristic. In other words, audio outputs from audio-visual objects in the video being played may be adjusted based on their perceived location in view of user inputs that pan or zoom portions of the video in a similar manner as described previously herein with respect to the editing process. However, during the viewing / consumption process, a viewing user may not be able to select individual audio-visual objects and / or edit parameters of individual audio-visual objects because this functionality may be reserved for the content creator.

[0104] FIG. 12 is a flow diagram illustrating a method 1200 for creating / generating audio-visual objects using the electronic device 105, according to some embodiments. The method 1200 is described as being performed by the electronic device 105 including the electronic processor 110 as described previously herein (which may include multiple electronic processors 110 distributed within a single electronic device 105 or across multiple electronic devices 105) . While a particular order of processing steps, message receptions, and / or message transmissions is indicated in FIG. 12 as an example, timing and ordering of such steps, receptions, and transmissions may vary where appropriate without negating the purpose and advantages of the examples set forth in detail throughout the remainder of this disclosure.

[0105] At block 1205, the electronic device 105 captures media data including video data and contemporaneously captured audio data associated with the video data as described previously herein. In some instances, the media data includes data representing video essence and data representing audio essence. In some instances, the media data includes audio data captured from one or more microphones (e.g., stereo audio data) . In some instances, audio data includes audio data captured from the microphone 135 integrated into the electronic device 105 (e.g., a microphone on a mobile phone) . In some instances, audio data includes audio data captured from a microphone integrated into a separate device coupled to the electronic device 105 (e.g., a wearable device such as earbuds, a headset, a smart watch, etc. ) . In some instances, the media data includes video data captured from one or more cameras. In some instances, the video data includes video data captured  from the camera 140 integrated into the electronic device 105 (e.g., a front or rear-facing camera on a mobile phone) . In some instances, the video data includes video data captured from a camera integrated into a separate device coupled to the electronic device 105 (e.g., a wearable device such a headset or a standalone device such as a webcam, digital camera, etc. ) .

[0106] At block 1210, an electronic processor 110 (e.g., of the electronic device 105) analyzes the video data to identify one or more visual objects and to assign an object class to each of the one or more visual objects as explained previously herein, for example, with respect to the video analysis 215 of FIG. 2. At block 1215, the electronic processor 110 analyzed the audio data to identify one or more audio objects and to assign an object class to each of the one or more audio objects as explained previously herein, for example, with respect to the audio analysis 220 of FIG. 2. At block 1220, the electronic processor 110 generates one or more audio-visual objects by associating each of the one or more audio objects with a respective visual object of the one or more visual objects as explained previously herein, for example, with respect to the multimodal analysis 225 of FIG. 2. As explained previously herein, generating the one or more audio-visual objects may include encoding, with the electronic processor 110, at least one audio-visual object according to a first set of parameters. The first set of parameters include at least one of the group consisting of object position data, object size data, object gain data, object trajectory data, content type data, rendering constraint data, data representing one or more visual editing operations, and combinations thereof.

[0107] FIG. 13 is a flow diagram illustrating a method 1300 for editing or manipulating audio-visual objects using the electronic device 105 and / or another electronic device 105, according to some embodiments. The method 1300 is described as being performed by the electronic device 105 including the electronic processor 110 as described previously herein (which may include multiple electronic processors 110 distributed within a single electronic device 105 or across multiple electronic devices 105) . While a particular order of processing steps, message receptions, and / or message transmissions is indicated in FIG. 13 as an example, timing and ordering of such steps, receptions, and transmissions may vary where appropriate without negating the purpose and advantages of the examples set forth in detail throughout the remainder of this disclosure.

[0108] At block 1305, the electronic processor 110 receives media data including at least one audio-visual object. As explained previously herein, the media data may have been captured by an  electronic device 105 in which the electronic processor 110 is located or may be received from another electronic device 105. At block 1310, the electronic processor 110 renders the at least one audio-visual object on a display 130 based on a first set of parameters associated with the at least one audio-visual object. In some instances, the rendering on the display 130 occurs during an editing process and / or during a viewing / consumption process as explained previously herein.

[0109] At block 1315, while rendering the at least one audio-visual object, the electronic processor 110 detects a user input at a user interface (e.g., the display 130 embodied as a touchscreen) corresponding to a user request to modify at least one parameter of the first set of parameters (e.g., a parameter associated with a visual representation of the at least one audio-visual object such as panning or zooming the video on the display 130) .

[0110] At block 1320, in response to detecting the user input, the electronic processor 110 may encode the at least one audio-visual object according to a second set of parameters that includes the modified at least one parameter, and render the at least one audio-visual object on the display 130 based on the second set of parameters. In some instances, the encoding includes adjusting an additional parameter of the first set of parameters (e.g., a parameter associated with audio data of the audio-visual object) based on the modified at least one parameter from the user input.

[0111] The foregoing description, for purpose of explanation, has been described with reference to specific embodiments. However, the illustrative discussions above are not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations are possible in view of the above teachings. The embodiments were chosen and described in order to best explain the principles of the techniques and their practical applications. Others skilled in the art are thereby enabled to best utilize the techniques and various embodiments with various modifications as are suited to the particular use contemplated.

[0112] Although the disclosure and examples have been fully described with reference to the accompanying drawings, it is to be noted that various changes and modifications will become apparent to those skilled in the art. Such changes and modifications are to be understood as being included within the scope of the disclosure and examples as defined by the claims.

[0113] It is to be understood that the embodiments are not limited in its application to the details of the configuration and arrangement of components set forth herein or illustrated in the accompanying drawings. The embodiments are capable of being practiced or of being carried out in various ways. Also, it is to be understood that the phraseology and terminology used herein are for the purpose of description and should not be regarded as limiting. The use of “including, ” “comprising, ” or “having” and variations thereof are meant to encompass the items listed thereafter and equivalents thereof as well as additional items. Unless specified or limited otherwise, the terms “mounted, ” “connected, ” “supported, ” and “coupled” and variations thereof are used broadly and encompass both direct and indirect mountings, connections, supports, and couplings.

[0114] In addition, it should be understood that embodiments may include hardware, software, and electronic components or modules that, for purposes of discussion, may be illustrated and described as if the majority of the components were implemented solely in hardware. However, one of ordinary skill in the art, and based on a reading of this detailed description, would recognize that, in at least one embodiment, the electronic-based aspects may be implemented in software (e.g., stored on non-transitory computer-readable medium) executable by one or more electronic processors, such as a microprocessor and / or application specific integrated circuits ( “ASICs” ) . As such, it should be noted that a plurality of hardware and software based devices, as well as a plurality of different structural components, may be utilized to implement the embodiments. For example, “servers” and “computing devices” described in the specification can include one or more electronic processors, one or more computer-readable medium modules, one or more input / output interfaces, and various connections (e.g., a system bus) connecting the various components.

[0115] A person skilled in the art realizes that the present invention by no means is limited to the embodiments described above. On the contrary, many modifications and variations are possible and considered within the scope of the appended claims. Various aspects and implementations of the present disclosure may also be appreciated from the following enumerated example embodiments (EEEs) , which are not claims, and which may represent systems, methods, and devices, all arranged in accordance with aspects of the present disclosure.

[0116] EEE1. A method comprising: capturing, with an electronic device, media data including video data and contemporaneously captured audio data associated with the video data; analyzing, with an electronic processor, the video data to identify one or more visual objects and to assign an  object class to each of the one or more visual objects; analyzing, with the electronic processor, the audio data to identify one or more audio objects and to assign an object class to each of the one or more audio objects; and generating, with the electronic processor, one or more audio-visual objects by associating each of the one or more audio objects with a respective visual object of the one or more visual objects.

[0117] EEE2. The method according to EEE1, further comprising: rendering, for output (i) on a display of the electronic device and (ii) via one or more audio output devices of the electronic device, at least one audio-visual object of the one or more audio-visual objects based on a first set of parameters associated with the at least one audio-visual object; and rendering, for output (i) on the display of the electronic device and (ii) via the one or more audio output devices of the electronic device, the at least one audio-visual object based on a second set of parameters associated with the at least one audio-visual object, wherein at least one value of at least one parameter of the second set of parameters is different than that of the first set of parameters; wherein the first set of parameters and the second set of parameters include at least one of the group consisting of object position data, object size data, object gain data, object trajectory data, content type data, rendering constraint data, data representing one or more visual editing operations, and combinations thereof.

[0118] EEE3. The method according to EEE2, wherein the first set of parameters and the second set of parameters each include coordinate data describing a position of the at least one audio-visual object in a three-dimensional (3D) world reference system, and wherein rendering the at least one audio-visual object includes spatializing a mono track associated with the at least one audio-visual object based on the coordinate data.

[0119] EEE4. The method according to any one of EEE2 or EEE3, wherein the first set of parameters is determined (i) in response to a first user input received at a user interface of the electronic device prior to rendering, (ii) automatically by the electronic processor prior to rendering, or (iii) by a combination of the first user input and automatic determination by the electronic processor prior to rendering.

[0120] EEE5. The method according to any one of EEE2 to EEE4, further comprising: while rendering the at least one audio-visual object, detecting a second user input at a user interface of the electronic device, wherein the second user input indicates a user request to modify a viewing characteristic associated with the rendering of the at least one audio-visual object; and in response  detecting the second user input, determining, with the electronic processor, a modified viewing characteristic set by the second user input, determining, with the electronic processor, the second set of parameters associated with the at least one audio-visual object based on the modified viewing characteristic, and rendering, for output (i) on the display of the electronic device and (ii) via the one or more audio output devices of the electronic device, the second set of parameters different than the first set of parameters.

[0121] EEE6. The method according to EEE5, wherein determining the second set of parameters associated with the at least one audio-visual object based on the modified viewing characteristics includes: determining, with the electronic processor, a change in size, location, or both size and location of the at least one audio-visual object on the display based on the modified viewing characteristic; and determining, with the electronic processor, a corresponding change in an audio output associated with the at least one audio-visual object based on the change in size, location, or both size and location of the at least one audio-visual object on the display.

[0122] EEE7. The method according to any one of EEE1 to EEE6, wherein the one or more audio-visual objects includes at least two audio-visual objects that are each configured to be rendered according to a respective set of parameters; and wherein the respective set of parameters for each audio-visual object is user-adjustable in a separate manner from other respective sets of parameters for other audio-visual objects.

[0123] EEE8. The method according to any one of EEE1 to EEE7, wherein analyzing the video data to identify the one or more visual objects includes: performing, with the electronic processor, object segmentation, face detection, or both object segmentation and face segmentation on the video data to determine, for detected objects or detected faces: respective mask data; respective coordinate data; and respective video object class data.

[0124] EEE9. The method according to EEE8, wherein the respective mask data includes a series of regional mask data from a plurality of frames of the video data; and wherein the respective coordinate data includes a series of locations corresponding to the regional mask data in each frame of the plurality of frames of the video data.

[0125] EEE10. The method according to any one of EEE1 to EEE9, wherein analyzing the audio data to identify the one or more audio objects includes: performing, with the electronic processor, source separation on the audio data to identify audio sources; and applying, with the  electronic processor, audio classification on the identified audio sources to assign an audio object class to each of the identified audio sources.

[0126] EEE11. The method according to EEE10, further comprising performing, with the electronic processor, speech enhancement to audio data corresponding to identified audio sources assigned to a speech audio object class.

[0127] EEE12. The method according to any one of EEE10 or EEE11, wherein performing source separation, performing speech enhancement, or performing both source separation and speech enhancement is based in part on data from a face detection process performed on the video data.

[0128] EEE13. The method according to any one of EEE1 to EEE12, wherein associating each of the one or more audio objects with the respective visual object is based on: data specifying a relationship between a video object class and an audio object class; a similarity analysis between an assigned audio object class and an assigned video object class; or both the data specifying the relationship between the video object class and the audio object class and the similarity analysis between the assigned audio object class and the assigned video object class.

[0129] EEE14. The method according to any one of EEE1 to EEE13, wherein the electronic processor includes a first electronic processor of the electronic device, a remote electronic processor configured to communicate with the electronic device, or both the first electronic processor and the remote electronic processor.

[0130] EEE15. The method according to EEE1, wherein generating the one or more audio-visual objects includes encoding, with the electronic processor, at least one audio-visual object according to a first set of parameters, wherein the first set of parameters include at least one of the group consisting of object position data, object size data, object gain data, object trajectory data, content type data, rendering constraint data, data representing one or more visual editing operations, and combinations thereof.

[0131] EEE16. The method according to EEE15, further comprising: rendering, with the electronic processor and via a user interface of the electronic device, an image of the at least one audio-visual object during an editing process; receiving a user input on the electronic device to edit the at least one audio-visual object; and encoding, with the electronic processor, the at least one audio-visual object according to a second set of parameters based at least in part on the user input,  wherein at least one value of at least one parameter of the second set of parameters is different than that of the first set of parameters.

[0132] EEE17. The method according to EEE16, wherein the user interface of the electronic device displays the at least one audio-visual object and a visualization of at least one parameter type of the sets of parameters, wherein the visualization of the at least one parameter type is adjustable via the user input and the at least one audio-visual object displayed on the user interface is adjusted according to the user input.

[0133] EEE18. The method according to EEE17, wherein the user input indicates a user request to modify a viewing characteristic of the at least one audio-visual object, and further comprising: in response to detecting the user input, determining, with the electronic processor, a modified viewing characteristic set by the user input, determining, with the electronic processor, the second set of parameters associated with the at least one audio-visual object based on the modified viewing characteristic, and encoding, with the electronic processor, the at least one audio-visual object according to the second set of parameters.

[0134] EEE19. The method according to EEE18, wherein determining the second set of parameters associated with the at least one audio-visual object based on the modified viewing characteristic includes: determining, with the electronic processor, a change in size, location, or both size and location of the at least one audio-visual object on the user interface based on the modified viewing characteristic; and determining, with the electronic processor, the at least one value of the second set of parameters based on the change in size, location, or both size and location of the at least one audio-visual object on the user interface, wherein the at least one value relates to an audio output associated with the at least one audio-visual object, and wherein the audio output is changed in manner corresponding to the change in size, location, or both size and location of the at least one audio-visual object on the user interface.

[0135] EEE20. The method according to any one of EEE17 to EEE19, further comprising: rendering the at least one audio-visual object based on the second set of parameters associated with the at least one audio-visual object for output (i) on a first display of the electronic device and via one or more first audio output devices of the electronic device, (ii) on a second display of another electronic device and via one or more second audio output devices of the another electronic device, or both (i) and (ii) .

[0136] EEE21. The method according to any one of EEE16 to EEE19, further comprising: rendering the at least one audio-visual object during a viewing process; while rendering the at least one audio-visual object during the viewing process, detecting a second user input at a user interface of the electronic device that is rendering the at least one audio-visual object, wherein the second user input indicates a user request to modify a second viewing characteristic associated with the rendering of the at least one audio-visual object; and in response to detecting the second user input, determining, with an electronic processor of the electronic device that is rendering the at least one audio-visual object, a modified viewing characteristic set by the second user input, determining, with the electronic processor of the electronic device that is rendering the at least one audio-visual object, a modified audio output characteristic of the at least one audio-visual object based on the modified viewing characteristic, and rendering, for output (i) on the display of the electronic device that is rendering the at least one audio-visual object and (ii) via the one or more audio output devices of the electronic device that is rendering the at least one audio-visual object, the at least one audio-visual object according to the modified viewing characteristic and the modified audio output characteristic.

[0137] EEE22. A non-transitory computer-readable storage medium storing instructions which, when executed by a computing apparatus, cause the computing apparatus to perform the method according to any one of EEE1 to EEE21.

[0138] EEE23. A computer apparatus, comprising: the electronic processor; and a memory storing instructions, which when executed by the electronic processor, cause the computing apparatus to perform the method according to any one of EEE1 to EEE21.

[0139] EEE24. A method comprising: at an electronic device: receiving media data including video data and contemporaneously captured audio data associated with the video data; analyzing the video data to identify a set of one or more visual objects and assigning an object class to each of the one or more visual objects; analyzing the audio data to identify a set of one or more audio objects and assigning an object class to each of the one or more audio objects; and generating a set of audio-visual objects by associating the audio objects to corresponding visual objects.

[0140] EEE25. The method according to EEE24, further comprising: rendering at least one audio-visual object of the set of audio-visual objects for output on a display and one or more audio output devices based on a first set of parameters associated with the at least one audio-visual object.

[0141] EEE26. The method according to EEE25, further comprising: rendering the least one of the audio-visual object for output on the display and the one or more audio output devices based on a second set of parameters associated with the at least one audio-visual object that is different than the first set of parameters.

[0142] EEE27. The method according to any one of EEE25 to EEE26, wherein at least one of the first set of parameters and the second set of parameters is determined in response to user input received at an input interface of the device.

[0143] EEE28. The method according to any one of EEE25 to EEE27, wherein at least one of the first set of parameters and the second set of parameters is determined automatically by the device.

[0144] EEE29. The method according to any one of EEE24 to EEE28, wherein analyzing the video data to identify a set of one or more visual objects includes: performing object segmentation or face detection on the video data to determine, for detected objects or detected faces: respective mask data; respective coordinate data; and respective video object class data.

[0145] EEE30. The method according to EEE29, wherein performing object segmentation or face detection on the video data to determine respective coordinate data includes estimating respective depth information associated detected objects or detected faces using data from a depth sensor or a depth camera system.

[0146] EEE31. The method according to EEE29, wherein performing object segmentation or face detection on the video data to determine respective coordinate data includes estimating respective depth information associated detected objects or detected faces without using data from a depth sensor or depth camera system.

[0147] EEE32. The method according to any one of EEE24 to EEE31, wherein analyzing the video data to identify a set of one or more visual objects is further based in part on contextual data.

[0148] EEE33. The method according to any one of EEE24 to EEE32, wherein analyzing the audio data to identify a set of one or more audio objects includes: performing source separation on the audio data to identify audio sources; and applying audio classification on the identified audio sources to assign an audio object class to the identified audio sources.

[0149] EEE34. The method according to EEE33, further comprising: performing speech enhancement to data corresponding to identified audio sources assigned to a speech audio object class.

[0150] EEE35. The method according to any one of EEE33 to EEE34, wherein source separation or speech enhancement is based in part on data from a face detection process performed on the video data.

[0151] EEE36. The method according to any one of EEE24 to EEE25, wherein associating the audio objects to corresponding visual objects is based on at least one of: data specifying explicit relationships between video object classes and audio object classes; and a similarity analysis between assigned audio object classes and assigned video object classes.

[0152] EEE37. A method comprising: at an electronic device including a display and one or more audio output devices: receiving media data including a plurality of audio-visual objects; and rendering, on the display and the one or more audio output devices, one or more audio-visual objects derived from the media data based on a first set of parameters.

[0153] EEE38. The method according to EEE37, wherein the first set of parameters include coordinate data describing the position of the audio-visual object in a 3D world reference system, and rendering includes spatializing a mono track associated with the audio-visual object based on the coordinate data.

[0154] EEE39. The method according to any one of EEE37 to EEE38, further comprising: while rendering the media data, detecting one or more user inputs at a user interface corresponding to a user request to modify an audio or visual aspects associated with output of the rendering; and in response detecting the one or more user inputs, rendering the media data on the display and the one or more audio output devices based on a second set of parameters different than the first set of parameters.

[0155] EEE40. The method according to EEE39, wherein the one or more user inputs correspond to a request to zoom, pan, or rotate displayed image data corresponding to the rendering of the media data; and wherein rendering the media data on the display and the one or more audio output devices based on a second set of parameters causes respective zoom, pan, or rotation operations to one or more audio-visual objects.

[0156] EEE41. The method according to EEE39, wherein the one or more user inputs correspond to a request adjust spatialization of one or more audio-visual objects.

[0157] EEE42. The method according to EEE39, wherein the one or more user inputs correspond to a request adjust an output level of an audio-visual object.

[0158] EEE43. The method according to any one of EEE39 to EEE41, wherein the one or more user inputs include a user input at a location on a display corresponding to image data associated with an audio-visual object.

[0159] EEE44. A non-transitory computer-readable storage medium storing instructions which, when executed by a computing apparatus, cause the computing apparatus to perform the method according to any one of EEE24 to EEE43.

[0160] EEE45. A computing apparatus, comprising: at least one processor; and memory storing instructions, which when executed by the at least one processor, cause the computing apparatus to perform the method according to any one of EEE24 to EEE43.

[0161] Various features and advantages are set forth in the following claims.

Claims

1.A method comprising:capturing, with an electronic device, media data including video data and contemporaneously captured audio data associated with the video data;analyzing, with an electronic processor, the video data to identify one or more visual objects and to assign an object class to each of the one or more visual objects;analyzing, with the electronic processor, the audio data to identify one or more audio objects and to assign an object class to each of the one or more audio objects; andgenerating, with the electronic processor, one or more audio-visual objects by associating each of the one or more audio objects with a respective visual object of the one or more visual objects.2.The method of claim 1, further comprising:rendering, for output (i) on a display of the electronic device and (ii) via one or more audio output devices of the electronic device, at least one audio-visual object of the one or more audio-visual objects based on a first set of parameters associated with the at least one audio-visual object; andrendering, for output (i) on the display of the electronic device and (ii) via the one or more audio output devices of the electronic device, the at least one audio-visual object based on a second set of parameters associated with the at least one audio-visual object, wherein at least one value of at least one parameter of the second set of parameters is different than that of the first set of parameters;wherein the first set of parameters and the second set of parameters include at least one of the group consisting of object position data, object size data, object gain data, object trajectory data, content type data, rendering constraint data, data representing one or more visual editing operations, and combinations thereof.3.The method of claim 2, wherein the first set of parameters and the second set of parameters each include coordinate data describing a position of the at least one audio-visual object in a three-dimensional (3D) world reference system, and wherein rendering the at least one audio-visual object  includes spatializing a mono track associated with the at least one audio-visual object based on the coordinate data.4.The method of claim 2 or claim 3, wherein the first set of parameters is determined (i) in response to a first user input received at a user interface of the electronic device prior to rendering, (ii) automatically by the electronic processor prior to rendering, or (iii) by a combination of the first user input and automatic determination by the electronic processor prior to rendering.5.The method of any one of claims 2-4, further comprising:while rendering the at least one audio-visual object, detecting a second user input at a user interface of the electronic device, wherein the second user input indicates a user request to modify a viewing characteristic associated with the rendering of the at least one audio-visual object; andin response detecting the second user input,determining, with the electronic processor, a modified viewing characteristic set by the second user input,determining, with the electronic processor, the second set of parameters associated with the at least one audio-visual object based on the modified viewing characteristic, andrendering, for output (i) on the display of the electronic device and (ii) via the one or more audio output devices of the electronic device, the second set of parameters different than the first set of parameters.6.The method of claim 5, wherein determining the second set of parameters associated with the at least one audio-visual object based on the modified viewing characteristics includes:determining, with the electronic processor, a change in size, location, or both size and location of the at least one audio-visual object on the display based on the modified viewing characteristic; anddetermining, with the electronic processor, a corresponding change in an audio output associated with the at least one audio-visual object based on the change in size, location, or both size and location of the at least one audio-visual object on the display.7.The method of any one of the preceding claims, wherein the one or more audio-visual objects includes at least two audio-visual objects that are each configured to be rendered according to a respective set of parameters;wherein the respective set of parameters for each audio-visual object is user-adjustable in a separate manner from other respective sets of parameters for other audio-visual objects.8.The method of any one of the preceding claims, wherein analyzing the video data to identify the one or more visual objects includes:performing, with the electronic processor, object segmentation, face detection, or both object segmentation and face segmentation on the video data to determine, for detected objects or detected faces:respective mask data;respective coordinate data; andrespective video object class data.9.The method of claim 8, wherein the respective mask data includes a series of regional mask data from a plurality of frames of the video data; andwherein the respective coordinate data includes a series of locations corresponding to the regional mask data in each frame of the plurality of frames of the video data.10.The method of any one of the preceding claims, wherein analyzing the audio data to identify the one or more audio objects includes:performing, with the electronic processor, source separation on the audio data to identify audio sources; andapplying, with the electronic processor, audio classification on the identified audio sources to assign an audio object class to each of the identified audio sources.11.The method of claim 10, further comprising performing, with the electronic processor, speech enhancement to audio data corresponding to identified audio sources assigned to a speech audio object class.12.The method of claim 10 or claim 11, wherein performing source separation, performing speech enhancement, or performing both source separation and speech enhancement is based in part on data from a face detection process performed on the video data.13.The method of any one of the preceding claims, wherein associating each of the one or more audio objects with the respective visual object is based on:data specifying a relationship between a video object class and an audio object class;a similarity analysis between an assigned audio object class and an assigned video object class; orboth the data specifying the relationship between the video object class and the audio object class and the similarity analysis between the assigned audio object class and the assigned video object class.14.The method of any one of the preceding claims, wherein the electronic processor includes a first electronic processor of the electronic device, a remote electronic processor configured to communicate with the electronic device, or both the first electronic processor and the remote electronic processor.15.The method of claim 1, wherein generating the one or more audio-visual objects includes encoding, with the electronic processor, at least one audio-visual object according to a first set of parameters, wherein the first set of parameters include at least one of the group consisting of object position data, object size data, object gain data, object trajectory data, content type data, rendering constraint data, data representing one or more visual editing operations, and combinations thereof.16.The method of claim 15, further comprising:rendering, with the electronic processor and via a user interface of the electronic device, an image of the at least one audio-visual object during an editing process;receiving a user input on the electronic device to edit the at least one audio-visual object; andencoding, with the electronic processor, the at least one audio-visual object according to a second set of parameters based at least in part on the user input, wherein at least one value of at least one parameter of the second set of parameters is different than that of the first set of parameters.17.The method of claim 16, wherein the user interface of the electronic device displays the at least one audio-visual object and a visualization of at least one parameter type of the sets of parameters, wherein the visualization of the at least one parameter type is adjustable via the user input and the at least one audio-visual object displayed on the user interface is adjusted according to the user input.18.The method of claim 17, wherein the user input indicates a user request to modify a viewing characteristic of the at least one audio-visual object, and further comprising:in response to detecting the user input,determining, with the electronic processor, a modified viewing characteristic set by the user input,determining, with the electronic processor, the second set of parameters associated with the at least one audio-visual object based on the modified viewing characteristic, andencoding, with the electronic processor, the at least one audio-visual object according to the second set of parameters.19.The method of claim 18, wherein determining the second set of parameters associated with the at least one audio-visual object based on the modified viewing characteristic includes:determining, with the electronic processor, a change in size, location, or both size and location of the at least one audio-visual object on the user interface based on the modified viewing characteristic; anddetermining, with the electronic processor, the at least one value of the second set of parameters based on the change in size, location, or both size and location of the at least one audio-visual object on the user interface, wherein the at least one value relates to an audio output associated with the at least one audio-visual object, and wherein the audio output is changed in manner corresponding to the change in size, location, or both size and location of the at least one audio-visual object on the user interface.20.The method of any one of claims 17-19, further comprising:rendering the at least one audio-visual object based on the second set of parameters associated with the at least one audio-visual object for output (i) on a first display of the electronic device and via one or more first audio output devices of the electronic device, (ii) on a second display of another electronic device and via one or more second audio output devices of the another electronic device, or both (i) and (ii) .21.The method of any one of claims 16-19, further comprising:rendering the at least one audio-visual object during a viewing process;while rendering the at least one audio-visual object during the viewing process, detecting a second user input at a user interface of the electronic device that is rendering the at least one audio-visual object, wherein the second user input indicates a user request to modify a second viewing characteristic associated with the rendering of the at least one audio-visual object; andin response to detecting the second user input,determining, with an electronic processor of the electronic device that is rendering the at least one audio-visual object, a modified viewing characteristic set by the second user input,determining, with the electronic processor of the electronic device that is rendering the at least one audio-visual object, a modified audio output characteristic of the at least one audio-visual object based on the modified viewing characteristic, andrendering, for output (i) on the display of the electronic device that is rendering the at least one audio-visual object and (ii) via the one or more audio output devices of the electronic device that is rendering the at least one audio-visual object, the at least one audio-visual object according to the modified viewing characteristic and the modified audio output characteristic.22.A non-transitory computer-readable storage medium storing instructions which, when executed by a computing apparatus, cause the computing apparatus to perform the method of any one of claims 1-21.23.A computing apparatus, comprising:the electronic processor; anda memory storing instructions, which when executed by the electronic processor, cause the computing apparatus to perform the method of any one of claims 1-21.

Citation Information

Patent Citations

  • Audio and video intelligent identification processing method based on audio and video processing system

    CN110569720A

  • Method and system for creating binaural immersive audio for an audiovisual content

    US10820131B1

  • Enhanced Audiovisual Multiuser Communication

    US20200382747A1

  • Video-Informed Spatial Audio Expansion

    US20210240431A1