BR122024013703A2 - METHOD AND EQUIPMENT FOR EFFECTIVE USE AND DELIVERY OF AUDIO MESSAGES FOR HIGH QUALITY EXPERIENCE - Google Patents
METHOD AND EQUIPMENT FOR EFFECTIVE USE AND DELIVERY OF AUDIO MESSAGES FOR HIGH QUALITY EXPERIENCE Download PDFInfo
- Publication number
- BR122024013703A2 BR122024013703A2 BR122024013703-8A BR122024013703A BR122024013703A2 BR 122024013703 A2 BR122024013703 A2 BR 122024013703A2 BR 122024013703 A BR122024013703 A BR 122024013703A BR 122024013703 A2 BR122024013703 A2 BR 122024013703A2
- Authority
- BR
- Brazil
- Prior art keywords
- audio
- information message
- metadata
- audio information
- stream
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 230000005236 sound signal Effects 0.000 claims abstract description 57
- 230000033001 locomotion Effects 0.000 claims abstract description 44
- 230000006978 adaptation Effects 0.000 claims description 56
- 230000008569 process Effects 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 12
- 230000008859 change Effects 0.000 claims description 8
- 238000002156 mixing Methods 0.000 claims description 4
- 230000003190 augmentative effect Effects 0.000 abstract description 9
- 238000004590 computer program Methods 0.000 description 9
- 230000011664 signaling Effects 0.000 description 8
- 230000001419 dependent effect Effects 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000004886 head movement Effects 0.000 description 6
- 230000000007 visual effect Effects 0.000 description 6
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000009877 rendering Methods 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 238000002716 delivery method Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 208000013057 hereditary mucoepithelial dysplasia Diseases 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Abstract
Trata-se de um método e um sistema para um ambiente de realidade virtual, VR, realidade aumentada, AR, realidade mista, MR ou Vídeo em 360 graus. O sistema pode ser configurado para: receber pelo menos um fluxo de vídeo (106) associado a uma cena de áudio e vídeo a ser reproduzida; e receber pelo menos um primeiro fluxo de áudio (116, 316) associado à cena de áudio e vídeo a ser reproduzido, em que o sistema compreende: pelo menos um decodificador de vídeo de mídia (102) configurado para decodificar pelo menos um sinal de vídeo do pelo menos um Video Stream (106) para a representação da cena de áudio e vídeo para um usuário; e pelo menos um decodificador de áudio de mídia (112) configurado para decodificar pelo menos um sinal de áudio do pelo menos um primeiro fluxo de áudio (116, 316) para a representação da cena de áudio e vídeo para o usuário; uma região de interesse, ROI, processador (120), configurado para: decidir, com base no mínimo na viewport atual do usuário e / ou na orientação da cabeça e / ou nos dados de movimento (122) e / ou nos metadados da viewport (131) e / ou no áudio metadados da mensagem de informação (141), se uma mensagem de informação de áudio associada a pelo menos um ROI deve ser reproduzida, em que a mensagem de informação de áudio é independente de pelo menos um sinal de vídeo e de pelo menos um sinal de áudio; e causar, na decisão de que a mensagem informativa deve ser reproduzida, a reprodução da mensagem informativa de áudio.This is a method and a system for a virtual reality, VR, augmented reality, AR, mixed reality, MR or 360 degree Video environment. The system can be configured to: receive at least one video stream (106) associated with an audio and video scene to be reproduced; and receive at least a first audio stream (116, 316) associated with the audio and video scene to be reproduced, wherein the system comprises: at least one media video decoder (102) configured to decode at least one video signal from the at least one Video Stream (106) for the representation of the audio and video scene to a user; and at least one media audio decoder (112) configured to decode at least one audio signal from the at least one first audio stream (116, 316) for the representation of the audio and video scene to the user; a region of interest, ROI, processor (120), configured to: decide, based at least on the user's current viewport and/or head orientation and/or motion data (122) and/or viewport metadata (131) and/or audio information message metadata (141), whether an audio information message associated with the at least one ROI should be played, wherein the audio information message is independent of the at least one video signal and the at least one audio signal; and cause, upon deciding that the information message should be played, the audio information message to be played.
Description
[0001] Em muitos aplicativos, a entrega de mensagens sonoras pode melhorar a experiência do usuário durante o consumo de mídia. Uma das aplicações mais relevantes dessas mensagens é fornecida pelo conteúdo de realidade virtual (VR). Em um ambiente de VR, ou de forma semelhante em ambientes de Realidade Aumentada (AR) ou Realidade Mista (MR) ou Vídeo em 360 graus, o usuário geralmente pode visualizar o conteúdo completo em 360 graus usando, por exemplo, um Head Mounted Display (HMD) (Visor Montado na Cabeça) e ouvi-lo por meio de fones de ouvido (ou de forma semelhante por meio de alto-falantes, incluindo a renderização correta, dependendo de sua posição). O usuário geralmente pode se mover no espaço VR / AR, ou pelo menos alterar a direção da visualização - a chamada "viewport" (janela de visualização). Em ambientes de vídeo de 360 graus, que usam sistemas de reprodução clássicos (tela ampla) em vez de HMDs, dispositivos de controle remoto podem ser usados para emular o movimento do usuário na cena e princípios semelhantes se aplicam. Deve-se observar que o conteúdo em 360 graus pode se referir a qualquer tipo de conteúdo que inclua mais de um ângulo de visão no mesmo momento que o usuário possa escolher (por exemplo, pela orientação da cabeça ou usando um dispositivo de controle remoto)[0001] In many applications, the delivery of audio messages can enhance the user experience during media consumption. One of the most relevant applications of such messages is provided by virtual reality (VR) content. In a VR environment, or similarly in Augmented Reality (AR) or Mixed Reality (MR) or 360-degree Video environments, the user can usually view the full 360-degree content using, for example, a Head Mounted Display (HMD) and hear it through headphones (or similarly through speakers, including correct rendering depending on their position). The user can usually move around in the VR/AR space, or at least change the viewing direction - the so-called "viewport". In 360-degree video environments, which use classic (wide-screen) playback systems instead of HMDs, remote control devices can be used to emulate the user's movement in the scene, and similar principles apply. It should be noted that 360-degree content can refer to any type of content that includes more than one viewing angle at the same time that the user can choose (e.g. by head orientation or using a remote control device).
[0002] Comparados ao consumo de conteúdo clássico, para VR, os criadores de conteúdo não podem mais controlar o que o usuário visualiza em vários momentos - a viewport atual. O usuário tem a liberdade de escolher diferentes viewports em cada instância de tempo, fora das viewports permitidas ou disponíveis.[0002] Compared to classic content consumption, for VR, content creators can no longer control what the user sees at various times - the current viewport. The user has the freedom to choose different viewports at each instance of time, outside of the allowed or available viewports.
[0003] Um problema comum do consumo de conteúdo VR é o risco de o usuário perder os eventos importantes na cena do vídeo devido à seleção da viewport incorreta. Para resolver esse problema, a noção de Region of Interest (Região de Interesse) (ROI) foi introduzida e vários conceitos para sinalizar a ROI são considerados. Embora a ROI seja comumente usada para indicar ao usuário a região que contém a viewport recomendada, ela também pode ser usada com outras finalidades, como: indicar a presença de um novo personagem/objeto na cena, indicar os recursos de acessibilidade associados aos objetos na cena, basicamente qualquer recurso que possa ser associado a um elemento que compõe a cena do vídeo. Por exemplo, mensagens visuais (por exemplo, "Vire sua cabeça para esquerda") podem ser usadas e sobrepostas na viewport atual. Como alternativa, sons audíveis podem ser usados, sons naturais ou sintéticos, reproduzindo-os na posição da ROI. Estas mensagens de áudio são conhecidas como "Earcons".[0003] A common problem in VR content consumption is the risk of the user missing important events in the video scene due to selecting the wrong viewport. To solve this problem, the notion of Region of Interest (ROI) was introduced and several concepts for signaling the ROI are considered. Although the ROI is commonly used to indicate to the user the region that contains the recommended viewport, it can also be used for other purposes, such as: indicating the presence of a new character/object in the scene, indicating accessibility features associated with objects in the scene, basically any feature that can be associated with an element that makes up the video scene. For example, visual messages (e.g. "Turn your head to the left") can be used and overlaid on the current viewport. Alternatively, audible sounds can be used, natural or synthetic sounds, playing them at the position of the ROI. These audio messages are known as "Earcons".
[0004] No contexto deste aplicativo, a noção de Earcon será usada para caracterizar mensagens de áudio transmitidas para sinalizar as ROIs, mas a sinalização e o processamento propostos podem ser usados também para mensagens de áudio genéricas com outra finalidade que não a sinalização de ROIs. Um exemplo dessas mensagens de áudio é fornecido pelas mensagens de áudio para transmitir informações/indicação de várias opções que o usuário possui em um ambiente interativo de AR/VR/MR (por exemplo, "pule a caixa à sua esquerda para entrar na sala X"). Além disso, o exemplo de VR será usado, mas os mecanismos descritos neste documento se aplicam a qualquer ambiente de consumo de mídia.[0004] In the context of this application, the notion of Earcon will be used to characterize audio messages transmitted to signal ROIs, but the proposed signaling and processing can be used also for generic audio messages with a purpose other than signaling ROIs. An example of such audio messages is provided by audio messages to convey information/indication of various options that the user has in an interactive AR/VR/MR environment (e.g., "skip the box on your left to enter room X"). Furthermore, the VR example will be used, but the mechanisms described in this document apply to any media consumption environment.
[0005] A seguinte terminologia é utilizada no campo técnico.: Audio Elements (Elementos de Áudio): Sinais de áudio que podem ser representados por exemplo como Audio objects (Objetos de áudio), Audio channels (Canais de áudio), scene based Audio (Áudio baseado em cena) (Higher Order Ambisonics - HOA) (Ambisonics de Ordem Superior), ou uma combinação de todos. Region-of-Interest (Região de Interesse) (ROI): Uma região do conteúdo de vídeo (ou do ambiente exibido ou simulado) que é de interesse para o usuário em um momento no tempo. Isso pode ser geralmente uma região em uma esfera, por exemplo, ou uma seleção poligonal de um mapa 2D. O ROI identifica uma região específica para uma finalidade específica, definindo as bordas de um objeto em consideração. User position information (Informações de posição do usuário) informações de localização (por exemplo, coordenadas x, y, z), informações de orientação (guinada, inclinação, rotação), direção e velocidade de movimento etc. Viewport (Janela de visualização): Parte esférica do Vídeo que é atualmente exibida e visualizada pelo usuário. Viewpoint (Ponto de visualização): o ponto central da Viewport (Janela de visualização). Vídeo de 360 graus (também conhecido como vídeo de imersão ou vídeo esférico): representa, no contexto deste documento, um conteúdo de vídeo que contém mais de uma visualização (ou seja, viewport) em uma direção no mesmo ponto no tempo. Este conteúdo pode ser criado, por exemplo, usando uma câmera omnidirecional ou uma coleção de câmeras. Durante a reprodução, o espectador controla a direção da visualização. Adaptation Sets (Conjuntos de adaptação) contêm um stream (fluxo) de mídia ou um conjunto de streams (fluxos) de mídia. No caso mais simples, um Adaptation Set contém todos os áudios e vídeos para o conteúdo, mas para reduzir a largura da banda, cada stream pode ser dividido em um Adaptation Set diferente. Um caso comum é ter um Adaptation Set de vídeo, e vários Adaptation Sets de áudio (um para cada idioma suportado). Os Adaptation Sets também podem conter legendas ou metadados arbitrários. Representations (Representações) permitem que um Adaptation Set contenha o mesmo conteúdo codificado de várias maneiras. Na maioria dos casos, as Representations serão fornecidas em várias taxas de bits. Isso permite que os clientes solicitem o conteúdo da mais alta qualidade que eles podem reproduzir sem esperar para armazenar em buffer. As Representations também podem ser codificadas com diferentes codecs, permitindo suporte para clientes com diferentes codecs suportados. Media Presentation Description (MPD) (Descrição de apresentações de mídia) é uma sintaxe XML que contém informações sobre segmentos de mídia, suas relações e informações necessárias para escolher entre elas.[0005] The following terminology is used in the technical field: Audio Elements: Audio signals that can be represented for example as Audio objects, Audio channels, scene based Audio (Higher Order Ambisonics - HOA), or a combination of all. Region-of-Interest (ROI): A region of the video content (or the displayed or simulated environment) that is of interest to the user at a given moment in time. This can usually be a region on a sphere, for example, or a polygonal selection of a 2D map. The ROI identifies a specific region for a specific purpose by defining the edges of an object under consideration. User position information: location information (e.g. x, y, z coordinates), orientation information (yaw, pitch, roll), direction and speed of movement, etc. Viewport: The spherical portion of the Video that is currently displayed and viewed by the user. Viewpoint: The center point of the Viewport. 360-degree video (also known as immersive video or spherical video): In the context of this document, this represents video content that contains more than one view (i.e. viewport) in one direction at the same point in time. This content can be created, for example, using an omnidirectional camera or a collection of cameras. During playback, the viewer controls the direction of the view. Adaptation Sets contain either a media stream or a set of media streams. In the simplest case, an Adaptation Set contains all the audio and video for the content, but to reduce bandwidth, each stream can be split into a separate Adaptation Set. A common case is to have one video Adaptation Set, and multiple audio Adaptation Sets (one for each supported language). Adaptation Sets can also contain captions or arbitrary metadata. Representations allow an Adaptation Set to contain the same content encoded in multiple ways. In most cases, Representations will be provided at multiple bitrates. This allows clients to request the highest quality content they can play without waiting for buffering. Representations can also be encoded with different codecs, allowing support for clients with different supported codecs. Media Presentation Description (MPD) is an XML syntax that contains information about media segments, their relationships, and information needed to choose between them.
[0006] No contexto deste aplicativo, as noções dos Adaptation Sets são usadas de forma mais genérica, às vezes se referindo realmente às Representations. Além disso, os media streams (streams de áudio/vídeo) geralmente são encapsulados primeiro nos Media segments (segmentos de mídia) que são os arquivos de mídia reais reproduzidos pelo cliente (por exemplo, cliente DASH). Vários formatos podem ser usados para os Media segments, como ISOBMFF (ISO Base Media File Format), que é semelhante ao formato de contêiner MPEG-4 e MPEG-TS. O encapsulamento em Media segments e em diferentes Representations/Adaptation Sets é independente dos métodos descritos aqui, os métodos se aplicam a todas as várias opções.[0006] In the context of this application, the notions of Adaptation Sets are used more generically, sometimes actually referring to Representations. Furthermore, media streams (audio/video streams) are usually first encapsulated into Media segments which are the actual media files played by the client (e.g. DASH client). Various formats can be used for Media segments, such as ISOBMFF (ISO Base Media File Format), which is similar to the MPEG-4 and MPEG-TS container formats. Encapsulation into Media segments and different Representations/Adaptation Sets is independent of the methods described here, the methods apply to all of the various options.
[0007] Além disso, a descrição dos métodos neste documento pode ser centrada em uma comunicação DASH Server-Client, mas os métodos são genéricos o suficiente para trabalhar com outros ambientes de entrega, como MMT, MPEG-2 Transport Stream, DASH-ROUTE, File Format (Formato de Arquivo) para reprodução de arquivos etc.[0007] Furthermore, the description of the methods in this document may be centered around a DASH Server-Client communication, but the methods are generic enough to work with other delivery environments such as MMT, MPEG-2 Transport Stream, DASH-ROUTE, File Format for file playback, etc.
[0008] As soluções atuais são: [1] . ISO/IEC 23008-3:2015, Information technology -- Tecnologia da informação - codificação de alta eficiência e entrega de mídia em ambientes heterogêneos -- Parte 3: Áudio 3D [2] . N16950, Estudo do Formato de Mídia Omnidirecional ISO/IEC DIS 23000-20 [3] . M41184, Uso de Earcons para Identificação de ROI em Vídeo de 360 graus.[0008] Current solutions are: [1] . ISO/IEC 23008-3:2015, Information technology -- High efficiency coding and delivery of media in heterogeneous environments -- Part 3: 3D audio [2] . N16950, ISO/IEC DIS 23000-20 Omnidirectional Media Format Study [3] . M41184, Use of Earcons for ROI Identification in 360-degree Video.
[0009] Um mecanismo de entrega para conteúdo de 360 graus é fornecido pelo Formato de Mídia Omnidirecional, ISO/IEC 23000 20 [2]. Esta norma especifica o formato de mídia para codificação, armazenamento, entrega e renderização de imagens omnidirecionais, vídeo e o áudio associado. Ela fornece informações sobre os codecs de mídia a serem usados para compactação de áudio e vídeo e informações adicionais de metadados para o consumo correto do conteúdo A/V de 360 graus. Também especifica restrições e requisitos nos canais de entrega, como Streaming sobre DASH/MMT ou reprodução baseada em arquivo.[0009] A delivery mechanism for 360-degree content is provided by the Omnidirectional Media Format, ISO/IEC 23000 20 [2]. This standard specifies the media format for encoding, storing, delivering, and rendering omnidirectional images, video, and associated audio. It provides information on the media codecs to be used for audio and video compression and additional metadata information for the correct consumption of 360-degree A/V content. It also specifies restrictions and requirements on delivery channels, such as Streaming over DASH/MMT or file-based playback.
[0010] O conceito Earcon foi introduzido pela primeira vez no M41184, "Uso de Earcons para Identificação de ROI em Vídeo em 360 graus" [3], que fornece um mecanismo para sinalizar os dados de Áudio do Earcon para o usuário.[0010] The Earcon concept was first introduced in M41184, "Use of Earcons for ROI Identification in 360-Degree Video" [3], which provides a mechanism for signaling Earcon audio data to the user.
[0011] No entanto, alguns usuários relataram comentários decepcionantes sobre esses sistemas. Muitas vezes, uma grande quantidade de Earcons resultou em comentários irritados. Quando os designers reduziram o número de Earcons, alguns usuários perderam informações importantes. Notavelmente, cada usuário tem seu próprio conhecimento e nível de experiência e prefere um sistema adequado para si. Apenas para dar um exemplo, cada usuário prefere que os Earcons sejam reproduzidos em um volume preferido (independente, por exemplo, do volume usado para os outros sinais de áudio). Foi comprovado ser difícil para o designer do sistema obter um sistema que ofereça um bom nível de satisfação a todos os possíveis usuários. Portanto, buscou-se uma solução que permitisse aumentar a satisfação de quase todos os usuários.[0011] However, some users have reported disappointing feedback about these systems. Often, a large number of Earcons resulted in angry feedback. When designers reduced the number of Earcons, some users lost important information. Notably, each user has his or her own knowledge and experience level and prefers a system that suits him or her. Just to give one example, each user prefers the Earcons to be played at a preferred volume (independent, for example, of the volume used for other audio signals). It has proven difficult for the system designer to achieve a system that provides a good level of satisfaction for all potential users. Therefore, a solution was sought that would allow to increase the satisfaction of almost all users.
[0012] Além disso, foi comprovado que é difícil reconfigurar os sistemas, mesmo para os projetistas. Por exemplo, eles tiveram dificuldade em preparar novos lançamentos dos Audio Streams e atualizar os Earcons.[0012] Furthermore, it has proven difficult to reconfigure systems, even for designers. For example, they had difficulty preparing new releases of Audio Streams and updating Earcons.
[0013] Além disso, um sistema restrito impõe certas limitações à funcionalidade, como os Earcons não poderem ser identificados com precisão em um Audio Stream. Adicionalmente, os Earcons devem estar sempre ativos e podem se tornar irritantes para o usuário se reproduzidos quando não forem necessários.[0013] Furthermore, a restricted system imposes certain limitations on functionality, such as the Earcons not being able to be accurately identified in an Audio Stream. Additionally, the Earcons must always be active and may become annoying to the user if played when not needed.
[0014] Além disso, as informações espaciais dos Earcons não podem ser sinalizadas nem modificadas por um cliente DASH, por exemplo. O fácil acesso a essas informações no nível de sistemas pode permitir recursos adicionais para uma melhor experiência do usuário.[0014] Additionally, the spatial information from Earcons cannot be flagged or modified by a DASH client, for example. Easy access to this information at the systems level can enable additional features for a better user experience.
[0015] Além disso, não há flexibilidade no tratamento de vários tipos de Earcons (por exemplo, som natural, som sintético, som gerado no DASH Client etc.).[0015] Additionally, there is no flexibility in handling various types of Earcons (e.g. natural sound, synthetic sound, DASH Client generated sound, etc.).
[0016] Todos esses problemas levam a uma má Qualidade de Experiência do usuário. Portanto, seria preferível uma arquitetura mais flexível.[0016] All these problems lead to poor user Quality of Experience. Therefore, a more flexible architecture would be preferable.
[0017] De acordo com os exemplos, é fornecido um sistema para um ambiente de realidade virtual, VR, realidade aumentada, AR, realidade mista, MR ou Vídeo de 360 graus configurado para: receber pelo menos um Video Stream associado a uma cena de áudio e vídeo a ser reproduzida; e receber pelo menos um primeiro Audio Stream associado à cena de áudio e vídeo a ser reproduzida, onde o sistema inclui: pelo menos um decodificador de vídeo de mídia configurado para decodificar pelo menos um sinal de vídeo, de pelo menos um Video Stream para a representação da cena de áudio e vídeo para um usuário; e pelo menos um decodificador de áudio de mídia configurado para decodificar pelo menos um sinal de áudio de pelo menos um primeiro Audio Stream para a representação da cena de áudio e vídeo para o usuário; uma região de interesse, ROI, processador, codificado para: decide, com base, pelo menos, na viewport atual do usuário e / ou na orientação da cabeça e / ou nos dados de movimento e / ou nos metadados da viewport e / ou nos metadados das mensagens de informações de áudio, se uma mensagem de informação de áudio associada a uma ROI deve ser reproduzida, onde a mensagem de informação de áudio é independente de pelo menos um sinal de vídeo e de pelo menos um sinal de áudio; e fazer, na decisão de que a mensagem de informações deve ser reproduzida, a reprodução da mensagem de informação de áudio.[0017] In accordance with the examples, a system is provided for a virtual reality, VR, augmented reality, AR, mixed reality, MR, or 360-degree Video environment configured to: receive at least one Video Stream associated with an audio and video scene to be played; and receive at least a first Audio Stream associated with the audio and video scene to be played, wherein the system includes: at least one media video decoder configured to decode at least one video signal from the at least one Video Stream into the representation of the audio and video scene to a user; and at least one media audio decoder configured to decode at least one audio signal from the at least one first Audio Stream into the representation of the audio and video scene to the user; a region of interest, ROI, processor, coded to: decide, based on at least the user's current viewport and/or head orientation and/or motion data and/or viewport metadata and/or audio information message metadata, whether an audio information message associated with a ROI should be played, where the audio information message is independent of at least one video signal and at least one audio signal; and make, upon deciding that the information message should be played, the playback of the audio information message.
[0018] De acordo com os exemplos, é fornecido um sistema para um ambiente de realidade virtual, VR, realidade aumentada, AR, realidade mista, MR ou Vídeo de 360 graus configurado para: receber pelo menos um Video Stream; e receber pelo menos um primeiro Audio Stream, onde o sistema inclui: pelo menos um decodificador de vídeo de mídia configurado para decodificar pelo menos um sinal de vídeo de pelo menos um Video Stream para a representação de uma cena de ambiente de VR, AR, MR ou Vídeo de 360 graus para um usuário; e pelo menos um decodificador de áudio de mídia configurado para decodificar pelo menos um sinal de áudio de pelo menos um primeiro Audio Stream a representação da cena de áudio para o usuário; uma região de interesse, ROI, processador, codificado para: decidir, com base na viewport atual do usuário e/ou na orientação da cabeça e/ou nos dados de movimento e/ou nos metadados da viewport e/ou nos metadados das mensagens de informações de áudio, se uma mensagem de informação de áudio associada a uma ROI deve ser reproduzida, onde a mensagem de informação de áudio é um earcon; e fazer, na decisão de que a mensagem de informações deve ser reproduzida, a reprodução da mensagem de informação de áudio.[0018] According to the examples, a system for a virtual reality, VR, augmented reality, AR, mixed reality, MR, or 360-degree Video environment configured to: receive at least one Video Stream; and receive at least a first Audio Stream, wherein the system includes: at least one media video decoder configured to decode at least one video signal from at least one Video Stream into the representation of a VR, AR, MR, or 360-degree Video environment scene to a user; and at least one media audio decoder configured to decode at least one audio signal from at least one first Audio Stream into the representation of the audio scene to the user; a region of interest, ROI, processor, encoded to: decide, based on the user's current viewport and/or head orientation and/or motion data and/or viewport metadata and/or audio information message metadata, whether to play an audio information message associated with a ROI, wherein the audio information message is an earcon; and make, upon deciding that the information message should be played, the audio information message is played.
[0019] O sistema pode incluir: um processador de metadados configurado para receber e/ou processar e/ou manipular metadados da mensagem de informação de áudio de modo a causar, na decisão de que a mensagem de informação deve ser reproduzida, a reprodução da mensagem de informação de áudio de acordo com os metadados da mensagem de informação de áudio.[0019] The system may include: a metadata processor configured to receive and/or process and/or manipulate metadata of the audio information message so as to cause, upon deciding that the information message should be played, the playing of the audio information message in accordance with the metadata of the audio information message.
[0020] O processador de ROI pode ser configurado para: receber a viewport atual de um usuário e/ou a posição e/ou orientação da cabeça e/ou dados de movimento e/ou outros dados relacionados ao usuário; e receber metadados da viewport associados a um sinal de vídeo de pelo menos um stream de vídeo, os metadados de viewport definindo pelo menos uma ROI; e Decidir, com base em pelo menos uma das viewport atuais do usuário e/ou dados de orientação e/ou posição da cabeça e/ou movimento e os metadados da viewport e/ou outros critérios, se uma mensagem de informação de áudio associada a uma ROI deve ser reproduzida.[0020] The ROI processor may be configured to: receive a user's current viewport and/or head position and/or orientation and/or motion data and/or other user-related data; and receive viewport metadata associated with a video signal from at least one video stream, the viewport metadata defining at least one ROI; and decide, based on at least one of the user's current viewport and/or head position and/or orientation data and/or motion data and the viewport metadata and/or other criteria, whether an audio information message associated with a ROI should be played.
[0021] O sistema pode incluir: um processador de metadados configurado para receber e/ou processar e/ou manipular metadados da mensagem de informação de áudio que descrevem a mensagem de informação de áudio e/ou metadados de áudio que descrevem pelo menos um sinal de áudio codificado em pelo menos um metadado de Audio Stream e/ou viewport, de modo a causar a reprodução da mensagem de informação de áudio de acordo com os metadados da mensagem de informação de áudio e/ou metadados de áudio que descrevem pelo menos um sinal de áudio codificado em pelo menos um metadado de Audio Stream e/ou viewport.[0021] The system may include: a metadata processor configured to receive and/or process and/or manipulate audio information message metadata describing the audio information message and/or audio metadata describing at least one audio signal encoded in at least one Audio Stream and/or viewport metadata, so as to cause playback of the audio information message in accordance with the audio information message metadata and/or audio metadata describing at least one audio signal encoded in at least one Audio Stream and/or viewport metadata.
[0022] O processador de ROI pode ser configurado para: caso pelo menos uma ROI esteja fora da viewport atual do usuário e/ou da posição e/ou orientação da cabeça e/ou dados de movimento, causar a reprodução de uma mensagem de informação de áudio associada a uma ROI, além da reprodução de pelo menos um sinal de áudio; e caso pelo menos uma ROI esteja dentro da viewport atual do usuário e/ou na posição e/ou dados de orientação da cabeça e/ou de movimento, proíba e/ou desative a reprodução da mensagem de informação de áudio associada a uma ROI.[0022] The ROI processor may be configured to: if at least one ROI is outside of the user's current viewport and/or head position and/or orientation and/or motion data, cause the playback of an audio information message associated with a ROI in addition to the playback of at least one audio signal; and if at least one ROI is within the user's current viewport and/or head position and/or orientation and/or motion data, prohibit and/or disable the playback of the audio information message associated with a ROI.
[0023] O sistema pode ser configurado para: receber pelo menos uma Audio Stream adicional no qual pelo menos uma mensagem de informação de áudio esteja quantificada, onde o sistema ainda inclui: pelo menos um muxer ou multiplexador para mesclar, sob o controle do processador de metadados e/ou da ROI e/ou outro processador, pacotes de pelo menos um Audio Stream adicional com pacotes do pelo menos um primeiro Audio Stream em um Stream, com base na decisão fornecida pelo processador ROI de que pelo menos uma mensagem de informação de áudio deve ser reproduzida, para causar a reprodução da mensagem de informação de áudio além da cena de áudio.[0023] The system may be configured to: receive at least one additional Audio Stream in which at least one audio information message is quantized, wherein the system further includes: at least one muxer or multiplexer for merging, under the control of the metadata processor and/or the ROI and/or another processor, packets from the at least one additional Audio Stream with packets from the at least one first Audio Stream into one Stream, based on the decision provided by the ROI processor that the at least one audio information message should be played, to cause the audio information message to be played beyond the audio scene.
[0024] O sistema pode ser configurado para: receber pelo menos os metadados de um Audio descrevendo pelo menos um sinal de áudio codificado em pelo menos um Audio Stream; receber metadados da mensagem de informações de áudio com pelo menos uma mensagem de informação de áudio de um Audio Stream; na decisão de que a mensagem de informações deve ser reproduzida, modifique os metadados da mensagem de informação de áudio para permitir a reprodução da mensagem de informação de áudio, além da reprodução de pelo menos um sinal de áudio.[0024] The system may be configured to: receive at least one Audio Stream metadata describing at least one audio signal encoded in at least one Audio Stream; receive audio information message metadata with at least one audio information message from an Audio Stream; upon deciding that the information message should be played, modify the audio information message metadata to allow for the playback of the audio information message in addition to the playback of the at least one audio signal.
[0025] O sistema pode ser configurado para: receber pelo menos os metadados de um Audio descrevendo pelo menos um sinal de áudio codificado em um Audio Stream; receber metadados da mensagem de informações de áudio associados a uma mensagem de informação de áudio de um Audio Stream; na decisão de que a mensagem de informação de áudio deve ser reproduzida, modificar os metadados da mensagem de informação de áudio para permitir a reprodução da mensagem de informação de áudio, além da reprodução de pelo menos um sinal de áudio. modificar os metadados de áudio que descrevem pelo menos um sinal de áudio para permitir a mesclagem de um primeiro Audio stream e um Audio Stream adicional.[0025] The system may be configured to: receive at least one Audio metadata describing at least one audio signal encoded in an Audio Stream; receive audio information message metadata associated with an audio information message from an Audio Stream; upon deciding that the audio information message should be played, modify the audio information message metadata to enable playback of the audio information message in addition to playback of the at least one audio signal; modify the audio metadata describing the at least one audio signal to enable merging of a first Audio stream and an additional Audio Stream.
[0026] O sistema pode ser configurado para: receber pelo menos os metadados de um Audio descrevendo um sinal de áudio codificado em um Audio Stream; receber metadados da mensagem de informações de áudio com pelo menos uma mensagem de informação de áudio de um Audio Stream; na decisão de que a mensagem de informação de áudio deve ser reproduzida, que fornece os metadados da mensagem de informação de áudio a um gerador de áudio sintético para criar um Audio Stream sintético, de modo a associar os metadados da mensagem de informação de áudio ao Audio Stream sintético, e fornecer os metadados do Audio Stream sintético e da mensagem de informação de áudio a um multiplexador ou muxer para permitir a mesclagem de pelo menos um Audio Stream e o Audio Stream sintético.[0026] The system may be configured to: receive at least one Audio metadata describing an audio signal encoded in an Audio Stream; receive metadata from the Audio Information Message with at least one Audio Information Message from an Audio Stream; upon deciding that the Audio Information Message should be played, providing the metadata from the Audio Information Message to a Synthetic Audio Generator to create a Synthetic Audio Stream so as to associate the metadata from the Audio Information Message with the Synthetic Audio Stream; and providing the metadata from the Synthetic Audio Stream and the Audio Information Message to a multiplexer or muxer to enable merging of the at least one Audio Stream and the Synthetic Audio Stream.
[0027] O sistema pode ser configurado para: obter os metadados da mensagem de informação de áudio de pelo menos um Audio Stream adicional no qual a mensagem de informações de áudio está codificada.[0027] The system may be configured to: obtain the audio information message metadata from at least one additional Audio Stream in which the audio information message is encoded.
[0028] O sistema pode incluir: um gerador de metadados da mensagem de informação de áudio configurado para gerar metadados da mensagem de informação de áudio com base na decisão que a mensagem de informação de áudio associada a uma ROI deve ser reproduzida.[0028] The system may include: an audio information message metadata generator configured to generate audio information message metadata based on the decision that the audio information message associated with a ROI should be played.
[0029] O sistema pode ser configurado para: armazenar, para uso futuro, os metadados da mensagem de informação de áudio e/ou Stream da mensagem de informação de áudio.[0029] The system may be configured to: store, for future use, the audio information message metadata and/or the audio information message Stream.
[0030] O sistema pode incluir: um gerado de áudio sintético configurado para sintetizar uma mensagem de informação de áudio com base nos metadados da mensagem de informação de áudio associada a uma ROI.[0030] The system may include: a synthetic audio generator configured to synthesize an audio information message based on the audio information message metadata associated with a ROI.
[0031] O processador de metadados pode ser configurado para controlar um muxer ou multiplexador para mesclar, com base nos metadados de áudio e/ou metadados da mensagem de informação de áudio, pacotes da mensagem de informação de áudio, Stream com pacotes de pelo menos um primeiro Audio Stream em um Stream para obter uma adição da mensagem de informação de áudio a um Audio Stream.[0031] The metadata processor may be configured to control a muxer or multiplexer to merge, based on the audio metadata and/or audio information message metadata, packets of the audio information message Stream with packets of at least a first Audio Stream in a Stream to obtain an addition of the audio information message to an Audio Stream.
[0032] Os metadados da mensagem de informação de áudio podem ser codificados em uma estrutura de configuração e/ou em uma estrutura de dados incluindo pelo menos um dos seguintes: uma etiqueta de identificação, um número inteiro que identifica a reprodução dos metadados da mensagem de informação de áudio, um tipo de mensagem, um status, uma indicação de dependência/não dependência da cena, dados posicionais, dados de ganho, uma indicação da presença de rótulo de texto associada, número de idiomas disponíveis, idioma da mensagem de informação de áudio, extensão do texto de dados, Texto de dados do rótulo de texto associado, e/ou descrição da mensagem de informação de áudio.[0032] The audio information message metadata may be encoded in a configuration structure and/or in a data structure including at least one of the following: an identification tag, an integer that identifies the playback of the audio information message metadata, a message type, a status, an indication of scene dependency/non-dependency, positional data, gain data, an indication of the presence of an associated text label, number of available languages, language of the audio information message, data text length, data text of the associated text label, and/or description of the audio information message.
[0033] O processador de metadados e/ou o processador de ROI pode ser configurado para executar pelo menos uma das seguintes operações: extrair os metadados da mensagem de informações de dados de um Stream; Modificar os metadados da mensagem de informação de áudio para ativar a mensagem de informação de áudio e/ou configurar/alterar sua posição; incorporar metadados novamente em um Stream; alimentar o Stream para um decodificador de mídia adicional; extrair metadados de áudio de pelo menos um primeiro Audio Stream; extrair metadados de mensagens de informações de áudio de um Stream adicional; Modificar os metadados da mensagem de informação de áudio para ativar a mensagem de informação de áudio e/ou configurar/alterar sua posição; Modificar metadados de áudio de pelo menos um primeiro Audio Stream levando em consideração a existência da mensagem de informação de áudio e permitir a mesclar; alimentar um Stream para o multiplexador ou muxer para multiplexá-los com base nas informações recebidas do processador de ROI.[0033] The metadata processor and/or the ROI processor may be configured to perform at least one of the following operations: extracting the metadata of the data information message from a Stream; modifying the metadata of the audio information message to activate the audio information message and/or set/change its position; embedding metadata back into a Stream; feeding the Stream to an additional media decoder; extracting audio metadata from at least a first Audio Stream; extracting metadata from audio information messages from an additional Stream; modifying the metadata of the audio information message to activate the audio information message and/or set/change its position; modifying audio metadata from at least a first Audio Stream taking into account the existence of the audio information message and enabling merging; feeding a Stream to the multiplexer or muxer to multiplex it based on the information received from the ROI processor.
[0034] O processador de ROI pode ser configurado para realizar uma busca local por um Audio Stream adicional no qual a mensagem de informação de áudio está codificada e/ou metadados da mensagem de informação de áudio e, no caso de uma não recuperação, solicita o Audio Stream adicional e/ou os metadados da mensagem de informação de áudio para uma entidade remota.[0034] The ROI processor may be configured to perform a local search for an additional Audio Stream in which the audio information message is encoded and/or audio information message metadata and, in the event of a non-retrieval, request the additional Audio Stream and/or audio information message metadata from a remote entity.
[0035] O processador de ROI pode ser configurado para realizar uma busca local por um Audio Stream adicional e/ou metadados da mensagem de informação de áudio e, no caso de uma não recuperação, faz com que um gerador de áudio sintético gere o Stream da mensagem de informação de áudio e/ou os metadados da mensagem de informação de áudio.[0035] The ROI processor may be configured to perform a local search for an additional Audio Stream and/or audio information message metadata and, in the event of a non-retrieval, cause a synthetic audio generator to generate the Audio Information Message Stream and/or the Audio Information Message metadata.
[0036] O sistema pode ser configurado para: receber pelo menos um Audio Stream adicional no qual pelo menos uma mensagem de informação de áudio associada a uma ROI esteja incluída; e decodificar pelo menos um Audio Stream adicional se o processador de ROI decidir que uma mensagem de informação de áudio associada a pelo menos uma ROI deve ser reproduzida.[0036] The system may be configured to: receive at least one additional Audio Stream in which at least one audio information message associated with a ROI is included; and decode at least one additional Audio Stream if the ROI processor decides that an audio information message associated with at least one ROI should be played.
[0037] O sistema pode incluir: pelo menos um primeiro decodificador de áudio para decodificar pelo menos um sinal de áudio de pelo menos um primeiro Audio Stream; pelo menos um decodificador de áudio para decodificar pelo menos uma mensagem de informação de áudio de um Audio Stream adicional; e pelo menos um misturador e/ou renderizador para misturar e/ou sobrepor a mensagem de informação de áudio um Audio Stream adicional com o pelo menos um sinal de áudio de um primeiro Audio Stream.[0037] The system may include: at least a first audio decoder for decoding at least one audio signal from at least one first Audio Stream; at least one audio decoder for decoding at least one audio information message from an additional Audio Stream; and at least one mixer and/or renderer for mixing and/or overlaying the audio information message from an additional Audio Stream with the at least one audio signal from a first Audio Stream.
[0038] O sistema pode ser configurado para acompanhar as métricas associadas aos dados históricos e/ou estatísticos associados à reprodução da mensagem de informação de áudio, de modo a desativar a reprodução da mensagem de informação de áudio se as métricas estiverem acima de um limite predeterminado.[0038] The system may be configured to track metrics associated with historical and/or statistical data associated with playback of the audio information message, so as to disable playback of the audio information message if the metrics are above a predetermined threshold.
[0039] A decisão do processador de ROI pode ser baseada em uma previsão da viewport atual do usuário e/ou posição e/ou orientação da cabeça e/ou dados de movimento em relação à posição da ROI. O sistema pode ser configurado para receber pelo menos um primeiro Audio Stream e, na decisão de que a mensagem de informações deve ser reproduzida, para solicitar um Stream de informações de mensagens de áudio de uma entidade remota.[0039] The ROI processor's decision may be based on a prediction of the user's current viewport and/or head position and/or orientation and/or motion data relative to the ROI position. The system may be configured to receive at least a first Audio Stream and, upon deciding that the information message should be played, to request an Audio Message Information Stream from a remote entity.
[0040] O sistema pode ser configurado para estabelecer se é para reproduzir duas mensagens de informações de áudio ao mesmo tempo ou se uma mensagem de informação de áudio com prioridade mais alta deve ser reproduzida com prioridade em relação a uma mensagem de informação de áudio com prioridade mais baixa.[0040] The system may be configured to determine whether to play two audio information messages at the same time or whether a higher priority audio information message should be played with priority over a lower priority audio information message.
[0041] O sistema pode ser configurado para identificar uma mensagem de informação de áudio entre uma pluralidade de mensagens de informações de áudio codificadas em um Audio Stream adicional com base no endereço e/ou posição das mensagens de informações de áudio em Audio Stream.[0041] The system may be configured to identify an audio information message among a plurality of audio information messages encoded in an additional Audio Stream based on the address and/or position of the audio information messages in the Audio Stream.
[0042] Os Audio Streams podem ser formatados no formato MPEG- H 3D Audio Stream.[0042] Audio Streams can be formatted in MPEG-H 3D Audio Stream format.
[0043] O sistema pode ser configurado para: receber dados sobre a disponibilidade de uma pluralidade de adaptation sets, os adaptation sets disponíveis incluindo pelo menos um adaptation set de cena de áudio e um adaptation set de mensagem de áudio para um Audio Stream contendo uma mensagem de informação de áudio; Criar, com base na decisão do processador de ROI, dados de seleção identificando quais dos adaptation sets devem ser recuperados, os adaptation sets disponíveis, incluindo pelo menos um adaptation set de cenas de áudio e / ou pelo menos um adaptation set de mensagens de áudio; e solicitar e/recuperar os dados para os adaptation sets identificados pelos dados de seleção, Onde cada adaptation set agrupa codificações diferentes para diferentes taxas de bits.[0043] The system may be configured to: receive data about the availability of a plurality of adaptation sets, the available adaptation sets including at least one audio scene adaptation set and one audio message adaptation set for an Audio Stream containing an audio information message; create, based on the decision of the ROI processor, selection data identifying which of the adaptation sets should be retrieved, the available adaptation sets including at least one audio scene adaptation set and/or at least one audio message adaptation set; and request and/or retrieve the data for the adaptation sets identified by the selection data, where each adaptation set groups different encodings for different bit rates.
[0044] O sistema pode ser tal que pelo menos um se seus elementos incluírem um Dynamic Adaptive Streaming sobre HTTP, DASH, cliente e/ou está configurado para recuperar os dados para cada adaptation set usando a ISO Base Media File Format, ISO BMFF, MPEG-2 Transport Stream, MPEG-2 TS.[0044] The system may be such that at least one if its elements include a Dynamic Adaptive Streaming over HTTP, DASH, client and/or is configured to retrieve the data for each adaptation set using the ISO Base Media File Format, ISO BMFF, MPEG-2 Transport Stream, MPEG-2 TS.
[0045] O processador de ROI pode ser configurado para verificar correspondências entre a ROI e a viewport atual e/ou posição e/ou orientação da cabeça e/ou dados de movimento, a fim de verificar se a ROI está representada na viewport atual e, caso, a ROI estiver fora da viewport atual e/ou posição e/ou orientação e/ou dados de movimento da cabeça, para sinalizar sonoramente a presença da ROI para o usuário.[0045] The ROI processor may be configured to check for correspondences between the ROI and the current viewport and/or head position and/or orientation and/or motion data, to verify that the ROI is represented in the current viewport, and if the ROI is outside of the current viewport and/or head position and/or orientation and/or motion data, to audibly signal the presence of the ROI to the user.
[0046] O processador de ROI pode ser configurado para verificar correspondências entre a ROI e a viewport atual e/ou posição e / ou orientação e/ou dados de movimento da cabeça, a fim de verificar se a ROI está representada na viewport atual e, caso, a ROI estiver dentro da viewport atual e/ou da posição e/ou orientação e/ou dados de movimento da cabeça, para evitar sinalizar sonoramente a presença da ROI para o usuário.[0046] The ROI processor may be configured to check for correspondences between the ROI and the current viewport and/or position and/or orientation and/or head motion data in order to verify that the ROI is represented in the current viewport and, if the ROI is within the current viewport and/or position and/or orientation and/or head motion data, to avoid audibly signaling the presence of the ROI to the user.
[0047] O sistema pode ser configurado para receber, de uma entidade remota, pelo menos um video stream associado à cena do ambiente de vídeo e pelo menos a um audio stream associado à cena de áudio, onde a cena de áudio está associada a cena do ambiente de vídeo.[0047] The system may be configured to receive, from a remote entity, at least one video stream associated with the video environment scene and at least one audio stream associated with the audio scene, where the audio scene is associated with the video environment scene.
[0048] O processador de ROI pode ser configurado para selecionar, entre uma pluralidade de mensagens de informações de áudio a serem reproduzidas, a reprodução de uma primeira mensagem de informação de áudio antes de uma segunda mensagem de informação de áudio.[0048] The ROI processor may be configured to select, among a plurality of audio information messages to be played, the playing of a first audio information message before a second audio information message.
[0049] O sistema pode incluir uma memória cache para armazenar uma mensagem de informação de áudio recebida de uma entidade remota ou gerada sinteticamente, para reutilizar a mensagem de informação de áudio em diferentes instâncias de tempo.[0049] The system may include a cache memory for storing an audio information message received from a remote entity or synthetically generated, to reuse the audio information message at different time instances.
[0050] A mensagem de informação de áudio pode ter um earcon.[0050] The audio information message may have an earcon.
[0051] Pelo menos um video stream e/ou pelo menos um primeiro audio stream podem fazer parte da cena atual do ambiente de vídeo e/ou cena de áudio e vídeo, respectivamente, e independentemente da viewport atual do usuário e/ou da orientação e/ou dados de movimento da cabeça na cena atual do ambiente de vídeo e/ou cena de áudio e vídeo.[0051] The at least one video stream and/or at least one first audio stream may be part of the current video environment scene and/or audio video scene, respectively, and independently of the user's current viewport and/or the orientation and/or head movement data in the current video environment scene and/or audio video scene.
[0052] O sistema pode ser configurado para solicitar pelo menos um primeiro audio stream e/ou pelo menos um video stream a uma entidade remota em associação ao audio stream e/ou stream do ambiente de vídeo, respectivamente, e para reproduzir uma informação de áudio mensagem com base na viewport atual do usuário e/ou na orientação da cabeça e/ou nos dados de movimento.[0052] The system may be configured to request at least a first audio stream and/or at least one video stream from a remote entity in association with the audio stream and/or video environment stream, respectively, and to play an audio information message based on the user's current viewport and/or head orientation and/or motion data.
[0053] O sistema pode ser configurado para solicitar pelo menos um primeiro audio stream e/ou pelo menos um vídeo stream a uma entidade remota em associação ao audio stream e/ou stream do ambiente de vídeo, respectivamente, e para reproduzir uma mensagem de informação de áudio com base na viewport atual do usuário e/ou na orientação da cabeça e/ou nos dados de movimento.[0053] The system may be configured to request at least a first audio stream and/or at least one video stream from a remote entity in association with the audio stream and/or video environment stream, respectively, and to play an audio information message based on the user's current viewport and/or head orientation and/or motion data.
[0054] O sistema pode ser configurado para solicitar pelo menos um primeiro audio stream e/ou pelo menos um video stream a uma entidade remota em associação ao audio stream e/ou stream do ambiente de vídeo, respectivamente, e para reproduzir uma mensagem de informação de áudio com base na viewport atual do usuário e/ou na orientação da cabeça e/ou nos dados de movimento.[0054] The system may be configured to request at least a first audio stream and/or at least one video stream from a remote entity in association with the audio stream and/or video environment stream, respectively, and to play an audio information message based on the user's current viewport and/or head orientation and/or motion data.
[0055] O sistema pode ser configurado para verificar pelo menos um dos critérios adicionais para a reprodução da mensagem de informação de áudio, incluindo ainda a seleção de um usuário e/ou a configuração de um usuário.[0055] The system may be configured to check at least one of the additional criteria for playing the audio information message, further including selecting a user and/or configuring a user.
[0056] O sistema pode ser configurado para verificar pelo menos um dos critérios adicionais para a reprodução da mensagem de informação de áudio, incluindo ainda o estado do sistema.[0056] The system may be configured to check at least one of the additional criteria for playing the audio information message, further including the state of the system.
[0057] O sistema pode ser configurado para verificar pelo menos um dos critérios adicionais para a reprodução da mensagem de informação de áudio, incluindo ainda o número de reproduções da mensagem de informação de áudio que já foram realizadas.[0057] The system may be configured to check at least one of the additional criteria for playing the audio information message, including the number of plays of the audio information message that have already been performed.
[0058] O sistema pode ser configurado para verificar pelo menos um dos critérios adicionais para a reprodução da mensagem de informação de áudio, incluindo ainda um marcador em datastream (fluxo de dados) obtido de uma entidade remota.[0058] The system may be configured to check at least one of the additional criteria for playing the audio information message, further including a marker in a datastream obtained from a remote entity.
[0059] De acordo com um aspecto, é fornecido um sistema que inclui um cliente configurado como o sistema de um dos exemplos acima e/ou abaixo, e uma entidade remota configurada como um servidor para fornecer pelo menos um video stream e pelo menos um audio stream.[0059] According to one aspect, a system is provided that includes a client configured as the system of one of the examples above and/or below, and a remote entity configured as a server to provide at least one video stream and at least one audio stream.
[0060] A entidade remota pode ser configurada para procurar, em um banco de dados, intranet, internet e/ou rede geográfica, pelo menos um Audio Stream adicional e/ou metadados de mensagem de informação de áudio, em caso de recuperação, entregar pelo menos um Audio Stream adicional e/ou os metadados da mensagem de informação de áudio.[0060] The remote entity may be configured to search, in a database, intranet, internet and/or geographic network, for at least one additional Audio Stream and/or audio information message metadata, and upon retrieval, deliver at least one additional Audio Stream and/or the audio information message metadata.
[0061] A entidade remota pode ser configurada para sintetizar pelo menos um Audio Stream adicional e/ou gerar os metadados da mensagem de informação de áudio.[0061] The remote entity may be configured to synthesize at least one additional Audio Stream and/or generate the audio information message metadata.
[0062] De acordo com os exemplos, é fornecido um sistema para um ambiente de realidade virtual, VR, realidade aumentada, AR, realidade mista, MR ou Vídeo de 360 graus incluindo: decodificar pelo menos um sinal de vídeo de pelo menos uma cena de vídeo e áudio a ser reproduzida para um usuário; decodificar pelo menos um sinal de áudio de pelo menos uma cena de vídeo e áudio a ser reproduzida; decidir, com base na viewport atual do usuário e/ou na orientação e/ou nos dados de movimento da cabeça e/ou nos metadados se uma mensagem de informação de áudio associada a uma ROI deve ser reproduzida, onde a mensagem de informação de áudio é independente de pelo menos um sinal de vídeo e de pelo menos um sinal de áudio; e fazer, na decisão de se a mensagem de informação deve ser reproduzida, a reprodução da mensagem de informação de áudio.[0062] According to the examples, a system is provided for a virtual reality, VR, augmented reality, AR, mixed reality, MR, or 360-degree video environment including: decoding at least one video signal of at least one video and audio scene to be played to a user; decoding at least one audio signal of at least one video and audio scene to be played; deciding, based on the user's current viewport and/or orientation and/or head motion data and/or metadata whether an audio information message associated with a ROI should be played, where the audio information message is independent of the at least one video signal and the at least one audio signal; and making, in the decision of whether the information message should be played, the playback of the audio information message.
[0063] De acordo com os exemplos, é fornecido um sistema para um ambiente de realidade virtual, VR, realidade aumentada, AR, realidade mista, MR ou Vídeo de 360 graus incluindo: decodificar pelo menos um sinal de vídeo de pelo menos um Video Stream para a representação de uma cena de ambiente de VR, AR, MR ou Vídeo de 360 graus para um usuário; decodificar pelo menos um sinal de áudio de pelo menos um primeiro Audio Stream a representação de uma cena de áudio para o usuário; decidir, com base na viewport atual do usuário e/ou na orientação e/ou nos dados de movimento da cabeça e/ou nos metadados da viewport e/ou nos metadados das mensagens de informação de áudio, se uma mensagem de informação de áudio associada a uma ROI deve ser reproduzida, onde a mensagem de informação de áudio é um earcon; e fazer, na decisão de se a mensagem de informação deve ser reproduzida, a reprodução da mensagem de informação de áudio.[0063] According to the examples, a system is provided for a virtual reality, VR, augmented reality, AR, mixed reality, MR, or 360-degree Video environment including: decoding at least one video signal from at least one Video Stream into a representation of a VR, AR, MR, or 360-degree Video environment scene to a user; decoding at least one audio signal from at least a first Audio Stream into a representation of an audio scene to the user; deciding, based on the user's current viewport and/or orientation and/or head movement data and/or viewport metadata and/or audio information message metadata, whether an audio information message associated with a ROI should be played, where the audio information message is an earcon; and making, upon deciding whether the information message should be played, the playback of the audio information message.
[0064] Os métodos acima e/ou abaixo podem incluir: receber e/ou processar e/ou manipular metadados de modo a fazer, na decisão de se a mensagem de informação deve ser reproduzida, a reprodução da mensagem de informação de áudio de acordo com os metadados, de modo que a mensagem de informação de Áudio faça parte da cena de áudio.[0064] The above and/or below methods may include: receiving and/or processing and/or manipulating metadata so as to, in deciding whether the information message should be played, play the audio information message in accordance with the metadata, such that the audio information message is part of the audio scene.
[0065] Os métodos acima e/ou abaixo podem incluir: reproduzir a cena de áudio e vídeo; e Decidir ainda reproduzir a mensagem de informação de áudio com base na viewport atual do usuário e/ou dados de orientação e/ou movimento da cabeça e/ou metadados.[0065] The above and/or below methods may include: playing the audio and video scene; and further deciding to play the audio information message based on the user's current viewport and/or orientation and/or head movement data and/or metadata.
[0066] Os métodos acima e/ou abaixo podem incluir: reproduzir a cena de áudio e vídeo; e caso pelo menos uma ROI esteja fora da viewport atual do usuário e/ou da posição e/ou orientação e/ou dados de movimento da cabeça, causar a reprodução de uma mensagem de informações de áudio associada a uma ROI, além da reprodução de pelo menos um sinal de áudio; e caso pelo menos uma ROI esteja dentro da viewport atual do usuário e/ou na posição e/ou dados de orientação da cabeça e/ou de movimento, proíba e/ou desative a reprodução da mensagem de informação de áudio associada a uma ROI.[0066] The above and/or below methods may include: playing the audio and video scene; and if at least one ROI is outside of the user's current viewport and/or head position and/or orientation and/or motion data, causing the playback of an audio information message associated with a ROI in addition to the playback of at least one audio signal; and if at least one ROI is within the user's current viewport and/or head position and/or orientation and/or motion data, prohibiting and/or disabling the playback of the audio information message associated with a ROI.
[0067] De acordo com os exemplos, é fornecido um sistema para um ambiente de realidade virtual, VR, realidade aumentada, AR, realidade mista, MR ou Vídeo de 360 graus configurado para:[0067] In accordance with the examples, a system is provided for a virtual reality, VR, augmented reality, AR, mixed reality, MR, or 360-degree video environment configured to:
[0068] receber pelo menos um Video Stream; e receber pelo menos um primeiro Audio Stream, onde o sistema inclui: pelo menos um decodificador de vídeo de mídia configurado para decodificar pelo menos um sinal de vídeo de pelo menos um Video Stream para a representação de uma cena de ambiente de VR, AR, MR ou Vídeo de 360 graus para um usuário; e pelo menos um decodificador de áudio de mídia configurado para decodificar pelo menos um sinal de áudio de pelo menos um primeiro Audio Stream a representação da cena de áudio para o usuário; uma região de interesse, ROI, processador, codificado para: decidir, com base na viewport atual do usuário e/ou na orientação e/ou nos dados de movimento da cabeça e/ou nos metadados, se uma mensagem de informação de áudio associada a uma ROI deve ser reproduzida, e fazer, na decisão de que a mensagem de informações deve ser reproduzida, a reprodução da mensagem de informação de áudio.[0068] receiving at least one Video Stream; and receiving at least one first Audio Stream, wherein the system includes: at least one media video decoder configured to decode at least one video signal from at least one Video Stream into the representation of a VR, AR, MR, or 360-degree Video environment scene to a user; and at least one media audio decoder configured to decode at least one audio signal from at least one first Audio Stream into the representation of the audio scene to the user; a region of interest, ROI, processor, encoded to: decide, based on the user's current viewport and/or orientation and/or head motion data and/or metadata, whether an audio information message associated with a ROI should be played, and make, upon deciding that the information message should be played, the playback of the audio information message.
[0069] Nos exemplos, é fornecido um sistema para realidade virtual, VR, realidade aumentada, AR, realidade mista, MR ou Vídeo de 360 graus configurado para: receber pelo menos um Video Stream; e receber pelo menos um primeiro Audio Stream, onde o sistema inclui: pelo menos um decodificador de vídeo de mídia configurado para decodificar pelo menos um sinal de vídeo de pelo menos um Video Stream para a representação de uma cena de ambiente de VR, AR, MR ou Vídeo de 360 graus para um usuário; e pelo menos um decodificador de áudio de mídia configurado para decodificar pelo menos um sinal de áudio de um primeiro Audio Stream para a representação da cena de áudio e vídeo para o usuário; uma região de interesse, ROI, processador, configurado para decidir, com base na viewport atual do usuário e/ou na posição e/ou orientação e/ou dados de movimento da cabeça e/ou metadados e/ou outros critérios, se uma mensagem de informação de áudio associada a pelo menos uma ROI deve ser reproduzida; e um processador de metadados configurado para receber e/ou processar e/ou manipular metadados de modo a fazer, na decisão de se a mensagem de informação deve ser reproduzida, a reprodução da mensagem de informação de áudio de acordo com os metadados, de modo que a mensagem de informação de Áudio faça parte da cena de áudio.[0069] In the examples, a system for virtual reality, VR, augmented reality, AR, mixed reality, MR, or 360-degree Video is provided configured to: receive at least one Video Stream; and receive at least a first Audio Stream, wherein the system includes: at least one media video decoder configured to decode at least one video signal from at least one Video Stream into representing a VR, AR, MR, or 360-degree Video environment scene to a user; and at least one media audio decoder configured to decode at least one audio signal from a first Audio Stream into representing the audio and video scene to the user; a region of interest, ROI, processor, configured to decide, based on the user's current viewport and/or head position and/or orientation and/or motion data and/or metadata and/or other criteria, whether an audio information message associated with the at least one ROI should be played; and a metadata processor configured to receive and/or process and/or manipulate metadata so as to, upon deciding whether the information message should be played, play the audio information message in accordance with the metadata, such that the audio information message is part of the audio scene.
[0070] De acordo com um aspecto, é fornecida uma unidade de armazenamento não transitável incluindo instruções que, quando executadas por um processador, fazem com que o processador execute um método como acima e/ou abaixo.[0070] According to one aspect, a non-transitable storage unit is provided including instructions that, when executed by a processor, cause the processor to perform a method as above and/or below.
[0071] Fig. 1-5, 5a e 6 mostram exemplos de implementações;[0071] Fig. 1-5, 5a and 6 show examples of implementations;
[0072] Fig. 7 mostra um método de acordo com um exemplo;[0072] Fig. 7 shows a method according to an example;
[0073] Fig. 8 mostra um exemplo de uma implementação.[0073] Fig. 8 shows an example of an implementation.
[0074] Fig.1 mostra um exemplo de um sistema 100 para um ambiente de realidade virtual, VR, realidade aumentada, AR, realidade mista, MR ou Vídeo de 360 graus. O sistema 100 pode ser associado, por exemplo, a um dispositivo de consumo de conteúdo (como visor montado na cabeça ou semelhante), que reproduz dados visuais em um monitor esférico ou hemisférico intimamente associado à cabeça do usuário.[0074] Fig. 1 shows an example of a system 100 for a virtual reality, VR, augmented reality, AR, mixed reality, MR or 360-degree video environment. The system 100 may be associated, for example, with a content consumption device (such as a head-mounted display or the like), which reproduces visual data on a spherical or hemispherical display closely associated with the user's head.
[0075] O sistema 100 pode incluir pelo menos um decodificador de vídeo de mídia 102 e pelo menos um decodificador de áudio de mídia 112. O sistema 100 pode receber pelo menos um Video Stream 106 no qual um sinal de vídeo é codificado para a representação de uma cena do ambiente de vídeo VR, AR, MR ou 360 graus 118a para um usuário. O sistema 100 pode receber pelo menos um Audio Stream 116 no qual um sinal de vídeo é codificado para a representação de uma cena do ambiente de áudio 118b para um usuário.[0075] The system 100 may include at least one media video decoder 102 and at least one media audio decoder 112. The system 100 may receive at least one Video Stream 106 in which a video signal is encoded for representing a scene of the VR, AR, MR, or 360 degree video environment 118a to a user. The system 100 may receive at least one Audio Stream 116 in which a video signal is encoded for representing a scene of the audio environment 118b to a user.
[0076] O sistema 100 também pode incluir uma região de interesse, ROI, processador 120. O processador 120 de ROI pode processar dados associados a uma ROI. Em termos gerais, a presença da ROI pode ser sinalizada nos metadados da viewport 131. Os metadados da viewport 131 pode ser codificada no Video Stream 106 (em outros exemplos, os metadados da viewport 131 podem ser codificados em outros Streams). Os metadados da viewport 131 podem incluir, por exemplo, informações posicionais (como informações de coordenadas) associadas a ROI. Por exemplo, a ROI pode, nos exemplos, ser entendida como um retângulo (identificado por coordenadas como a posição de um dos quatro vértices dos retângulos no vídeo esférico e o comprimento dos lados do retângulo). A ROI normalmente é projetada no vídeo esférico. A ROI normalmente é associada a um elemento visível que se acredita (de acordo com uma configuração específica) ser do interesse do usuário. Por exemplo, a ROI pode ser associado a uma área retangular exibida pelo dispositivo de consumo de conteúdo (ou de alguma forma visível ao usuário).[0076] The system 100 may also include a region of interest, ROI, processor 120. The ROI processor 120 may process data associated with a ROI. In general terms, the presence of the ROI may be signaled in the metadata of the viewport 131. The metadata of the viewport 131 may be encoded in the Video Stream 106 (in other examples, the metadata of the viewport 131 may be encoded in other Streams). The metadata of the viewport 131 may include, for example, positional information (such as coordinate information) associated with the ROI. For example, the ROI may, in the examples, be understood as a rectangle (identified by coordinates such as the position of one of the four vertices of the rectangles in the spherical video and the length of the sides of the rectangle). The ROI is typically projected onto the spherical video. The ROI is typically associated with a visible element that is believed (according to a particular configuration) to be of interest to the user. For example, the ROI can be associated with a rectangular area displayed by the content consumption device (or otherwise visible to the user).
[0077] O processador de ROI 120 pode, entre outras coisas, controlar operações do decodificador de áudio de mídia 112.[0077] The ROI processor 120 may, among other things, control operations of the media audio decoder 112.
[0078] O processador de ROI 120 pode obter dados 122 associados a viewport atual do usuário e/ou posição e/ou orientação e/ou movimento da cabeça (além disso, os dados virtuais associados à posição virtual podem entender, em alguns exemplos, como parte dos dados 122). Esses dados 122 podem ser fornecidos pelo menos parcialmente, por exemplo, pelo dispositivo de consumo de conteúdo ou por unidades de posicionamento/detecção.[0078] The ROI processor 120 may obtain data 122 associated with the user's current viewport and/or head position and/or orientation and/or movement (in addition, virtual data associated with the virtual position may comprise, in some examples, as part of the data 122). Such data 122 may be provided at least in part, for example, by the content consumption device or by positioning/sensing units.
[0079] O processador de ROI 120 pode verificar correspondências entre a ROI e a viewport e/ou posição atual do usuário (real ou virtual) e/ou a orientação e/ou os dados de movimento da cabeça 122 (em exemplos, outros critérios podem ser utilizados). Por exemplo, o processador de ROI pode verificar se a ROI está representada na viewport atual. Caso uma ROI esteja representada apenas parcialmente na viewport (por exemplo, com base nos movimentos da cabeça do usuário), ela poderá determinar, por exemplo, se uma porcentagem mínima da ROI é exibida na tela. Em qualquer caso, o processador de ROI 120 é capaz de reconhecer se a ROI não está representada ou visível para o usuário.[0079] The ROI processor 120 may check for correspondences between the ROI and the viewport and/or the user's current position (real or virtual) and/or the orientation and/or the head movement data 122 (in examples, other criteria may be used). For example, the ROI processor may check whether the ROI is represented in the current viewport. If a ROI is only partially represented in the viewport (e.g., based on the user's head movements), it may determine, for example, whether a minimum percentage of the ROI is displayed on the screen. In any case, the ROI processor 120 is capable of recognizing whether the ROI is not represented or visible to the user.
[0080] Caso a ROI seja considerada fora da viewport atual do usuário e/ou da posição e/ou orientação e/ou dados de movimento da cabeça 122, o processador de ROI 120 pode sinalizar sonoramente a presença da ROI para o usuário. Por exemplo, o processador ROI 120 pode solicitar a reprodução de uma mensagem de informação de áudio (Earcon), além do sinal de áudio decodificado a partir de pelo menos um primeiro Audio Stream 116.[0080] If the ROI is considered to be outside of the user's current viewport and/or the position and/or orientation and/or movement data of head 122, ROI processor 120 may audibly signal the presence of the ROI to the user. For example, ROI processor 120 may request the playback of an audio information message (Earcon) in addition to the decoded audio signal from at least a first Audio Stream 116.
[0081] Caso a ROI seja considerada dentro da viewport atual do usuário e/ou da posição e/ou orientação e/ou dados de movimento da cabeça 122, a processador pode decidir evitar a reprodução da mensagem de informação de áudio.[0081] If the ROI is considered to be within the user's current viewport and/or the position and/or orientation and/or movement data of head 122, the processor may decide to avoid playing the audio information message.
[0082] A mensagem de informação de áudio pode ser codificada em um Audio Stream 140 (Stream de mensagem de informação de áudio), que pode ser o mesmo do Audio Stream 116 ou um Stream diferente. O Audio Stream 140 pode ser gerado pelo sistema 100 ou pode ser obtido de uma entidade externa (por exemplo, servidor). Os metadados de áudio, como os metadados de mensagem de informação de áudio 141, podem ser definidos para descrever propriedades do Stream de informação de áudio 140.[0082] The audio information message may be encoded in an Audio Stream 140, which may be the same as the Audio Stream 116 or a different Stream. The Audio Stream 140 may be generated by the system 100 or may be obtained from an external entity (e.g., server). Audio metadata, such as the Audio Information Message Metadata 141, may be defined to describe properties of the Audio Information Stream 140.
[0083] A mensagem de informação de áudio pode ser sobreposta (ou misturada ou multiplexada ou mesclada ou combinada ou composta) ao sinal codificado no Audio Stream 116 ou pode não ser selecionada, por exemplo, simplesmente com base em uma decisão do processador de ROI 120. O processador de ROI 120 pode basear sua decisão na viewport e/ou posição e/ou orientação e/ou dados de movimento da cabeça 122, metadados (como os metadados da viewport 131 ou outros metadados) e/ou outros critérios (por exemplo, seleções, estado do sistema, número de reproduções de mensagens de informações de áudio que já foram executadas, funções e/ou operações específicas, configurações preferidas do usuário que podem desativar o uso dos Earcons e assim por diante).[0083] The audio information message may be superimposed (or mixed or multiplexed or merged or combined or composited) onto the encoded signal in the Audio Stream 116 or may not be selected, for example, simply based on a decision by the ROI processor 120. The ROI processor 120 may base its decision on viewport and/or position and/or orientation and/or movement data of head 122, metadata (such as viewport metadata 131 or other metadata), and/or other criteria (e.g., selections, system state, number of audio information message playbacks that have already been performed, specific functions and/or operations, preferred user settings that may disable use of the Earcons, and so on).
[0084] O processador de metadados 132 pode ser implementado. O processador de metadados 132 pode ser interposto, por exemplo, entre o processador de ROI 120 (pelo qual ele pode ser controlado) e o decodificador de áudio de mídia 112 (que pode ser controlado a partir do processador de metadados). Nos exemplos, o processador de metadados é uma seção do processador de ROI 120. O processador de metadados 132 pode receber, gerar, processar e/ou manipular os metadados da mensagem de informação de áudio 141. O processador de metadados 132 também pode processar e/ou manipular metadados do Audio Stream 116, por exemplo, para multiplexar o Audio Stream 116 com o Stream da mensagem de informação de áudio 140. Além disso ou alternativa, o processador de metadados 132 pode receber metadados do Audio Stream 116, por exemplo, de um servidor (como uma entidade remota).[0084] Metadata processor 132 may be implemented. Metadata processor 132 may be interposed, for example, between ROI processor 120 (by which it may be controlled) and media audio decoder 112 (which may be controlled from the metadata processor). In the examples, metadata processor is a section of ROI processor 120. Metadata processor 132 may receive, generate, process, and/or manipulate metadata of audio information message 141. Metadata processor 132 may also process and/or manipulate metadata of Audio Stream 116, for example, to multiplex Audio Stream 116 with the Stream of audio information message 140. Additionally or alternatively, metadata processor 132 may receive metadata of Audio Stream 116, for example, from a server (such as a remote entity).
[0085] O processador de metadados 132 pode, portanto, alterar a reprodução da cena de áudio e adaptar a mensagem de informação de áudio a situações e/ou seleções e/ou estados particulares.[0085] The metadata processor 132 can therefore alter the playback of the audio scene and adapt the audio information message to particular situations and/or selections and/or states.
[0086] Algumas das vantagens de algumas implementações são discutidas aqui.[0086] Some of the advantages of some implementations are discussed here.
[0087] As mensagens de informações de áudio podem ser identificadas com precisão, por exemplo, usando os metadados da mensagem de informação de áudio 141.[0087] Audio information messages may be precisely identified, for example, using audio information message metadata 141.
[0088] As mensagens de informações de áudio podem ser facilmente ativadas/desativadas, por exemplo, modificando os metadados (pelo processador de metadados 132). As mensagens de informações de áudio podem ser ativadas/desativadas com base na viewport atual e nas informações da ROI (e também funções ou efeitos especiais a serem alcançados).[0088] Audio information messages can be easily enabled/disabled, for example, by modifying metadata (by metadata processor 132). Audio information messages can be enabled/disabled based on the current viewport and ROI information (and also functions or special effects to be achieved).
[0089] As mensagens de informações de áudio (contendo, por exemplo, status, tipo, informações espaciais e assim por diante) podem ser facilmente sinalizadas e modificadas por equipamentos comuns, como um cliente DASH (Dynamic Adaptive Streaming sobre HTTP), por exemplo.[0089] Audio information messages (containing, for example, status, type, spatial information, and so on) can be easily signaled and modified by common equipment, such as a DASH (Dynamic Adaptive Streaming over HTTP) client, for example.
[0090] O fácil acesso à mensagem de informação de áudio (contendo, por exemplo, status, tipo, informações espaciais e assim por diante) no nível do sistema pode, portanto, habilitar recursos adicionais para uma melhor experiência do usuário. Portanto, o sistema 100 pode ser facilmente customizado e permitir implementações adicionais (por exemplo, aplicações específicas) que podem ser executadas por pessoal independente dos designers do sistema 100.[0090] Easy access to the audio information message (containing, e.g., status, type, spatial information, and so on) at the system level can therefore enable additional features for an improved user experience. Therefore, the system 100 can be easily customized and allow for additional implementations (e.g., specific applications) that can be performed by personnel independent of the designers of the system 100.
[0091] Além disso, a flexibilidade é alcançada no tratamento de vários tipos de mensagens de informações de áudio (por exemplo, som natural, som sintético, som gerado no cliente DASH etc.).[0091] Furthermore, flexibility is achieved in handling various types of audio information messages (e.g., natural sound, synthetic sound, DASH client-generated sound, etc.).
[0092] Outras vantagens (que também serão evidentes nos seguintes exemplos): • Uso de rótulos de texto nos metadados (como base para exibir algo ou gerar o Earcon) • Adaptação da posição do Earcon com base no dispositivo (se for um HMD, quero um local exato, se o alto-falante for a melhor maneira de usar um local diferente - direto para um alto-falante). • Diferentes classes de dispositivos: o Os metadados do Earcon podem ser criados de forma que o Earcon seja sinalizado para estar ativo o Alguns dispositivos saberão apenas como analisar os metadados e reproduzir o Earcon o Alguns dispositivos mais novos que possuem adicionalmente um processador ROI melhor podem decidir desativá-lo caso não seja necessário • Mais informações e uma figura adicional sobre os adaptation sets.[0092] Other advantages (which will also be evident in the following examples): • Use of text labels in the metadata (as a basis for displaying something or generating the Earcon) • Adaptation of the Earcon position based on the device (if it is an HMD I want an exact location, if the speaker the best way is to use a different location - straight to a speaker). • Different classes of devices: o The Earcon metadata can be created in such a way that the Earcon is signaled to be active o Some devices will only know how to parse the metadata and play the Earcon o Some newer devices that additionally have a better ROI processor may decide to disable it if it is not needed • More information and an additional figure about adaptation sets.
[0093] Portanto, em um ambiente de VR / AR, o usuário geralmente pode visualizar o conteúdo completo em 360 graus usando, por exemplo, um visor montado na cabeça (HMD) e ouvi-lo através de fones de ouvido. O usuário geralmente pode se mover no espaço VR/AR, ou pelo menos alterar a direção da visualização - a chamada "viewport" (janela de visualização) para vídeo. Comparados ao consumo de conteúdo clássico, para VR, os criadores de conteúdo não podem mais controlar o que o usuário visualiza em vários momentos - a viewport atual. O usuário tem a liberdade de escolher diferentes viewports em cada instância de tempo, fora das viewports permitidas ou disponíveis. Para indicar ao usuário a região de interesse (ROI), sons audíveis podem ser usados, sons naturais ou sintéticos, reproduzindo-os na posição da ROI. Estas mensagens de áudio são conhecidas como "Earcons". Esta invenção propõe uma solução para entrega eficiente de tais mensagens e propõe um comportamento otimizado do receptor para utilizar os Earcons sem afetar a experiência do usuário e o consumo de conteúdo. Isso leva a um aumento da Qualidade da Experiência. Isso pode ser conseguido usando metadados dedicados e mecanismos de manipulação de metadados no nível do sistema para ativar ou desativar os Earcons na cena final.[0093] Therefore, in a VR/AR environment, the user can usually view the full content in 360 degrees using, for example, a head-mounted display (HMD) and listen to it through headphones. The user can usually move around in the VR/AR space, or at least change the viewing direction - the so-called "viewport" for video. Compared to classical content consumption, for VR, content creators can no longer control what the user sees at various times - the current viewport. The user has the freedom to choose different viewports at each time instance, outside of the allowed or available viewports. To indicate to the user the region of interest (ROI), audible sounds can be used, natural or synthetic sounds, by playing them at the position of the ROI. These audio messages are known as "Earcons". This invention proposes a solution for efficient delivery of such messages and proposes an optimized receiver behavior to utilize the Earcons without affecting the user experience and content consumption. This leads to an increase in Quality of Experience. This can be achieved by using dedicated metadata and system-level metadata manipulation mechanisms to enable or disable Earcons in the final scene.
[0094] O processador de metadados 132 pode ser configurado para receber e/ou processar e/ou manipular os metadados 141 de modo a causar, na decisão de se a mensagem de informação deve ser reproduzida, a reprodução da mensagem de informação de Áudio de acordo com os metadados 141. Sinais de áudio (por exemplo, aqueles para representar a cena) podem ser entendidos como parte da cena de áudio (por exemplo, uma cena de áudio baixada de um servidor remoto). Em geral, os sinais de áudio podem ser semanticamente significativos para a cena de áudio e todos os sinais de áudio presentes juntos constroem a cena de áudio. Os sinais de áudio podem ser codificados juntos em um bitstream de áudio. Os sinais de áudio podem ser criados pelo criador do conteúdo e/ou podem ser associados à cena específica e/ou podem ser independentes da ROI.[0094] The metadata processor 132 may be configured to receive and/or process and/or manipulate the metadata 141 so as to cause, upon decision of whether the information message should be played, the playing of the Audio information message in accordance with the metadata 141. Audio signals (e.g., those to represent the scene) may be understood as part of the audio scene (e.g., an audio scene downloaded from a remote server). In general, the audio signals may be semantically meaningful to the audio scene, and all audio signals present together construct the audio scene. The audio signals may be encoded together into an audio bitstream. The audio signals may be created by the content creator and/or may be associated with the specific scene and/or may be independent of the ROI.
[0095] A mensagem de informação de áudio (por exemplo, earcon) pode ser entendida como não semanticamente significativa para a cena de áudio. Pode ser entendido como um som independente que pode ser gerado artificialmente, como som gravado, uma voz de uma pessoa gravada etc. Também pode ser dependente do dispositivo (um som do sistema gerado ao pressionar um botão no controle remoto, por exemplo). A mensagem de informação de áudio (por exemplo, earcon) pode ser entendida como sendo destinada a guiar o usuário na cena, sem fazer parte da cena.[0095] The audio information message (e.g., earcon) may be understood as not semantically significant to the audio scene. It may be understood as an independent sound that may be artificially generated, such as recorded sound, a recorded human voice, etc. It may also be device-dependent (a system sound generated by pressing a button on the remote control, for example). The audio information message (e.g., earcon) may be understood as being intended to guide the user in the scene, without being part of the scene.
[0096] A mensagem de informação de áudio pode ser independente dos sinais de áudio mencionados acima. De acordo com exemplos diferentes, pode ser incluído no mesmo bitstream ou transmitido em um bitstream separado ou gerado pelo sistema 100.[0096] The audio information message may be independent of the above-mentioned audio signals. According to different examples, it may be included in the same bitstream or transmitted in a separate bitstream or generated by the system 100.
[0097] Um exemplo de uma cena de áudio composta por vários sinais de áudio pode ser: -- Uma sala de concerto com Cena de Áudio que contém 5 sinais de áudio: - -- Sinal de Áudio 1: O som de um piano - -- Sinal de Áudio 2: A voz de um cantor - -- Sinal de Áudio 3: A Voz da Pessoa 1 parte da plateia - -- Sinal de Áudio 4: A Voz da Pessoa 2 parte da plateia - -- Sinal de Áudio 5: O som criado pelo relógio na parede[0097] An example of an audio scene composed of several audio signals could be: -- A concert hall with an Audio Scene that contains 5 audio signals: - -- Audio Signal 1: The sound of a piano - -- Audio Signal 2: The voice of a singer - -- Audio Signal 3: The Voice of Person 1 part of the audience - -- Audio Signal 4: The Voice of Person 2 part of the audience - -- Audio Signal 5: The sound created by the clock on the wall
[0098] A mensagem de informação de áudio pode ser, por exemplo, um som gravado como "olhar para o pianista" (o piano é a ROI). Se o usuário já estiver olhando para o pianista, a mensagem de áudio não será reproduzida.[0098] The audio information message may be, for example, a recorded sound such as "look at the pianist" (the piano is the ROI). If the user is already looking at the pianist, the audio message will not be played.
[0099] Outro exemplo: uma porta (uma porta virtual) é aberta atrás do usuário e uma nova pessoa entra na sala; o usuário não está olhando para lá. O Earcon pode ser acionado, com base nisso (informações relacionadas ao ambiente de VR, como posição virtual), para anunciar ao usuário que algo acontece atrás dele.[0099] Another example: a door (a virtual door) opens behind the user and a new person enters the room; the user is not looking there. The Earcon can be triggered, based on this (information related to the VR environment, such as virtual position), to announce to the user that something is happening behind him.
[0100] Nos exemplos, cada cena (com os audio e video streams relacionados) é transmitida do servidor para o cliente quando o usuário altera o ambiente.[0100] In the examples, each scene (with related audio and video streams) is transmitted from the server to the client when the user changes the environment.
[0101] A mensagem de informação de áudio pode ser flexível. Em particular: - a mensagem de informação de áudio pode estar localizada no mesmo audio stream associado à cena a ser reproduzida; - a mensagem de informação de áudio pode estar localizada em um audio stream adicional; - a mensagem de informação de áudio pode estar completamente ausente, mas apenas os metadados que descrevem o earcon podem estar presentes no stream e a mensagem de informação de áudio pode ser gerada no sistema; - a mensagem de informação de áudio pode estar completamente ausente, bem como os metadados que descrevem a mensagem de informação de áudio. Nesse caso, o sistema gera ambos (o earcon e os metadados) com base em outras informações sobre a ROI no stream.[0101] The audio information message may be flexible. In particular: - the audio information message may be located in the same audio stream associated with the scene to be played; - the audio information message may be located in an additional audio stream; - the audio information message may be completely absent, but only the metadata describing the earcon may be present in the stream and the audio information message may be generated in the system; - the audio information message may be completely absent as well as the metadata describing the audio information message. In this case, the system generates both (the earcon and the metadata) based on other information about the ROI in the stream.
[0102] A mensagem de informação de áudio geralmente é independente de qualquer parte do sinal de áudio da cena de áudio e não é usada para a representação da cena de áudio.[0102] The audio information message is generally independent of any part of the audio signal of the audio scene and is not used for the representation of the audio scene.
[0103] Exemplos de sistemas que incorporam ou incluem peças que incorporam o sistema 100 são fornecidos abaixo.[0103] Examples of systems that incorporate or include parts that incorporate system 100 are provided below.
[0104] A Fig. 2 mostra um sistema 200 (que pode conter pelo menos um sistema de incorporação de peças 100) que é aqui representado como sendo subdividido em um lado do servidor 202, um lado de entrega de mídia 203, um lado de cliente 204 e / ou um dispositivo de consumo de mídia lado 206. Cada um dos lados 202, 203, 204 e 206 é um sistema em si e pode ser combinado com qualquer outro sistema para obter outro sistema. Aqui, as mensagens de informações de áudio são conhecidas como Earcons, mesmo que seja possível generalizá-las para qualquer tipo de mensagem de informação de áudio.[0104] Fig. 2 shows a system 200 (which may contain at least one part incorporation system 100) which is depicted herein as being subdivided into a server side 202, a media delivery side 203, a client side 204 and/or a media consumption device side 206. Each of the sides 202, 203, 204 and 206 is a system in itself and may be combined with any other system to obtain another system. Here, the audio information messages are known as Earcons, even though it is possible to generalize them to any type of audio information message.
[0105] O lado do cliente 204 pode receber pelo menos um Video Stream 106 e/ou pelo menos um Audio Stream 116 do lado do servidor 202 através de um lado de entrega de mídia 203.[0105] The client side 204 may receive at least one Video Stream 106 and/or at least one Audio Stream 116 from the server side 202 via a media delivery side 203.
[0106] O lado de entrega 203 pode ser, por exemplo, baseado em um sistema de comunicação como um sistema em nuvem, um sistema de rede, uma rede de comunicação geográfica ou formatos de transporte de mídia conhecidos (MPEG-2 TS Transport Stream, DASH, MMT, DASH ROUTE etc.) ou até um armazenamento baseado em arquivo. O lado de entrega 203 pode ser capaz de realizar comunicações na forma de sinais elétricos (por exemplo, a cabo, sem fio etc.) e/distribuindo pacotes de dados (por exemplo, de acordo com um protocolo específico de comunicação) com bitStreams nos quais os sinais de áudio e vídeo são codificados. O lado de entrega 203 pode, no entanto, ser incorporado por um link ponto a ponto, uma conexão serial ou paralela e assim por diante. O lado de entrega 203 pode executar uma conexão sem fio, por exemplo, de acordo com protocolos como WiFi, Bluetooth e assim por diante.[0106] The delivery side 203 may be, for example, based on a communication system such as a cloud system, a network system, a geographic communication network or known media transport formats (MPEG-2 TS Transport Stream, DASH, MMT, DASH ROUTE etc.) or even a file-based storage. The delivery side 203 may be capable of performing communications in the form of electrical signals (e.g. cable, wireless etc.) and/or distributing data packets (e.g. according to a specific communication protocol) with bitstreams in which audio and video signals are encoded. The delivery side 203 may, however, be embodied by a point-to-point link, a serial or parallel connection and so on. The delivery side 203 may perform a wireless connection, for example according to protocols such as WiFi, Bluetooth and so on.
[0107] O lado do cliente 204 pode ser associado a um dispositivo de consumo de mídia, por exemplo, um HND, por exemplo, no qual a cabeça do usuário pode ser inserida (outros dispositivos podem ser utilizados, no entanto). Portanto, o usuário pode experimentar uma cena de Vídeo e Áudio (por exemplo, uma cena de VR) preparada pelo lado do cliente 204 com base nos dados de Vídeo e Áudio fornecidos pelo lado do servidor 202. Outras implementações são, no entanto, possíveis.[0107] The client side 204 may be associated with a media consumption device, e.g. an HND, for example, into which the user's head may be inserted (other devices may be used, however). Therefore, the user may experience a Video and Audio scene (e.g. a VR scene) prepared by the client side 204 based on the Video and Audio data provided by the server side 202. Other implementations are, however, possible.
[0108] O lado do servidor 202 é representado aqui como tendo um codificador de mídia 240 (que pode abranger codificadores de vídeo, codificadores de áudio, codificadores de legenda, etc.). Este codificador 240 pode ser associado, por exemplo, a uma cena de áudio e vídeo a ser representada. A cena de áudio pode ser, por exemplo, para recriar um ambiente e está associada a pelo menos um Stream de dados de áudio e vídeo 106, 116, que podem ser codificados com base na posição (ou posição virtual) alcançada pelo usuário no ambiente VR, AR, MR. Em termos gerais, o Video Stream 106 codifica imagens esféricas, das quais apenas uma parte (viewports) será vista pelo usuário de acordo com sua posição e movimentos. O Audio Stream 116 contém dados de áudio que participam da representação da cena de áudio e devem ser ouvidos por um usuário. De acordo com os exemplos, o Audio Stream 116 pode incluir metadados de áudio 236 (que se referem a pelo menos um sinal de áudio que se destina a participar da representação de cena de áudio) e/ou metadados Earcon 141 (que podem descrever Earcons a serem reproduzidos apenas em alguns casos).[0108] The server side 202 is represented here as having a media encoder 240 (which may encompass video encoders, audio encoders, subtitle encoders, etc.). This encoder 240 may be associated, for example, with an audio and video scene to be represented. The audio scene may be, for example, for recreating an environment and is associated with at least one Audio and Video Data Stream 106, 116, which may be encoded based on the position (or virtual position) reached by the user in the VR, AR, MR environment. In general terms, the Video Stream 106 encodes spherical images, of which only a part (viewports) will be seen by the user according to his/her position and movements. The Audio Stream 116 contains audio data that participates in the representation of the audio scene and is intended to be heard by a user. In accordance with the examples, the Audio Stream 116 may include audio metadata 236 (which refers to at least one audio signal that is intended to participate in the audio scene representation) and/or Earcon metadata 141 (which may describe Earcons to be played only in some cases).
[0109] O sistema 100 é aqui representado como estando no lado do cliente 204. Por uma questão de simplicidade, o decodificador de vídeo de mídia 112 não está representado na Fig. 2.[0109] System 100 is depicted here as being on the client side 204. For the sake of simplicity, media video decoder 112 is not depicted in Fig. 2.
[0110] Para preparar a reprodução do Earcon (ou outras mensagens de informações de áudio), podem ser usados os metadados do Earcon 141. Os metadados do Earcon 141 podem ser entendidos como metadados (que podem ser codificados em um Audio Stream) que descrevem e fornecem atributos associados ao Earcon. Portanto, o Earcon (se for reproduzido) pode ser baseado nos atributos dos metadados Earcon 141.[0110] To prepare for playback of the Earcon (or other audio information messages), the Earcon 141 metadata may be used. The Earcon 141 metadata may be understood as metadata (which may be encoded in an Audio Stream) that describes and provides attributes associated with the Earcon. Therefore, the Earcon (if played) may be based on the attributes of the Earcon 141 metadata.
[0111] Vantajosamente, o processador de metadados 132 pode ser implementado especificamente para processar os metadados do Earcon 141. Por exemplo, o processador de metadados 132 pode controlar a recepção, processamento, manipulação e/ou a geração dos metadados do Earcon 141. Quando processados, os metadados do Earcon podem ser representados como metadados modificados do Earcon 234. Por exemplo, é possível manipular os metadados do Earcon para obter um efeito específico e/ou para executar operações de processamento de áudio, como multiplexação ou mesclagem, para adicionar o Earcon ao sinal de áudio a ser representado na cena de áudio.[0111] Advantageously, metadata processor 132 may be implemented specifically to process metadata from Earcon 141. For example, metadata processor 132 may control the reception, processing, manipulation, and/or generation of metadata from Earcon 141. When processed, the metadata from Earcon may be represented as modified metadata from Earcon 234. For example, it is possible to manipulate the metadata from Earcon to achieve a specific effect and/or to perform audio processing operations, such as multiplexing or blending, to add the Earcon to the audio signal to be represented in the audio scene.
[0112] O processador de metadados 132 pode controlar a recepção, processamento, manipulação dos metadados de áudio 236 associados a pelo menos um Stream 116. Quando processados, os metadados de áudio 236 podem ser representados como metadados modificados de áudio 238.[0112] The metadata processor 132 may control the reception, processing, manipulation of the audio metadata 236 associated with at least one Stream 116. When processed, the audio metadata 236 may be represented as modified audio metadata 238.
[0113] Os metadados modificados 234 e 238 podem ser fornecidos ao decodificador de áudio de mídia 112 (ou a uma pluralidade de decodificadores em alguns exemplos) para a reprodução da cena de áudio 118b para o usuário.[0113] The modified metadata 234 and 238 may be provided to the media audio decoder 112 (or a plurality of decoders in some examples) for playback of the audio scene 118b to the user.
[0114] Podem ser fornecidos como um componente opcional um gerador de áudio sintético e/ou dispositivo de armazenamento 246. O gerador, por sintetizar um Audio Stream (para gerar um Earcon que não está codificado em um Stream). O dispositivo de armazenamento permite armazenar (em uma memória cache) Earcon Streams (para uso futuro) que foram gerados pelo gerador e/ou obtidos em um Audio Stream recebido.[0114] A synthetic audio generator and/or storage device 246 may be provided as an optional component. The generator may synthesize an Audio Stream (to generate an Earcon that is not encoded in a Stream). The storage device allows storing (in a cache memory) Earcon Streams (for future use) that were generated by the generator and/or obtained in a received Audio Stream.
[0115] Portanto, o processador de ROI 120 pode decidir pela representação de um Earcon com base na viewport atual do usuário e/ou na posição e/ou orientação e/ou dados de movimento da cabeça 122. No entanto, o processador de ROI 120 também pode basear sua decisão em critérios que envolvem outros aspectos.[0115] Therefore, the ROI processor 120 may decide to represent an Earcon based on the user's current viewport and/or the position and/or orientation and/or movement data of the head 122. However, the ROI processor 120 may also base its decision on criteria involving other aspects.
[0116] Por exemplo, o processador de ROI pode ativar/desativar a reprodução de Earcon com base em outras condições, como, por exemplo, seleções do usuário ou seleções de camadas superiores, por exemplo, com base no aplicativo específico que se destina a ser consumido. Para um aplicativo de Video game, por exemplo, os Earcons ou outras mensagens de informações de áudio podem ser evitadas para altos níveis de Video game. Isso pode ser obtido simplesmente, pelo processador de metadados, desativando os Earcons nos metadados de Earcon.[0116] For example, the ROI processor may enable/disable Earcon playback based on other conditions, such as user selections or higher layer selections, for example, based on the specific application intended to be consumed. For a video game application, for example, Earcons or other audio information messages may be prevented for high levels of video game. This may be achieved simply by the metadata processor disabling Earcons in the Earcon metadata.
[0117] Além disso, é possível desativar os Earcons com base no estado do sistema: se, por exemplo, o Earcon já tiver sido reproduzido, sua repetição poderá ser inibida. Um temporizador pode ser usado, por exemplo, para evitar repetições muito rápidas.[0117] Furthermore, it is possible to deactivate the Earcons based on the system state: if, for example, the Earcon has already been played, its repetition can be inhibited. A timer can be used, for example, to avoid repetitions that are too fast.
[0118] O processador de ROI 120 também pode solicitar a reprodução controlada de uma sequência de Earcons (por exemplo, os Earcons associados a todas as ROIs na cena), por exemplo, para instruir o usuário sobre os elementos que ele/ela pode ver. O processador de metadados 132 pode controlar esta operação.[0118] The ROI processor 120 may also request controlled playback of a sequence of Earcons (e.g., the Earcons associated with all ROIs in the scene), for example, to instruct the user about the elements he/she can see. The metadata processor 132 may control this operation.
[0119] O processador de ROI 120 também pode modificar a posição do Earcon (ou seja, a localização espacial na cena) ou o tipo de Earcon. Por exemplo, alguns usuários podem preferir que o Earcon reproduza um som específico no local / posição exata da ROI, enquanto outros usuários podem preferir que o Earcon seja sempre reproduzido em um local fixo (no centro ou na posição superior “voz de Deus” etc.) como um som vocal indicando a posição em que a ROI está localizada.[0119] The ROI processor 120 may also modify the position of the Earcon (i.e., the spatial location in the scene) or the type of Earcon. For example, some users may prefer the Earcon to play a specific sound at the exact location/position of the ROI, while other users may prefer the Earcon to always play at a fixed location (in the center or top position “voice of God”, etc.) as a vocal sound indicating the position in which the ROI is located.
[0120] É possível modificar o ganho (por exemplo, para obter um volume diferente) da reprodução do Earcon. Essa decisão pode seguir a seleção de um usuário, por exemplo. Notavelmente, com base na decisão do processador de ROI, o processador de metadados 132 executará a modificação de ganho modificando, entre os metadados de Earcon associados ao Earcon, o atributo específico associado ao ganho.[0120] It is possible to modify the gain (e.g., to obtain a different volume) of the Earcon playback. This decision may follow a user's selection, for example. Notably, based on the ROI processor's decision, the metadata processor 132 will perform the gain modification by modifying, among the Earcon metadata associated with the Earcon, the specific attribute associated with the gain.
[0121] O designer original do ambiente VR, AR, MR também pode não estar ciente de como os Earcons serão realmente reproduzidos. Por exemplo, as seleções do usuário podem modificar a renderização final dos Earcons. Tal operação pode ser controlada, por exemplo, pelo processador de metadados 132 que pode modificar os metadados Earcon 141 com base nas decisões do processador de ROI.[0121] The original designer of the VR, AR, MR environment may also be unaware of how the Earcons will actually be rendered. For example, user selections may modify the final rendering of the Earcons. Such operation may be controlled, for example, by metadata processor 132 which may modify Earcon metadata 141 based on decisions from the ROI processor.
[0122] Assim, as operações realizadas nos dados de áudio associados ao Earcon são, portanto, em princípio, independentes de pelo menos um Audio Stream 116 usado para representar a cena de áudio e podem ser gerenciados de maneira diferente. Os Earcons podem até ser gerados independentemente dos Audio e Video Streams 106 e 116 que constituem a cena de áudio e vídeo e podem ser produzidos por grupos empresariais diferentes e independentes.[0122] Thus, the operations performed on the audio data associated with the Earcon are therefore in principle independent of at least one Audio Stream 116 used to represent the audio scene and may be managed differently. The Earcons may even be generated independently of the Audio and Video Streams 106 and 116 that constitute the audio and video scene and may be produced by different and independent business groups.
[0123] Portanto, os exemplos permitem aumentar a satisfação dos usuários. Por exemplo, um usuário pode executar suas próprias seleções, por exemplo, modificando o volume das mensagens de informações de áudio, desativando as mensagens de informações de áudio e assim por diante. Portanto, cada usuário pode ter a experiência mais adequada à sua preferência. Além disso, a arquitetura obtida é mais flexível. As mensagens de informações de áudio podem ser facilmente atualizadas, por exemplo, modificando os metadados, independentemente dos Audio Streams, e/ou modificando os Streams de mensagens de informações de áudio independentemente dos metadados e dos principais Audio Streams.[0123] Therefore, the examples allow to increase the satisfaction of the users. For example, a user can perform his own selections, for example, modifying the volume of the audio information messages, turning off the audio information messages and so on. Therefore, each user can have the experience that best suits his preference. Furthermore, the architecture obtained is more flexible. The audio information messages can be easily updated, for example, by modifying the metadata independently of the Audio Streams, and/or by modifying the Audio Information Message Streams independently of the metadata and the main Audio Streams.
[0124] A arquitetura obtida também é compatível com os sistemas legados: Streams de mensagens de informações de áudio legadas podem ser associados a novos metadados de mensagens de informações de áudio, por exemplo. Em caso de ausência de um Stream de mensagem de informação de áudio adequado, nos exemplos, o último pode ser facilmente sintetizado (e, por exemplo, armazenado para uso posterior).[0124] The obtained architecture is also compatible with legacy systems: Legacy Audio Information Message Streams can be associated with new Audio Information Message Metadata, for example. In case of absence of a suitable Audio Information Message Stream, in the examples, the latter can be easily synthesized (and, for example, stored for later use).
[0125] O processador de ROI acompanhar as métricas associadas aos dados históricos e/ou estatísticos associados à reprodução da mensagem de informação de áudio, de modo a desativar a reprodução da mensagem de informação de áudio se as métricas estiverem acima de um limite predeterminado (isto pode ser usado como critério).[0125] The ROI processor tracks metrics associated with historical and/or statistical data associated with playback of the audio information message, so as to disable playback of the audio information message if the metrics are above a predetermined threshold (this may be used as a criterion).
[0126] A decisão do processador de ROI pode ser baseada, como um critério, em uma previsão da viewport atual do usuário e/ou posição e/ou orientação e/ou dados de movimento da cabeça 122 em relação à posição da ROI.[0126] The ROI processor's decision may be based, as a criterion, on a prediction of the user's current viewport and/or position and/or orientation and/or movement data of head 122 relative to the position of the ROI.
[0127] O processador de ROI também pode ser configurado para receber pelo menos um primeiro Audio Stream 116 e, na decisão se a mensagem de informações deve ser reproduzida, para solicitar um Stream de informações de mensagens de áudio de uma entidade remota.[0127] The ROI processor may also be configured to receive at least a first Audio Stream 116 and, in deciding whether the information message should be played, to request an Audio Message Information Stream from a remote entity.
[0128] O processador de ROI e/ou o gerador de metadados pode ser configurado para estabelecer se é para reproduzir duas mensagens de informações de áudio ao mesmo tempo ou selecionar uma mensagem de informação de áudio com prioridade mais alta, que deve ser reproduzida com prioridade em relação a uma mensagem de informação de áudio com prioridade mais baixa. Para executar esta decisão, podem ser usados metadados de informações de áudio. Uma prioridade pode ser, por exemplo, obtida pelo processador de metadados 132 com base nos valores nos metadados da mensagem de informação de áudio.[0128] The ROI processor and/or metadata generator may be configured to determine whether to play two audio information messages at the same time or to select an audio information message with higher priority, which should be played with priority over an audio information message with lower priority. To make this decision, audio information metadata may be used. A priority may, for example, be obtained by the metadata processor 132 based on values in the audio information message metadata.
[0129] Em alguns exemplos, o codificador de mídia 240 pode ser configurado para procurar, em um banco de dados, intranet, internet e/ou rede geográfica, pelo menos um Audio Stream adicional e/ou metadados de mensagem de informação de áudio, no caso de recuperação, entregar o Audio Stream adicional e/ou os metadados da mensagem de informação de áudio. Por exemplo, a busca pode ser realizada a pedido do lado do cliente.[0129] In some examples, the media encoder 240 may be configured to search a database, intranet, internet, and/or geographic network for at least one additional Audio Stream and/or audio information message metadata, and upon retrieval, deliver the additional Audio Stream and/or audio information message metadata. For example, the search may be performed on client-side request.
[0130] Como explicado acima, aqui é proposta uma solução para a entrega eficiente de mensagens do Earcon juntamente com o conteúdo de áudio. É obtido um comportamento otimizado do receptor, para usar as mensagens de informações de áudio (por exemplo, Earcons) sem afetar a experiência do usuário e o consumo de conteúdo. Isso levará a um aumento da Qualidade da Experiência.[0130] As explained above, here a solution is proposed for efficient delivery of Earcon messages together with audio content. An optimized receiver behavior is achieved, to use the audio information messages (e.g. Earcons) without affecting the user experience and content consumption. This will lead to an increase in Quality of Experience.
[0131] Isso pode ser obtido usando metadados dedicados e mecanismos de manipulação de metadados no nível do sistema para ativar ou desativar as mensagens de informações de áudio nas cenas de áudio finais. Os metadados podem ser usados juntamente com quaisquer codecs de áudio e complementar de maneira agradável os metadados dos codecs de próxima geração de áudio (por exemplo, metadados de áudio MPEG-H).[0131] This can be achieved by using dedicated metadata and system-level metadata handling mechanisms to enable or disable audio information messages in the final audio scenes. The metadata can be used in conjunction with any audio codecs and nicely complement the metadata of next-generation audio codecs (e.g., MPEG-H audio metadata).
[0132] Os mecanismos de entrega podem ser vários (por exemplo, Streaming por DASH/HLS, transmissão em DASH- ROUTE/MMT/MPEG-2 TS, reprodução de arquivo etc.). A entrega DASH é considerada neste aplicativo, mas todos os conceitos são válidos para as outras opções de entrega.[0132] Delivery mechanisms can be various (e.g. DASH/HLS streaming, DASH-ROUTE/MMT/MPEG-2 TS streaming, file playback, etc.). DASH delivery is considered in this application, but all concepts are valid for the other delivery options.
[0133] Na maioria dos casos, as mensagens de informações de áudio não se sobrepõem no domínio do tempo, ou seja, em um momento específico, apenas uma ROI é definida. Porém, considerando casos de uso mais avançados, por exemplo, em um ambiente interativo onde o usuário pode alterar o conteúdo com base em suas seleções/movimentos, também pode haver casos de uso que exijam várias ROIs. Para esse fim, mais de uma mensagem de informação de áudio pode ser necessária em um momento. Portanto, uma solução genérica é descrita para dar suporte a todos os diferentes casos de uso.[0133] In most cases, audio information messages do not overlap in the time domain, i.e. at a specific moment only one ROI is defined. However, considering more advanced use cases, for example in an interactive environment where the user can change the content based on his/her selections/movements, there may also be use cases that require multiple ROIs. For this purpose, more than one audio information message may be needed at a moment. Therefore, a generic solution is described to support all the different use cases.
[0134] A entrega e o processamento das mensagens informativas de áudio devem complementar os métodos de entrega existentes para o áudio de próxima geração.[0134] Delivery and processing of audio informational messages should complement existing delivery methods for next-generation audio.
[0135] Uma maneira de transmitir várias mensagens de informação de áudio para várias ROIs, independentes no domínio do tempo, é misturar todas as mensagens de informação de áudio em um elemento de áudio (por exemplo, objeto de áudio) com metadados associados que descrevem a posição espacial de cada mensagem de informação de áudio em instâncias diferentes de tempo. Como as mensagens de informações de áudio não se sobrepõem no tempo, elas podem ser endereçadas independentemente no único elemento de áudio compartilhado. Este elemento de áudio pode conter silêncio (ou nenhum dado de áudio) entre as mensagens de informações de áudio, ou seja, sempre que não houver uma mensagem de informação de áudio. Os seguintes mecanismos podem ser aplicados neste caso: • O elemento de áudio da mensagem de informação de áudio comum pode ser entregue no mesmo Stream elementar (ES) com a cena de áudio a que se refere, ou pode ser entregue em um Stream auxiliar (dependente ou não do Stream principal). • Se o elemento de áudio do Earcon for entregue em um Stream auxiliar dependente do Stream principal, o Cliente poderá solicitar o Stream adicional sempre que uma nova ROI estiver presente na cena visual. • O Cliente (por exemplo, o sistema 100) pode, nos exemplos, solicitar o Stream antes da cena que requer o Earcon. • O Cliente pode, nos exemplos, solicitar o Stream com base na viewport atual, ou seja, se a viewport atual corresponder a ROI, o Cliente poderá decidir não solicitar o Earcon Stream adicional. • Se o elemento de áudio do Earcon puder ser entregue em um Stream auxiliar independente do Stream principal, o Cliente poderá solicitar, como antes, o Stream adicional sempre que uma nova ROI estiver presente na cena visual. Além disso, os dois (ou mais) Streams podem ser processados usando dois Decodificadores de Mídia e uma etapa comum de Renderização/Mixagem para mixar os dados de áudio do Earcon na cena de áudio final. Alternativamente, um Processador de Metadados pode ser usado para modificar os metadados dos dois Streams e um "Stream Merger" para mesclar os dois Streams. Uma possível implementação desse Metadata Processor (Processador de Metadados) e Stream Merger (Fusão de Stream) é descrito abaixo.[0135] One way to transmit multiple audio information messages to multiple ROIs, independent in the time domain, is to mix all the audio information messages into one audio element (e.g., audio object) with associated metadata describing the spatial position of each audio information message at different instances of time. Since the audio information messages do not overlap in time, they can be addressed independently in the single shared audio element. This audio element may contain silence (or no audio data) between the audio information messages, i.e. whenever there is no audio information message. The following mechanisms can be applied in this case: • The audio element of the common audio information message can be delivered in the same Elementary Stream (ES) with the audio scene to which it refers, or it can be delivered in an auxiliary Stream (dependent or not on the main Stream). • If the Earcon audio element is delivered in an auxiliary Stream dependent on the main Stream, the Client may request the additional Stream whenever a new ROI is present in the visual scene. • The Client (e.g., system 100) may, in the examples, request the Stream prior to the scene that requires the Earcon. • The Client may, in the examples, request the Stream based on the current viewport, i.e., if the current viewport matches the ROI, the Client may decide not to request the additional Earcon Stream. • If the Earcon audio element can be delivered in an auxiliary Stream independent of the main Stream, the Client may request, as before, the additional Stream whenever a new ROI is present in the visual scene. Additionally, the two (or more) Streams may be processed using two Media Decoders and a common Render/Mix step to mix the Earcon audio data into the final audio scene. Alternatively, a Metadata Processor may be used to modify the metadata of the two Streams and a Stream Merger to merge the two Streams. A possible implementation of such a Metadata Processor and Stream Merger is described below.
[0136] Em exemplos alternativos, vários Earcons para várias ROIs, independentes no domínio do tempo ou se sobrepondo no domínio do tempo, podem ser entregues em vários elementos de Áudio (como objetos de áudio) e incorporados em Stream elementar junto com a cena de áudio principal ou em vários Streams auxiliares, por exemplo, cada Earcon em um ES ou um grupo de Earcons em um ES com base em uma propriedade compartilhada (por exemplo, todos os Earcons localizados no lado esquerdo compartilham um Stream). • Se todos os elementos de áudio dos Earcons forem fornecidos em vários Streams auxiliares dependentes do Stream principal (por exemplo, um Earcon por Stream ou um grupo de Earcons por Stream), o Cliente pode, no exemplos, solicitar um Stream adicional, que contenha o Earcon desejado, sempre que a ROI associada ao Earcon estiver presente na cena visual. • O Cliente pode solicitar o Stream com o Earcon antes da cena que exige que o Earcon (por exemplo, com base nos movimentos do usuário, o processador de ROI 120 possa executar a decisão mesmo que a ROI não faça parte da cena ainda). • O Cliente pode solicitar o Stream com base na viewport atual, ou seja, se a viewport atual corresponder a ROI, o Cliente poderá decidir não solicitar o Earcon Stream adicional. • Se o elemento de áudio do Earcon (ou um grupo de Earcons) puder ser entregue em um Stream auxiliar independente do Stream principal, o Cliente poderá solicitar, como antes, o Stream adicional sempre que uma nova ROI estiver presente na cena visual. Além disso, os dois (ou mais) Streams podem ser processados usando dois Decodificadores de Mídia e uma etapa comum de Renderização/Mixagem para mixar os dados de áudio do Earcon decodificados na cena de áudio final. Alternativamente, um Processador de Metadados pode ser usado para modificar os metadados dos dois Streams e um "Stream Merger" para mesclar os dois Streams. Uma possível implementação desse Metadata Processor (Processador de Metadados) e Stream Merger (Fusão de Stream) é descrito abaixo.[0136] In alternative examples, multiple Earcons for multiple ROIs, independent in the time domain or overlapping in the time domain, may be delivered in multiple Audio Elements (as Audio Objects) and embedded in an Elementary Stream along with the main audio scene or in multiple Auxiliary Streams, e.g., each Earcon in an ES or a group of Earcons in an ES based on a shared property (e.g., all Earcons located on the left side share a Stream). • If all of the Earcons' audio elements are delivered in multiple Auxiliary Streams dependent on the main Stream (e.g., one Earcon per Stream or a group of Earcons per Stream), the Client may, in the examples, request an additional Stream containing the desired Earcon whenever the ROI associated with the Earcon is present in the visual scene. • The Client may request the Stream with the Earcon prior to the scene that requires the Earcon (e.g., based on the user's movements, the ROI processor 120 may execute the decision even if the ROI is not part of the scene yet). • The Client may request the Stream based on the current viewport, i.e., if the current viewport matches the ROI, the Client may decide not to request the additional Earcon Stream. • If the audio element of the Earcon (or a group of Earcons) can be delivered in an auxiliary Stream independent of the main Stream, the Client may request, as before, the additional Stream whenever a new ROI is present in the visual scene. Additionally, the two (or more) Streams may be processed using two Media Decoders and a common Render/Mix step to mix the decoded Earcon audio data into the final audio scene. Alternatively, a Metadata Processor may be used to modify the metadata of the two Streams and a Stream Merger to merge the two Streams. A possible implementation of this Metadata Processor and Stream Merger is described below.
[0137] Alternativamente, um Earcon comum (genérico) pode ser usado para sinalizar todas as ROIs em uma cena de áudio. Isso pode ser obtido usando o mesmo conteúdo de áudio com diferentes informações espaciais associadas ao conteúdo de áudio em diferentes estâncias de tempo. Neste caso, o processador de ROI 120 pode solicitar ao processador de metadados 132 para reunir os Earcons associados as ROIs na cena e controlar a reprodução dos Earcons em sequência (por exemplo, na seleção de um usuário ou em uma solicitação do aplicativo de camada superior).[0137] Alternatively, a common (generic) Earcon may be used to cue all ROIs in an audio scene. This may be achieved by using the same audio content with different spatial information associated with the audio content at different time instances. In this case, the ROI processor 120 may request the metadata processor 132 to gather the Earcons associated with the ROIs in the scene and control the playback of the Earcons in sequence (e.g., upon selection by a user or upon request from the upper-layer application).
[0138] Alternativamente, um Earcon pode ser transmitido apenas uma vez e armazenado em cache no Cliente. O Cliente pode reutilizá-lo para todas as ROIs em uma cena de vídeo com diferentes informações espaciais associadas ao conteúdo de áudio em diferentes estâncias de tempo.[0138] Alternatively, an Earcon may be transmitted only once and cached on the Client. The Client may reuse it for all ROIs in a video scene with different spatial information associated with the audio content at different time instances.
[0139] Alternativamente, o conteúdo de Áudio do Earcon pode ser gerado sinteticamente no Cliente. Junto com isso, um Gerador de Metadados pode ser usado para criar os metadados para sinalizar as informações espaciais do Earcon. Por exemplo, o conteúdo de áudio do Earcon pode ser compactado e alimentado em um decodificador de Mídia junto com o conteúdo de áudio principal e os novos metadados ou poderá ser mixado na cena de áudio final após o Decodificador de Mídia, ou vários Decodificadores de Mídia poderão ser usados.[0139] Alternatively, the Earcon Audio content may be synthetically generated on the Client. In conjunction with this, a Metadata Generator may be used to create the metadata to signal the Earcon spatial information. For example, the Earcon Audio content may be compressed and fed into a Media Decoder along with the main audio content and the new metadata, or it may be mixed into the final audio scene after the Media Decoder, or multiple Media Decoders may be used.
[0140] Alternativamente, o conteúdo de áudio do Earcon pode, nos exemplos, ser gerado sinteticamente no Cliente (por exemplo, sob o controle do processador de metadados 132), enquanto os metadados que descrevem o Earcon já estiverem incorporados no Stream. Usando sinalização específica do tipo de Earcon no codificador, os metadados podem conter as informações espaciais do Earcon, a sinalização específica para um "Earcon gerado pelo decodificador", mas sem dados de áudio para o Earcon.[0140] Alternatively, the audio content of the Earcon may, in the examples, be synthetically generated at the Client (e.g., under the control of metadata processor 132), while metadata describing the Earcon is already embedded in the Stream. Using Earcon type-specific signaling at the encoder, the metadata may contain the spatial information of the Earcon, the specific signaling for a "Decoder-generated Earcon", but no audio data for the Earcon.
[0141] Alternativamente, o conteúdo de áudio do Earcon pode ser gerado sinteticamente no Cliente, e um Gerador de Metadados pode ser usado para criar os metadados necessários para sinalizar as informações espaciais do Earcon. Por exemplo, o conteúdo de áudio do Earcon pode ser • compactado e alimentado em um decodificador de Mídia junto com o conteúdo de áudio principal e os novos metadados; • ou poderá ser mixado na cena de áudio final após o Decodificador de Mídia; • ou vários Decodificadores de Mídia poderão ser usados.[0141] Alternatively, the Earcon audio content may be synthetically generated at the Client, and a Metadata Generator may be used to create the metadata required to signal the Earcon spatial information. For example, the Earcon audio content may be • compressed and fed to a Media decoder along with the main audio content and new metadata; • or it may be mixed into the final audio scene after the Media Decoder; • or multiple Media Decoders may be used.
[0142] Um exemplo de metadados de mensagens de informações de áudio 141 (Earcons), conforme descrito acima é fornecido aqui.[0142] An example of audio information message metadata 141 (Earcons) as described above is provided here.
[0143] Uma estrutura para descrever as propriedades do Earcon e oferecer possibilidades para ajustar facilmente esses valores: [0143] A framework to describe Earcon properties and provide possibilities to easily adjust these values:
[0144] Cada identificador na tabela pode ser considerado como sendo associado a um atributo dos metadados do Earcon 132.[0144] Each identifier in the table can be considered to be associated with an attribute of the Earcon 132 metadata.
[0145] A Semântica é discutida aqui.[0145] Semantics is discussed here.
[0146] numEarcons - Este campo especifica o número de Elementos de Áudio do Earcon disponíveis no Stream.[0146] numEarcons - This field specifies the number of Earcon Audio Elements available in the Stream.
[0147] Earcon_isIndependent - Este marcador define se o Elemento de Áudio do Earcon é independente de uma Cena de Áudio. Se Earcon_isIndependent == 1 O Elemento de Áudio do Earcon é independente da Cena de Áudio. Se Earcon_isIndependent == 0 o Elemento de Áudio do Earcon faz parte da Cena de Áudio e Earcon_id deverá ter o mesmo valor que mae_groupID associado ao Elemento de Áudio.[0147] Earcon_isIndependent - This flag defines whether the Earcon Audio Element is independent of an Audio Scene. If Earcon_isIndependent == 1 the Earcon Audio Element is independent of the Audio Scene. If Earcon_isIndependent == 0 the Earcon Audio Element is part of the Audio Scene and Earcon_id must have the same value as the mae_groupID associated with the Audio Element.
[0148] EarconType - Este campo define o tipo de Earcon. A tabela abaixo especifica os valores permitidos [0148] EarconType - This field defines the Earcon type. The table below specifies the allowed values
[0149] EarconActive Este marcador define se o Earcon está ativo. Se EarconActive == 1 o Elemento de Áudio do Earcon deverá decodificado e renderizado na cena de áudio.[0149] EarconActive This flag defines whether the Earcon is active. If EarconActive == 1 the Earcon Audio Element should be decoded and rendered in the audio scene.
[0150] EarconPosition Este marcador define se o Earcon possui informação de posição disponível. Se Earcon_isIndependent == 0, essa informação de posição deve ser usada em vez dos metadados do objeto Áudio especificados nas estruturas dynamic_object_metadata() ou intracoded_object_metadata_efficient().[0150] EarconPosition This flag defines whether the Earcon has position information available. If Earcon_isIndependent == 0, this position information should be used instead of the Audio object metadata specified in the dynamic_object_metadata() or intracoded_object_metadata_efficient() structures.
[0151] Earcon_azimuth valor absoluto do ângulo do azimute.[0151] Earcon_azimuth absolute value of the azimuth angle.
[0152] Earcon_elevation valor absoluto do ângulo de elevação.[0152] Earcon_elevation absolute value of elevation angle.
[0153] Earcon_radius valor absoluto do raio.[0153] Earcon_radius absolute value of the radius.
[0154] EarconHasGain Este marcador define se o Earcon possui um valor de Ganho diferente.[0154] EarconHasGain This flag defines whether the Earcon has a different Gain value.
[0155] Earcon_gain Este marcador define o valor absoluto para o ganho do Earcon.[0155] Earcon_gain This flag sets the absolute value for the Earcon gain.
[0156] EarconHasTextLabel Este marcador define se o Earcon possui um rótulo de texto associado.[0156] EarconHasTextLabel This flag defines whether the Earcon has an associated text label.
[0157] Earcon_numLanguages Este campo especifica o número de idiomas disponíveis para o rótulo de texto da descrição.[0157] Earcon_numLanguages This field specifies the number of languages available for the description text label.
[0158] Earcon_Language Este campo de 24 bits identifica o idioma do texto da descrição de um Earcon. Ele contém um código de 3 caracteres como especificado pelo ISO 639-2. Tanto a ISO 639-2/B como a ISO 639-2/T podem ser usadas. Cada caractere é codificado em 8 bits de acordo com a ISO/IEC 8859-1 e inserido na ordem no campo de 24 bits. EXEMPLO: Francês possui o código de 3 caracteres "fre" que é codificado como: “0110 0110 0111 0010 0110 0101”.[0158] Earcon_Language This 24-bit field identifies the language of the Earcon description text. It contains a 3-character code as specified by ISO 639-2. Either ISO 639-2/B or ISO 639-2/T can be used. Each character is encoded in 8 bits according to ISO/IEC 8859-1 and inserted in order in the 24-bit field. EXAMPLE: French has the 3-character code "fre" which is encoded as: “0110 0110 0111 0010 0110 0101”.
[0159] Earcon_TextDataLength Este campo define o comprimento da seguinte descrição do grupo no bit Stream.[0159] Earcon_TextDataLength This field defines the length of the following group description in the bit Stream.
[0160] Earcon_TextData Este campo contém uma descrição de um Earcon, ou seja, uma sequência que descreve o conteúdo por uma descrição de alto nível. O formato deverá seguir a UTF-8 de acordo com a ISO/IEC 10646.[0160] Earcon_TextData This field contains a description of an Earcon, i.e. a string describing the content by a high-level description. The format must follow UTF-8 according to ISO/IEC 10646.
[0161] Uma estrutura para identificar os Earcons no nível do sistema e associá-los às viewports existentes. As duas tabelas abaixo oferecem duas maneiras de implementar essa estrutura que pode ser usada em diferentes implementações: aligned(8) class EarconSample() extends SphereRegionSample { for (i = 0; i < num_regions; i++) { unsigned int(7) reserved;[0161] A framework for identifying system-level Earcons and associating them with existing viewports. The two tables below provide two ways to implement this framework that can be used in different implementations: aligned(8) class EarconSample() extends SphereRegionSample { for (i = 0; i <num_regions; i++) { unsigned int(7) reserved;
[0162] ou alternativamente: aligned(8) class EarconSample() extends SphereRegionSample [0162] or alternatively: aligned(8) class EarconSample() extends SphereRegionSample
[0163] Semântica:[0163] Semantics:
[0164] hasEarcon especifica se os dados do Earcon estão disponíveis para uma região.[0164] hasEarcon specifies whether Earcon data is available for a region.
[0165] numRegionEarcons especifica o número de Earcons disponíveis para uma região.[0165] numRegionEarcons specifies the number of Earcons available for a region.
[0166] Earcon_id define exclusivamente um ID para um elemento de Earcon associado à região da esfera. Se o Earcon fizer parte da Cena de Áudio (isto é, o Earcon faz parte de um grupo de elementos identificados por um mae_groupID), o Earcon_id DEVERÁ ter o mesmo valor que o mae_groupID. O Earcon_id pode ser usado para identificação no arquivo/faixa de áudio, por exemplo, no caso de entrega de DASH, o Adaptation Set com elemento EarconComponent@tag no MPD igual ao Earcon_id.[0166] Earcon_id uniquely defines an ID for an Earcon element associated with the sphere region. If the Earcon is part of the Audio Scene (i.e. the Earcon is part of a group of elements identified by a mae_groupID), the Earcon_id MUST have the same value as the mae_groupID. The Earcon_id can be used for identification in the audio file/track, for example in case of DASH delivery, the Adaptation Set with EarconComponent@tag element in the MPD equal to the Earcon_id.
[0167] Earcon_track_id - é um número inteiro que identifica exclusivamente uma faixa do Earcon associada à região da esfera durante toda a vida útil de uma apresentação, ou seja, se a(s) faixa(s) do(s) Earcon(s) for(em) fornecida(s) no mesmo arquivo ISO BMFF, o Earcon_track_id representará o track_id correspondente da faixa de Earcon(s). Se o Earcon não for fornecido dentro do mesmo arquivo ISO BMFF, este valor DEVERÁ ser configura para zero.[0167] Earcon_track_id - is an integer that uniquely identifies an Earcon track associated with the sphere region throughout the lifetime of a performance, i.e. if the Earcon track(s) are provided within the same BMFF ISO file, the Earcon_track_id will represent the corresponding track_id of the Earcon track(s). If the Earcon is not provided within the same BMFF ISO file, this value MUST be set to zero.
[0168] Para uma fácil identificação da faixa do(s) Earcon(s) no nível MPD, o seguinte Atributo/Elemento pode ser usado: EarconComponent@tag:[0168] For easy identification of the Earcon(s) range at the MPD level, the following Attribute/Element can be used: EarconComponent@tag:
[0169] Resumo dos elementos e atributos MPD para Áudio MPEG- H [0169] Summary of MPD Elements and Attributes for MPEG-H Audio
[0170] Para Áudio MPEG-H isso pode ser implementado fazendo uso dos pacotes MHAS: • um novo pacote MHAS para informações sobre cuidados com Earcons pode ser definido: PACTYP_EARCON carregando a estrutura EarconInfo(); • Um novo campo de identificação em um pacote MHAS METADATA MHAS genérico, para carregar a estrutura EarconInfo().[0170] For MPEG-H Audio this can be implemented by making use of the MHAS packages: • a new MHAS package for Earcon care information can be defined: PACTYP_EARCON carrying the EarconInfo() structure; • a new identification field in a generic MHAS METADATA MHAS package, to carry the EarconInfo() structure.
[0171] Com relação aos metadados, o processador de metadados 132 pode ter pelo menos algumas das seguintes capacidades: extrair os metadados da mensagem de informações de dados de um Stream; modificar os metadados da mensagem de informação de áudio para ativar a mensagem de informação de áudio e/ou configurar/alterar sua posição e/ou gravar/modificar o rótulo de texto de mensagem de informação de áudio; incorporar metadados novamente em um Stream; alimentar o Stream para um decodificador de mídia adicional; extrair metadados de áudio de pelo menos um primeiro Audio Stream (116); extrair metadados de mensagens de informações de áudio de um Stream adicional; modificar os metadados da mensagem de informação de áudio para ativar a mensagem de informação de áudio e/ou configurar/alterar sua posição e/ou gravar/modificar o rótulo de texto de mensagem de informação de áudio; modificar metadados de áudio de pelo menos um primeiro Audio Stream (116) levando em consideração a existência da mensagem de informação de áudio e permitir a mesclagem; alimentar um Stream para o multiplexador ou muxer para multiplexá-los com base nas informações recebidas do processador de ROI.[0171] With respect to metadata, the metadata processor 132 may have at least some of the following capabilities: extracting the data information message metadata from a Stream; modifying the audio information message metadata to activate the audio information message and/or set/change its position and/or record/modify the audio information message text label; embedding metadata back into a Stream; feeding the Stream to an additional media decoder; extracting audio metadata from at least a first Audio Stream (116); extracting audio information message metadata from an additional Stream; modifying the audio information message metadata to activate the audio information message and/or set/change its position and/or record/modify the audio information message text label; modifying audio metadata from at least a first Audio Stream (116) taking into account the existence of the audio information message and enabling merging; feeding a Stream to the multiplexer or muxer to multiplex them based on information received from the ROI processor.
[0172] A Fig. 3 mostra um sistema 300 incluindo, no lado do cliente 204, um sistema 302 (sistema do cliente) que pode incorporar, por exemplo, o sistema 100 ou 200.[0172] Fig. 3 shows a system 300 including, on the client side 204, a system 302 (client system) that may incorporate, for example, system 100 or 200.
[0173] O sistema 302 pode incluir o processador de ROI 120, o processador de metadados 132, um grupo de decodificadores 313 formado por uma pluralidade de decodificadores 112.[0173] The system 302 may include the ROI processor 120, the metadata processor 132, a decoder group 313 formed by a plurality of decoders 112.
[0174] Neste exemplo, diferentes Audio Streams são decodificados (cada um por um respectivo decodificador de áudio de mídia 112) e são subsequentemente misturados e/ou renderizados juntos para fornecer a cena de áudio final.[0174] In this example, different Audio Streams are decoded (each by a respective media audio decoder 112) and are subsequently mixed and/or rendered together to provide the final audio scene.
[0175] O pelo menos um Audio Stream é aqui representado como incluindo dois Streams 116 e 316 (outros exemplos podem fornecer um único Stream, como na Fig. 2, ou mais de dois Streams). Estes são os Audio Streams destinados a reproduzir a cena de áudio que se espera que o usuário experimente. Aqui, é feita referência aos Earcons, mesmo que seja possível generalizar o conceito para qualquer mensagem de informação de áudio.[0175] The at least one Audio Stream is represented here as including two Streams 116 and 316 (other examples may provide a single Stream, as in Fig. 2, or more than two Streams). These are the Audio Streams intended to reproduce the audio scene that the user is expected to experience. Here, reference is made to the Earcons, even though it is possible to generalize the concept to any audio information message.
[0176] Além disso, um Earcon Stream 140 pode ser fornecido pelo codificador de mídia 240. Com base nos movimentos do usuário e nas ROIs, conforme indicado nos metadados 131 da viewport e/ou em outros critérios, o processador de ROI causará a reprodução de um Earcon do Earcon Stream 140 (também indicado como Audio Stream adicional como adicional aos Audio Streams 116 e 316).[0176] Additionally, an Earcon Stream 140 may be provided by the media encoder 240. Based on user movements and ROIs as indicated in the viewport metadata 131 and/or other criteria, the ROI processor will cause the playback of an Earcon from the Earcon Stream 140 (also referred to as an additional Audio Stream as in addition to Audio Streams 116 and 316).
[0177] Notavelmente, uma representação real do Earcon será baseada nos metadados Earcon 141 e nas modificações realizadas pelo processador de metadados 132.[0177] Notably, an actual representation of the Earcon will be based on the Earcon metadata 141 and the modifications performed by the metadata processor 132.
[0178] Nos exemplos, o Stream pode ser solicitado pelo sistema 302 (cliente) ao codificador de mídia 240 (servidor) em caso de necessidade. Por exemplo, o processador de ROI pode decidir se, com base nos movimentos do usuário, um Earcon específico será necessário em breve e, portanto, pode solicitar um Earcon Stream 140 apropriado para o codificador de mídia 240.[0178] In the examples, the Stream may be requested by the system 302 (client) from the media encoder 240 (server) in case of need. For example, the ROI processor may decide whether, based on the user's movements, a specific Earcon will be needed soon and may therefore request an appropriate Earcon Stream 140 from the media encoder 240.
[0179] É possível observar os seguintes aspectos deste exemplo: • Caso de uso: Os dados de áudio são entregues em um ou mais Audio Streams 116, 316 (como um Stream principal e um Stream auxiliar) enquanto os Earcons são fornecidos em um ou mais Streams 140 adicionais (dependentes ou independentes do Audio Stream) • Em uma implementação no lado do cliente 204, o processador de ROI 120 e o Processador de Metadados 132 são usados para processar eficientemente as informações do Earcon • O Processador de ROI 120 pode receber informações 122 sobre a viewport atual (informações de orientação do usuário) do lado do dispositivo de consumo de mídia 206 usado para o consumo de conteúdo (por exemplo, com base em um HMD). O processador de ROI também pode receber informações sobre e a ROI sinalizada nos metadados (Video Viewports são sinalizadas como no OMAF). • Com base nessas informações, o processador de ROI 120 pode decidir ativar um (ou mais) Earcons contidos no Earcon Audio Stream 140. Além disso, o processador de ROI 120 pode decidir sobre um local diferente dos Earcons e diferentes valores de ganho (por exemplo, para uma representação mais precisa do Earcon no espaço atual em que o conteúdo é consumido). • O processador de ROI 120 fornece essas informações ao processador de metadados 132. • O processador de metadados 132 pode analisar os metadados contidos no Earcon Audio Stream e • habilitar o Earcon (para permitir sua reprodução) • e, se solicitado pelo processador de ROI 120, modifica a posição espacial e informações de ganho contidas nos metadados do Earcon 141. • Cada Audio Stream 116, 316, 140 é então decodificado e renderizado (com base nas informações de posição do usuário) independentemente e a saída de todos os decodificadores de mídia é mixada em conjunto como uma etapa final pelo misturador ou renderizador 314. Uma implementação diferente só pode decodificar o áudio compactado e fornecer os dados de áudio decodificados e os metadados para um renderizador geral comum para a renderização final de todos os elementos de áudio (incluindo os Earcons). • Além disso, em um ambiente de Streaming, com base nas mesmas informações, o processador de ROI 120 pode decidir solicitar o(s) Earcon(s) Stream(s) 140 com antecedência (por exemplo, quando o usuário olha para a direção errada alguns segundos antes da ROI ser ativada.[0179] The following aspects can be noted from this example: • Use case: Audio data is delivered in one or more Audio Streams 116, 316 (such as a main Stream and an auxiliary Stream) while Earcons are provided in one or more additional Streams 140 (dependent or independent of the Audio Stream) • In a client-side implementation 204, ROI Processor 120 and Metadata Processor 132 are used to efficiently process Earcon information • ROI Processor 120 may receive information 122 about the current viewport (user orientation information) from the side of the media consumption device 206 used for content consumption (e.g., based on an HMD). The ROI Processor may also receive information about and the ROI flagged in the metadata (Video Viewports are flagged as in OMAF). • Based on this information, the ROI processor 120 may decide to activate one (or more) Earcons contained in the Earcon Audio Stream 140. Additionally, the ROI processor 120 may decide on a different location of the Earcons and different gain values (e.g., for a more accurate representation of the Earcon in the current space in which the content is consumed). • ROI processor 120 provides this information to metadata processor 132. • Metadata processor 132 may analyze the metadata contained in the Earcon Audio Stream and • enable the Earcon (to allow its playback) • and, if requested by ROI processor 120, modify the spatial position and gain information contained in the Earcon metadata 141. • Each Audio Stream 116, 316, 140 is then decoded and rendered (based on the user's position information) independently and the output from all media decoders is mixed together as a final step by mixer or renderer 314. A different implementation may only decode the compressed audio and provide the decoded audio data and metadata to a common overall renderer for final rendering of all audio elements (including the Earcons). • Additionally, in a Streaming environment, based on the same information, the ROI processor 120 may decide to prompt the Stream Earcon(s) 140 in advance (e.g., when the user looks in the wrong direction a few seconds before the ROI is activated.
[0180] A Fig. 4 mostra um sistema 400 incluindo, no lado do cliente 204, um sistema 402 (sistema do cliente) que pode incorporar, por exemplo, o sistema 100 ou 200. Aqui, é feita referência aos Earcons, mesmo que seja possível generalizar o conceito para qualquer mensagem de informação de áudio.[0180] Fig. 4 shows a system 400 including, on the client side 204, a system 402 (client system) that may incorporate, for example, system 100 or 200. Here, reference is made to Earcons, even though it is possible to generalize the concept to any audio information message.
[0181] O sistema 402 pode incluir o processador de ROI 120, o processador de metadados 132, um multiplexador ou muxer de Stream 412. Nos exemplos em que o multiplexador ou o muxer 412, o número de operações a serem executadas pelo hardware é vantajosamente reduzido em relação ao número de operações a serem executadas quando vários decodificadores e um misturador ou renderizador são usados.[0181] The system 402 may include the ROI processor 120, the metadata processor 132, a Stream multiplexer or muxer 412. In the examples where the multiplexer or muxer 412, the number of operations to be performed by the hardware is advantageously reduced relative to the number of operations to be performed when multiple decoders and a mixer or renderer are used.
[0182] Neste exemplo, diferentes Audio Streams são processados, com base em seus metadados e multiplexados ou mesclados no elemento 412.[0182] In this example, different Audio Streams are processed, based on their metadata, and multiplexed or merged at element 412.
[0183] O pelo menos um Audio Stream é aqui representado como incluindo dois Streams 116 e 316 (outros exemplos podem fornecer um único Stream, como na Fig. 2, ou mais de dois Streams). Estes são os Audio Streams destinados a reproduzir a cena de áudio que se espera que o usuário experimente.[0183] The at least one Audio Stream is depicted herein as including two Streams 116 and 316 (other examples may provide a single Stream, as in Fig. 2, or more than two Streams). These are the Audio Streams intended to reproduce the audio scene that the user is expected to experience.
[0184] Além disso, um Earcon Stream 140 pode ser fornecido pelo codificador de mídia 240. Com base nos movimentos do usuário e nas ROIs, conforme indicado nos metadados 131 da viewport e/ou em outros critérios, o processador de ROI 120 causará a reprodução de um Earcon do Earcon Stream 140 (também indicado como Audio Stream adicional como adicional aos Audio Streams 116 e 316).[0184] Additionally, an Earcon Stream 140 may be provided by the media encoder 240. Based on user movements and ROIs as indicated in the viewport metadata 131 and/or other criteria, the ROI processor 120 will cause the playback of an Earcon from the Earcon Stream 140 (also referred to as an additional Audio Stream as in addition to the Audio Streams 116 and 316).
[0185] Cada Audio Stream 116, 316, 140 pode incluir os metadados 236, 416, 141, respectivamente. Pelo menos alguns desses metadados podem ser manipulados e/ou processados para serem fornecidos ao muxer ou multiplexador Stream 412 no qual os pacotes dos Audio Streams são mesclados. Consequentemente, o Earcon pode ser representado como parte da cena de áudio.[0185] Each Audio Stream 116, 316, 140 may include metadata 236, 416, 141, respectively. At least some of this metadata may be manipulated and/or processed to be provided to the Stream muxer or multiplexer 412 in which packets from the Audio Streams are merged. Accordingly, the Earcon may be represented as part of the audio scene.
[0186] O muxer ou multiplexador do Stream 412 pode, portanto, fornecer um Audio Stream 414 com metadados de áudio modificados 238 e metadados de Earcon modificados 234, que podem ser fornecidos a um decodificador de áudio 112 e decodificados e reproduzidos para o usuário.[0186] The Stream muxer or multiplexer 412 may therefore provide an Audio Stream 414 with modified audio metadata 238 and modified Earcon metadata 234, which may be provided to an audio decoder 112 and decoded and played back to the user.
[0187] É possível observar os seguintes aspectos deste exemplo: • Caso de uso: Os dados de áudio são fornecidos em um ou mais Audio Streams 116, 316 (um Stream principal 116 e um Stream auxiliar 316, mas também um único Audio Stream pode ser fornecido) enquanto que os Earcons são fornecidos em um ou mais Streams 140 (dependentes ou independentes do Audio Stream 116) • Em uma implementação no lado do cliente 204, o processador de ROI 120 e o Processador de Metadados 132 são usados para processar eficientemente as informações do Earcon • O Processador de ROI 120 pode receber informações 122 sobre a viewport atual (informações de orientação do usuário) do dispositivo de consumo de mídia usado para o consumo de conteúdo (por exemplo, um HMD). O processador de ROI 120 também pode receber informações sobre a ROI sinalizada nos metadados do Earcon 141 (Video Viewports podem ser sinalizadas no Formato OMAF [Formato de Mídia Omnidirecional]). • Com base nessas informações, o processador de ROI 120 pode decidir ativar um (ou mais) Earcons contidos no Audio Stream adicional 140. Além disso, o processador de ROI 120 pode decidir sobre um local diferente dos Earcons e diferentes valores de ganho (por exemplo, para uma representação mais precisa do Earcon no espaço atual em que o conteúdo é consumido). • O processador de ROI 120 pode fornecer essas informações ao processador de metadados 132. • O processador de metadados 132 pode analisar os metadados contidos no Earcon Audio Stream e • ativar o Earcon • e, se solicitado pelo processador de ROI, modificar a posição espacial e/ou informações de ganho e/ou rótulos de texto contidos nos metadados do Earcon. • O processador de metadados 132 pode analisar também os metadados de áudio 236, 416 de todos os Audio Streams 116, 316 e manipular as informações específicas de áudio de forma que o Earcon possa ser usado como parte da cena de áudio (por exemplo, se a cena de áudio tiver uma base de canais 5.1 e 4 objetos, o elemento Earcon Audio é adicionado à cena como o quinto objeto. Todos os campos de metadados são atualizados de acordo). • Os dados de áudio de cada Stream 116, 316 e os metadados de áudio modificados e metadados de Earcon são então fornecidos a um Stream Muxer ou multiplexador que pode gerar com base nisso, um Audio Stream 414 com um conjunto de metadados (metadados de áudio modificados 238 e metadados de Earcon modificados 234). • Este Stream 414 pode ser decodificado por um único decodificador de áudio e mídia 112 com base nas informações de posição do usuário 122. • Além disso, em um ambiente de Streaming, com base nas mesmas informações, o processador de ROI 120 pode decidir solicitar o(s) Earcon(s) Stream(s) 140 com antecedência (por exemplo, quando o usuário olha para a direção errada com alguns segundos antes da ROI ser ativada).[0187] The following aspects can be noted from this example: • Use case: Audio data is provided in one or more Audio Streams 116, 316 (a main Stream 116 and an auxiliary Stream 316, but also a single Audio Stream can be provided) while Earcons are provided in one or more Streams 140 (dependent or independent of Audio Stream 116) • In a client-side implementation 204, ROI Processor 120 and Metadata Processor 132 are used to efficiently process Earcon information • ROI Processor 120 can receive information 122 about the current viewport (user orientation information) from the media consumption device used for content consumption (e.g., an HMD). The ROI processor 120 may also receive information about the ROI flagged in the Earcon metadata 141 (Video Viewports may be flagged in OMAF Format [Omnidirectional Media Format]). Based on this information, the ROI processor 120 may decide to activate one (or more) Earcons contained in the additional Audio Stream 140. Furthermore, the ROI processor 120 may decide on a different location of the Earcons and different gain values (e.g., for a more accurate representation of the Earcon in the current space in which the content is consumed). The ROI processor 120 may provide this information to the metadata processor 132. The metadata processor 132 may analyze the metadata contained in the Earcon Audio Stream and activate the Earcon and, if requested by the ROI processor, modify the spatial position and/or gain information and/or text labels contained in the Earcon metadata. • The metadata processor 132 may also parse the audio metadata 236, 416 of all Audio Streams 116, 316 and manipulate the audio-specific information so that the Earcon can be used as part of the audio scene (e.g., if the audio scene has a 5.1 channel base and 4 objects, the Earcon Audio element is added to the scene as the fifth object. All metadata fields are updated accordingly). • The audio data of each Stream 116, 316 and the modified audio metadata and Earcon metadata are then provided to a Stream Muxer or multiplexer which may generate based on this an Audio Stream 414 with a set of metadata (modified audio metadata 238 and modified Earcon metadata 234). • This Stream 414 may be decoded by a single audio and media decoder 112 based on the position information of the user 122. • Additionally, in a Streaming environment, based on the same information, the ROI processor 120 may decide to request the Earcon(s) Stream(s) 140 in advance (e.g., when the user looks in the wrong direction a few seconds before the ROI is activated).
[0188] A Fig. 5 mostra um sistema 500 incluindo, no lado do cliente 204, um sistema 502 (sistema do cliente) que pode incorporar, por exemplo, o sistema 100 ou 200. Aqui, é feita referência aos Earcons, mesmo que seja possível generalizar o conceito para qualquer mensagem de informação de áudio.[0188] Fig. 5 shows a system 500 including, on the client side 204, a system 502 (client system) that may incorporate, for example, system 100 or 200. Here, reference is made to Earcons, even though it is possible to generalize the concept to any audio information message.
[0189] O sistema 502 pode incluir o processador de ROI 120, o processador de metadados 132, um multiplexador ou muxer de Stream 412.[0189] System 502 may include ROI processor 120, metadata processor 132, a Stream multiplexer or muxer 412.
[0190] Neste exemplo, um Earcon Stream não é fornecido por uma entidade remota (no lado do cliente), mas é gerado pelo gerador de Áudio sintético 246 (que também pode ter a capacidade de armazenar um Stream, para reutilização subsequente ou para usar uma versão compactada/descompactada de um som natural). Os metadados do Earcon 141 são fornecidos pela entidade remota, por exemplo, em um Audio Stream 116 (que não é um Earcon Stream). Portanto, o gerador de áudio sintético 246 pode ser ativado para criar um fluxo de áudio 140 com base nos atributos dos metadados do Earcon 141. Por exemplo, os atributos podem se referir a um tipo de voz sintetizada (som natural, som sintético, texto falado etc.) e/ou rótulos de texto (o Earcon pode ser gerado através da criação de som sintético com base no texto dos metadados) Nos exemplos, após a criação do Earcon Stream, o mesmo pode ser armazenado para ser reutilizado no futuro. Como alternativa, o som sintético pode ser um som genérico armazenado permanentemente no dispositivo.[0190] In this example, an Earcon Stream is not provided by a remote entity (on the client side), but is generated by the Synthetic Audio generator 246 (which may also have the ability to store a Stream, for subsequent reuse or to use a compressed/decompressed version of a natural sound). The Earcon metadata 141 is provided by the remote entity, for example in an Audio Stream 116 (which is not an Earcon Stream). Therefore, the Synthetic Audio generator 246 may be activated to create an Audio Stream 140 based on the attributes of the Earcon metadata 141. For example, the attributes may refer to a type of synthesized voice (natural sound, synthetic sound, spoken text, etc.) and/or text labels (the Earcon may be generated by creating synthetic sound based on the text in the metadata). In the examples, after the Earcon Stream is created, it may be stored for future reuse. Alternatively, the synthetic sound may be a generic sound that is permanently stored on the device.
[0191] Um muxer ou multiplexador de Stream 412 pode ser usado para mesclar pacotes do Audio Stream 116 (e no caso também de outros Streams, como o Audio Stream auxiliar 316) com os pacotes do Earcon Stream gerados pelo gerador 246. Depois disso, pode ser obtido um Audio Stream 414 que está associado aos metadados de áudio modificados 238 e aos metadados de Earcon modificados 234. O Audio Stream 414 pode ser decodificado pelo decodificador 112 e reproduzido para o usuário no lado do dispositivo de consumo de mídia 206.[0191] A Stream muxer or multiplexer 412 may be used to merge packets of the Audio Stream 116 (and in the case also of other Streams, such as the auxiliary Audio Stream 316) with the packets of the Earcon Stream generated by the generator 246. Thereafter, an Audio Stream 414 may be obtained that is associated with the modified audio metadata 238 and the modified Earcon metadata 234. The Audio Stream 414 may be decoded by the decoder 112 and played back to the user on the side of the media consumption device 206.
[0192] É possível observar os seguintes aspectos deste exemplo: • Caso de uso: • Os dados de áudio são fornecidos em um ou mais Audio Streams (um Stream principal e um Stream auxiliar) • Nenhum Earcon é fornecido do dispositivo remoto, mas os Metadados do Earcon 141 são fornecidos como parte do Audio Stream principal (sinalização específica pode ser usada para indicar que o Earcon não possui dados de áudio associados) • Em uma implementação no lado do cliente, o processador de ROI 120 e o Processador de Metadados 132 são usados para processar eficientemente as informações do Earcon • O Processador de ROI 120 pode receber informações sobre a viewport atual (informações de orientação do usuário) do dispositivo usado no lado do dispositivo de consumo de conteúdo 206 (por exemplo, um HMD). O processador de ROI 120 também pode receber informações sobre e a ROI sinalizada nos metadados (Video Viewports são sinalizadas como no OMAF). • Com base nessas informações, o processador de ROI 120 pode decidir ativar um (ou mais) Earcon(s) presente(s) Stream 116. Além disso, o processador de ROI 120 pode decidir sobre um local diferente dos Earcons e diferentes valores de ganho (por exemplo, para uma representação mais precisa do Earcon no espaço atual em que o conteúdo é consumido). • O processador de ROI 120 pode fornecer essas informações ao processador de metadados 132. • O processador de metadados 120 pode analisar os metadados contidos no Audio Stream 116 e • ativar um Earcon • e, se solicitado pelo processador de ROI 120, modificar a posição espacial e informações de ganho contidas nos metadados do Earcon 141. • O processador de metadados 132 pode analisar também os metadados de áudio 236, 417 de todos os Audio Streams (116, 316) e manipular as informações específicas de áudio de forma que o Earcon possa ser usado como parte da cena de áudio (por exemplo, se a cena de áudio tiver uma base de canais 5.1 e 4 objetos, o elemento Earcon Audio é adicionado à cena como o quinto objeto. Todos os campos de metadados são atualizados de acordo). • Os metadados modificados do Earcon e as informações do processador de ROI 120 são fornecidos para o Gerador de Áudio Sintético 246. O Gerador de Áudio Sintético 246 pode criar um som sintético com base nas informações recebidas (por exemplo, com base na posição espacial do Earcon, um sinal é gerado soletrando o local). Além disso, os metadados do Earcon 141 são associados aos dados de áudio gerados no novo Stream 414. • Os dados de áudio de cada Stream (116, 316) e os metadados de áudio modificados e metadados de Earcon são então fornecidos a um Stream Muxer ou multiplexador que pode gerar com base no Audio Stream com um conjunto de metadados (Áudio e Earcon). • Este Stream 414 pode ser decodificado por um único decodificador de áudio de mídia 112 com base nas informações de posição do usuário. • Alternativamente ou adicionalmente, os Dados de Áudio do Earcon podem ser armazenados em cache no Cliente (por exemplo, de usos anteriores do Earcon) • Alternativamente, a saída do Gerador de Áudio Sintético 246 pode ser um áudio não compactado e pode ser mixada na cena final renderizado • Além disso, em um ambiente de Streaming, com base nas mesmas informações, o processador de ROI 120 pode decidir solicitar o(s) Earcon(s) Stream(s) com antecedência (por exemplo, quando o usuário olha para a direção errada alguns segundos antes da ROI ser ativada).[0192] The following aspects can be noted from this example: Use Case: Audio data is provided in one or more Audio Streams (a main Stream and an auxiliary Stream) No Earcon is provided from the remote device, but Earcon Metadata 141 is provided as part of the main Audio Stream (specific flagging may be used to indicate that the Earcon has no associated audio data) In a client-side implementation, ROI Processor 120 and Metadata Processor 132 are used to efficiently process Earcon information ROI Processor 120 may receive information about the current viewport (user orientation information) from the device used on the content consumption device 206 side (e.g., an HMD). ROI Processor 120 may also receive information about and ROI flagged in the metadata (Video Viewports are flagged as in OMAF). • Based on this information, the ROI processor 120 may decide to activate one (or more) Earcon(s) present in Stream 116. Additionally, the ROI processor 120 may decide on a different location of the Earcons and different gain values (e.g., for a more accurate representation of the Earcon in the current space in which the content is consumed). • ROI processor 120 may provide this information to metadata processor 132. • Metadata processor 120 may analyze the metadata contained in Audio Stream 116 and • activate an Earcon • and, if requested by ROI processor 120, modify the spatial position and gain information contained in the Earcon metadata 141. • Metadata processor 132 may also analyze the audio metadata 236, 417 of all Audio Streams (116, 316) and manipulate the audio-specific information so that the Earcon can be used as part of the audio scene (e.g., if the audio scene has a 5.1 channel base and 4 objects, the Earcon Audio element is added to the scene as the fifth object. All metadata fields are updated accordingly). • The modified Earcon metadata and ROI processor information 120 are provided to the Synthetic Audio Generator 246. The Synthetic Audio Generator 246 can create a synthetic sound based on the information received (e.g., based on the spatial position of the Earcon, a signal is generated spelling out the location). Additionally, the Earcon metadata 141 is associated with the audio data generated in the new Stream 414. • The audio data from each Stream (116, 316) and the modified audio metadata and Earcon metadata are then provided to a Stream Muxer or multiplexer that can generate based on the Audio Stream with a set of metadata (Audio and Earcon). • This Stream 414 can be decoded by a single media audio decoder 112 based on the user position information. • Alternatively or additionally, the Earcon Audio Data may be cached on the Client (e.g., from previous uses of the Earcon) • Alternatively, the output of the Synthetic Audio Generator 246 may be uncompressed audio and may be mixed into the final rendered scene • Additionally, in a Streaming environment, based on the same information, the ROI processor 120 may decide to request the Earcon Stream(s) in advance (e.g., when the user looks in the wrong direction a few seconds before the ROI is activated).
[0193] A Fig. 6 mostra um sistema 600 incluindo, no lado do cliente 204, um sistema 602 (sistema do cliente) que pode incorporar, por exemplo, o sistema 100 ou 200. Aqui, é feita referência aos Earcons, mesmo que seja possível generalizar o conceito para qualquer mensagem de informação de áudio.[0193] Fig. 6 shows a system 600 including, on the client side 204, a system 602 (client system) that may incorporate, for example, system 100 or 200. Here, reference is made to Earcons, even though it is possible to generalize the concept to any audio information message.
[0194] O sistema 602 pode incluir o processador de ROI 120, o processador de metadados 132, um multiplexador ou muxer de Stream 412.[0194] System 602 may include ROI processor 120, metadata processor 132, a Stream multiplexer or muxer 412.
[0195] Neste exemplo, um Earcon Stream não é fornecido por uma entidade remota (no lado do cliente), mas é gerado pelo gerador de Áudio sintético 236 (que também pode ter a capacidade de armazenar um Stream, para reutilização subsequente).[0195] In this example, an Earcon Stream is not provided by a remote entity (on the client side), but is generated by the Synthetic Audio generator 236 (which may also have the ability to store a Stream, for subsequent reuse).
[0196] Neste exemplo, os metadados do Earcon 141 não são fornecidos pela entidade remota. Os metadados do Earcon são gerados por um gerador de metadados 432 que podem gerar os metadados do Earcon a ser usado (processados, manipulados, modificados) pelo processador de metadados 132. Os metadados do Earcon 141 gerados pelo gerador de metadados Earcon 432 podem ter a mesma estrutura e/ou formato e/ou atributo que os metadados do Earcon discutidos para os exemplos anteriores.[0196] In this example, the Earcon metadata 141 is not provided by the remote entity. The Earcon metadata is generated by a metadata generator 432 that can generate the Earcon metadata to be used (processed, manipulated, modified) by the metadata processor 132. The Earcon metadata 141 generated by the Earcon metadata generator 432 can have the same structure and/or format and/or attribute as the Earcon metadata discussed for the previous examples.
[0197] O processador de metadados 132 pode operar como no exemplo da Fig. 5. Um gerador de áudio sintético 246 pode ser ativado para criar um Audio Stream 140 com base nos atributos dos metadados do Earcon 141. Por exemplo, os atributos podem se referir a um tipo de voz sintetizada (som natural, som sintético, texto falado etc.), e/ou ao ganho, e/o estado de ativação/não ativação etc. Nos exemplos, após Earcon Stream 140 ter sido criado, o mesmo pode ser armazenado (em cache) para ser reutilizado no futuro. Também é possível armazenar (em cache), os metadados do Earcon gerados pelo gerador de metadados do Earcon 432.[0197] The metadata processor 132 may operate as in the example of Fig. 5. A synthetic audio generator 246 may be activated to create an Audio Stream 140 based on the attributes of the Earcon metadata 141. For example, the attributes may refer to a type of synthesized voice (natural sound, synthetic sound, spoken text, etc.), and/or the gain, and/or the activation/deactivation state, etc. In the examples, after the Earcon Stream 140 has been created, it may be cached for future reuse. It is also possible to cache the Earcon metadata generated by the Earcon metadata generator 432.
[0198] Um muxer ou multiplexador de Stream 412 pode ser usado para mesclar pacotes do Audio Stream 116 (e no caso também de outros Streams, como o Audio Stream auxiliar 316) com os pacotes do Earcon Stream gerados pelo gerador 246. Depois disso, pode ser obtido um Audio Stream 414 que está associado aos metadados de áudio modificados 238 e aos metadados de Earcon modificados 234. O Audio Stream 414 pode ser decodificado pelo decodificador 112 e reproduzido para o usuário no lado do dispositivo de consumo de mídia 206.[0198] A Stream muxer or multiplexer 412 may be used to merge packets of the Audio Stream 116 (and in the case also of other Streams, such as the auxiliary Audio Stream 316) with the packets of the Earcon Stream generated by the generator 246. Thereafter, an Audio Stream 414 may be obtained that is associated with the modified audio metadata 238 and the modified Earcon metadata 234. The Audio Stream 414 may be decoded by the decoder 112 and played back to the user on the side of the media consumption device 206.
[0199] É possível observar os seguintes aspectos deste exemplo: • Caso de uso: • Os dados de áudio são distribuídos em um ou mais Audio Streams (por exemplo, um Stream principal 116 e um Stream auxiliar 316) • Nenhum Earcon é fornecido do lado do cliente 202, • Nenhum metadado do Earcon é fornecido do lado do cliente 202 • Este uso pode representar uma solução para ativar Earcons para o conteúdo legado que foi criado sem Earcons • Em uma implementação no lado do cliente, o processador de ROI 120 e o Processador de Metadados 232 são usados para processar eficientemente as informações do Earcon • O Processador de ROI 120 pode receber informações 122 sobre a viewport atual (informações de orientação do usuário) do dispositivo usado no lado do dispositivo de consumo de conteúdo 206 (por exemplo, um HMD). O processador de ROI 210 também pode receber informações sobre e a ROI sinalizada nos metadados (Video Viewports são sinalizadas como no OMAF). • Com base nessas informações, o processador de ROI 120 pode decidir ativar um (ou mais) Earcon(s) NÃO presente(s) no Stream (116, 316). • Além disso, o processador de ROI 120 pode fornecer informações sobre a localização dos Earcons e valores de ganho para Gerador de Metadados do Earcon 432. • O processador de ROI 120 pode fornecer essas informações ao processador de metadados 232. • O processador de metadados 232 pode analisar os metadados contidos em um Earcon Audio Stream (se presente) e pode: • ativar o Earcon • e, se solicitado pelo processador de ROI 120, modificar a posição espacial e informações de ganho contidas nos metadados do Earcon. • O processador de metadados pode analisar também os metadados de áudio 236, 417 de todos os Audio Streams 116, 316 e manipular as informações específicas de áudio de forma que o Earcon possa ser usado como parte da cena de áudio (por exemplo, se a cena de áudio tiver uma base de canais 5.1 e 4 objetos, o elemento Earcon Audio é adicionado à cena como o quinto objeto. Todos os campos de metadados são atualizados de acordo). • Os metadados modificados do Earcon 234 e as informações do processador de ROI 120 são fornecidos para o Gerador de Áudio Sintético 246. O Gerador de Áudio Sintético 246 pode criar um som sintético com base nas informações recebidas (por exemplo, com base na posição espacial do Earcon, um sinal é gerado soletrando o local). Além disso, os metadados do Earcon são associados aos dados de áudio gerados no novo Stream. • Da mesma forma, como antes, os dados de áudio de cada Stream e os metadados de áudio modificados e metadados de Earcon são então fornecidos a um Stream Muxer ou multiplexador 412 que pode gerar com base nisso, um Audio Stream 414 com um conjunto de metadados (Áudio e Earcon). • Este Stream 414 pode ser decodificado por um único decodificador de áudio de mídia com base nas informações de posição do usuário. • Alternativamente, os Dados de Áudio do Earcon podem ser armazenados em cache no Cliente (por exemplo, de usos anteriores do Earcon) • Alternativamente, a saída do Gerador de Áudio Sintético pode ser um áudio não compactado e pode ser mixada na cena final renderizada • Além disso, em um ambiente de Streaming, com base nas mesmas informações, o processador de ROI 120 pode decidir solicitar o(s) Earcon(s) Stream(s) com antecedência (por exemplo, quando o usuário olha para a direção errada alguns segundos antes da ROI ser ativada).[0199] The following aspects can be noted from this example: Use case: Audio data is distributed across one or more Audio Streams (e.g., a Main Stream 116 and an Auxiliary Stream 316) No Earcon is provided on the client side 202, No Earcon metadata is provided on the client side 202 This usage may represent a solution to enable Earcons for legacy content that was created without Earcons In a client-side implementation, ROI Processor 120 and Metadata Processor 232 are used to efficiently process Earcon information ROI Processor 120 may receive information 122 about the current viewport (user orientation information) of the device used on the content consumption device side 206 (e.g., an HMD). ROI Processor 210 may also receive information about and the ROI flagged in the metadata (Video Viewports are flagged as in OMAF). • Based on this information, the ROI processor 120 may decide to activate one (or more) Earcon(s) NOT present in the Stream (116, 316). • Additionally, the ROI processor 120 may provide information about the location of the Earcons and gain values to the Earcon Metadata Generator 432. • The ROI processor 120 may provide this information to the metadata processor 232. • The metadata processor 232 may analyze the metadata contained in an Earcon Audio Stream (if present) and may: • activate the Earcon • and, if requested by the ROI processor 120, modify the spatial position and gain information contained in the Earcon metadata. • The metadata processor may also parse the audio metadata 236, 417 from all Audio Streams 116, 316 and manipulate the audio-specific information so that the Earcon can be used as part of the audio scene (e.g., if the audio scene has a 5.1 channel base and 4 objects, the Earcon Audio element is added to the scene as the fifth object. All metadata fields are updated accordingly). • The modified Earcon metadata 234 and information from the ROI processor 120 are provided to the Synthetic Audio Generator 246. The Synthetic Audio Generator 246 may create a synthetic sound based on the information received (e.g., based on the spatial position of the Earcon, a signal is generated spelling out the location). Additionally, the Earcon metadata is associated with the audio data generated in the new Stream. • Similarly as before, the audio data of each Stream and the modified audio metadata and Earcon metadata are then provided to a Stream Muxer or multiplexer 412 which can generate based on this, an Audio Stream 414 with a set of metadata (Audio and Earcon). • This Stream 414 can be decoded by a single media audio decoder based on the user's position information. • Alternatively, the Earcon Audio Data can be cached on the Client (e.g. from previous Earcon uses) • Alternatively, the output of the Synthetic Audio Generator can be uncompressed audio and can be mixed into the final rendered scene • Furthermore, in a Streaming environment, based on the same information, the ROI processor 120 can decide to request the Earcon Stream(s) in advance (e.g. when the user looks in the wrong direction a few seconds before the ROI is activated).
[0200] É possível implementar uma função que permita reproduzir um Earcon apenas quando um usuário não vê a ROI.[0200] It is possible to implement a function that allows playing an Earcon only when a user does not see the ROI.
[0201] O processador de ROI 120 pode verificar periodicamente, por exemplo, a viewport atual do usuário e/ou a posição e/ou a orientação e/ou os dados de movimento da cabeça 122. Se a ROI for visível para o usuário, não há reprodução do Earcon.[0201] The ROI processor 120 may periodically check, for example, the user's current viewport and/or the position and/or orientation and/or movement data of the head 122. If the ROI is visible to the user, there is no playback of the Earcon.
[0202] Se, a partir da viewport atual do usuário e/ou da posição e/ou orientação e/ou dados de movimento da cabeça, o processador de ROI determinar que a ROI não é visível para o usuário, o processador de ROI 120 pode solicitar uma reprodução do Earcon. Neste caso, o processador de ROI 120 pode fazer com que o processador de metadados 132 prepare a reprodução do Earcon. O processador de metadados 132 pode usar uma das técnicas descritas para os exemplos acima. Por exemplo, os metadados podem ser recuperados em um Stream fornecido pelo lado do servidor 202, podem ser gerados pelo gerador de metadados Earcon 432 e assim por diante. Os atributos dos metadados do Earcon podem ser facilmente modificados com base nas solicitações do processador de ROI e/ou em várias condições. Por exemplo, se a seleção de um usuário tiver desativado anteriormente o Earcon, o Earcon não será reproduzido, mesmo que o usuário não veja a ROI. Por exemplo, se um temporizador (configurado anteriormente) ainda não tiver expirado, o Earcon, o Earcon não será reproduzido, mesmo que o usuário não veja a ROI.[0202] If, from the user's current viewport and/or head position and/or orientation and/or movement data, the ROI processor 120 determines that the ROI is not visible to the user, the ROI processor 120 may request a playback of the Earcon. In this case, the ROI processor 120 may cause the metadata processor 132 to prepare the playback of the Earcon. The metadata processor 132 may use one of the techniques described for the examples above. For example, the metadata may be retrieved in a server-side provided Stream 202, may be generated by the Earcon metadata generator 432, and so on. The attributes of the Earcon metadata may be easily modified based on requests from the ROI processor and/or various conditions. For example, if a user's selection has previously disabled the Earcon, the Earcon will not play, even if the user does not see the ROI. For example, if a timer (previously set) has not yet expired, the Earcon will not play, even if the user does not see the ROI.
[0203] Se, a partir da viewport atual do usuário e/ou da posição e/ou orientação e/ou dados de movimento da cabeça, o processador de ROI determina que a ROI não é visível para o usuário, o processador de ROI 120 pode solicitar que nenhuma reprodução do Earcon seja realizada, especificamente se os metadados do Earcon já contiverem sinalização para um Earcon ativo.[0203] If, from the user's current viewport and/or head position and/or orientation and/or movement data, the ROI processor determines that the ROI is not visible to the user, the ROI processor 120 may request that no playback of the Earcon be performed, specifically if the Earcon metadata already contains flagging for an active Earcon.
[0204] Neste caso, o processador de ROI 120 pode fazer com que o processador de metadados 132 desative a reprodução do Earcon. O processador de metadados 132 pode usar uma das técnicas descritas para os exemplos acima. Por exemplo, os metadados podem ser recuperados em um Stream fornecido pelo lado do servidor 202, podem ser gerados pelo gerador de metadados Earcon 432 e assim por diante. Os atributos dos metadados do Earcon podem ser facilmente modificados com base nas solicitações do processador de ROI e/ou em várias condições. Se os metadados já contiverem a indicação de que um Earcon deve ser reproduzido, nesse caso, os metadados serão modificados para indicar que o Earcon está inativo e não deve ser reproduzido.[0204] In this case, the ROI processor 120 may cause the metadata processor 132 to disable playback of the Earcon. The metadata processor 132 may use one of the techniques described for the examples above. For example, the metadata may be retrieved in a Stream provided by the server side 202, may be generated by the Earcon metadata generator 432, and so on. The attributes of the Earcon metadata may be easily modified based on requests from the ROI processor and/or various conditions. If the metadata already contains the indication that an Earcon should be played, in that case the metadata will be modified to indicate that the Earcon is inactive and should not be played.
[0205] É possível observar os seguintes aspectos deste exemplo: • Caso de uso: • Os dados de áudio são entregues em um ou mais Audio Streams 116, 316 (por exemplo, um Stream principal e um Stream auxiliar) enquanto os Earcons são fornecidos em um ou mais Audio Streams 116, 316 ou em um ou mais Streams 140 adicionais (dependentes ou independentes do Audio Stream principal) • Os metadados do Earcon são definidos de forma a indicar que o Earcon estará ativo sempre em momentos específicos. • Uma primeira geração de dispositivos que não inclui um processador de ROI leria os metadados do Earcon e causaria a reprodução do Earcon independentemente do fato de a viewport atual do usuário e/ou a posição e/ou orientação e/ou dados de movimento da cabeça indicar que a ROI é visível para o usuário • Uma nova geração de dispositivos que inclui um processador de ROI, conforme descrito em qualquer um dos sistemas, utilizaria a determinação do processador de ROI. Se a partir da viewport atual do usuário e/ou da posição e/ou orientação e/ou dados de movimento da cabeça, o processador de ROI determina se o ROI é visível para o usuário, o processador de ROI 120 pode solicitar que não seja feita nenhuma reprodução do Earcon, especialmente se os metadados do Earcon já contiverem sinalização para um Earcon ativo. Neste caso, o processador de ROI 120 pode fazer com que o processador de metadados 132 desative a reprodução do Earcon. O processador de metadados 132 pode usar uma das técnicas descritas para os exemplos acima. Por exemplo, os metadados podem ser recuperados em um Stream fornecido pelo lado do servidor 202, podem ser gerados pelo gerador de metadados Earcon 432 e assim por diante. Os atributos dos metadados do Earcon podem ser facilmente modificados com base nas solicitações do processador de ROI e/ou em várias condições. Se os metadados já contiverem a indicação de que um Earcon deve ser reproduzido, nesse caso, os metadados serão modificados para indicar que o Earcon está inativo e não deve ser reproduzido. • Além disso, dependendo do dispositivo de reprodução, o processador de ROI pode decidir solicitar a modificação dos metadados do Earcon. Por exemplo, as informações espaciais do Earcon podem ser modificadas de maneira diferente se o som for reproduzido em fones de ouvido ou em alto-falantes.[0205] The following aspects can be noted from this example: Use case: Audio data is delivered in one or more Audio Streams 116, 316 (e.g., a main Stream and an auxiliary Stream) while the Earcons are provided in one or more Audio Streams 116, 316 or in one or more additional Streams 140 (dependent or independent of the main Audio Stream) Earcon metadata is set to indicate that the Earcon will always be active at specific times A first generation device that does not include an ROI processor would read the Earcon metadata and cause the Earcon to play regardless of whether the user's current viewport and/or head position and/or orientation and/or movement data indicates that the ROI is visible to the user A new generation device that includes an ROI processor, as described in either system, would utilize the ROI processor's determination. If from the user's current viewport and/or head position and/or orientation and/or movement data, the ROI processor 120 determines whether the ROI is visible to the user, the ROI processor 120 may request that no playback of the Earcon be performed, especially if the Earcon metadata already contains flagging for an active Earcon. In this case, the ROI processor 120 may cause the metadata processor 132 to disable playback of the Earcon. The metadata processor 132 may use one of the techniques described for the examples above. For example, the metadata may be retrieved from a server-side provided Stream 202, it may be generated by the Earcon metadata generator 432, and so on. The attributes of the Earcon metadata may be easily modified based on requests from the ROI processor and/or various conditions. If the metadata already contains an indication that an Earcon should be played, then the metadata will be modified to indicate that the Earcon is inactive and should not be played. • Additionally, depending on the playback device, the ROI processor may decide to request modification of the Earcon metadata. For example, the Earcon spatial information may be modified differently depending on whether the sound is played through headphones or speakers.
[0206] Portanto, a cena de áudio final experimentada pelo usuário será obtida com base nas modificações de metadados executadas pelo processador de metadados.[0206] Therefore, the final audio scene experienced by the user will be obtained based on the metadata modifications performed by the metadata processor.
[0207] A Fig. 5 mostra um sistema 550 incluindo, no lado do cliente 204, um sistema 552 (sistema do cliente) que pode incorporar, por exemplo, o sistema 100 ou 200 ou 300 ou 400 ou 500. Aqui, é feita referência aos Earcons, mesmo que seja possível generalizar o conceito para qualquer mensagem de informação de áudio.[0207] Fig. 5 shows a system 550 including, on the client side 204, a system 552 (client system) that may incorporate, for example, system 100 or 200 or 300 or 400 or 500. Here, reference is made to Earcons, even though it is possible to generalize the concept to any audio information message.
[0208] O sistema 552 pode incluir o processador de ROI 120, o processador de metadados 132, um multiplexador ou muxer de Stream 412. (Nos exemplos, diferentes Audio Streams são decodificados (cada um por um respectivo decodificador de áudio de mídia 112) e são subsequentemente misturados e/ou renderizados juntos para fornecer a cena de áudio final).[0208] System 552 may include ROI processor 120, metadata processor 132, a Stream multiplexer or muxer 412. (In the examples, different Audio Streams are decoded (each by a respective media audio decoder 112) and are subsequently mixed and/or rendered together to provide the final audio scene.)
[0209] O pelo menos um Audio Stream é aqui representado como incluindo dois Streams 116 e 316 (outros exemplos podem fornecer um único Stream, como na Fig. 2, ou mais de dois Streams). Estes são os Audio Streams destinados a reproduzir a cena de áudio que se espera que o usuário experimente.[0209] The at least one Audio Stream is depicted herein as including two Streams 116 and 316 (other examples may provide a single Stream, as in Fig. 2, or more than two Streams). These are the Audio Streams intended to reproduce the audio scene that the user is expected to experience.
[0210] Além disso, um Earcon Stream 140 pode ser fornecido pelo codificador de mídia 240.[0210] Additionally, an Earcon Stream 140 may be provided by the media encoder 240.
[0211] Os Audio Streams podem ser codificados em taxas de bits diferentes, que permitem uma adaptação eficiente da taxa de bits, dependendo da conexão de rede (ou seja, para usuários que usam conexão de alta velocidade, é fornecida a versão codificada de alta taxa de bits, enquanto que para usuários com conexão de rede de baixa velocidade é fornecida uma versão de taxa de bits mais baixa).[0211] Audio Streams can be encoded at different bit rates, which allows efficient adaptation of the bit rate depending on the network connection (i.e. for users using high-speed connection, the high-bit-rate encoded version is provided, while for users with low-speed network connection a lower-bit-rate version is provided).
[0212] Os Audio Streams podem ser armazenados em um servidor de mídia 554, onde, para cada Audio Stream, as diferentes codificações com taxas de bits diferentes são agrupadas em um Adaptation Set 556 com os dados apropriados sinalizando a disponibilidade de todos os Adaptation Sets criados. Os Audio adaptation sets 556 e Video adaptation sets 557 podem ser fornecidos.[0212] The Audio Streams may be stored on a media server 554, where for each Audio Stream, the different encodings with different bit rates are grouped into an Adaptation Set 556 with appropriate data signaling the availability of all the Adaptation Sets created. Audio adaptation sets 556 and Video adaptation sets 557 may be provided.
[0213] Com base nos movimentos do usuário e nas ROIs, conforme indicado nos metadados 131 da viewport e/ou em outros critérios, o processador de ROI 120 causará a reprodução de um Earcon do Earcon Stream 140 (também indicado como Audio Stream adicional como adicional aos Audio Streams 116 e 316).[0213] Based on the user's movements and ROIs as indicated in the viewport metadata 131 and/or other criteria, the ROI processor 120 will cause the playback of an Earcon from the Earcon Stream 140 (also indicated as an additional Audio Stream as in addition to the Audio Streams 116 and 316).
[0214] Neste exemplo: • o cliente 552 está configurado para receber, do servidor, dados sobre a disponibilidade de todos os Adaptation Sets, os Adaptation Sets disponíveis, incluindo: o pelo menos um Adaptation Set de cena de áudio para um Audio Stream; e o pelo menos um Adaptation Set de mensagem de áudio para um Audio Stream adicional contendo pelo menos uma mensagem de informação de áudio • Semelhante às outras implementações de exemplo, o Processador de ROI 120 pode receber informações 122 sobre a viewport atual (informações de orientação ao usuário) do lado do dispositivo de consumo de mídia 206 usado para o consumo de conteúdo (por exemplo, com base em um HMD). O processador de ROI 120 também pode receber informações sobre e a ROI sinalizada nos metadados (Video Viewports são sinalizadas como no OMAF). o Com base nessas informações, o processador de ROI 120 pode decidir ativar um (ou mais) Earcons contidos no Earcon Audio Stream 140. o Além disso, o processador de ROI 120 pode decidir sobre um local diferente dos Earcons e diferentes valores de ganho (por exemplo, para uma representação mais precisa do Earcon no espaço atual em que o conteúdo é consumido). o O processador de ROI 120 pode fornecer essas informações a um gerador de dados de seleção 558. • um gerador de dados de seleção 558 pode ser configurado para criar, com base na decisão do processador de ROI, dados de seleção 559 identificando quais dos Adaptation Sets devem ser recebidos; os Adaptation Sets, incluindo os Adaptation Sets da cena de áudio e os Adaptation Sets da mensagem de áudio • O Media Server 554 pode ser configurado para fornecer instruções ao cliente 552 para fazer com que o cliente do Streaming recupere os dados para os Adaptation Sets 556, 557 identificados pelos dados de seleção que identificam quais dos Adaptation Sets devem ser recebidos, os Adaptation Sets que incluem os Adaptation Sets da cena de áudio e os Adaptation Sets da mensagem de áudio • um módulo de download e comutação 560 está configurado para receber os Audio Streams do Media Server 554 com base nos dados de seleção que identificam quais dos Adaptation Sets devem ser recebidos; os Adaptation Sets, incluindo os Adaptation Sets da cena de áudio e os Adaptation Sets da mensagem de áudio. O módulo de download e comutação 560 pode ser adicionalmente configurado para fornecer os metadados de áudio e os metadados do Earcon 141 para o processador de metadados 132. • O processador de ROI 120 pode fornecer essas informações ao processador de metadados 132. • O processador de metadados 132 pode analisar os metadados contidos no Earcon Audio Stream 140 e o ativar o Earcon (para permitir sua reprodução) o e, se solicitado pelo processador de ROI 120, modificar a posição espacial e informações de ganho contidas nos metadados do Earcon 141. • O processador de metadados 132 pode analisar também os metadados de áudio de todos os Audio Streams 116, 316 e manipular as informações específicas de áudio de forma que o Earcon possa ser usado como parte da cena de áudio (por exemplo, se a cena de áudio tiver uma base de canais 5.1 e 4 objetos, o elemento Earcon Audio é adicionado à cena como o quinto objeto. Todos os campos de metadados podem ser atualizados de acordo). • Os dados de áudio de cada Stream 116, 316 e os metadados de áudio modificados e metadados de Earcon são então fornecidos a um Stream Muxer ou multiplexador que pode gerar com base nisso, um Audio Stream 414 com um conjunto de metadados (metadados de áudio modificados 238 e metadados de Earcon modificados 234). • Este Stream pode ser decodificado por um único decodificador de áudio de mídia 112 com base nas informações de posição do usuário 122.[0214] In this example: • the client 552 is configured to receive, from the server, data about the availability of all Adaptation Sets, the available Adaptation Sets, including: o at least one audio scene Adaptation Set for an Audio Stream; and o at least one audio message Adaptation Set for an additional Audio Stream containing at least one audio information message • Similar to the other example implementations, the ROI Processor 120 may receive information 122 about the current viewport (user orientation information) from the side of the media consumption device 206 used for content consumption (e.g., based on an HMD). The ROI Processor 120 may also receive information about and the ROI flagged in the metadata (Video Viewports are flagged as in OMAF). o Based on this information, the ROI processor 120 may decide to activate one (or more) Earcons contained in the Earcon Audio Stream 140. o Additionally, the ROI processor 120 may decide on a different location of the Earcons and different gain values (e.g., for a more accurate representation of the Earcon in the current space in which the content is consumed). o The ROI processor 120 may provide this information to a selection data generator 558. • a selection data generator 558 may be configured to create, based on the decision of the ROI processor, selection data 559 identifying which of the Adaptation Sets should be received; the Adaptation Sets, including the Audio Scene Adaptation Sets and the Audio Message Adaptation Sets • The Media Server 554 may be configured to provide instructions to the client 552 to cause the Streaming client to retrieve data for the Adaptation Sets 556, 557 identified by selection data identifying which of the Adaptation Sets are to be received, the Adaptation Sets including the Audio Scene Adaptation Sets and the Audio Message Adaptation Sets • a download and switch module 560 is configured to receive the Audio Streams from the Media Server 554 based on the selection data identifying which of the Adaptation Sets are to be received; the Adaptation Sets including the Audio Scene Adaptation Sets and the Audio Message Adaptation Sets The download and switching module 560 may be further configured to provide the audio metadata and Earcon metadata 141 to the metadata processor 132. The ROI processor 120 may provide this information to the metadata processor 132. The metadata processor 132 may parse the metadata contained in the Earcon Audio Stream 140 and activate the Earcon (to enable its playback) and, if requested by the ROI processor 120, modify the spatial position and gain information contained in the Earcon metadata 141. The metadata processor 132 may also parse the audio metadata of all Audio Streams 116, 316 and manipulate the audio-specific information so that the Earcon may be used as part of the audio scene (e.g., if the audio scene has a 5.1 channel base and 4 objects, the Earcon Audio element is added to the scene as the fifth object. All metadata fields may be updated accordingly). • The audio data of each Stream 116, 316 and the modified audio metadata and Earcon metadata are then provided to a Stream Muxer or multiplexer which can generate based on this, an Audio Stream 414 with a set of metadata (modified audio metadata 238 and modified Earcon metadata 234). • This Stream can be decoded by a single media audio decoder 112 based on the user position information 122.
[0215] Um Adaptation Set pode ser formado por um conjunto de Representations contendo versões intercambiáveis do respectivo conteúdo, por exemplo, diferentes taxas de bits de áudio (por exemplo, streams diferentes a taxas de bits diferentes). Embora uma única Representation possa ser teoricamente suficiente para fornecer um fluxo reproduzível, várias Representations podem oferecer ao cliente a possibilidade de adaptar o fluxo de mídia às condições atuais da rede e aos requisitos de largura de banda e, portanto, garantir uma reprodução mais suave.[0215] An Adaptation Set may be formed by a set of Representations containing interchangeable versions of the respective content, e.g. different audio bitrates (e.g. different streams at different bitrates). While a single Representation may theoretically be sufficient to provide a playable stream, multiple Representations may offer the client the possibility to adapt the media stream to current network conditions and bandwidth requirements and therefore ensure smoother playback.
[0216] Todos os exemplos acima podem ser implementados por etapas do método. Aqui, um método 700 (que pode ser realizado por qualquer um dos exemplos acima) é descrito para integralidade. O método pode incluir: Na etapa 702, receber pelo menos um Video Stream (106) e pelo menos um primeiro Audio Stream (116, 316), Na etapa 704, decodificar pelo menos um sinal de vídeo de pelo menos um Video Stream (106) para a representação de uma cena de ambiente de VR, AR, MR ou Vídeo de 360 graus (118a) para um usuário; e Na etapa 706, decodificar pelo menos um sinal de áudio de pelo menos um primeiro Audio Stream (116, 316) para a representação de uma cena de áudio (118b) para o usuário; receber a viewport atual de um usuário e/ou a posição e/ou orientação e/ou dados de movimento da cabeça e/ou outros dados relacionados ao usuário (122); e Na etapa 708, receber metadados da viewport (131) associados a um sinal de vídeo de pelo menos um Video Stream (106), os metadados de viewport que definem pelo menos uma ROI; e Na etapa 710, decidir, com base na da viewport atual do usuário e/ou dados de orientação e/ou posição e/ou movimento da cabeça e os metadados (122) da viewport e/ou outros critérios, se uma mensagem de informação de áudio associada a uma ROI deve ser reproduzida. Na etapa 712, receber, processar e/ou manipular os metadados da mensagem de informação de áudio (141) que descrevem a mensagem de informação de áudio, de modo a fazer a reprodução da mensagem de informação de áudio de acordo com os atributos da mensagem de informação de áudio, de modo que a mensagem de informação de áudio faça parte da cena de áudio.[0216] All of the above examples may be implemented by method steps. Here, a method 700 (which may be realized by any of the above examples) is described for completeness. The method may include: In step 702, receiving at least one Video Stream (106) and at least a first Audio Stream (116, 316); In step 704, decoding at least one video signal from the at least one Video Stream (106) into the representation of a VR, AR, MR, or 360-degree Video environment scene (118a) to a user; and In step 706, decoding at least one audio signal from the at least one first Audio Stream (116, 316) into the representation of an audio scene (118b) to the user; receiving a user's current viewport and/or the position and/or orientation and/or head movement data and/or other user-related data (122); and In step 708, receiving viewport metadata (131) associated with a video signal from at least one Video Stream (106), the viewport metadata defining at least one ROI; and In step 710, deciding, based on the user's current viewport and/or orientation and/or head position and/or movement data and the viewport metadata (122) and/or other criteria, whether an audio information message associated with a ROI should be played. In step 712, receiving, processing and/or manipulating the audio information message metadata (141) describing the audio information message, so as to cause playback of the audio information message in accordance with the attributes of the audio information message, such that the audio information message is part of the audio scene.
[0217] Notavelmente, a sequência também pode variar. Por exemplo, as etapas de recebimento 702, 706, 708 podem ter uma ordem diferente, de acordo com a ordem real na qual as informações são fornecidas.[0217] Notably, the sequence may also vary. For example, the receiving steps 702, 706, 708 may have a different order, according to the actual order in which the information is provided.
[0218] A linha 714 refere-se ao fato que o médico pode ser reiterado. A etapa 712 pode ser ignorada em caso de decisão do processador de ROI não reproduzir a mensagem de informação de áudio.[0218] Line 714 refers to the fact that the physician may be reiterated. Step 712 may be skipped in case the ROI processor decides not to play the audio information message.
[0219] A Fig. 8 mostra um sistema 800 que pode implementar um dos sistemas (ou um componente do mesmo) ou executar o método 700. O sistema 800 pode incluir um processador 802 e uma unidade de memória não transitória 806 que armazenam instruções que, quando executadas pelo processador 802, podem fazer com que o processador execute pelo menos as operações de processamento de Stream discutidas acima e/ou as operações de processamento de metadados discutidas acima. O sistema 800 pode incluir uma unidade de entrada/saída 804 para a conexão com dispositivos externos.[0219] Fig. 8 shows a system 800 that may implement one of the systems (or a component thereof) or execute method 700. System 800 may include a processor 802 and a non-transitory memory unit 806 that store instructions that, when executed by processor 802, may cause the processor to perform at least the Stream processing operations discussed above and/or the metadata processing operations discussed above. System 800 may include an input/output unit 804 for connecting to external devices.
[0220] O sistema 800 pode implementar pelo menos algumas das (ou todas) as funções do processador de ROI 120, do processador de metadados 232, do gerador 246, do muxer ou do multiplexador 412, do decodificador 112m do gerador de metadados do Earcon 432 etc.[0220] System 800 may implement at least some (or all) of the functions of ROI processor 120, metadata processor 232, generator 246, muxer or multiplexer 412, decoder 112m, Earcon metadata generator 432, etc.
[0221] Dependendo de certos requisitos de implementação, exemplos podem ser implementados no hardware. A implementação pode ser realizada usando um meio de armazenamento digital, por exemplo, um disquete, um disco versátil digital (DVD), um disco Blu-Ray, um disco compacto (CD), uma memória somente de leitura (ROM), uma memória somente de leitura programável (PROM), uma memória somente de leitura apagável e programável (EPROM), uma memória somente de leitura programável apagável eletricamente (EEPROM) ou uma memória flash, com sinais de controle legíveis eletronicamente nela armazenados, que cooperam (ou são capazes de cooperar) com um sistema de computador programável, de modo que o método respectivo seja executado. Portanto, o meio de armazenamento digital pode ser legível por computador.[0221] Depending on certain implementation requirements, examples may be implemented in hardware. The implementation may be realized using a digital storage medium, e.g., a floppy disk, a digital versatile disc (DVD), a Blu-Ray disc, a compact disc (CD), a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory, with electronically readable control signals stored therein, which cooperate (or are capable of cooperating) with a programmable computer system so that the respective method is executed. Therefore, the digital storage medium may be computer-readable.
[0222] Geralmente, os exemplos podem ser implementados como um produto de programa de computador com instruções de programa, sendo as instruções de programa operacionais para executar um dos métodos quando o produto de programa de computador é executado em um computador. As instruções do programa podem, por exemplo, ser armazenadas em um meio legível por máquina.[0222] Generally, the examples may be implemented as a computer program product with program instructions, the program instructions being operative to execute one of the methods when the computer program product is executed on a computer. The program instructions may, for example, be stored on a machine-readable medium.
[0223] Outros exemplos incluem o programa de computador para executar um dos métodos aqui descritos, armazenados em um suporte legível por máquina. Em outras palavras, um exemplo de método é, portanto, um programa de computador com instruções de programa para executar um dos métodos descritos neste documento, quando o programa de computador é executado em um computador.[0223] Other examples include the computer program for executing one of the methods described herein, stored in a machine-readable medium. In other words, an example method is therefore a computer program with program instructions for executing one of the methods described herein, when the computer program is executed on a computer.
[0224] Um exemplo adicional dos métodos é, portanto, um meio portador de dados (ou um meio de armazenamento digital ou um meio legível por computador) incluindo, gravado nele, o programa de computador para executar um dos métodos aqui descritos. O meio portador de dados, o meio de armazenamento digital ou o meio gravado são tangíveis e/ou não-transitórios, em vez de sinais intangíveis e transitórios.[0224] A further example of the methods is therefore a data-bearing medium (or a digital storage medium or a computer-readable medium) including, recorded thereon, the computer program for executing one of the methods described herein. The data-bearing medium, the digital storage medium or the recorded medium are tangible and/or non-transitory, rather than intangible and transient signals.
[0225] Um outro exemplo inclui uma unidade de processamento, por exemplo, um computador ou um dispositivo lógico programável que executa um dos métodos descritos neste documento.[0225] Another example includes a processing unit, e.g., a computer or a programmable logic device, that performs one of the methods described in this document.
[0226] Um outro exemplo inclui um computador com o programa de computador gravado para executar um dos métodos aqui descritos.[0226] Another example includes a computer with the computer program recorded to perform one of the methods described herein.
[0227] Um outro exemplo inclui um aparelho ou um sistema que transfere (por exemplo, eletronicamente ou opticamente) um programa de computador para executar um dos métodos aqui descritos para um receptor. O receptor pode, por exemplo, ser um computador, um dispositivo móvel, um dispositivo de memória ou semelhante. O aparelho ou sistema pode, por exemplo, incluir um servidor de arquivos para transferir o programa do computador para o receptor.[0227] Another example includes an apparatus or system that transfers (e.g., electronically or optically) a computer program for performing one of the methods described herein to a receiver. The receiver may, for example, be a computer, a mobile device, a memory device, or the like. The apparatus or system may, for example, include a file server for transferring the computer program to the receiver.
[0228] Em alguns exemplos, um dispositivo lógico programável (por exemplo, uma matriz de portas programável em campo) pode ser usada para executar algumas ou todas as funcionalidades dos métodos aqui descritos. Em alguns exemplos, uma matriz de portas programável de campo pode cooperar com um microprocessador para executar um dos métodos descritos neste documento. Geralmente, os métodos podem ser executados por um aparelho de hardware apropriado.[0228] In some examples, a programmable logic device (e.g., a field-programmable gate array) may be used to perform some or all of the functionality of the methods described herein. In some examples, a field-programmable gate array may cooperate with a microprocessor to perform one of the methods described herein. Generally, the methods may be performed by an appropriate hardware apparatus.
[0229] Os exemplos descritos acima são ilustrativo s para os princípios discutidos. Entende-se que modificações e variações dos arranjos e os detalhes aqui descritos serão aparentes. Portanto, a intenção é limitar-se ao escopo das reivindicações iminentes de patentes e não aos detalhes específicos apresentados por meio de descrição e explicação dos exemplos aqui apresentados.[0229] The examples described above are illustrative of the principles discussed. It is understood that modifications and variations of the arrangements and details described herein will be apparent. Therefore, the intent is to limit oneself to the scope of the imminent patent claims and not to the specific details presented by way of description and explanation of the examples presented herein.
Claims (31)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP17196255.8 | 2017-10-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
BR122024013703A2 true BR122024013703A2 (en) | 2024-09-17 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11949957B2 (en) | Method and apparatus for efficient delivery and usage of audio messages for high quality of experience | |
EP4329319A2 (en) | Optimizing audio delivery for virtual reality applications | |
WO2021065277A1 (en) | Information processing device, reproduction processing device, and information processing method | |
BR122024013703A2 (en) | METHOD AND EQUIPMENT FOR EFFECTIVE USE AND DELIVERY OF AUDIO MESSAGES FOR HIGH QUALITY EXPERIENCE | |
BR122024013706A2 (en) | METHOD AND EQUIPMENT FOR EFFECTIVE USE AND DELIVERY OF AUDIO MESSAGES FOR HIGH QUALITY EXPERIENCE | |
BR122024013710A2 (en) | METHOD AND EQUIPMENT FOR EFFECTIVE USE AND DELIVERY OF AUDIO MESSAGES FOR HIGH QUALITY EXPERIENCE | |
BR122024013700A2 (en) | METHOD AND EQUIPMENT FOR EFFECTIVE USE AND DELIVERY OF AUDIO MESSAGES FOR HIGH QUALITY EXPERIENCE | |
BR122024013708A2 (en) | METHOD AND EQUIPMENT FOR EFFECTIVE USE AND DELIVERY OF AUDIO MESSAGES FOR HIGH QUALITY EXPERIENCE |