FR3098074A1 - Method of transmitting audio content in a hybrid receiver by receiving manifests sent by a manager server, receiver and associated manager server - Google Patents

Method of transmitting audio content in a hybrid receiver by receiving manifests sent by a manager server, receiver and associated manager server Download PDF

Info

Publication number
FR3098074A1
FR3098074A1 FR1907050A FR1907050A FR3098074A1 FR 3098074 A1 FR3098074 A1 FR 3098074A1 FR 1907050 A FR1907050 A FR 1907050A FR 1907050 A FR1907050 A FR 1907050A FR 3098074 A1 FR3098074 A1 FR 3098074A1
Authority
FR
France
Prior art keywords
server
broadcast
content
determined
data packets
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR1907050A
Other languages
French (fr)
Other versions
FR3098074B1 (en
Inventor
David Vincent
Dimitri Fague
Frédéric BEAUCHAMP
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telediffusion de France ets Public de Diffusion
Original Assignee
Telediffusion de France ets Public de Diffusion
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Telediffusion de France ets Public de Diffusion filed Critical Telediffusion de France ets Public de Diffusion
Priority to FR1907050A priority Critical patent/FR3098074B1/en
Priority to PCT/EP2020/068106 priority patent/WO2020260637A1/en
Publication of FR3098074A1 publication Critical patent/FR3098074A1/en
Application granted granted Critical
Publication of FR3098074B1 publication Critical patent/FR3098074B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/439Processing of audio elementary streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Abstract

TITRE : Procédé de transmission d’un contenu audio dans un récepteur hybride en recevant des manifestes émis par un serveur manageur, récepteur et serveur manageur associé L'invention concerne un procédé de transmission d’un contenu audio dans un récepteur hybride en vue d’une reproduction en différé, ce contenu étant diffusé en temps réel sur un canal radio déterminé, et les paquets de données étant disponibles en différé en se connectant à un serveur dédié (CDN). Dans un premier temps, un serveur dit « Manager » émet à ce serveur dédié (CDN) des requêtes pour recevoir un manifeste identifiant une succession d’un nombre déterminé de paquets de données dont celui contenant l’audio diffusé en temps réel sur le canal radio déterminé (2.1). Le serveur Manager enregistre les manifestes émis par le serveur dédié en les datant par le moment d’émission du plus récent paquet de données diffusées sur le canal radio déterminé (2.2). Un récepteur hybride demande au serveur Manager de recevoir une partie d’un contenu diffusé à partir d’un moment déterminé (2.3). Le serveur Manager recherche alors dans les manifestes mémorisés des références des paquets de données correspondant à la partie de contenu diffusée à partir du moment déterminé et émet vers le récepteur hybride un manifeste référençant l’ensemble de ces paquets de données (2.4). Le récepteur hybride envoie alors au serveur dédié (CDN) une requête pour recevoir les paquets de données référencées dans ce manifeste (2.5). Figure 1TITLE: Method of transmitting audio content in a hybrid receiver by receiving manifests sent by a manager server, receiver and associated manager server The invention relates to a method of transmitting audio content in a hybrid receiver with a view to deferred reproduction, this content being broadcast in real time on a determined radio channel, and the data packets being available deferred by connecting to a dedicated server (CDN). First, a so-called "Manager" server sends to this dedicated server (CDN) requests to receive a manifesto identifying a succession of a determined number of data packets including the one containing the audio broadcast in real time on the channel. radio determined (2.1). The Manager server records the manifests sent by the dedicated server, dating them by the time of transmission of the most recent data packet broadcast on the determined radio channel (2.2). A hybrid receiver requests the Manager server to receive part of a broadcast content from a specific time (2.3). The Manager server then searches the stored manifests for references of the data packets corresponding to the part of the content broadcast from the determined moment and sends to the hybrid receiver a manifest referencing all of these data packets (2.4). The hybrid receiver then sends a request to the dedicated server (CDN) to receive the data packets referenced in this manifest (2.5). Figure 1

Description

Procédé de transmission d’un contenu audio dans un récepteur hybride en recevant des manifestes émis par un serveur manageur, récepteur et serveur manageur associéMethod for transmitting audio content in a hybrid receiver by receiving manifests transmitted by a manager server, receiver and associated manager server

Le domaine de l’invention est celui de la réception d’un contenu audio ou audiovisuel dans un récepteur hybride capable de recevoir à la fois des contenus d’un réseau de diffusion et d’un réseau bidirectionnel. L’invention concerne plus particulièrement le fait de recevoir en différé des parties d’une émission audio qui a préalablement été diffusée sur un canal radio en se connectant à un serveur dédié.The field of the invention is that of the reception of audio or audiovisual content in a hybrid receiver capable of receiving content from both a broadcast network and a bidirectional network. The invention relates more particularly to the fact of receiving deferred portions of an audio broadcast which has previously been broadcast on a radio channel by connecting to a dedicated server.

Art antérieurPrior art

Il est connu des stations radio émettant des contenus audio dans un canal fréquentiel donné. Cette source radio dispose généralement d’un site permettant de recevoir en streaming des contenus audio sous la forme de fichier de paquet de données. Il est également connu que la diffusion des documents numériques peut s’effectuer par des réseaux de diffusion de télévision numérique, comme les réseaux TNT, mettant en œuvre la norme DVB-T2 ("Digital Video Broadcasting – Terrestrial" pour "diffusion vidéo numérique terrestre"). La diffusion de paquets de données est spécifiée par des standards de façon à pouvoir être reçu par un grand nombre de récepteurs de tout type.Radio stations transmitting audio content in a given frequency channel are known. This radio source generally has a site for receiving streaming audio content in the form of a data packet file. It is also known that the broadcasting of digital documents can be carried out by digital television broadcasting networks, such as DTT networks, implementing the DVB-T2 standard ("Digital Video Broadcasting – Terrestrial" for "digital terrestrial video broadcasting "). The broadcasting of data packets is specified by standards so that they can be received by a large number of receivers of any type.

Dans le domaine de la diffusion de contenus audio, il est également connu des récepteurs dits « hybrides » capables de recevoir des contenus et de reproduire à la fois des émissions en provenance d’un réseau de diffusion, des contenus transmis à partir d’un site, et des contenus transmis en baladodiffusion ou « podcast » selon la terminologie anglo-saxonne. Ces récepteurs sont dotés d’une interface utilisateur comportant un écran et un clavier, des moyens de réception radio et des moyens d’émission de signaux sonores vers des haut-parleurs. L’utilisateur règle son appareil pour recevoir un contenu diffusé à la radio, ou en provenance d’un site Internet. Certains appareils hybrides peuvent enrichir la réception de contenus audio diffusés par une connexion de type Internet ou « IP », par exemple en améliorant la zone de couverture des contenus diffusés en combinant leurs réceptions traditionnelles par réseau de diffusion selon les normes de diffusion suivantes (liste non limitatives) :In the field of broadcasting audio content, so-called "hybrid" receivers are also known which are capable of receiving content and reproducing both broadcasts from a broadcast network, content transmitted from a site, and content transmitted in podcasting or "podcast" according to the Anglo-Saxon terminology. These receivers are equipped with a user interface comprising a screen and a keyboard, radio reception means and means for transmitting sound signals to loudspeakers. The user sets his device to receive content broadcast on the radio or from a website. Some hybrid devices can enrich the reception of audio content broadcast via an Internet or “IP” type connection, for example by improving the coverage area of the content broadcast by combining their traditional reception via the broadcast network according to the following broadcast standards (list non-limiting):

- FM (Fréquence Modulée) ou AM (modulation d’amplitude),- FM (Frequency Modulated) or AM (amplitude modulation),

- DAB (acronyme de « Digital Audio Broadcasting »), DAB+,- DAB (acronym for “Digital Audio Broadcasting”), DAB+,

- DMB,- DMB,

- DRM, DRM+,- DRM, DRM+,

- DVB (acronyme de « Digital Audio Broadcasting »), DVB-T, DVB-S,- DVB (acronym for “Digital Audio Broadcasting”), DVB-T, DVB-S,

avec des téléchargements ou « streaming » selon la terminologie anglo-saxonne par réseau IP (Wifi, 3G, 4G).with downloads or "streaming" according to the Anglo-Saxon terminology by IP network (Wifi, 3G, 4G).

Si les documents numériques sont de type audio et/ou vidéo, alors ils sont généralement encodés selon le standard MPEG, puis un serveur les reçoit en provenance d’une ou plusieurs sources et planifie la diffusion en temps réel des contenus sous forme numérique. Dans le même temps, un serveur crée une succession de paquets de données numériques (ou « chunk » - cette appellation sera ensuite utilisée dans le reste du document) permettant à des récepteurs numériques de les télécharger (en « streaming » par exemple) et de pouvoir accéder en différé à ces contenus. La durée d’un chunk varie typiquement de 2 à 10 secondes. Les techniques de segmentation sont connues en soi, on peut citer par exemple les technologies HLS, DASH ou encore, Smooth Streaming. Chaque chunk dispose d’une structure de données de fichier contenant au moins une charge utile (par exemple, les données audio et /ou vidéo, avec les données synchronisant leur reproduction, par exemple des marqueurs temporels ou « timestamps » en langue anglo-saxonne), une référence permettant de les identifier, et éventuellement, un identifiant de la source (typiquement l’identifiant d’une chaîne de diffusion).If the digital documents are of the audio and/or video type, then they are generally encoded according to the MPEG standard, then a server receives them from one or more sources and plans the real-time distribution of the content in digital form. At the same time, a server creates a succession of digital data packets (or "chunks" - this name will then be used in the rest of the document) allowing digital receivers to download them (in "streaming" for example) and be able to access this content offline. The duration of a chunk typically varies from 2 to 10 seconds. The segmentation techniques are known per se, mention may be made, for example, of the HLS, DASH or even Smooth Streaming technologies. Each chunk has a file data structure containing at least one payload (for example, audio and/or video data, with the data synchronizing their reproduction, for example time markers or "timestamps" in English language ), a reference making it possible to identify them, and possibly, an identifier of the source (typically the identifier of a broadcast channel).

La reproduction sur un récepteur d’un contenu peut intervenir soit à cause d’une action de l’utilisateur, soit par un événement affectant les bonnes conditions de la réception. Cet événement peut par exemple être le fait que le récepteur est un ordiphone (ou « smartphone » selon la terminologie anglo-saxonne) et qu’à un certain moment, un appel est passé interrompant la reproduction du document audio. Dans un autre contexte, le récepteur peut être déplacé dans une zone sans porteuse radio et ne peut donc plus recevoir l’émission radio sélectionnée par l’utilisateur (c’est le cas par exemple d’un autoradio lorsque le véhicule passe dans un tunnel). Dans de tel cas, l’utilisateur peut avoir envie de reprendre la reproduction au moment où celle-ci s’est arrêtée et donc écouter en différé l’émission choisie.The reproduction on a receiver of a content can occur either because of an action of the user, or by an event affecting the good conditions of the reception. This event may for example be the fact that the receiver is a smartphone (or "smartphone" in English terminology) and that at a certain moment a call is made interrupting the reproduction of the audio document. In another context, the receiver can be moved to an area with no radio carrier and can therefore no longer receive the radio transmission selected by the user (this is the case, for example, of a car radio when the vehicle passes through a tunnel ). In such a case, the user may wish to resume playback at the time when it stopped and therefore listen to the chosen program later.

Une première solution consiste en ce que le récepteur continue à recevoir le contenu pendant l’interruption et l’enregistre dans une mémoire gérée circulairement. Lors de la reprise, l’appareil lit sa mémoire au moment de l’interruption et reproduit le contenu en différé. Ce système nécessite une mémoire locale de taille suffisante et, de toute façon, ne convient pas pour des événements qui ont empêché de recevoir correctement le contenu. Une autre façon de poursuivre la reproduction d’un contenu à un moment où il a été interrompu, consiste à se connecter à un site permettant de télécharger la partie restante. L’appareil télécharge et enregistre une partie au moins du contenu et, en utilisant une interface utilisateur, l’utilisateur peut avancer rapidement et ainsi passer par dessus des moments qui ont déjà être reproduits.A first solution consists in the receiver continuing to receive the content during the interruption and recording it in a circularly managed memory. When resuming, the device reads its memory at the time of the interruption and reproduces the deferred content. This system requires local memory of sufficient size and, in any case, is not suitable for events that have prevented the content from being received correctly. Another way to continue the reproduction of content at a time when it has been interrupted is to connect to a site allowing the remaining part to be downloaded. The device downloads and saves at least some of the content and, using a user interface, the user can fast forward and thus skip over moments that have already been played.

Les sources de contenus, comme par exemple les stations radios, disposent de serveurs dit CDN (acronyme de « Content Delivery Network », selon la terminologie anglo-saxonne) permettant de transmettre des parties de contenus audio. Ces paquets de contenus audio sont référencés dans une structure de données appelées « manifeste », un manifeste référence plusieurs paquets de données correspondant à des chunks dont les contenus audio se suivent. La création d’un nouveau chunk déclenche la mise à jour du manifeste courant (ou « Live » selon la terminologie anglo-saxonne) par le CDN, qui produit ainsi une succession de manifestes concomitamment à la diffusion du contenu. Lorsqu’un récepteur hybride veut recevoir un contenu qui a été diffusé à un certain moment du passé, il demande au serveur dédié à la source radio de lui transmettre le manifeste dont le premier chunk référencé est celui créé à ce moment déterminé. Suite à la réception du manifeste, le récepteur en extrait la référence des chunks, typiquement une adresse URL, et peut alors télécharger la partie audio correspondante et la reproduire.Content sources, such as radio stations for example, have so-called CDN servers (acronym for “Content Delivery Network”, according to the English terminology) making it possible to transmit parts of audio content. These audio content packets are referenced in a data structure called “manifest”, a manifesto references several data packets corresponding to chunks whose audio contents follow each other. The creation of a new chunk triggers the update of the current manifest (or “Live” according to the Anglo-Saxon terminology) by the CDN, which thus produces a succession of manifests concomitantly with the distribution of the content. When a hybrid receiver wants to receive content that was broadcast at a certain time in the past, it asks the server dedicated to the radio source to send it the manifest whose first referenced chunk is the one created at this specific time. Following receipt of the manifesto, the receiver extracts the reference of the chunks, typically a URL address, and can then download the corresponding audio part and play it.

Mais, le serveur dédié ne sauvegarde pas tous les manifestes qu’il crée au fur et à mesure de la diffusion du contenu, mais seulement le dernier : le manifeste Live. De ce fait, en s’adressant à ce serveur dédié, un récepteur hybride ne peut récupérer qu’un nombre restreint de manifestes et ne peut donc avoir accès qu’aux derniers paquets de données diffusés. Si le récepteur souhaite revenir sur un contenu diffusé il y a peu de temps, le serveur dédié a déjà effacé les manifestes qui référencent les chunks correspondants et ne pourra donc pas le transmettre au récepteur. C’est d’autant plus dommage que le serveur dédié garde en mémoire les différents chunks pendant un certain temps, même si le manifeste les référençant a été effacé. De cette manière, il serait encore possible de récupérer des paquets de données d’un contenu audio diffusé il y a un certain temps.But, the dedicated server does not save all the manifests it creates as the content is delivered, only the last one: the Live manifest. Therefore, by addressing this dedicated server, a hybrid receiver can only retrieve a limited number of manifests and can therefore only have access to the last data packets broadcast. If the receiver wishes to return to a content broadcast a short time ago, the dedicated server has already erased the manifests that reference the corresponding chunks and therefore will not be able to transmit it to the receiver. It is all the more unfortunate that the dedicated server keeps the different chunks in memory for a certain time, even if the manifesto referencing them has been erased. In this way, it would still be possible to recover data packets from audio content broadcast some time ago.

Un des buts de la présente invention est la possibilité de récupérer une partie au moins d’un contenu audio préalablement diffusé, bien que le manifeste permettant de référencer cette partie audio ne soit plus disponible au niveau du serveur dédié à cette source de contenus.One of the aims of the present invention is the possibility of recovering at least part of a previously broadcast audio content, although the manifest making it possible to reference this audio part is no longer available at the level of the server dedicated to this source of content.

Un autre but de la présente invention est de pouvoir facilement informer un récepteur hybride de la disponibilité ou non d’une partie d’un contenu audio en fonction de sa source et de son moment de sa diffusion.Another object of the present invention is to be able to easily inform a hybrid receiver of the availability or not of a part of an audio content according to its source and its time of broadcast.

Il existe un besoin d’une telle technique, qui permette de palier à la disparition prématurée des manifestes au niveau des serveurs dédié à des sources radio.There is a need for such a technique, which makes it possible to compensate for the premature disappearance of manifests at the level of servers dedicated to radio sources.

Il existe également un besoin de mettre à la disposition des utilisateurs des moyens permettant de recréer des manifestes qui ont été supprimés et qui référencent des contenus audio qui sont toujours disponibles sur le serveur de la source radio.There is also a need to provide users with means for recreating manifests which have been deleted and which reference audio content which is still available on the server of the radio source.

L’invention répond à ce besoin en proposant un procédé de transmission d’un contenu audio dans un récepteur hybride en vue d’une reproduction en différé, ledit contenu étant diffusé en temps réel sur un canal radio déterminé, les paquets de données dudit contenu étant disponibles en différé en se connectant à un serveur dédié (CDN), le procédé comprenant au moins les étapes suivantes :The invention meets this need by proposing a method for transmitting audio content in a hybrid receiver with a view to delayed reproduction, said content being broadcast in real time on a determined radio channel, the data packets of said content being available offline by connecting to a dedicated server (CDN), the method comprising at least the following steps:

- émission par un serveur dit « Manager » à ce serveur dédié (CDN) d’une pluralité de requêtes pour recevoir un manifeste identifiant une succession d’un nombre déterminé de paquets de données dont celui contenant l’audio diffusé en temps réel sur le canal radio déterminé,- transmission by a so-called "Manager" server to this dedicated server (CDN) of a plurality of requests to receive a manifest identifying a succession of a determined number of data packets including the one containing the audio broadcast in real time on the determined radio channel,

- mémorisation dans le serveur Manager de la pluralité de manifestes émis par le serveur dédié, les manifestes mémorisés étant datés par le moment d’émission du plus récent paquet de données diffusées sur le canal radio déterminé,- storage in the Manager server of the plurality of manifests transmitted by the dedicated server, the stored manifests being dated by the time of transmission of the most recent data packet broadcast on the determined radio channel,

- transmission par le récepteur hybride au serveur Manager d’une requête pour recevoir la partie au moins du contenu diffusée à partir d’un moment déterminé,- transmission by the hybrid receiver to the Manager server of a request to receive at least part of the content broadcast from a determined moment,

- recherche par le serveur Manager dans les manifestes mémorisés des références des paquets de données correspondant à la partie de contenu diffusé à partir du moment déterminé et émission vers le récepteur hybride d’un manifeste référençant l’ensemble de ces paquets de données,- search by the Manager server in the stored manifests of the references of the data packets corresponding to the part of content broadcast from the determined moment and transmission to the hybrid receiver of a manifesto referencing all of these data packets,

- émission par le récepteur hybride au serveur dédié (CDN) d’une requête pour recevoir les paquets de données référencées dans le manifeste transmis par le serveur Manager.- transmission by the hybrid receiver to the dedicated server (CDN) of a request to receive the data packets referenced in the manifest transmitted by the Manager server.

Selon un premier mode de réalisation les requêtes émises par le serveur Manager au serveur dédié (CDN) pour recevoir un nouveau manifeste sont émises à des intervalles de temps régulier, dont la durée est inférieure à la durée de reproduction du contenu audio d’un paquet de données.According to a first embodiment, the requests sent by the Manager server to the dedicated server (CDN) to receive a new manifest are sent at regular time intervals, the duration of which is less than the duration of reproduction of the audio content of a packet. of data.

Selon un autre mode de réalisation, le procédé de transmission comporte une étape d’émission vers le serveur dédié d’une requête pour recevoir un paquet de données diffusé à un moment déterminé, une réponse émise par le serveur dédié indiquant une absence de disponibilité de ce paquet déclenchant l’effacement au sein du serveur Manager des manifestes ayant les références de ce paquet de données, ainsi que les références des paquets de données dont le contenu audio a été diffusé avant celui du paquet référencé dans la requête.According to another embodiment, the transmission method comprises a step of sending to the dedicated server a request to receive a data packet broadcast at a determined time, a response sent by the dedicated server indicating an absence of availability of this packet triggering the deletion within the Manager server of the manifests having the references of this data packet, as well as the references of the data packets whose audio content was broadcast before that of the packet referenced in the request.

Selon un autre mode de réalisation, les manifestes mémorisés dans le serveur Manager sont gérés circulairement, les plus anciens étant effacés par les plus récents.According to another embodiment, the manifests stored in the Manager server are managed circularly, the oldest being erased by the most recent.

Selon un autre mode de réalisation, l’étape de recherche dans la mémoire circulaire s’arrête jusqu’à un nombre déterminé de manifestes les plus anciens qui sont considérés inaccessibles.According to another embodiment, the step of searching in the circular memory stops until a determined number of the oldest manifests which are considered inaccessible.

Selon un autre mode de réalisation, le procédé de transmission comporte une étape d’association au sein du serveur Manager de chaque paquet de donnée référencé par un manifeste et du moment de la diffusion de ce paquet de donnée sur le canal radio déterminé, le serveur Manager émettant les références d’un paquet de données à la suite de la réception d’une requête mentionnant ce canal radio déterminé et du moment de sa diffusion.According to another embodiment, the transmission method includes a step of associating within the Manager server each data packet referenced by a manifesto and the time of broadcast of this data packet on the determined radio channel, the server Manager emitting the references of a data packet following the receipt of a request mentioning this determined radio channel and the time of its broadcast.

Selon un autre mode de réalisation, le procédé de transmission comporte une étape de renumérotation des manifestes reçus du serveur dédié, pour toujours attribuer la valeur « 1 » au dernier manifeste et en numérotant successivement les autres jusqu’au plus ancien manifeste reçu et présent en mémoire.According to another embodiment, the transmission method includes a step of renumbering the manifests received from the dedicated server, to always assign the value "1" to the last manifest and successively numbering the others up to the oldest manifest received and present in memory.

Selon un autre mode de réalisation, lorsque la recherche n’a pas permis de trouver un manifeste référençant des paquets de données correspondant à la partie de contenu diffusé à partir du moment déterminé, alors la recherche continue en recherchant un manifeste référençant des paquets de données dont le contenu a été diffusé avant le moment déterminé.According to another embodiment, when the search has not made it possible to find a manifest referencing data packets corresponding to the part of content broadcast from the determined moment, then the search continues by searching for a manifest referencing data packets whose content was broadcast before the specified time.

Selon un autre aspect, l’invention concerne un serveur de données comportant des moyens de communication avec au moins un serveur (CDN) dédié à la diffusion d’un canal radio déterminé et au moins un récepteur hybride, et des moyens de mémorisation capable d’enregistrer au moins un manifeste identifiant une succession d’un nombre déterminé de paquets de données dont celui contenant l’audio diffusé en temps réel sur le canal radio déterminé. Le moyen de communication émet vers ce serveur dédié (CDN) une pluralité de requêtes pour recevoir un manifeste identifiant les paquets de données contenant l’audio diffusé en temps réel sur le canal radio déterminé, le moyen de mémorisation enregistrant la pluralité de manifestes émis par le serveur dédié en les datant par le moment d’émission du plus récent paquet de données diffusées sur le canal radio déterminé, le moyen de communication recevant du récepteur hybride au moins une requête pour recevoir la partie au moins du contenu diffusée à partir d’un moment déterminé, le serveur manager disposant d’un moyen de recherche dans les manifestes mémorisés des références des paquets de données correspondant à la partie de contenu diffusé à partir du moment déterminé et émission vers le récepteur hybride d’un manifeste référençant l’ensemble de ces paquets de données.According to another aspect, the invention relates to a data server comprising means of communication with at least one server (CDN) dedicated to the broadcasting of a given radio channel and at least one hybrid receiver, and storage means capable of recording at least one manifest identifying a succession of a determined number of data packets including that containing the audio broadcast in real time on the determined radio channel. The communication means transmits to this dedicated server (CDN) a plurality of requests to receive a manifest identifying the data packets containing the audio broadcast in real time on the determined radio channel, the storage means recording the plurality of manifests transmitted by the dedicated server by dating them with the time of transmission of the most recent data packet broadcast on the determined radio channel, the communication means receiving from the hybrid receiver at least one request to receive at least part of the content broadcast from a determined moment, the manager server having a means of searching in the stored manifests for the references of the data packets corresponding to the part of content broadcast from the determined moment and transmission to the hybrid receiver of a manifesto referencing the set of these data packets.

Selon un autre aspect, l’invention concerne un récepteur hybride comportant des moyens de réception d’un contenu diffusé en temps réel sur un canal radio déterminé, des moyens de communication avec au moins un serveur (CDN) dédié à la diffusion de ce canal radio déterminé et au moins un serveur Manager, un moyen de reproduction du contenu audio reproduisant en temps réel le contenu audio reçu du canal radio déterminé, et un moyen de mémorisation du moment de l’interruption de la reproduction dudit contenu, caractérisé en ce qu’au moment de la reprise de la reproduction du contenu interrompu, le moyen de communication émet vers un serveur dit « manager » une requête pour recevoir la partie au moins du contenu diffusée à partir d’un moment mémorisé, le moyen de communication recevant dudit serveur Manager un manifeste identifiant une succession d’un nombre déterminé de paquets de données dont celui contenant l’audio diffusé au moment déterminé, le moyen de communication émettant vers le serveur dédié (CDN) une requête pour recevoir les paquets de données référencées dans le manifeste transmis par le serveur Manager, lesdits paquets de données reçus étant reproduit à la réception.According to another aspect, the invention relates to a hybrid receiver comprising means for receiving content broadcast in real time on a determined radio channel, means of communication with at least one server (CDN) dedicated to the broadcasting of this channel determined radio station and at least one Manager server, a means of reproducing the audio content reproducing in real time the audio content received from the determined radio channel, and a means of memorizing the moment of the interruption of the reproduction of said content, characterized in that 'at the time of the resumption of the reproduction of the interrupted content, the means of communication sends to a server called "manager" a request to receive at least part of the content broadcast from a stored moment, the means of communication receiving from said Manager server a manifest identifying a succession of a determined number of data packets including that containing the audio broadcast at the determined time, the means of communication transmitting to the dedicated server (CDN) a request to receive the data packets referenced in the manifest transmitted by the Manager server, said received data packets being reproduced upon receipt.

Selon un autre aspect, l’invention concerne un produit programme d'ordinateur, comprenant des instructions de code de programme pour la mise en œuvre du procédé tel que décrit dans les paragraphes ci-dessus, lorsque ledit programme est exécuté sur un ordinateur.According to another aspect, the invention relates to a computer program product, comprising program code instructions for implementing the method as described in the paragraphs above, when said program is executed on a computer.

Présentation des figuresPresentation of figures

D'autres buts, caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante, donnée à titre de simple exemple illustratif, et non limitatif, en relation avec les figures, parmi lesquelles :Other aims, characteristics and advantages of the invention will appear more clearly on reading the following description, given by way of a simple illustrative example, and not limiting, in relation to the figures, among which:

: présente une architecture générale d’un système de diffusion de contenus permettant à des récepteurs hybrides de recevoir et de reproduire en différé des contenus, selon un mode particulier de réalisation de l’invention; : presents a general architecture of a content distribution system allowing hybrid receivers to receive and reproduce content offline, according to a particular embodiment of the invention;

: présente un exemple d’ordinogramme des principales étapes du procédé de transmission en différé d’une partie au moins d’un contenu audio, qui a été préalablement diffusé ; : presents an example of a flowchart of the main steps of the method for the delayed transmission of at least part of an audio content, which has been broadcast beforehand;

: présente un schéma montrant la présence des manifestes et des chunks au sein des différents serveurs ; : presents a diagram showing the presence of manifests and chunks within the different servers;

: représente un schéma d’un appareil récepteur hybride, selon un mode de réalisation particulier de l'invention ; : represents a diagram of a hybrid receiver device, according to a particular embodiment of the invention;

: illustre les principaux composants d’un serveur distant selon un exemple de réalisation. : illustrates the main components of a remote server according to an exemplary embodiment.

Description détaillée de l’inventionDetailed description of the invention

Sur toutes les figures du présent document, les éléments identiques sont désignés par une même référence.In all the figures of this document, identical elements are designated by the same reference.

Principe général.General principle.

L’invention concerne un procédé de transmission d’un contenu audio dans un récepteur hybride en vue d’une reproduction en différé, ce contenu étant diffusé en temps réel sur un canal radio déterminé, et les paquets de données étant disponibles en différé en se connectant à un serveur dédié (CDN). Dans un premier temps, un serveur dit « Manager » émet à ce serveur dédié des requêtes pour recevoir un manifeste identifiant une succession d’un nombre déterminé de paquets de données dont celui contenant l’audio diffusé en temps réel sur le canal radio déterminé. Le serveur Manager enregistre les manifestes émis par le serveur dédié en les datant par le moment d’émission du plus récent paquet de données diffusées sur le canal radio déterminé. Un récepteur hybride demande au serveur Manager de recevoir une partie d’un contenu diffusé à partir d’un moment déterminé. Le serveur Manager recherche alors dans les manifestes mémorisés des références des paquets de données correspondant à la partie de contenu diffusé à partir du moment déterminé et émet vers le récepteur hybride un manifeste référençant l’ensemble de ces paquets de données. Le récepteur hybride envoie alors au serveur dédié (CDN) une requête pour recevoir les paquets de données référencées dans ce manifeste.The invention relates to a method for transmitting audio content in a hybrid receiver with a view to delayed reproduction, this content being broadcast in real time on a determined radio channel, and the data packets being available offline in connecting to a dedicated server (CDN). First, a so-called “Manager” server sends requests to this dedicated server to receive a manifest identifying a succession of a determined number of data packets, including the one containing the audio broadcast in real time on the determined radio channel. The Manager server saves the manifests issued by the dedicated server by dating them with the time of issue of the most recent data packet broadcast on the determined radio channel. A hybrid receiver asks the Manager server to receive part of a broadcast content from a determined time. The Manager server then searches the stored manifests for references to data packets corresponding to the portion of content broadcast from the determined time and sends a manifest to the hybrid receiver referencing all of these data packets. The hybrid receiver then sends the dedicated server (CDN) a request to receive the data packets referenced in this manifest.

Description d’un mode particulier de réalisationDescription of a particular embodiment

Sur toutes les figures du présent document, les éléments (ou les étapes) identiques sont désignées par une même référence numérique.In all the figures of this document, identical elements (or steps) are designated by the same reference numeral.

On présente maintenant, en relation avec laFig. 1, une architecture générale d’un système de diffusion de contenus audio permettant à des récepteurs hybrides de recevoir et de reproduire en différé des contenus, selon un mode particulier de réalisation de l’invention.We now present, in relation to FIG. 1 , a general architecture of an audio content broadcasting system allowing hybrid receivers to receive and reproduce content offline, according to a particular embodiment of the invention.

Une source radio 1, appelée « studio radio » produit un flux audio correspondant à un contenu tel que : musique, journal, émission culturelle, feuilleton, … Cette source radio émet sur des ondes radio le contenu à diffuser de façon que des récepteurs puissent les capter et les reproduire en temps réel. Ces récepteurs 2 sont dit « hybrides » par le fait qu’ils peuvent recevoir des émissions radio sur un canal de diffusion et reproduire le contenu, et qu’ils ont également les moyens de se connecter par une liaison bidirectionnelle avec un serveur pour lui demander de transmettre des paquets de données représentant un contenu audio. Au sein de la source radio 1, ses signaux audio sont codés par un codeur 3 et mis dans des paquets de données appelés « chunk ». Une fois produit, chaque chunk est envoyé à un serveur 4 dit « CDN », qui est un serveur dédié à une source de contenus particulière. Ce serveur CDN gère la transmission des chunks aux récepteurs hybrides 2 dans le contexte du streaming ou du podcast. La gestion des chunks s’effectue à l’aide d’un manifeste qui est une structure de données identifiant plusieurs chunks, ces derniers correspondent à des contenus audio qui se suivent. Dès qu’un nouveau chunk est créé à un instant T0, un nouveau manifeste est créé qui contient les références des trois chunk suivants :A radio source 1, called "radio studio" produces an audio stream corresponding to content such as: music, newspaper, cultural program, soap opera, etc. This radio source transmits the content to be broadcast over radio waves so that receivers can capture and reproduce them in real time. These receivers 2 are said to be “hybrid” in that they can receive radio transmissions on a broadcast channel and reproduce the content, and that they also have the means of connecting via a bidirectional link with a server to request to transmit data packets representing audio content. Within the radio source 1, its audio signals are encoded by an encoder 3 and put into data packets called “chunks”. Once produced, each chunk is sent to a so-called “CDN” server 4, which is a server dedicated to a particular content source. This CDN server manages the transmission of chunks to 2 hybrid receivers in the context of streaming or podcasting. Chunks are managed using a manifest, which is a data structure identifying several chunks, which correspond to consecutive audio content. As soon as a new chunk is created at a time T0, a new manifest is created which contains the references of the following three chunks:

- le chunk émis par la source à T0,- the chunk emitted by the source at T0,

- le chunk émis par la source à T0-∆t ,- the chunk emitted by the source at T0-∆t ,

- le chunk émis par la source à T0 – (2x∆t),- the chunk emitted by the source at T0 – (2x∆t),

où ∆t est la durée de reproduction du contenu audio d’un chunk, par exemple 6 secondes, ou 10 secondes. Il est bien évident que le chiffre « trois » n’est donné qu’à titre d’exemple et que le nombre de chunks référencés dans un manifeste peut varier dans le cadre de l’invention. Le manifeste référence également un numéro de session qui identifie la source radio, et qui spécifie un format (HLS ou DASH, par exemple). Lorsqu’un récepteur hybride veut recevoir un contenu qui a été diffusé précédemment, il demande au serveur CDN 4 de cette source radio 1 de lui transmettre le manifeste dont le premier chunk référencé est celui créé à ce moment déterminé, la charge utile de ce chunk étant le contenu audio qui a été diffusé à ce moment. Suite à la réception du manifeste, le récepteur en extrait les références des trois chunks, typiquement des adresses URL. Le récepteur peut alors les télécharger du serveur CDN 4, et les reproduire.where ∆t is the duration of reproduction of the audio content of a chunk, for example 6 seconds, or 10 seconds. It is obvious that the number "three" is only given by way of example and that the number of chunks referenced in a manifesto can vary within the framework of the invention. The manifest also references a session number that identifies the radio source, and specifies a format (HLS or DASH, for example). When a hybrid receiver wants to receive content that has been broadcast previously, it asks the CDN server 4 of this radio source 1 to send it the manifest whose first referenced chunk is the one created at this determined moment, the payload of this chunk being the audio content that was broadcast at that time. Following receipt of the manifest, the receiver extracts the references of the three chunks, typically URL addresses. The receiver can then download them from the CDN server 4, and reproduce them.

Mais les serveurs CDN 4 ne gardent en mémoire qu’un nombre restreint de manifestes, l’apparition d’un nouveau manifeste déclenchant l’effacement du plus ancien dans la mémoire du serveur CDN. Les serveurs CDN sauvegardent les chunks plus longtemps que les manifestes. Pour palier à la disparition prématurée des manifestes, la présente invention prévoit la configuration d’un serveur 5 dit « Manager » qui reçoit au fil du temps des manifestes en provenance des serveur CDN et les enregistre dans une mémoire 6, typiquement un disque dur. La capacité de stockage étant plus grande, le serveur Manager maintient dans sa mémoire 6 plus de manifestes qu’un serveur CDN.But CDN 4 servers only keep a limited number of manifests in memory, the appearance of a new manifest triggering the erasure of the oldest in the memory of the CDN server. CDN servers save chunks longer than manifests. To compensate for the premature disappearance of the manifests, the present invention provides for the configuration of a so-called “Manager” server 5 which over time receives manifests from the CDN servers and saves them in a memory 6, typically a hard disk. Since the storage capacity is greater, the Manager server maintains 6 more manifests in its memory than a CDN server.

LaFig. 2présente un ordinogramme des principales étapes du procédé de transmission en différé d’une partie au moins d’un contenu audio, quia été préalablement diffusé. A l’étape 2.1, le serveur Manager 5 émet vers le serveur CDN 4 une pluralité de requêtes pour recevoir un manifeste. Avantageusement, les requêtes sont émises périodiquement vers le serveur dédié CDN pour guetter la présence d’un nouveau manifeste, ces requêtes étant émises à des intervalles de temps réguliers, dont la durée est inférieure à la durée de reproduction d’un chunk. De cette façon, le serveur Manager ne peut manquer l’apparition d’un nouveau manifeste référençant un nouveau chunk. Typiquement, le serveur Manager interroge le serveur CDN toutes les 50 millisecondes et guette ainsi l’apparition d’un nouveau manifeste. La précision de la datation d’un manifeste (et donc de chaque nouveau chunk) correspond à la période d’interrogation du serveur CDN dédié à une source radio. Fig. 2 shows a flowchart of the main steps of the method for the delayed transmission of at least part of an audio content, which has been broadcast beforehand. In step 2.1, the Manager server 5 transmits to the CDN server 4 a plurality of requests to receive a manifest. Advantageously, the requests are sent periodically to the CDN dedicated server to watch for the presence of a new manifesto, these requests being sent at regular time intervals, the duration of which is less than the reproduction duration of a chunk. This way, the Manager server cannot miss the appearance of a new manifest referencing a new chunk. Typically, the Manager server polls the CDN server every 50 milliseconds and thus watches for the appearance of a new manifest. The precision of the dating of a manifest (and therefore of each new chunk) corresponds to the polling period of the CDN server dedicated to a radio source.

Suite à la découverte d’un nouveau manifeste, le serveur Manager l’analyse et en extrait les identifiants des chunks. Le serveur Manager met ensuite à jour dans une mémoire 7 un tableau associant chaque chunk émis par une même source radio, les références du manifeste dont ce chunk est le premier élément et le moment de la diffusion de ce chunk, c’est à dire le moment où le contenu audio de ce chunk est diffusé par radio (étape 2.2). Le serveur Manager liste ainsi un historique de l’ensemble des manifestes émis par un serveur CDN 4 donné. De cette manière, le serveur Manager peut retransmettre à un récepteur qui en fait la demande, un manifeste qui a été auparavant émis par un serveur CDN et qui a été ensuite effacé. En utilisant son historique, le serveur Manager est capable d’associer chaque chunk avec le moment où son contenu audio a été diffusé par la source radio.Following the discovery of a new manifest, the Manager server analyzes it and extracts the identifiers of the chunks. The Manager server then updates in a memory 7 a table associating each chunk emitted by the same radio source, the references of the manifesto of which this chunk is the first element and the time of the broadcast of this chunk, that is to say the when the audio content of this chunk is broadcast by radio (step 2.2). The Manager server thus lists a history of all the manifests issued by a given CDN 4 server. In this way, the Manager server can retransmit to a receiver who requests it, a manifest which was previously sent by a CDN server and which was then erased. Using its history, the Manager server is able to associate each chunk with when its audio content was broadcast by the radio source.

Lors de l’étape 2.3, un récepteur hybride 2 souhaite reprendre la reproduction d’un contenu audio interrompu. Il émet pour cela au serveur Manager une requête pour recevoir la partie au moins du contenu diffusée à partir d’un moment déterminé. Le serveur Manager 5 recherche alors dans les manifestes mémorisés des références des paquets de données correspondant à la partie de contenu diffusé à partir du moment déterminé et émet vers le récepteur hybride un manifeste référençant les paquets de données (étape 2.4). Suite à la réception du manifeste et au cours d’une étape 2.5, le récepteur hybride 4 émet vers le serveur dédié (CDN) une requête pour recevoir les paquets de données référencées dans le manifeste reçus. Dès que les paquets de données sont reçus, ils sont décodés et le contenu audio est reproduit.During step 2.3, a hybrid receiver 2 wishes to resume the reproduction of interrupted audio content. To do this, it sends a request to the Manager server to receive at least part of the content broadcast from a given moment. The Manager server 5 then searches in the stored manifests for references of the data packets corresponding to the part of content broadcast from the determined moment and sends a manifest referencing the data packets to the hybrid receiver (step 2.4). Following receipt of the manifest and during a step 2.5, the hybrid receiver 4 sends a request to the dedicated server (CDN) to receive the data packets referenced in the received manifest. As soon as the data packets are received, they are decoded and the audio content is reproduced.

Détermination de la datation d’un chunkDetermining the dating of a chunk

On constate généralement un décalage entre le moment où le contenu audio est diffusé par radio et le moment où le chunk contenant les données de ce contenu apparaissent dans un manifeste en sortie du serveur CDN 4. Lorsque le récepteur hybride 2 veut reprendre la reproduction, il doit indiquer le moment où la reproduction du contenu audio diffusé par radio a été interrompu, ce qui n’est pas nécessairement le moment d’apparition du manifeste référençant le chunk correspondant à ce contenu audio. La façon de calculer la date associée à l’apparition du chunk (ou du manifeste qui le référence) en fonction de la date de diffusion de son contenu audio, va maintenant être décrite.There is generally a lag between the moment when the audio content is broadcast by radio and the moment when the chunk containing the data of this content appears in a manifest at the output of the CDN server 4. When the hybrid receiver 2 wants to resume the reproduction, it must indicate the moment when the reproduction of the audio content broadcast by radio was interrupted, which is not necessarily the moment of appearance of the manifest referencing the chunk corresponding to this audio content. The way to calculate the date associated with the appearance of the chunk (or of the manifesto which references it) according to the date of broadcast of its audio content, will now be described.

La source de contenu 1 dispose d’un module logiciel que l’on peut appeler « Délai compute », ce module permet de calculer, pour une même radio, le délai entre deux sources audio. Pour une radio, la source qui est diffusée en premier, souvent l’onde radio en Modulation de Fréquence (FM), est considérée comme la référence. On appelle « R », la valeur du retard entre le flux en streaming et le flux audio diffusé en temps réel vers tous les récepteurs. La valeur « R » est avantageusement calculée dynamiquement en réceptionnant d’un côté le flux IP diffusé et de l’autre le contenu diffusé, et en comparant les contenus pour évaluer le décalage.Content source 1 has a software module that can be called “Delay compute”, this module makes it possible to calculate, for the same radio, the delay between two audio sources. For a radio, the source that is broadcast first, often the Frequency Modulated (FM) radio wave, is considered the reference. We call “R” the value of the delay between the streaming stream and the audio stream broadcast in real time to all the receivers. The “R” value is advantageously calculated dynamically by receiving the broadcast IP stream on one side and the broadcast content on the other, and by comparing the content to evaluate the offset.

En interrogeant périodiquement le serveur CDN, on obtient la date d’apparition d’un nouveau manifeste signalant l’ajout d’un nouveau chunk, cette date est notée Dp. Le lien entre le contenu audio diffusé et celui transmis dans un chunk est réalisé à l’aide d’une base de données qui liste, pour chaque station de radio, les flux IP associés. De plus, des algorithmes évaluent les deux contenus et élaborent un indice de confiance sur leur ressemblance. Si cet indice est faible, alors les contenus sont différents.By periodically querying the CDN server, we obtain the date of appearance of a new manifest signaling the addition of a new chunk, this date is noted Dp. The link between the audio content broadcast and that transmitted in a chunk is made using a database which lists, for each radio station, the associated IP streams. In addition, algorithms evaluate the two contents and develop a confidence index on their resemblance. If this index is low, then the contents are different.

Soit « Dur » la durée d’un chunk, l’estimation de la date « Dck » de la partie de l’audio la plus ancienne dans le chunk peut alors être calculée par l’équation suivante :Let “Dur” be the duration of a chunk, then the estimated “Dck” date of the oldest part of the audio in the chunk can be calculated by the following equation:

Dck = Dp - Dur – R,Dck = Dp - Hard - R,

En d’autres termes, un nouveau chunk apparaît sur le serveur CDN 4 à une date et heure Dp qui est déterminé par la date et heure de diffusion Dck du contenu audio en temps réel, à laquelle on rajoute la durée du chunk Dur et une valeur de retard R qui est calculé pour un certain temps au moins. Une fois les valeurs Dp, Dur et R, calculées pour un chunk n, les dates des chunks suivants sont calculées en utilisant la relation : Dckn+1 = Dckn + durée du chunk n.In other words, a new chunk appears on the CDN server 4 at a date and time Dp which is determined by the date and time of broadcast Dck of the audio content in real time, to which we add the duration of the Dur chunk and a delay value R which is calculated for a certain time at least. Once the Dp, Dur and R values have been calculated for a chunk n, the dates of the following chunks are calculated using the relationship: Dckn+1 = Dckn + duration of chunk n.

Le serveur Manager 5 qui scrute périodiquement l’apparition de nouveau manifeste vérifie que la date de mise à disposition réelle d’un chunk ne diverge pas. Si l’écart est supérieur à un seuil préconfiguré, alors la scrutation rapide toutes les 50 millisecondes effectuée précédemment, doit être répétée pour se resynchroniser. Cette dérive est normale car elle est liée aux différences d’horloge entre le codeur du flux et la plateforme RB (acronyme de « RadioBridge »). Un arrêt du flux en entrée du codeur peut avoir le même effet.The Manager 5 server, which periodically scans the appearance of new manifests, checks that the actual availability date of a chunk does not diverge. If the deviation is greater than a preconfigured threshold, then the rapid scan every 50 milliseconds performed previously must be repeated to resynchronize. This drift is normal because it is related to the clock differences between the stream encoder and the RB platform (acronym for "RadioBridge"). A stoppage of the flux at the input of the encoder can have the same effect.

Détermination du nombre de chunks disponibles sur un serveur CDNDetermining the number of chunks available on a CDN server

Les manifestes qui décrivent un flux diffusé en temps réel en streaming adaptatif ne comportent les références que d’un petit nombre de chunks. En effet, ces manifestes ne concernent finalement que les chunks des derniers morceaux d’audio diffusés par la station. Ceci évite que le fichier ne soit trop volumineux car il est chargé très fréquemment par les récepteurs hybrides 2. Par exemple, le manifeste peut ne contenir que les références vers les trois chunks les plus récents, alors que plusieurs centaines de chunks peuvent encore être disponibles sur le serveur CDN.Manifests that describe an adaptive streaming real-time stream only include references to a small number of chunks. Indeed, these manifestos ultimately concern only the chunks of the latest pieces of audio broadcast by the station. This prevents the file from being too large as it is loaded very frequently by Hybrid Receivers 2. For example, the manifest may only contain references to the three most recent chunks, while several hundred chunks may still be available on the CDN server.

La disponibilité de chaque chunk au niveau du serveur CDN est déterminée par une durée appelée « Durée de Vie » ou TTL (de l’anglo-saxon : « Time To Live »). Si le temps entre l’apparition du chunk et le temps courant atteint cette valeur, alors le chunk est effacé de la mémoire du serveur CDN. Pendant toute la durée TTL, le chunk reste disponible même s’il n’est plus référencé par les manifestes apparaissant au fil du temps sur le serveur CDN.The availability of each chunk at the level of the CDN server is determined by a duration called "Lifetime" or TTL (from the Anglo-Saxon: "Time To Live"). If the time between the appearance of the chunk and the current time reaches this value, then the chunk is erased from the memory of the CDN server. Throughout the TTL duration, the chunk remains available even if it is no longer referenced by manifests appearing over time on the CDN server.

Si à un instant donné, le serveur Manager se connecte à un serveur CDN, il reçoit un manifeste ne référençant qu’un petit nombre de chunks, or le serveur CDN peut encore fournir bien d’autres chunks. Pour améliorer la quantité de chunks qui sont réellement disponibles au sein du serveur CDN, le serveur Manager met en place un mécanisme de recherche qui est notamment lancé lors de la réinitialisation du serveur Manager.If at a given moment, the Manager server connects to a CDN server, it receives a manifest referencing only a small number of chunks, but the CDN server can still provide many other chunks. To improve the quantity of chunks which are actually available within the CDN server, the Manager server sets up a search mechanism which is notably launched when the Manager server is reinitialized.

Ce mécanisme consiste dans un premier temps, à charger le manifeste puis à rechercher le nom du chunk le plus ancien référencé dans ce manifeste. Ce nom est terminé par un numéro de chunk. Le mécanisme se poursuit en diminuant de ‘1’ le numéro pour obtenir la référence du chunk précédent puis, le mécanisme tente de le télécharger à partir du serveur CDN. Si le chunk peut être téléchargé, il est ajouté à la liste des chunks disponibles.This mechanism consists of first loading the manifest and then searching for the name of the oldest chunk referenced in this manifest. This name ends with a chunk number. The mechanism continues by decreasing the number by '1' to obtain the reference of the previous chunk, then the mechanism tries to download it from the CDN server. If the chunk can be downloaded, it is added to the list of available chunks.

L’opération est ensuite répétée de façon itérative jusqu’à ce que le serveur Manager n’arrive plus à télécharger le chunk dont il vient de construire le nom. Pour limiter le volume téléchargé par ce mécanisme, la méthode HTTP HEAD sera privilégiée pour vérifier la disponibilité d’un chunk.The operation is then repeated iteratively until the Manager server can no longer download the chunk whose name it has just constructed. To limit the volume downloaded by this mechanism, the HTTP HEAD method will be preferred to check the availability of a chunk.

Afin de limiter l’impact de coupures courtes et selon un perfectionnement, en cas d’échec d’un téléchargement de chunks, le serveur Manager cherche à télécharger un certain nombre de chunks ayant un numéro inférieur à celui non disponible. Si toutes les tentatives échouent, alors on ne peut plus remonter plus en avant dans le temps et le nombre de manifestes permettant de retrouver des chunks sur le serveur CDN est alors figé en utilisant le dernier chunk disponible trouvé. Ces manifestes sont enregistrés dans une mémoire circulaire gérée par deux pointeurs, la taille de cette mémoire étant directement proportionnelle au nombre de chunks disponibles.In order to limit the impact of short cuts and according to an improvement, in the event of failure of a download of chunks, the Manager server seeks to download a certain number of chunks having a number lower than that which is not available. If all the attempts fail, then we cannot go back any further in time and the number of manifests making it possible to find chunks on the CDN server is then frozen using the last available chunk found. These manifests are saved in a circular memory managed by two pointers, the size of this memory being directly proportional to the number of chunks available.

Afin de limiter la taille de cette mémoire circulaire, le serveur Manager ne recherche itérativement qu’un nombre limité de chunks, par exemple 300. Si le nombre de chunks référencés atteint cette valeur, alors le processus de recherche s’interrompt.In order to limit the size of this circular memory, the Manager server only searches iteratively for a limited number of chunks, for example 300. If the number of referenced chunks reaches this value, then the search process is interrupted.

Si pendant la recherche de chunk, le compteur utilisé pour construire leurs identifiants atteint la valeur 0, alors la recherche est arrêtée. Il n’existe pas en effet de numéro de chunk ayant une valeur négative.If during the search for chunks, the counter used to build their identifiers reaches the value 0, then the search is stopped. There is indeed no chunk number with a negative value.

Pour chaque chunk découvert sur le serveur CDN, une entrée est ajoutée dans la base de données du gestionnaire. Cette entrée contient :For each chunk discovered on the CDN server, an entry is added to the handler database. This entry contains:

- la référence du chunk (typiquement son adresse URL),- the reference of the chunk (typically its URL address),

- la date de production de son contenu audio,- the production date of its audio content,

- un numéro de session correspondant au manifeste pointant le chunk comme le premier à lire. Le manifeste associé est construit en utilisant les N chunks découverts qui précèdent celui émis en temps réel. Selon le standard HLS, ce manifeste a pour référence « numero_de_session.m3u8 ». Cette méthode a pour avantage de rendre le système auto adaptatif au nombre de chunks disponibles sur le serveur CDN.- a session number corresponding to the manifest pointing the chunk as the first to be read. The associated manifest is built using the N discovered chunks that precede the one emitted in real time. According to the HLS standard, this manifest has the reference "session_number.m3u8". This method has the advantage of making the system self-adaptive to the number of chunks available on the CDN server.

Selon un perfectionnement et afin d’éviter de fournir des manifestes qui référenceraient des chunks récemment supprimés du serveur CDN, les N derniers chunks du buffer ne doivent pas être adressables pour une reprise de la lecture. Pour un buffer contenant M chunks, seuls (M-N) chunks seront adressables via les manifestes produits par la plateforme.According to a refinement and in order to avoid providing manifests that would reference chunks recently deleted from the CDN server, the last N chunks of the buffer must not be addressable for a resumption of reading. For a buffer containing M chunks, only (M-N) chunks will be addressable via the manifests produced by the platform.

Le serveur Manager gère dans une mémoire circulaire la disponibilité des chunks, en demandant au serveur CDN le téléchargement des manifestes en temps réel, en inscrivant les références des nouveaux chunk, et en mettant à jour les références en fonction de la disponibilités des chunks.The Manager server manages the availability of chunks in a circular memory, by asking the CDN server to download manifests in real time, by registering the references of new chunks, and by updating the references according to the availability of chunks.

Ces trois étapes sont répétées cycliquement avec une période qui peut varier, puisqu’elle doit être légèrement inférieure à la durée du dernier chunk chargé (une seconde en moins par exemple).These three steps are repeated cyclically with a period that can vary, since it must be slightly less than the duration of the last loaded chunk (one second less for example).

Le fait de vérifier la disponibilité d’un chunk au sein du serveur CDN entraine la remise à zéro de son compteur de durée de vie, et une augmentation de sa disponibilité. Une vérification systématique de tous les chunks a donc pour effet de faire artificiellement croitre le nombre de chunks disponible sur le serveur CDN et d’augmenter les coûts de fonctionnement. Afin de limiter le coût d’implémentation, la vérification de la présence d’un chunk doit être réalisée en utilisant la méthode « http HEAD » plutôt que la méthode GET.Checking the availability of a chunk within the CDN server causes its lifespan counter to be reset to zero, and its availability to increase. A systematic check of all chunks therefore has the effect of artificially increasing the number of chunks available on the CDN server and increasing operating costs. In order to limit the cost of implementation, the verification of the presence of a chunk must be carried out using the “http HEAD” method rather than the GET method.

Afin d’éviter les effets décrit ci-dessus, le plus ancien chunk N est automatiquement retiré de la liste des chunks disponible quand un nouveau chunk sera ajouté et le chunk N-1 (qui devient le dernier chunk) est testé. Si le serveur Manager constate que le chunk N-1 n’est plus disponible au sein du serveur CDN, alors il est supprimé de la mémoire circulaire et le chunk N-2 est testé. Ces étapes sont répétées jusqu’à ce qu’un chunk disponible soit découvert.In order to avoid the effects described above, the oldest chunk N is automatically removed from the list of available chunks when a new chunk is added and chunk N-1 (which becomes the last chunk) is tested. If the Manager server finds that the N-1 chunk is no longer available within the CDN server, then it is deleted from the circular memory and the N-2 chunk is tested. These steps are repeated until an available chunk is discovered.

Le serveur Manager gère autant de mémoires circulaires que de sources radio 1.The Manager server manages as many circular memories as radio sources 1.

Lors de chaque émission d’un nouveau chunk, la source radio 1 crée un nouveau manifeste en le référençant par un numéro chronologique et un suffixe, par exemple « .m3u8 », par exemple le 125° manifeste porte la référence « 125.m3u8 ». Le serveur Manager gère la mémoire de façon circulaire, le plus récent manifeste référencé « 1 » écrase le plus ancien qui est référencé « N ». Lors de chaque rajout dans la mémoire, l’ensemble des manifestes, sauf celui qui vient d’être ajouté, est alors renommé en augmentant son indice de 1. Le manifeste « 125.m3u8 » devient « 126.m3u8 », etc… La renumérotation doit commencer par le manifeste N-1 qui est renommé en N. Lors de cette renumérotation, la session N-i n’a plus de manifeste le temps que le manifeste N-i+1 soit renommé en N-i. Les requêtes d’accès aux manifestes qui peuvent arriver sur la plate-forme pendant cette phase de renumérotation doivent donc être temporisées. Pour des raisons de performance, la renumérotation doit être effectuée de façon atomique localement en utilisant une méthode atomique du système d’exploitation, ce qui signifie que cette action est effectuée en une seule opération d’un point de vue système d’exploitation. Ceci ne peut être fait à distance en FTP.During each emission of a new chunk, the radio source 1 creates a new manifesto by referencing it by a chronological number and a suffix, for example “.m3u8”, for example the 125° manifest bears the reference “125.m3u8” . The Manager server manages memory in a circular fashion, the most recent manifest referenced "1" overwrites the oldest which is referenced "N". During each addition to the memory, all of the manifests, except the one that has just been added, is then renamed by increasing its index by 1. The manifest “125.m3u8” becomes “126.m3u8”, etc… The renumbering must start with manifesto N-1 which is renamed to N. During this renumbering, the session Ni no longer has a manifesto while manifesto N-i+1 is renamed to Ni. Manifest access requests that may arrive on the platform during this renumbering phase must therefore be delayed. For performance reasons, renumbering must be done atomically locally using an operating system atomic method, which means that this action is performed in a single operation from an operating system perspective. This cannot be done remotely via FTP.

Une fois que la renumérotation des anciens manifestes est terminée, le dernier émis qui comporte le chunk correspondant au contenu diffusé en temps réel porte la référence « 1.m3u8 ». Prenons un exemple en considérant que la profondeur de la mémoire circulaire est de 2 heures et que les chunks ont une durée de 10 secondes. Les 7200 secondes de contenus adressables par cette mémoire sont accessibles par 720 manifestes qui adressent chacun des chunk de 10 secondes. Selon cet exemple et en considérant qu’un manifeste référence trois chunks, les 720 manifestes occupent une mémoire n’excédant pas 2 Mo sur le serveur Manager, ce qui est tout à fait raisonnable.Once the renumbering of the old manifests is complete, the last broadcast that includes the chunk corresponding to the content broadcast in real time bears the reference “1.m3u8”. Let's take an example by considering that the depth of the circular memory is 2 hours and that the chunks have a duration of 10 seconds. The 7200 seconds of content addressable by this memory are accessible by 720 manifests which each address 10-second chunks. According to this example and considering that a manifest references three chunks, the 720 manifests occupy a memory not exceeding 2 MB on the Manager server, which is quite reasonable.

LaFig. 3présente un schéma montrant la présence des manifestes et des chunks au sein des différents serveurs utilisant la présente invention. Plus précisément, le schéma décrit la relation entre les données existantes sur le serveur CDN de la source radio, les manifestes créés par la plateforme, les identifiants de session et les heures de reprise qui leur sont associées. Fig. 3 presents a diagram showing the presence of manifests and chunks within the various servers using the present invention. Specifically, the diagram describes the relationship between the existing data on the radio source's CDN server, the manifests created by the platform, the session identifiers and the resume times associated with them.

La partie gauche du schéma présente le contenu de la mémoire du serveur CDN, le chunk référencé « 1 » est le dernier créé, le manifeste intitulé « M3u live » est le dernier créé, il référence les chunks 1, 2 et 3.The left part of the diagram shows the contents of the CDN server's memory, the chunk referenced "1" is the last created, the manifest entitled "M3u live" is the last created, it references chunks 1, 2 and 3.

La partie centrale décrit les manifestes créés par le serveur Manager, ils sont accessibles par un serveur dit « cache » portant la référence 7 sur laFig. 1. Le serveur Manager maintient en mémoire les manifestes référencés M3u1, M3u2, M3u3, … M3uN-2, qui sont numérotés de 1 à 300. Le premier manifeste (c’est à dire le plus récent) M3u1, numéroté 1, référence les chunk 1, 2 et 3. Le second manifeste M3u2, M3u3, numéroté 2, référence les chunk 2, 3 et 4. Le troisième manifeste M3u3, numéroté 3, référence les chunk 3, 4 et 5, et ainsi de suite. Le dernier manifeste présent en mémoire du serveur Manager est le 300 ième, il permet de rechercher dans la mémoire du serveur CDN, les derniers chunks encore disponibles et respectivement référencés N-2, N-1, N.The central part describes the manifests created by the Manager server, they are accessible by a so-called “cache” server bearing the reference 7 in FIG. 1 . The Manager server keeps in memory the manifests referenced M3u1, M3u2, M3u3, … M3uN-2, which are numbered from 1 to 300. The first manifest (i.e. the most recent) M3u1, numbered 1, references the chunk 1 , 2, and 3. The second manifest M3u2, M3u3, numbered 2, references chunks 2, 3, and 4. The third manifest M3u3, numbered 3, references chunks 3, 4, and 5, and so on. The last manifest present in the memory of the Manager server is the 300th, it makes it possible to search in the memory of the CDN server, the last chunks still available and respectively referenced N-2, N-1, N.

La partie droite du schéma présente le contenu de la mémoire d’une partie du serveur Manager appelé « Time Shift manager » portant la référence 8 sur laFig. 1. En utilisant la formule pour le calcul de la date « Dck » de la partie de l’audio la plus ancienne dans le chunk, en fonction de la durée d’un chunk, l’heure courante et le retard, le sous-serveur Time Shift manager 8 met à jour un tableau associant des numéros de session avec des dates et heure de reprise de contenus audio. De cette manière, un récepteur hybride adresse une requête au sous-serveur 8 en présentant la date et l’heure de l’interruption et l’identification de la radio source, le sous-serveur 8 recherche dans son tableau d’association et en extrait aussitôt un numéro de session qui est utilisé ensuite pour récupérer le manifeste référençant le premier chunk à reproduire.The right part of the diagram shows the contents of the memory of a part of the Manager server called “Time Shift manager” bearing the reference 8 in FIG. 1 . Using the formula for calculating the "Dck" date of the oldest part of the audio in the chunk, given the length of a chunk, the current time, and the delay, the Time subserver Shift manager 8 updates a table associating session numbers with dates and times of resumption of audio content. In this way, a hybrid receiver sends a request to the sub-server 8 presenting the date and time of the interruption and the identification of the source radio, the sub-server 8 searches in its association table and immediately extracts a session number which is then used to retrieve the manifesto referencing the first chunk to be reproduced.

Présentation d’un appareil récepteur hybridePresentation of a hybrid receiving device

LaFig. 4représente un schéma d’un appareil récepteur hybride 2, selon un mode de réalisation particulier de l'invention. Le récepteur hybride 2 comporte typiquement une unité centrale 10 associée à une mémoire de programme 11, un module de réception d’un flux radio 12 recevant des émissions d’un réseau monodirectionnel, un réseau FM par exemple, et un module de communication 13 autorisant des communications bidirectionnelles à courte ou à longue portée par un câble ou par la radio, en utilisant par exemple le réseau Bluetooth, Wifi et/ou GSM. Le récepteur dispose également de moyens d’introduction de commande 14 (clavier, boutons, écran tactile, …), et de moyens d’affichage (écran, voyants lumineux, synthèse vocale, …). Ces moyens peuvent être intégrés à l’appareil ou déportés. L’appareil dispose également d’un moyen de reproduction d’un contenu audio et/ou audiovisuel, composé par exemple d’un écran déporté 15, et/ou d’un amplificateur 16 intégré à l’appareil émettant des signaux acoustiques vers des haut-parleurs déportés 17. L’appareil dispose d’un mémoire de stockage de données, typiquement des chunks 18 permettant d’enregistrer des contenus audio. Fig. 4 represents a diagram of a hybrid receiver device 2, according to a particular embodiment of the invention. The hybrid receiver 2 typically comprises a central unit 10 associated with a program memory 11, a module for receiving a radio stream 12 receiving transmissions from a one-way network, an FM network for example, and a communication module 13 authorizing two-way communications at short or long range by cable or by radio, using for example the Bluetooth, Wifi and/or GSM network. The receiver also has command input means 14 (keyboard, buttons, touch screen, etc.), and display means (screen, indicator lights, voice synthesis, etc.). These means can be integrated into the device or remote. The device also has a means of reproducing audio and/or audiovisual content, composed for example of a remote screen 15, and/or of an amplifier 16 integrated into the device emitting acoustic signals to remote speakers 17. The device has a data storage memory, typically chunks 18 for recording audio content.

Un récepteur en cours de reproduction d’un contenu diffusé à partir d’une source radio peut être interrompu pour quelques raisons que ce soit : action de l’utilisateur, manque de réception, coupure de l’alimentation, mobilisation des moyens de reproduction du son pour un autre usage, etc. Au moment de l’interruption, le récepteur mémorise la date et l’heure courante et l’identification de la radio source diffusant le contenu audio.A receiver in the process of reproducing content broadcast from a radio source may be interrupted for any reason whatsoever: action by the user, lack of reception, power cut, mobilization of the means of reproduction of the sound for another use, etc. At the time of the interruption, the receiver stores the current date and time and the identification of the source radio broadcasting the audio content.

Un peu plus tard, l’utilisateur peut demander de reprendre la reproduction de ce contenu audio interrompu. Le récepteur hybride 2 émet alors une requête vers le sous-serveur 8 Time-Shift manager pour le calcul du décalage temporel, la requête comporte au moins les informations suivantes : l’heure courante, la date et l’heure de l’interruption et l’identification de la radio source dont la diffusion a été interrompue (ces deux dernières informations ayant été mémorisées). Ce sous-serveur 8 calcule alors l’heure de reprise du côté serveur, ce qui permet de connaitre l’identifiant de la session correspondant à l’heure de reprise souhaitée pour la radio demandée. Le serveur 7 retourne alors au récepteur 2 l’URL du manifeste à utiliser pour reprendre la lecture.A little later, the user can request to resume the reproduction of this interrupted audio content. The hybrid receiver 2 then sends a request to the Time-Shift manager sub-server 8 for calculating the time shift, the request includes at least the following information: the current time, the date and time of the interruption and the identification of the source radio whose broadcast has been interrupted (these last two pieces of information having been stored). This sub-server 8 then calculates the resumption time on the server side, which makes it possible to know the identifier of the session corresponding to the desired resumption time for the requested radio. Server 7 then returns to Receiver 2 the URL of the manifest to use to resume playback.

A travers le serveur de cache 7, le récepteur hybride 2 transmet l’identifiant du manifeste au serveur Manager 5 qui lui renvoie le contenu du manifeste identifié. Le récepteur hybride 2 extrait dans le manifeste reçu les identifiants des chunks et émet des requêtes vers le serveur CDN afin de les télécharger et les reproduire.Through the cache server 7, the hybrid receiver 2 transmits the identifier of the manifest to the Manager server 5 which sends back to it the content of the identified manifest. The hybrid receiver 2 extracts the identifiers of the chunks from the received manifest and sends requests to the CDN server in order to download and reproduce them.

Présentation d’un serveur Manager ou CDNPresentation of a Manager or CDN server

LaFig. 5illustre les principaux composants d’un serveur distant 20 tel qu’un serveur CDN et un serveur Manager, selon un exemple de réalisation. Un tel serveur 20 comporte une unité centrale ALU 21 reliée à une mémoire de programme exécutable PM 22, un disque dur HD 23 contenant une base de données pour le stockage de données de façon non-volatile. Le serveur 20 contient également une interface I/O 24 pour la communication avec un récepteur hybride 2 via un réseau informatique. Un tel serveur 20 permet de fournir des manifestes référençant des chunk dont les contenus sont diffusés en temps réel, et de gérer la reprise de contenu en différé. Ce serveur peut transmettre à la demande d’un récepteur 1 les chunks d’un contenu transmis en streaming adaptatif ou des blocs de données au format MP3 d’un contenu à télécharger. Il n’est pas exclu que les moyens de liaison diffèrent selon le type d’appareil en communication, ainsi le serveur 20 peut communiquer avec les récepteurs 2 à travers un réseau sans fil (téléphonie mobile 3G/4G/5G) et/ou par un câble via un réseau numérique quelconque. Fig. 5 illustrates the main components of a remote server 20 such as a CDN server and a Manager server, according to an example embodiment. Such a server 20 comprises a central unit ALU 21 connected to an executable program memory PM 22, a hard disk HD 23 containing a database for storing data in a non-volatile manner. The server 20 also contains an I/O interface 24 for communication with a hybrid receiver 2 via a computer network. Such a server 20 makes it possible to provide manifests referencing chunks whose content is broadcast in real time, and to manage the resumption of deferred content. This server can transmit, at the request of a receiver 1, the chunks of content transmitted in adaptive streaming or blocks of data in MP3 format of content to be downloaded. It is not excluded that the connection means differ according to the type of device in communication, thus the server 20 can communicate with the receivers 2 through a wireless network (3G/4G/5G mobile telephony) and/or by a cable via any digital network.

Il doit être évident pour les personnes versées dans l'art que la présente invention permet des modes de réalisation sous de nombreuses autres formes spécifiques sans l'éloigner du domaine d'application de l'invention comme revendiqué. Par conséquent, les présents modes de réalisation doivent être considérés à titre d'illustration mais peuvent être modifiés dans le domaine défini par la portée des revendications jointes.It should be apparent to those skilled in the art that the present invention permits embodiments in many other specific forms without departing from the scope of the invention as claimed. Accordingly, the present embodiments are to be considered illustrative but may be modified within the scope defined by the scope of the appended claims.

Claims (11)

Procédé de transmission d’un contenu audio dans un récepteur hybride en vue d’une reproduction en différé, ledit contenu étant diffusé en temps réel sur un canal radio déterminé,
les paquets de données dudit contenu étant disponibles en différé en se connectant à un serveur dédié (CDN), le procédé comprenant au moins les étapes suivantes :
- émission (2.1) par un serveur dit « Manager » à ce serveur dédié (CDN) d’une pluralité de requêtes pour recevoir un manifeste identifiant une succession d’un nombre déterminé de paquets de données dont celui contenant l’audio diffusé en temps réel sur le canal radio déterminé,
- mémorisation (2.2) dans le serveur Manager de la pluralité de manifestes émis par le serveur dédié, les manifestes mémorisés étant datés par le moment d’émission du plus récent paquet de données diffusées sur le canal radio déterminé,
- transmission (2.3) par le récepteur hybride au serveur Manager d’une requête pour recevoir la partie au moins du contenu diffusée à partir d’un moment déterminé,
- recherche (2.4) par le serveur Manager dans les manifestes mémorisés des références des paquets de données correspondant à la partie de contenu diffusé à partir du moment déterminé et émission vers le récepteur hybride d’un manifeste référençant l’ensemble de ces paquets de données,
- émission (2.5) par le récepteur hybride au serveur dédié (CDN) d’une requête pour recevoir les paquets de données référencées dans le manifeste transmis par le serveur Manager.
Method for transmitting audio content in a hybrid receiver with a view to delayed reproduction, said content being broadcast in real time on a determined radio channel,
the data packets of said content being available offline by connecting to a dedicated server (CDN), the method comprising at least the following steps:
- transmission (2.1) by a server called "Manager" to this dedicated server (CDN) of a plurality of requests to receive a manifest identifying a succession of a determined number of data packets including that containing the audio broadcast in time real on the determined radio channel,
- storage (2.2) in the Manager server of the plurality of manifests transmitted by the dedicated server, the stored manifests being dated by the time of transmission of the most recent data packet broadcast on the determined radio channel,
- transmission (2.3) by the hybrid receiver to the Manager server of a request to receive at least part of the content broadcast from a determined moment,
- search (2.4) by the Manager server in the stored manifests of the references of the data packets corresponding to the part of content broadcast from the determined moment and transmission to the hybrid receiver of a manifest referencing all of these data packets ,
- transmission (2.5) by the hybrid receiver to the dedicated server (CDN) of a request to receive the data packets referenced in the manifest transmitted by the Manager server.
Procédé de transmission selon la revendication 1 caractérisé en ce que les requêtes émises par le serveur Manager au serveur dédié (CDN) pour recevoir un nouveau manifeste sont émises à des intervalles de temps régulier, dont la durée est inférieure à la durée de reproduction du contenu audio d’un paquet de données.Transmission method according to claim 1 characterized in that the requests sent by the Manager server to the dedicated server (CDN) to receive a new manifest are sent at regular time intervals, the duration of which is less than the duration of reproduction of the content audio from a data packet. Procédé de transmission selon la revendication 1 ou 2 caractérisé en ce qu’il comporte une étape d’émission vers le serveur dédié d’une requête pour recevoir un paquet de données diffusé à un moment déterminé, une réponse émise par le serveur dédié indiquant une absence de disponibilité de ce paquet déclenchant l’effacement au sein du serveur Manager des manifestes ayant les références de ce paquet de données, ainsi que les références des paquets de données dont le contenu audio a été diffusé avant celui du paquet référencé dans la requête.Transmission method according to Claim 1 or 2, characterized in that it comprises a step of sending to the dedicated server a request to receive a data packet broadcast at a determined time, a response sent by the dedicated server indicating a lack of availability of this packet triggering the deletion within the Manager server of the manifests having the references of this data packet, as well as the references of the data packets whose audio content was broadcast before that of the packet referenced in the request. Procédé de transmission selon l’une quelconque des revendications précédentes, caractérisé en ce que les manifestes mémorisés dans le serveur Manager sont gérés circulairement, les plus anciens étant effacés par les plus récents.Transmission method according to any one of the preceding claims, characterized in that the manifests stored in the Manager server are managed in a circular manner, the oldest being erased by the most recent. Procédé de transmission selon la revendication 4, caractérisé en ce que l’étape de recherche (2.4) dans la mémoire circulaire s’arrête jusqu’à un nombre déterminé de manifestes les plus anciens qui sont considérés inaccessibles.Transmission method according to claim 4, characterized in that the search step (2.4) in the circular memory stops until a determined number of the oldest manifests which are considered inaccessible. Procédé de transmission selon l’une quelconque des revendications précédentes caractérisé en ce qu’il comporte une étape d’association au sein du serveur Manager de chaque paquet de donnée référencé par un manifeste et du moment de la diffusion de ce paquet de donnée sur le canal radio déterminé, le serveur Manager émettant les références d’un paquet de données à la suite de la réception d’une requête mentionnant ce canal radio déterminé et du moment de sa diffusion.Transmission method according to any one of the preceding claims, characterized in that it includes a step of associating within the Manager server each data packet referenced by a manifesto and the time when this data packet is broadcast on the determined radio channel, the Manager server transmitting the references of a data packet following receipt of a request mentioning this determined radio channel and the time of its broadcast. Procédé de transmission selon l’une quelconque des revendications précédentes caractérisé en ce qu’il comporte une étape de renumérotation des manifestes reçus du serveur dédié, pour toujours attribuer la valeur « 1 » au dernier manifeste et en numérotant successivement les autres jusqu’au plus ancien manifeste reçu et présent en mémoire.Transmission method according to any one of the preceding claims, characterized in that it comprises a step of renumbering the manifests received from the dedicated server, to always assign the value "1" to the last manifest and by successively numbering the others up to the most old manifesto received and present in memory. Procédé de transmission selon l’une quelconque des revendications précédentes caractérisé en ce que, lorsque la recherche (2.4) n’a pas permis de trouver un manifeste référençant des paquets de données correspondant à la partie de contenu diffusé à partir du moment déterminé, alors la recherche continue en recherchant un manifeste référençant des paquets de données dont le contenu a été diffusé avant le moment déterminé.Transmission method according to any one of the preceding claims, characterized in that, when the search (2.4) has not made it possible to find a manifesto referencing data packets corresponding to the part of content broadcast from the determined moment, then the search continues by looking for a manifest referencing data packets whose content was released before the specified time. Serveur de données comportant des moyens de communication avec au moins un serveur (CDN) dédié à la diffusion d’un canal radio déterminé et au moins un récepteur hybride, et des moyens de mémorisation capable d’enregistrer au moins un manifeste identifiant une succession d’un nombre déterminé de paquets de données dont celui contenant l’audio diffusé en temps réel sur le canal radio déterminé, caractérisé en ce que le moyen de communication 24 à ce serveur dédié (CDN) une pluralité de requêtes pour recevoir un manifeste identifiant les paquets de données contenant l’audio diffusé en temps réel sur le canal radio déterminé, le moyen de mémorisation enregistrant la pluralité de manifestes émis par le serveur dédié en les datant par le moment d’émission du plus récent paquet de données diffusées sur le canal radio déterminé, le moyen de communication 24 recevant du récepteur hybride au moins une requête pour recevoir la partie au moins du contenu diffusée à partir d’un moment déterminé, le serveur manager disposant d’un moyen de recherche dans les manifestes mémorisés des références des paquets de données correspondant à la partie de contenu diffusé à partir du moment déterminé et émission vers le récepteur hybride d’un manifeste référençant l’ensemble de ces paquets de données.Data server comprising means of communication with at least one server (CDN) dedicated to the broadcasting of a determined radio channel and at least one hybrid receiver, and storage means capable of recording at least one manifest identifying a succession of a determined number of data packets including that containing the audio broadcast in real time on the determined radio channel, characterized in that the means of communication 24 to this dedicated server (CDN) a plurality of requests to receive a manifest identifying the data packets containing the audio broadcast in real time on the determined radio channel, the storage means recording the plurality of manifests transmitted by the dedicated server by dating them with the time of transmission of the most recent data packet broadcast on the channel determined radio, the communication means 24 receiving from the hybrid receiver at least one request to receive at least part of the content broadcast from a determined time, the e manager server having a means of searching in the stored manifests for the references of the data packets corresponding to the part of content broadcast from the determined moment and transmission to the hybrid receiver of a manifest referencing all of these packets of data. Récepteur hybride comportant des moyens de réception d’un contenu diffusé en temps réel sur un canal radio déterminé, des moyens de communication avec au moins un serveur (CDN) dédié à la diffusion de ce canal radio déterminé et au moins un serveur Manager, un moyen de reproduction du contenu audio reproduisant en temps réel le contenu audio reçu du canal radio déterminé, et un moyen de mémorisation du moment de l’interruption de la reproduction dudit contenu, caractérisé en ce qu’au moment de la reprise de la reproduction du contenu interrompu, le moyen de communication émet vers un serveur dit « manager » une requête pour recevoir la partie au moins du contenu diffusée à partir d’un moment mémorisé, le moyen de communication recevant dudit serveur Manager un manifeste identifiant une succession d’un nombre déterminé de paquets de données dont celui contenant l’audio diffusé au moment déterminé, le moyen de communication émettant vers le serveur dédié (CDN) une requête pour recevoir les paquets de données référencées dans le manifeste transmis par le serveur Manager, lesdits paquets de données reçus étant reproduit à la réception.Hybrid receiver comprising means for receiving content broadcast in real time on a determined radio channel, means of communication with at least one server (CDN) dedicated to the broadcasting of this determined radio channel and at least one Manager server, a means for reproducing the audio content reproducing in real time the audio content received from the determined radio channel, and a means for memorizing the moment of the interruption of the reproduction of the said content, characterized in that at the moment of the resumption of the reproduction of the interrupted content, the means of communication sends to a so-called "manager" server a request to receive at least part of the content broadcast from a stored moment, the means of communication receiving from said Manager server a manifest identifying a succession of a determined number of data packets including the one containing the audio broadcast at the determined time, the communication means transmitting to the dedicated server (CDN) a request to receive the the data packets referenced in the manifest transmitted by the Manager server, said received data packets being reproduced upon receipt. Produit programme d'ordinateur, comprenant des instructions de code de programme pour la mise en œuvre du procédé selon au moins une des revendications 1 à 8, lorsque ledit programme est exécuté sur un ordinateur.Computer program product, comprising program code instructions for implementing the method according to at least one of claims 1 to 8, when said program is executed on a computer.
FR1907050A 2019-06-27 2019-06-27 Method of transmitting audio content in a hybrid receiver by receiving manifests sent by a manager server, receiver and associated manager server Active FR3098074B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR1907050A FR3098074B1 (en) 2019-06-27 2019-06-27 Method of transmitting audio content in a hybrid receiver by receiving manifests sent by a manager server, receiver and associated manager server
PCT/EP2020/068106 WO2020260637A1 (en) 2019-06-27 2020-06-26 Method for transmitting audio content to a hybrid receiver by receiving manifests generated by a manager server, receiver and associated manager server

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1907050 2019-06-27
FR1907050A FR3098074B1 (en) 2019-06-27 2019-06-27 Method of transmitting audio content in a hybrid receiver by receiving manifests sent by a manager server, receiver and associated manager server

Publications (2)

Publication Number Publication Date
FR3098074A1 true FR3098074A1 (en) 2021-01-01
FR3098074B1 FR3098074B1 (en) 2021-10-08

Family

ID=68343055

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1907050A Active FR3098074B1 (en) 2019-06-27 2019-06-27 Method of transmitting audio content in a hybrid receiver by receiving manifests sent by a manager server, receiver and associated manager server

Country Status (2)

Country Link
FR (1) FR3098074B1 (en)
WO (1) WO2020260637A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3134393A1 (en) 2022-04-12 2023-10-13 Arkema France Composition comprising a multi-stage polymer and a (meth)acrylic polymer, its preparation method and its use

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100235472A1 (en) * 2009-03-16 2010-09-16 Microsoft Corporation Smooth, stateless client media streaming
US20150088965A1 (en) * 2013-09-26 2015-03-26 Christoph Pakulski Systems and methods for selective retrieval of adaptive bitrate streaming media
WO2019002359A1 (en) * 2017-06-28 2019-01-03 Tdf Method for transmitting interrupted audio content in a hybrid receiver, system, receiver, and program associated with said method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100235472A1 (en) * 2009-03-16 2010-09-16 Microsoft Corporation Smooth, stateless client media streaming
US20150088965A1 (en) * 2013-09-26 2015-03-26 Christoph Pakulski Systems and methods for selective retrieval of adaptive bitrate streaming media
WO2019002359A1 (en) * 2017-06-28 2019-01-03 Tdf Method for transmitting interrupted audio content in a hybrid receiver, system, receiver, and program associated with said method

Also Published As

Publication number Publication date
FR3098074B1 (en) 2021-10-08
WO2020260637A1 (en) 2020-12-30

Similar Documents

Publication Publication Date Title
EP3646548B1 (en) Method for transmitting interrupted audio content in a hybrid receiver, system, receiver, and program associated with said method
US10992999B2 (en) Techniques for seamless media content switching during fixed-duration breaks
KR101410424B1 (en) Receiver and method for reporting the usage of advanced television services
RU2632403C2 (en) Terminal device, server device, method of information processing, program and system of related application delivery
EP3375192B1 (en) Caching mechanism for repeated content
CN102215116A (en) Method and apparatus for providing timeshift service in digital broadcasting system and system thereof
FR3019428A1 (en) DEVICE AND METHOD FOR REMOTELY CONTROLLING THE RESTITUTION OF MULTIMEDIA CONTENT
WO2020260637A1 (en) Method for transmitting audio content to a hybrid receiver by receiving manifests generated by a manager server, receiver and associated manager server
US10966278B2 (en) Channel acquisition management
FR3005386A1 (en) METHOD AND DEVICE FOR PROVIDING A PART ALREADY DIFFUSED FROM A MULTIMEDIA STREAM, USER TERMINAL, CORRESPONDING COMPUTER PROGRAM AND MEDIUM STORAGE MEDIUM
EP3646491A1 (en) Method for receiving audio content in a hybrid receiver and for delayed playback, receiver, and program associated with said method
EP2077016A1 (en) Method for managing communication channels and corresponding signal and terminal
FR3105686A1 (en) Dual audio link decoder equipment
FR3092720A1 (en) Adaptive and contextual streaming
FR3134268A1 (en) Local off-hook method in a digital radio receiver
FR3054765B1 (en) METHOD FOR READING EQUIPMENT OF MULTIMEDIA CONTENT WITH TARGET DELAY IN RELATION TO DIRECT LESS THAN MAXIMUM DELAY GIVES
WO2021058384A1 (en) Method for identifying an audio stream originating from a plurality of sources and system, receiver and program associated with the method
WO2020188097A1 (en) Method for restoring customisation content of a main radio stream
FR3075543A1 (en) METHOD FOR DOWNLOADING A CHAIN FOR ZAPPING A DIGITAL CHAIN BASED ON USER BEHAVIOR
FR2934398A1 (en) METHOD FOR MANAGING AND DISSEMINATING PROMOTIONAL MESSAGES TO A USER IN A MULTIMEDIA SYSTEM
EP2915330A1 (en) Method and module for switching from a first programme to a second programme, and corresponding broadcasting method, headend, computer program and storage medium
US20170054780A1 (en) Real-time file generation and delivery
EP2262237A1 (en) Method of transmitting a notification to reproducing terminal.
CN104735089A (en) Method and apparatus for playing live content
EP2253144A1 (en) Reception of metadata on a terminal

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20210101

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5