Brevet FR3062268A1 — publié le 20180727

L'invention concerne le domaine des procédés d'enregistrement utilisés pour mettre en oeuvre une fonction de type contrôle du direct. ARRIERE PLAN DE L'INVENTION Le contrôle du direct (ou time shifting, en anglais) permet de regarder ou d'écouter un programme diffusé en léger différé par rapport à sa diffusion. Le contrôle du direct consiste à enregistrer un flux sur un support de stockage (par exemple sur un disque dur ou sur un disque SSD, pour Solid-State Drive, ou sur une mémoire eMMC, pour embedded Multi-Media Controller) en mettant en oeuvre un buffer circulaire. Lorsque le buffer circulaire est plein, les données du flux les plus anciennes sont remplacées par les données du flux les plus récentes. La taille du buffer circulaire ainsi que le débit du flux définissent une durée disponible de contrôle du direct. Le flux peut être un flux audio, un flux vidéo, ou bien un flux audio et vidéo. Le flux peut être diffusé de nombreuses manières, et par exemple via un satellite, via la TNT (pour Télévision Numérique Terrestre), via un câble ou via un réseau IP (pour Internet Protocol). La diffusion via le réseau IP utilise elle-même des techniques de streaming, de HLS (pour HTTP Live Streaming), de progressive download, etc. Le flux peut être reçu par différents types de clients récepteurs, et par exemple par un boîtier décodeur (ou set-top box), un ordinateur, une tablette, un téléphone mobile, etc. On note que d'autres systèmes fonctionnent selon un principe similaire, et notamment des systèmes de surveillance vidéo. L'une des difficultés auxquelles sont confrontés les concepteurs de solutions de contrôle du direct concerne l'usure du support de stockage. 3062268 2 Les supports de stockage utilisés pour le contrôle du direct, et notamment ceux qui comportent de la mémoire flash, présentent un nombre de cycles d'écriture/effacement généralement relativement faible. 5 La mémoire flash comprend une réserve de blocs de mémoire vierges. Lorsque le support de stockage commence à s'user, la réserve de blocs de mémoire vierges s'amenuise. Le logiciel stocké dans le support de stockage aura donc moins de blocs de mémoire vierges à 10 disposition pour effectuer des écritures telles que des préférences utilisateur, ou bien pour réaliser une mise à jour du logiciel. OBJET DE L'INVENTION L'invention a pour objet de réduire une usure 15 prématurée d'un support de stockage due à l'utilisation d'une fonction de type contrôle du direct. RESUME DE L'INVENTION En vue de la réalisation de ce but, on propose un procédé d'enregistrement d'un flux reçu tel qu'un flux 20 audio et vidéo, utilisé pour mettre en oeuvre une fonction de type contrôle du direct, le procédé d'enregistrement comportant les étapes : - d'évaluer une usure d'un support de stockage destiné à enregistrer le flux reçu ; 25 - de calculer en fonction de l'usure un débit optimal de flux permettant d'augmenter une durée de vie du support de stockage ; - d'adapter le flux reçu pour l'enregistrer au débit optimal de flux. 30 En adaptant le flux reçu au débit optimal de flux, on augmente la durée de vie du support de stockage. On propose aussi un boîtier décodeur comportant des moyens de traitement agencés pour mettre en oeuvre le procédé d'enregistrement qui vient d'être décrit. 35 On propose de plus un programme d'ordinateur 3062268 3 comprenant des instructions pour mettre en oeuvre, par un équipement de type boîtier décodeur, le procédé d'enregistrement qui vient d'être décrit. On propose en outre des moyens de stockage qui 5 stockent un programme d'ordinateur comprenant des instructions pour mettre en oeuvre, par un équipement de type boîtier décodeur, le procédé d'enregistrement qui vient d'être décrit. D'autres caractéristiques et avantages de 10 l'invention ressortiront à la lecture de la description qui suit d'un mode de réalisation particulier non limitatif de l'invention. BREVE DESCRIPTION DES DESSINS Il sera fait référence aux dessins annexés, parmi 15 lesquels : - la figure 1 représente des étapes du procédé d'enregistrement selon l'invention ; - la figure 2 est un graphique représentant une courbe d'un débit optimal de flux en fonction d'une usure d'un 20 support de stockage, le débit optimal de flux étant calculé selon une première méthode ; - la figure 3 est un graphique représentant une courbe d'un débit optimal de flux en fonction d'une usure d'un support de stockage, le débit optimal de flux étant 25 calculé selon une deuxième méthode ; - la figure 4 est un graphique représentant une courbe d'un débit optimal de flux en fonction d'une usure d'un support de stockage, le débit optimal de flux étant calculé selon une troisième méthode ; 30 - la figure 5 est un graphique représentant des courbes du rapport entre la durée de vie du support de stockage alors que le procédé d'enregistrement selon l'invention est mis en oeuvre et alors que le procédé d'enregistrement selon l'invention n'est pas mis en 35 oeuvre, en fonction de l'usure du support de stockage, 3062268 4 pour la première méthode, la deuxième méthode et la troisième méthode. DESCRIPTION DETAILLEE DE L'INVENTION Le procédé d'enregistrement selon l'invention est 5 ici mis en oeuvre dans un boîtier décodeur. Le boîtier décodeur comprend des moyens de traitement comprenant un processeur, un support de stockage, un port Ethernet, un port HDMI et un port infrarouge. 10 Le boîtier décodeur est relié à un réseau de diffusion, en l'occurrence au réseau internet, via le port Ethernet. Le boîtier décodeur est par ailleurs relié à un téléviseur via le port HDMI, et est commandé par une télécommande via le port infrarouge. 15 Le boîtier décodeur reçoit d'un serveur externe, via le port Ethernet, un flux reçu, qui est en l'occurrence un flux audio et vidéo. Le boîtier décodeur transforme le flux reçu en un flux audio et vidéo compatible avec le téléviseur. Le flux audio et vidéo est transmis au 20 téléviseur via le port HDMI, et est diffusé sous la forme de programmes diffusés sur l'écran du téléviseur. Un utilisateur qui regarde un programme diffusé et qui décide d'utiliser la fonction de contrôle du direct peut commander le boîtier décodeur grâce à la 25 télécommande pour que celui-ci mette en oeuvre une fonction de contrôle du direct. Le boîtier décodeur enregistre alors le flux audio et vidéo dans le support de stockage pour permettre à l'utilisateur de regarder le programme diffusé en différé. 30 Le procédé d'enregistrement selon l'invention est mis en oeuvre à chaque sortie d'un mode de veille du boîtier décodeur. Il serait aussi possible de mettre en oeuvre le procédé d'enregistrement selon l'invention à des moments différents, par exemple à chaque démarrage du 35 boîtier décodeur, à chaque fois qu'un utilisateur utilise 3062268 5 la fonction de contrôle du direct, ou bien à intervalles temporels prédéfinis (chaque jour, chaque semaine, chaque mois, etc.). En référence à la figure 1, le procédé 5 d'enregistrement selon l'invention consiste tout d'abord à évaluer une usure du support de stockage (étape El). L'évaluation de l'usure du support de stockage comprend une acquisition, dans le support de stockage, d'un paramètre d'usure représentatif de l'usure du support de 10 stockage. Le paramètre d'usure est ici un taux d'usure, sans unité, compris entre 0 et 100%. Le support de stockage stocke l'information correspondant au taux d'usure dans un registre interne. Le taux d'usure est ainsi accessible par lecture du registre interne. 15 Ainsi, lorsque le support de stockage comprend une mémoire eMMC, l'information correspondant au taux d'usure est stockée dans les registres internes ExtendedCSD 268 et 269. Ces registres internes sont définis selon la norme JEDEC JESD84, et indiquent le taux d'usure par 20 paliers de 10%. D'autres supports de stockage permettent par exemple de lire le nombre de cycles d'écriture/effacement. Dans ce cas, le paramètre d'usure est le nombre de cycles d'écriture/effacement. 25 On note qu'il est possible d'optimiser l'évaluation de l'usure du support de stockage en adaptant le paramètre d'usure à des conditions d'usure réelles du support de stockage. En effet, les fabricants de supports de stockage ont tendance à définir les paramètres 30 d'usure, tels que le taux d'usure précédemment évoqué, en prenant une marge de sécurité. L'usure évaluée est ainsi supérieure à l'usure réelle du support de stockage. Il est alors possible, lors de la mise en oeuvre du procédé d'enregistrement selon l'invention, de réduire le 35 paramètre d'usure pour que celui-ci corresponde à une 3062268 6 usure réelle du support de stockage. Le procédé d'enregistrement selon l'invention consiste ensuite à calculer en fonction de l'usure un débit optimal de flux permettant d'augmenter une durée de 5 vie du support de stockage (étape E2). Le débit optimal de flux est un débit inférieur ou égal au débit du flux reçu, qui permet d'optimiser à la fois la qualité de la diffusion en différé du programme diffusé et la réduction de l'usure du support de stockage. 10 Le débit optimal de flux peut être calculé selon plusieurs méthodes. Selon une première méthode et en référence à la figure 2, le débit optimal de flux Dl est égal au débit du flux reçu lorsque l'usure du support de stockage (en 15 l'occurrence, le taux d'usure) est inférieure ou égale à un seuil d'usure prédéterminé Si, et est égal au débit du flux reçu multiplié par un rapport de limitation prédéterminé R1 lorsque l'usure du support de stockage (en l'occurrence, le taux d'usure) est supérieure au 20 seuil d'usure prédéterminé Si, le rapport de limitation prédéterminé R1 étant compris entre 0 et 1. Sur la figure 2, le seuil d'usure prédéterminé 51 est égal à 80%, et le rapport de limitation prédéterminé R1 est égal à 0,5. 25 Cette première méthode permet à l'utilisateur de bénéficier d'une diffusion différée du programme diffusé avec un débit maximum (soit une qualité de diffusion maximale) pendant une période importante. Selon une deuxième méthode et en référence à la 30 figure 3, le débit optimal de flux D2 est une fonction linéaire de l'usure du support de stockage (en l'occurrence, du taux d'usure). Cette deuxième méthode permet à l'utilisateur de bénéficier d'une diffusion différée du programme diffusé 35 avec un rapport entre le débit (ou la qualité de 3062268 7 diffusion) et la durée de vie du support de stockage (ou la réduction de l'usure du support de stockage) le plus important. Selon une troisième méthode et en référence à la 5 figure 4, le débit optimal de flux D3 est égal au débit du flux reçu lorsque l'usure du support de stockage est inférieure ou égal à un seuil d'usure prédéterminé S3, et est une fonction linéaire de l'usure du support de stockage à partir du moment où celle-ci atteint un seuil 10 d'usure prédéterminé. Sur la figure 4, le seuil d'usure prédéterminé S3 est compris entre 50% et 60%. On vient ainsi de présenter trois méthodes pour calculer le débit optimal de flux. 15 Le choix entre l'une de ces trois méthodes peut par exemple être fait au moment de la fabrication du boîtier décodeur (c'est à dire avant qu'il ne soit installé chez l'utilisateur), ou bien suite à une mise à jour du logiciel du boîtier décodeur, ou bien par l'utilisateur 20 lui-même, etc. Le rapport entre la durée de vie du support de stockage alors que le procédé d'enregistrement selon l'invention est mis en oeuvre, et entre la durée de vie du support de stockage alors que le procédé d'enregistrement 25 selon l'invention n'est pas mis en oeuvre, en fonction de l'usure du support de stockage, peut être observée sur la figure 5 : la courbe Cl correspond à la première méthode, la courbe C2 à la deuxième méthode, et la courbe C3 à la troisième méthode. La courbe C4, utilisée comme 30 référence, correspond au cas où le procédé d'enregistrement selon l'invention n'est pas mis en oeuvre. Le procédé d'enregistrement selon l'invention consiste ensuite à d'adapter le flux reçu pour obtenir un 35 flux enregistré dans le support de stockage présentant le 3062268 8 débit optimal de flux. Une première méthode pour adapter le flux reçu consiste ajuster le débit du flux reçu pour que le débit du flux reçu et donc du flux enregistré soit égal au 5 débit optimal de flux (étape E3). Lorsque le procédé d'enregistrement selon l'invention n'est pas mis en oeuvre, le serveur externe transmet un flux audio et vidéo en utilisant les mécanismes de transmission décrits ci-après. 10 Le serveur externe, lorsqu'il transmet un flux audio et vidéo, découpe la vidéo correspondante en segments d'une durée de quelques secondes (typiquement, 2 à 10 secondes). Chaque segment est stocké sur le serveur externe en plusieurs versions, chaque version présentant 15 un débit différent des débits des autres versions. Le serveur externe envoie alors au boîtier décodeur une liste des segments de la vidéo et des débits dans lesquels chaque segment est disponible. Le boîtier décodeur demande les segments au serveur externe l'un 20 après l'autre. Pour chaque segment, le boîtier décodeur spécifie un débit cible avec lequel il souhaite que le segment lui soit envoyé. Le serveur externe envoie alors au boîtier décodeur la version du segment demandé correspondant au débit spécifié par le boîtier décodeur. 25 Le boîtier décodeur mesure alors le temps mis pour recevoir chaque segment, et ajuste le débit cible qu'il demande pour les segments suivants en fonction du temps mis pour recevoir les segments passés. Ainsi, si le temps mis pour recevoir un segment est plus long que la durée 30 du segment, alors le boîtier décodeur diminue le débit cible demandé. Au contraire, si le temps mis pour recevoir un segment est plus court que la durée du segment, alors le boîtier décodeur augmente le débit cible demandé. 35 Dans le cadre de la mise en oeuvre du procédé 3062268 9 d'enregistrement selon l'invention, le boîtier décodeur spécifie au serveur externe un débit cible. Le débit cible est égal au débit optimal de flux lorsque celui-ci est inférieur ou égal à un débit maximum de transfert du 5 réseau de diffusion sur lequel chemine le flux reçu, et le débit cible est égal au débit maximum de transfert du réseau de diffusion lorsque le débit optimal de flux est supérieur au débit maximum de transfert du réseau de diffusion. 10 Par exemple, lorsque le flux audio et vidéo présente un débit maximum de 10Mo/s, si le débit optimal de flux est égal à 5Mo/s et que les performances réseaux permettent un débit maximum de transfert de 10Mo/s, le débit cible qui sera demandé au serveur externe par le 15 boîtier décodeur sera égal au débit optimal de flux, soit à 5Mo/s. Par contre, lorsque le flux audio et vidéo présente un débit maximum de 10Mo/s, si le débit optimal de flux est égal à 10Mo/s et que les performances réseaux 20 permettent un débit de transfert maximum de 5Mo/s, le débit cible qui sera demandé au serveur externe par le boîtier décodeur sera égal au débit de transfert maximum permis par les performances du réseau, soit à 5Mo/s. Il existe cependant des situations dans lesquelles 25 le réseau de diffusion ne permet pas au boîtier décodeur d'ajuster le débit du flux reçu. Ainsi, sur un réseau de diffusion par satellite, l'émetteur envoie un unique flux audio et vidéo et le boîtier décodeur n'a aucun moyen de modifier le flux reçu. 30 Dans ce cas, si l'utilisateur souhaite regarder un programme diffusé en direct, sans utiliser la fonction de contrôle du direct, le boîtier décodeur ne modifie pas le débit du flux reçu. L'utilisateur bénéficie donc de la qualité maximale de diffusion. 35 Par contre, si l'utilisateur souhaite utiliser la 3062268 10 fonction de contrôle du direct et que le débit du flux reçu est supérieur au débit optimal de flux, une deuxième méthode pour adapter le flux reçu consiste à transcoder le flux reçu pour obtenir un flux enregistré dans le 5 support de stockage dont le débit est égal au débit optimal de flux (étape E4). Plusieurs techniques peuvent être utilisées pour transcoder le flux reçu selon cette deuxième méthode. Le transcodage peut consister à agir sur un flux 10 audio compris dans le flux reçu, sur un flux vidéo compris dans le flux reçu, ou bien à la fois sur le flux audio et sur le flux vidéo. L'action sur le flux audio peut consister, lorsque le flux audio comporte plusieurs pistes audio 15 correspondant à plusieurs langues, à supprimer une ou des pistes correspondant à des langues non souhaitées par l'utilisateur. L'action sur le flux audio peut aussi consister à réduire le nombre de canaux des pistes audio. Par 20 exemple, si l'une des pistes audio contient 6 canaux en « mode multicanal 5.1 », le boîtier décodeur peut remplacer cette piste audio par une piste stéréo comportant 2 canaux. L'action sur le flux audio peut aussi consister à 25 utiliser un codec pour compresser le flux audio, à ajuster un taux de compression d'un codec utilisé, ou bien à modifier un codec utilisé pour utiliser un codec offrant un meilleur taux de compression. L'action sur le flux vidéo peut consister à réduire 30 la résolution d'images du flux vidéo. Il est par exemple possible de passer d'une résolution du format d'image numérique dit « 4K » (3840x2160 pixels) à une résolution du format d'image numérique dit « HD » (1920x1080 pixels) en utilisant un redimensionnement bilinéaire. 35 L'action sur le flux vidéo peut aussi consister à 3062268 11 utiliser un codec pour compresser le flux vidéo, à ajuster un taux de compression d'un codec utilisé, ou bien à modifier un codec utilisé pour utiliser un codec offrant un meilleur taux de compression. Bien sûr, toutes ces actions ou certaines de ces actions sur le flux audio et sur le flux vidéo peuvent être combinées. On vient ainsi de présenter deux méthodes pour adapter le flux reçu pour obtenir un flux enregistré dans 10 le support de stockage présentant le débit optimal de flux : une première méthode consistant à ajuster le débit du flux reçu, et une deuxième méthode consistant à transcoder le flux reçu. On note que la première méthode présente 15 l'inconvénient de ne pouvoir être mise en oeuvre que lorsqu'il est possible d'agir sur le flux reçu, et que la deuxième méthode présente l'avantage de ne pas réduire la qualité de la diffusion lorsque la fonction de contrôle du direct n'est pas utilisée. 20 Le choix entre la première méthode et la deuxième méthode peut par exemple être fait au moment de la fabrication du boîtier décodeur (c'est à dire avant qu'il ne soit installé chez l'utilisateur), ou bien en fonction du réseau de diffusion auquel le boîtier décodeur est 25 connecté, ou bien suite à une mise à jour du logiciel du boîtier décodeur, ou bien par l'utilisateur lui-même, etc. Ceci est aussi valable pour les différentes techniques possiblement utilisées pour transcoder le flux reçu. 30 Bien entendu, l'invention n'est pas limitée au mode de réalisation décrit mais englobe toute variante entrant dans le champ de l'invention telle que définie par les revendications. Bien que l'on ait indiqué ici que le flux est reçu 35 par un boîtier décodeur, il est possible d'utiliser un 3062268 12 autre client récepteur, par exemple un ordinateur, une tablette, un téléphone mobile, etc. Le flux reçu n'est pas nécessairement un flux audio et vidéo, mais peut être par exemple un flux audio 5 (uniquement) ou un flux vidéo (uniquement). On a indiqué ici que le support de stockage comprend une mémoire eMMC, mais l'invention s'applique bien sûr à tout type de support de stockage. On a utilisé ici comme paramètre d'usure 10 représentatif de l'usure du support de stockage un taux d'usure compris entre 0 et 100%. Il est parfaitement possible d'utiliser un paramètre d'usure différent, par exemple un taux d'usure compris entre 0 et 1, ou bien un nombre de cycles d'écriture/effacement. 15 Dans la première méthode, la deuxième méthode et la troisième méthode pour calculer le débit de flux optimal, le seuil d'usure prédéterminé et le rapport prédéterminé peuvent être différents des valeurs citées. Le seuil d'usure prédéterminé peut par exemple être égal à 50%, 20 60%, 75%, 80%, 85%, ou bien être compris entre ces valeurs. L'invention ne s'applique pas uniquement à la mise en oeuvre d'une fonction de contrôle du direct, mais à toute fonction qui utilise un principe similaire (par 25 exemple, à une fonction de surveillance vidéo qui permet de visionner en différé une bande vidéo de surveillance). REVENDICATIONS1. Procédé d'enregistrement d'un flux reçu tel qu'un flux audio et/ou vidéo, le procédé d'enregistrement comportant les étapes : d'évaluer une usure d'un support de stockage destiné à enregistrer le flux reçu ; - de calculer en fonction de l'usure un débit optimal de flux permettant d'augmenter une durée de vie du support de stockage ; - d'adapter le flux reçu pour l'enregistrer au débit optimal de flux. 2. Procédé d'enregistrement selon la revendication 1, dans lequel l'évaluation de l'usure comprend une acquisition, dans le support de stockage, d'un paramètre d'usure représentatif de l'usure du support de stockage. 3. Procédé d'enregistrement selon la revendication 2, comprenant en outre l'étape d'adapter le paramètre d'usure pour qu'il caractérise mieux une usure réelle du support de stockage. 4 Procédé d'enregistrement selon la revendication 2, dans lequel le paramètre d'usure est un taux d'usure compris entre 0 et I ou entre 0 et 100%. 5. Procédé d'enregistrement selon la revendication 2, dans lequel le paramètre d'usure est un nombre de cycles d'écriture/effacement. 6. Procédé d'enregistrement selon la revendication 1, dans lequel le débit optimal de flux est égal au débit du flux reçu lorsque l'usure du support de stockage est inférieure ou égale à un seuil d'usure prédéterminé, et est égal au débit du flux reçu multiplié par un rapport de limitation prédéterminé lorsque l'usure du support de stockage est supérieure au seuil d'usure prédéterminé, le rapport de limitation prédéterminé étant 3062268 14 compris entre 0 et 1. 7. Procédé d'enregistrement selon la revendication 1, dans lequel le débit optimal de flux est une fonction linéaire de l'usure du support de stockage. 5 8. Procédé d'enregistrement selon la revendication 1, dans lequel le débit optimal de flux est une fonction linéaire de l'usure du support de stockage jusqu'à ce que celle-ci atteigne un seuil d'usure prédéterminé. 10 9. Procédé d'enregistrement selon la revendication 1, dans lequel l'adaptation du flux reçu consiste à ajuster un débit du flux reçu pour que le débit du flux reçu et donc du flux enregistré soit égal au débit optimal de flux. 15 10. Procédé d'enregistrement selon la revendication 9, dans lequel l'ajustement du débit du flux reçu consiste à spécifier un débit cible à un serveur externe qui génère le flux. 11. Procédé d'enregistrement selon la 20 revendication 10, dans lequel le débit cible est égal au débit optimal de flux lorsque celui-ci est inférieur ou égal à un débit maximum de transfert d'un réseau sur lequel chemine le flux reçu, et dans lequel le débit cible est égal au débit maximum de transfert du réseau 25 lorsque le débit optimal de flux est supérieur au débit maximum de transfert du réseau. 12. Procédé d'enregistrement selon la revendication 1, dans lequel l'adaptation du flux reçu consiste à transcoder le flux reçu pour obtenir le flux 30 enregistré. 13. Procédé d'enregistrement selon la revendication 12, dans lequel le transcodage consiste à agir sur un flux audio compris dans le flux reçu. 14. Procédé d'enregistrement selon la 35 revendication 13, dans lequel l'action sur le flux audio 3062268 15 consiste à supprimer une piste audio correspondant à une langue non souhaitée, et/ou à réduire un nombre de canaux de pistes audio, et /ou à ajuster un taux de compression d'un codec, et/ou à modifier un codec utilisé. 5 15. Procédé d'enregistrement selon la revendication 12, dans lequel le transcodage consiste à agir sur un flux vidéo compris dans le flux reçu. 16. Procédé d'enregistrement selon la revendication 15, dans lequel l'action sur le flux vidéo 10 consiste à réduire la résolution d'images du flux vidéo, et/ou à ajuster un taux de compression d'un codec, et/ou à modifier un codec utilisé. 17. Procédé d'enregistrement selon la revendication 1, utilisé pour mettre en oeuvre une 15 fonction de type contrôle du direct. 18. Procédé d'enregistrement selon la revendication 1, utilisé pour mettre en oeuvre une fonction de vidéo-surveillance. 19. Boîtier décodeur comprenant des moyens de 20 traitement agencés pour mettre en oeuvre le procédé d'enregistrement selon l'une des revendications précédentes. 20. Programme d'ordinateur comprenant des instructions pour mettre en oeuvre, par un équipement de 25 type boîtier décodeur, le procédé d'enregistrement selon l'une des revendications 1 à 18. 21. Moyens de stockage, caractérisés en ce qu'ils stockent un programme d'ordinateur comprenant des instructions pour mettre en oeuvre, par un équipement de 30 type boîtier décodeur, le procédé d'enregistrement selon l'une des revendications 1 à 18.