Brevet FR2767622A1 — publié le 19990226

PROCEDE DE STOCKAGE DE DONNEES VIDEO CONTEXTE DE L'INVENTION Domaine de l'invention La présente invention concerne un procédé de stockage de données vidéo pour un serveur vidéo qui stocke et relit des données enregistrées sur des disques, telles que des données audio ou vidéo, ayant une propriété en temps réel et plus particulièrement un procédé de stockage de données vidéo par lequel des données de débits binaires différents peuvent être relues de manière efficace. Description de l'art associé Dans un serveur vidéo, des données vidéo sont stockées sous la forme de codes compressés sur des disques du serveur vidéo et sont lues à partir des supports d'enregistrement en réponse à une requête d'un client connecté au serveur vidéo, puis distribuées au client. Un exemple de l'un des serveurs vidéo classiques est décrit par exemple, dans la demande de brevet japonais No. Heisei 8-88834 et est représenté sur la figure 5. En se référant à la figure 5, le serveur vidéo ou système de vidéo à la demande, comprend un dispositif de stockage 501, un dispositif de lecture de données 502, un dispositif d'écriture en mémoire 5031 à 503n, des mémoires tampon 5041 à 504n, des dispositifs de lecture de mémoire 5051 à 505n, des unités terminales 5061 à 506n et un dispositif de commande 507. Le dispositif de stockage 501 comprend une pluralité de supports de stockage 5011 à 501m tels que, par exemple, des disques magnétiques. Les données vidéo stockées dans le dispositif de stockage 501 sont lues par le dispositif de lecture de données 502 et stockées temporairement dans les mémoires tampon 5041 à 504n par l'intermédiaire du dispositif d'écriture en mémoire 5031 à 503n. Les données stockées dans les mémoires tampon 5041 à 504n sont lues par le dispositif de lecture en mémoire 5051 à 505n et sont envoyées aux unités terminales 5061 à 506n, par lesquelles elles sont respectivement décompressées, relues et affichées. Le dispositif de commande 507 commande le dispositif de stockage 501 et le dispositif de lecture de données 502 en réponse aux signaux de requête de distribution appliqués en entrée depuis les unités terminales 5061 à 506n, de sorte que les données vidéo stockées dans le dispositif de stockage 501 sont lues par le dispositif de lecture de données 502 et écrites dans les mémoires tampon 5041 à 504n. Dans le système vidéo classique à la demande décrit ci-dessus, les données vidéo sont divisées pour chaque longueur prédéterminée et périodiquement stockées dans le dispositif de stockage 501. Une manière selon laquelle les données vidéo sont stockées, où le nombre des support s de stockage 5011 à 501m constituant le dispositif de stockage 501 est de quatre, est illustrée sur la figure 6. Les données vidéo sont divisées en blocs de données vidéo VD-110, VD-002, -, VD-k et stockées périodiquement en ordre d'une série temporelle dans le support de stockage 5011 à 5014. Les données vidéo stockées dans le dispositif de stockage 501 sont lues par le dispositif de lecture de données 502 et enfin relues et affichées par l'une des unités terminales 5061 à 506n. La figure 7 illustre une relation entre le temps de lecture depuis le dispositif de stockage 501 et le temps d'affichage de relecture par les unités terminales 5061. Les données vidéo VD-001 stockées dans le support de stockage 5011 sont lues et stockées dans la mémoire tampon 5041 en un temps de lecture de données vidéo DTread. L'unité terminale 5061 relit les données vidéo en un temps de relecture de données vidéo DTplay. S'il est maintenant supposé que le temps de lecture de données vidéo DTread est égal à un quart du temps de relecture de données vidéo DTplay, alors quatre blocs de données vidéo peuvent être lus depuis les supports de stockage 5011 à l'intérieur du temps de relecture de données vidéo d'un bloc. Il est ici examiné la relecture de données vidéo en utilisant l'unité terminale 5061. Le bloc de données vidéo VD-001 stocké dans le support vidéo 5011 est lu par le dispositif de lecture de données 502 et transféré au dispositif d'écriture en mémoire 5031. Le dispositif d'écriture en mémoire 5031 stocke les données dans la mémoire tampon 5041. Après que les données sont stockées, elles sont lues par le dispositif de lecture de mémoire 5051 et relues et affichées par l'unité terminale 5061. Avant que l'affichage de relecture par l'unité terminale 5061 se termine, le dispositif de lecture de données 502 lit les données vidéo suivantes VD-002 depuis le support de stockage 5012 et stocke les données dans la mémoire tampon 5041 par l'intermédiaire du dispositif d'écriture en mémoire 5031. Puisqu'il est requis que les données vidéo suivantes requises soient stockées dans une mémoire tampon avant que l'affichage de relecture des données vidéo précédentes soit terminé, lorsque le temps de lecture des données vidéo DTread est plus court que le temps de relecture des données vidéo DTplay, le dispositif de lecture de données 502 peut lire une pluralité de données vidéo depuis le même support d'enregistrement. La figure 8 illustre un exemple dans lequel quatre données vidéo sont lues à l'intérieur d'un temps de relecture de données vidéo DTplay. Une unité obtenue en traçant les données vidéo pour chaque temps de relecture de données vidéo DTplay depuis un certain instant est appelée trame et une unité obtenue en divisant une trame par un temps de lecture de données vidéo DTread est appelée fenêtre temporelle. Les données vidéo comprennent quatre types de données VD1, VD2, VD3 et VD4 et le dispositif de lecture de données 502 lit des blocs de données vidéo VD1-001, VD2-001, VD3-001 et VD4-001 dans l'ordre, depuis le support de stockage 5011 et les stocke respectivement dans les mémoires tampon 5041 à 5044. Lorsque les blocs de données vidéo sont reçus, les unités terminales 5061 à 5064 les décompressent, les relisent et les affichent. Avant que l'affichage de relecture des unités terminales 5061 à 5064 se termine, les blocs de données vidéo suivants sont lus depuis le support de stockage 5012 et les images basées sur les données vidéo sont relues et affichées en continu. Lorsque quatre supports d'enregistrement, avec chacun desquels quatre fenêtres temporelles peuvent être fixées pour une trame, sont utilisés de cette manière, des images différentes peuvent être délivrées de manière à totaliser 4 x 4 = 16 unités terminales. Toutefois, dans le serveur vidéo classique décrit ci-dessus, puisqu'une fenêtre temporelle est allouée à un terminal en relecture d'informations vidéo, lorsque des données vidéo de débits binaires différents sont lues simultanément, des fenêtres temporelles sont déterminées uniformément de façon à satisfaire au plus élevé des débits binaires, comme on le voit sur la figure 9. Lorsqu'un procédé de détermination de fenêtres temporelles tel qu'il vient d'être décrit est utilisé, puisque les fenêtres temporelles sont construites en conformité avec un débit binaire aussi élevé que celui des données vidéo B illustrées sur la figure 9, un temps inutile apparaît dans une fenêtre temporelle pour des données vidéo d'un faible débit binaire telles que les données vidéo A. Si par exemple, toutes les données vidéo destinées à être délivrées ont un faible débit binaire tel que celui des données vidéo A, alors une moitié de la capacité de lecture et de traitement du disque est dépensée inutilement. D'autre part, un autre procédé est disponible dans lequel la commande de lecture de données vidéo est effectuée de façon qu'une somme totale de temps de lecture de données vidéo différentes DTread puisse être incluse dans une trame, comme représenté sur la figure 10. Dans ce cas, alors que la capacité de lecture du support d'enregistrement peut être utilisée avec un rendement plus élevé, lorsque les données vidéo d'un débit binaire élevé sont impliquées, une grande quantité de données doivent être lues à la fois depuis un support d'enregistrement, de façon similaire au procédé décrit ci-dessus. En conséquence, le deuxième procédé présente un problème en ce que, lorsque des données vidéo de faibles débits binaires, par exemple, les blocs de données vidéo A, B, C, D, E, F, G et H, sont allouées uniformément à une fenêtre temporelle comme représenté sur la figure 11, bien que la capacité de lecture et de traitement soit suffisamment importante, la lecture de données vidéo Z ayant un débit binaire élevé est désactivée. Ici, la figure 11 illustre une manière dans laquelle, bien que chaque trame ait suffisamment de place, un bloc de données vidéo Z-1 ne peut pas être reçu dans une trame. D'autre part, la demande de brevet japonais No. Heisei 8-163072 décrit un procédé différent dans lequel, également lorsque des données vidéo ont un débit binaire élevé, les données vidéo sont divisées en blocs d'une taille fixe et les blocs sont stockés dans l'ordre sur les supports d'enregistrement. Selon le procédé qui vient d'être décrit, le nombre de blocs à lire à la fois est réglé conformément à un débit binaire requis par un terminal, de sorte que des données vidéo de débits binaires différents peuvent être fournies au terminal. Toutefois, le procédé présente un problème en ce que, puisque des blocs de données vidéo sont alloués dans tordre aux supports vidéo, si des données vidéo de débits binaires différents sont relues, alors la commande de lecture des supports d'enregistrement devient déréglée. D'autre part, lorsqu'une pluralité de données vidéo ayant un débit binaire égal sont relues, puisque le support vidéo duquel les données sont lues est successivement remplacé par un support d'enregistrement suivant lors d'une transition à une trame suivante d'une manière telle que, dans une première trame, des données vidéo sont lues dans un bloc depuis le support vidéo -1, mais dans une deuxième trame, des données vidéo sont lues dans un bloc depuis le support vidéo 2, comme représenté sur la figure 8. Toutefois, avec le procédé décrit dans la demande de brevet japonais No. Heisei 8-163072, lorsque des données vidéo ayant un débit binaire aussi important que le double doivent être relues, lors de la transition à une trame suivante, le support d'enregistrement duquel les données doivent être lues est successivement remplacé par un deuxième support d'enregistrement suivant d'une manière telle que, comme on le voit sur la figure 12, dans une première trame, deux blocs sont lus depuis le support d'enregistrement -1 et le support d'enregistrement -2 et dans une deuxième trame, deux blocs sont lus depuis le support d'enregistrement -3 et le support d'enregistrement -4. En conséquence, lorsque par exemple, des blocs de données vidéo des données vidéo A, B, C et D, ayant un débit binaire inférieur sont allouées dans un groupe, comme représenté sur la figure 13 et que l'on veut allouer des données vidéo Z d'un débit binaire aussi élevé que le double du débit binaire inférieur, la commande de lecture devient déréglée. Dans l'exemple de la figure 18, puisque les données vidéo Z ont un débit binaire double, il est requis de lire deux blocs de données vidéo par trame. Dans une première trame, les blocs de données vidéo A-l, B-l, C-l, D-1 et Z-1, Z-2, sont convenablement alloués aux fenêtres temporelles. Toutefois, dans une deuxième trame, les blocs de données vidéo A-2, B-2, C-2, D-2 et Z-3, peuvent être lues convenablement, mais la lecture d'un bloc de données vidéo Z-4 n'est pas terminée dans la deuxième trame dans laquelle il a été prévu d'être lu. En d'autres termes, même si des données vidéo sont convenablement allouées en premier, puisque les mouvements de fenêtres temporelles sont différents parmi des données vidéo de débits binaires différents, le procédé décrit ci-dessus présente un problème à résoudre en ce que, à mesure que le temps s'écoule, il devient impossible de terminer la lecture dans une trame prévue. RESUME DE L'INVENTION Un but de la présente invention consiste à proposer un procédé de stockage de données vidéo par lequel, dans la relecture de données vidéo dans laquelle des fenêtres temporelles sont utilisées, même lorsque des données vidéo ayant des débits binaires différents doivent être relues, les données vidéo peuvent être relues sans dérégler la commande de lecture de supports d'enregistrement, et les possibilités de lecture des supports d'enregistrement peuvent être utilisées de manière efficace. Pour atteindre le but décrit ci-dessus, selon la présente invention, il est proposé un procédé de stockage de données vidéo, comprenant les étapes consistant à diviser les données vidéo en avance en blocs de base ayant une taille déterminée en référence à un débit binaire de base, allouer périodiquement les blocs de base en ordre d'une série temporelle à une pluralité de fichiers vidéo et stocker périodiquement les fichiers vidéo partiels dans une pluralité de supports d'enregistrement en considérant chacun des fichiers vidéo partiels comme une donnée vidéo. Dans le procédé de stockage de données vidéo, lorsque des données vidéo ayant un débit binaire aussi élevé qu'un nombre entier de fois le débit binaire de base doivent être stockées, les données vidéo sont divisées pour chaque montant de données fixe, qui est égal au montant de données vidéo du débit binaire de base lorsque les données vidéo du débit binaire de base sont relues pendant une durée fixe, c'est-à-dire divisées en unités d'un bloc de base et sont stockées de manière discrète comme s'il y avait un groupe d'une pluralité de données vidéo du débit binaire de base. En conséquence, même lorsque la relecture de données vidéo ayant des débits binaires différents est effectuée simultanément, les données vidéo peuvent être relues de manière stable sans provoquer de problème de commande de lecture des supports de stockage et en outre, les possibilités de lecture des supports de stockage peuvent être utilisées de manière efficace. En conséquence, avec le procédé de stockage de données vidéo, lorsque des données vidéo d'un débit binaire aussi élevé qu'un nombre entier de fois le débit binaire de base doivent être relues, puisque la lecture depuis les supports de stockage peut être gérée d'une manière assez semblable à la lecture de données vidéo du débit binaire de base depuis les support s de stockage, la commande de lecture des supports de stockage n1 est pas déréglée. En conséquence, il n'y a aucune nécessité de prévoir une marge extrême pour une fenêtre temporelle et les capacités de lecture des supports d'enregistrement peuvent être utilisées de manière efficace le plus possible. Les buts, caractéristiques et avantages, cidessus, de la présente invention, ainsi que d'autres, apparaîtront plus clairement d'après la description qui suit et les revendications annexées, prises conjointement avec les dessins annexés, dans lesquels des parties ou éléments semblables sont indiqués par les mêmes symboles de référence. BREVE DESCRIPTION DES DESSINS La figure 1 est un organigramme illustrant un procédé de stockage de données vidéo auquel est appliquée la présente invention la figure 2 est une vue schématique illustrant une manière selon laquelle des données vidéo sont divisées en fichiers vidéo partiels dans le procédé de stockage de données vidéo illustré sur la figure 1 la figure 3 est une vue schématique illustrant une manière selon laquelle des données vidéo sont stockées sur des disques différents dans le procédé de stockage de données vidéo illustré sur la figure 1 la figure 4 est une vue schématique illustrant le fonctionnement de fenêtres temporelles avec lesquelles les données vidéo illustrées sur la figure 3 sont lues depuis les disques la figure 5 est un schéma synoptique montrant une construction d'un serveur vidéo classique la figure 6 est une vue schématique illustrant une manière selon laquelle des données vidéo sont stockées de façon discrète sur une pluralité de disques dans le serveur vidéo représenté sur la figure 5 la figure 7 est un diagramme des temps illustrant une relation entre des temps de lecture depuis des supports d'enregistrement du serveur vidéo de la figure 5 et des temps d'affichage de relecture par des unités terminales la figure 8 est un diagramme des temps illustrant la lecture de quatre données vidéo dans un temps d'affichage de reproduction la figure 9 est une vue schématique illustrant un objet à résoudre lorsque des données vidéo ayant des débits binaires différents sont lues depuis des disques en utilisant une technique classique la figure 10 est une vue schématique illustrant un procédé de lecture de données vidéo ayant des débits binaires différents depuis des disques en utilisant une autre technique classique la figure 11 est une vue schématique illustrant un deuxième objet à résoudre lorsque des données vidéo ayant des débits binaires différents sont lues depuis des disques en utilisant la technique classique utilisée dans le procédé illustré sur la figure 10 la figure 12 est une vue schématique illustrant un procédé de lecture de données vidéo ayant des débits binaires différents, utilisant une autre technique classique ; et la figure 13 est une vue schématique illustrant un troisième objet à résoudre lorsque des données vidéo ayant des débits binaires différents sont lues depuis des disques, en utilisant la technique classique utilisée dans le procédé illustré sur la figure 12. DESCRIPTION DU MODE DE REALISATION PREFERE Avant de décrire un mode de réalisation préféré, plusieurs termes utilisés dans la présente demande sont décrits. Dans un serveur vidéo auquel est appliqué un procédé de stockage de données vidéo selon la présente invention, un débit binaire de base est déterminé à l'avance. Le débit binaire de base est un débit binaire qui fait référence aux débits binaires utilisés pour stocker des données vidéo. Si par exemple, le débit binaire de base est fixé à 3 Mb/s, alors les débits binaires de données vidéo pouvant être stockées sont des multiples du débit binaire de base, tels que 3 Mb/s, 6 Mb/s, 9 Mb/s et ainsi de suite. Une unité de données vidéo du débit binaire de base qui est une quantité de données par laquelle les données vidéo sont relues pendant une certaine durée fixe, est appelée bloc de base. Si par exemple, des données vidéo sont divisées toutes les 0,5 secondes, alors le bloc de base a une quantité de données d'environ 190 Koctets. La figure 1 illustre les grandes lignes du fonctionnement du serveur vidéo auquel est appliqué le procédé de stockage de données vidéo selon la présente invention. En se référant à la figure 1, les données vidéo sont d'abord divisées en blocs de base et les blocs de base sont agencés en ordre d'une série temporelle pour former n fichiers vidéo partiels de façon que les blocs de base puissent avoir une période de n (étape 1). Ici, n est un nombre entier égal ou supérieur à 1 et représente un multiple du débit binaire des données vidéo à stocker. Lorsque par exemple, le débit binaire de base est de 3 Mb/s, si des données vidéo de 9 Mb/s doivent être stockées, alors n = 3. Un exemple de division de données vidéo où n = 3 est illustré sur la figure 2. Puis, les fichiers vidéo partiels obtenus par la division décrite ci-dessus sont périodiquement stockés dans des support s d'enregistrement, en considérant chacun d'entre eux comme un fichier vidéo (étape 2). La figure 3 illustre un exemple d'un cas dans lequel les fichiers vidéo partiels sont stockés dans quatre supports d'enregistrement. Le fichier vidéo partiel -0 illustré sur la figure 2 est périodiquement stocké dans le support d'enregistrement -1, le support d'enregistrement -2, ... sur la figure 3, comme s'il s'agissait d'un fichier vidéo unique. Le fichier vidéo partiel -1 est également stocké périodiquement dans le support d'enregistrement -2, le support d'enregistrement -3, ... de façon similaire. Dans cet exemple, tandis que le stockage des fichiers vidéo partiels peut commencer à partir d'un support d'enregistrement quelconque, pour assurer un effet important de la présente invention, les supports d'enregistrement à partir desquels le stockage doit commencer sont de préférence rendus différents parmi les différents fichiers vidéo partiels. Toutefois, lorsque le nombre de fichiers vidéo partiels est supérieur au nombre de supports de stockage, le stockage peut être commencé à partir des mêmes support s vidéo. L'allocation et le stockage peuvent être effectués en parallèle entre eux. En particulier, il n'est pas nécessaire que toutes les données vidéo soient stockées dans des supports d'enregistrement après qu'elles ont été allouées à des fichiers vidéo partiels, mais après que des données pour chaque bloc de base sont reçues, elles peuvent être successivement stockées dans les supports d'enregistrement. Lorsque par exemple, des données vidéo sont divisées dans le fichier vidéo partiel -0, le fichier vidéo partiel -1 et le fichier vidéo partiel -2, l'emplacement de stockage de chaque donnée vidéo pour un bloc de base parmi les supports d'enregistrement peut être calculé, en considérant un reste lorsque le numéro de bloc de chaque bloc de base est divisé par n (= 3) comme étant le numéro du fichier vidéo partiel auquel appartient le bloc de base, sur la base du numéro de bloc et du numéro du fichier vidéo partiel. Un procédé de lecture des données vidéo stockées d'une manière telle que décrit ci-dessus est maintenant décrit en référence à la figure 4. Les données vidéo ayant un débit binaire (par exemple, de 9 Mb/s) aussi élevé que trois fois le débit binaire de base sont lues de la manière suivante. Ici, les fichiers vidéo partiels sont indiqués par VD1, VD2 et VD3. Dans les premières 0,5 secondes, un total de trois blocs VD1-1, VD2-1 et VD3-1 des fichiers vidéo partiels VD1, VD2 et VD3 sont lus depuis le support d'enregistrement -1, le support d'enregistrement -2 et le support d'enregistrement -3 et les trois blocs sont connectés ensemble dans une mémoire tampon. Pendant les 0,5 secondes qui suivent, un total de trois blocs VD12, VD2-2 et VD3-2 des fichiers vidéo partiels VD1, VD2 et VD3 sont lus depuis le support d'enregistrement -2, le support d'enregistrement -3 et le support d'enregistrement -4 et les trois blocs sont connectés ensemble dans la mémoire tampon. Une séquence d'opérations telle que celle qui vient d'être décrite est répétée, permettant ainsi la relecture de données vidéo de 9 Mb/s. Lorsque seule l'opération de lecture est considérée, puisqu'elle est équivalente à l'opération de lecture de trois fichiers vidéo du débit binaire de base, aucune opération de fenêtres temporelles n'est déréglée. Il faut remarquer que les données stockées selon le procédé de stockage de données vidéo de la présente invention peuvent être relues en utilisant un dispositif de relecture de données connu comme décrit ci-dessus en référence à la figure 5. Bien que des modes de réalisation préférés de la présente invention aient été décrits en utilisant des termes spécifiques, cette description n'est qu'à des fins explicatives et il faut comprendre que des variantes peuvent être réalisées sans s'écarter de l'esprit ou de la portée des revendications suivantes. REVENDICATIONS 1. Procédé de stockage de données vidéo caractérisé en ce qu'il comprend les étapes consistant à: diviser les données vidéo en avance en blocs de base ayant une taille déterminée en référence à un débit binaire de base allouer périodiquement les blocs de base en ordre d'une série temporelle à une pluralité de fichiers vidéo ; et stocker périodiquement les fichiers vidéo partiels dans une pluralité de support s d'enregistrement en considérant chacun des fichiers vidéo partiels comme une donnée vidéo. 2. Procédé de stockage de données vidéo selon la revendication 1, caractérisé en ce que l'ensemble des blocs de base sont périodiquement alloués à la pluralité de fichiers vidéo partiels, puis périodiquement stockés dans la pluralité de supports d'enregistrement. 3. Procédé de stockage de données vidéo selon la revendication 1, caractérisé en ce que, pour chacun des blocs de base, l'allocation périodique à la pluralité de fichiers vidéo partiels et le stockage périodique dans la pluralité de supports d'enregistrement sont effectués. 4. Procédé de stockage de données vidéo selon l'une quelconque des revendications 1 à 3, caractérisé en ce que chacun des blocs de base a une quantité de données égale à celle qui existe lorsque des données vidéo du débit binaire de base sont relues pendant une certaine durée.