PT729621E - Sistema e metodo para controlar a execucao de multiplas faixas de audio de um portador de software - Google Patents

Sistema e metodo para controlar a execucao de multiplas faixas de audio de um portador de software Download PDF

Info

Publication number
PT729621E
PT729621E PT94930813T PT94930813T PT729621E PT 729621 E PT729621 E PT 729621E PT 94930813 T PT94930813 T PT 94930813T PT 94930813 T PT94930813 T PT 94930813T PT 729621 E PT729621 E PT 729621E
Authority
PT
Portugal
Prior art keywords
block
audio
data
software
field
Prior art date
Application number
PT94930813T
Other languages
English (en)
Inventor
Christopher J Cookson
Warren N Lieberfarb
Lewis J Ostrover
Original Assignee
Time Warner Entertainm Co Lp
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 Time Warner Entertainm Co Lp filed Critical Time Warner Entertainm Co Lp
Publication of PT729621E publication Critical patent/PT729621E/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/93Regeneration of the television signal or of selected parts thereof
    • H04N5/937Regeneration of the television signal or of selected parts thereof by assembling picture element blocks in an intermediate store
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/36Accompaniment arrangements
    • G10H1/361Recording/reproducing of accompaniment for use with an external source, e.g. karaoke systems
    • G10H1/363Recording/reproducing of accompaniment for use with an external source, e.g. karaoke systems using optical disks, e.g. CD, CD-ROM, to store accompaniment information in digital form
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/02Control of operating function, e.g. switching from recording to reproducing
    • G11B19/022Control panels
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00137Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to contents recorded on or reproduced from a record carrier to authorised users
    • G11B20/00159Parental control systems
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/329Table of contents on a disc [VTOC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • H04N5/445Receiver circuitry for the reception of television signals according to analogue transmission standards for displaying additional information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • H04N7/0117Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving conversion of the spatial resolution of the incoming video signal
    • H04N7/0122Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving conversion of the spatial resolution of the incoming video signal the input and the output signals having different aspect ratios
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/011Files or data streams containing coded musical information, e.g. for transmission
    • G10H2240/046File format, i.e. specific or non-standard musical file format used in or adapted for electrophonic musical instruments, e.g. in wavetables
    • G10H2240/066MPEG audio-visual compression file formats, e.g. MPEG-4 for coding of audio-visual objects
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/10537Audio or video recording
    • G11B2020/10592Audio or video recording specifically adapted for recording or reproducing multichannel signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/21Disc-shaped record carriers characterised in that the disc is of read-only, rewritable, or recordable type
    • G11B2220/213Read-only discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2545CDs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/02Arrangements for generating broadcast information; Arrangements for generating broadcast-related information with a direct linking to broadcast information or to broadcast space-time; Arrangements for simultaneous generation of broadcast information and broadcast-related information
    • H04H60/04Studio equipment; Interconnection of studios
    • 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/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4884Data services, e.g. news ticker for displaying subtitles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/775Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/92Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N5/926Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback by pulse code modulation
    • H04N5/9261Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback by pulse code modulation involving data reduction
    • H04N5/9262Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback by pulse code modulation involving data reduction using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/92Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N5/926Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback by pulse code modulation
    • H04N5/9265Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback by pulse code modulation with processing of the sound signal
    • H04N5/9267Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback by pulse code modulation with processing of the sound signal using time division multiplex of the PCM audio and PCM video signals
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S715/00Data processing: presentation processing of document, operator interface processing, and screen saver display processing
    • Y10S715/978Audio interaction as part of an operator interface

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Automation & Control Theory (AREA)
  • Theoretical Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
  • Reverberation, Karaoke And Other Acoustics (AREA)
  • Television Signal Processing For Recording (AREA)
  • Debugging And Monitoring (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Recording Or Reproducing By Magnetic Means (AREA)
  • Optical Recording Or Reproduction (AREA)
  • Control Of Electric Motors In General (AREA)
  • Circuits Of Receivers In General (AREA)
  • Television Receiver Circuits (AREA)

Description

DESCRIÇÃO "SISTEMA E MÉTODO PARA CONTROLAR A EXECUÇÃO DE MÚLTIPLAS FAIXAS DE ÁUDIO DE UM PORTADOR DE SOFTWARE"
Esta invenção está relacionada com a geração de sinais de áudio durante a execução de um portador de software, e mais particularmente a uma técnica pela qual numerosos sinais de áudio poderão ser gravados em faixas de áudio do mesmo portador de uma maneira que permite o processamento e a combinação selectiva de tais sinais.
Antecedentes de invenção O meio mais generalizado para a distribuição de filmes é a cassete de vídeo. A prática convencional é a de proporcionar apenas um idioma na banda sonora de cada cassete de vídeo. Isto significa que diferentes versões do mesmo filme têm de ser preparadas para distribuição em diferentes países. Em vez de dedicar uma versão diferente do mesmo filme a cada um dos diferentes idiomas, seria mais vantajoso proporcionar todas as bandas sonoras, contendo diferentes idiomas de diálogo, no mesmo portador; isto iria requerer a produção de muito menos versões do mesmo filme. Devido às grandes exigências de armazenamento, todavia, isto não tem provado ser prático. De facto, a única utilização prática de grande consumo de bandas sonoras múltiplas no mesmo portador é o aprovisionamento de bandas sonoras anotadas e não-anotadas nalgumas edições em discos laser. (É possível, por exemplo, armazenar diferentes bandas sonoras nos canais digitais e analógicos de áudio de um disco laser). -2- Não obstante o facto de ter ocorrido a terceiros no actual estado da arte proporcionarem múltiplas bandas sonoras no mesmo portador de software, de certeza que o aprovisionamento de talvez uma dúzia de bandas sonoras diferentes, em diferentes idiomas de diálogo, todas no mesmo portador de software de grande consumo, não se encontra em lugar algum. Não só não se encontram aparelhos de grande consumo capazes de seleccionar uma de entre tantas bandas sonoras diferentes, mas as editoras de software não têm verificado que seja prático o armazenamento de tanta informação áudio num único portador. A abordagem tradicional é a de editar versões diferentes do mesmo filme para distribuir em diferentes territórios onde são falados diferentes idiomas. A ideia de proporcionar numerosas bandas sonoras diferentes, em diferentes idiomas de diálogo, todas no mesmo portador de software de grande consumo, não só seria atractivo para as empresas produtoras de filmes mas poderia dar origem a aplicações totalmente diferentes da mesma tecnologia subjacente. Estas aplicações fariam uso de faixas de áudio, representando sinais de áudio, em formas que poderão ser totalmente não-relacionadas com o visionamento de filmes. De facto, a presente invenção contempla o armazenamento de dezenas de diferentes sinais de áudio num portador de software que nem contém informação visual ou bandas sonoras convencionais de diálogo. O armazenamento é digital. Uma vantagem particular da presente invenção é a de permitir que o conceito “música menos um” (“music minus one ”) seja expandido e aperfeiçoado. Por exemplo, várias faixas de áudio digitais, cada uma dedicada a um instrumento em particular ou a um grupo de instrumentos, podem ser digitalmente subtraídas de uma faixa representando uma mistura orquestral completa. Isto permite não só uma flexibilidade inimaginável, mas a -3- subtracção digital (inversão de fase) permite resultados perto da perfeição quando comparados com técnicas analógicas. É um objectivo desta invenção proporcionar um sistema e método para uma editora de software (por exemplo, música) gravar num portador de software, como um disco óptico, numerosas faixas de áudio de uma forma que lhes permite, durante a execução, serem processadas e combinadas de acordo com escolhas de menu feitas pelo utilizador. Num certo sentido, a invenção constitui uma nova forma de entretenimento de grande consumo.
Sumário da invenção A invenção conforme definida nas reivindicações 1 e 14 pode melhor ser apreciada se for considerada uma aplicação que se acredita será uma das mais importantes utilizações da invenção. Um disco óptico tem em si gravado dúzias de faixas de áudio, cada uma das quais representa a execução de um instrumento musical individual, a execução de um grupo de instrumentos musicais, ou um trecho musical vocal. O utilizador pode seleccionar quais dos sinais de áudio devem ser combinados para gerar um “resultado” composto. O nível (ganho) de cada faixa no sinal de saída composto, desenvolvido num descodificador processador de áudio, pode ser ajustado pelo utilizador de forma a que instrumentos em particular possam ser enfatizados ou eliminados. Assim um utilizador que queira praticar como solista com uma orquestra completa poderia, por exemplo, eliminar a faixa de “piano” e tocar em conjunto com a restante mistura orquestral. (Uma abordagem alternativa é a de proporcionar uma faixa com uma mistura orquestral completa, e a de utilizar um ganho negativo para a faixa do piano -- para todos os efeitos a execução do piano seria apagada da gravação orquestral completa). Ou o utilizador poderá extrair unicamente a faixa do piano, e acompanhar esta faixa. -4-
Certamente, que a ideia de proporcionar meios de pré-gravação do tipo “música menos um”, em que um instrumento é deixado de fora da mistura, não é nova. Mas proporcionando uma gravação com um instrumento retirado não se aproxima da flexibilidade contemplada pela presente invenção, em que cada uma de dúzias de faixas de áudio pode ser controlada (misturada ou apagada) pelo utilizador. Está contemplado que a utilização da presente invenção poderia estender significativamente a forma de entretenimento do karaoke. Por exemplo, um recém chegado executante de um instrumento poderia juntar-se a um grupo de músicos que já estejam a ensaiar através da simples eliminação de outra faixa de uma gravação orquestral geral. A invenção é descrita no contexto de um disco óptico e o armazenamento digital de sinais de áudio. Deverá ser compreendido, todavia, que a invenção não está limitada a um meio em particular, e é aplicável a portadores de fitas e todos os meios de armazenamento digital, não somente os discos ópticos do enquadramento ilustrativo da invenção. Nem o termo “sinal de áudio” é restrito a musica. Por exemplo, a invenção é aplicável a um portador que contenha diferentes tipos de efeitos sonoros gravados nas respectivas faixas, sendo o utilizador assim capaz de misturar as faixas selectivamente em função da aplicação particular em mãos. Outro exemplo seria o de providenciar segmentos de banda sonora de classificação PG alternativos para acompanhar um filme que é de classificação R apenas por causa da linguagem explicita na sua banda sonora; mudando entre as faixas, uma versão de classificação PG de um filme poderá ser vista.
No enquadramento ilustrativo da invenção, podem existir até 63 faixas com diferentes sinais de áudio que podem ser misturados e combinados uns com os outros. (A palavra “combinados” é utilizada num sentido lato - inclui a subtracção de um sinal de outro, efectivamente apagando um sinal de outro -5- sinal mais inclusivo.). Uma questão de desenvolvimento que tem de ser confrontada é como é que é dito ao utilizador qual o sinal que é gravado em cada faixa. Outra questão é como é que o utilizador informa o gravador sobre quais as faixas que devem ser combinadas. E seja qual for a forma de informar o utilizador sobre o que é que está no disco, uma vez que a música é num certo sentido universal e não é limitada a um idioma em particular, seria muito conveniente comunicar com o utilizador numa linguagem que este percebesse sem ser necessário a produção de diferentes discos para diferentes idiomas quando o idioma pode ser irrelevante para a música em si.
De acordo com a invenção, a secção de introdução do portador de software inclui dados textuais que definem o conteúdo áudio das faixas individuais. Os dados textuais estão em idiomas múltiplos. Existe um código gravado para cada idioma disponível, e cada aparelho representa um idioma default — para aparelhos vendidos em França, por exemplo, o francês seria o idioma default. O software do aparelho compara o idioma default do aparelho com aqueles disponíveis no disco. Se houver uma correspondência, então apenas os dados textuais em francês serão utilizados para formar as apresentações do menu. Por outro lado, se o idioma default não estiver representado no disco, então é apresentado ao utilizador uma lista com os idiomas presentes para que este possa escolher um idioma default diferente. O software do aparelho inclui provisão para a apresentação de informação das faixas, e permite ao utilizador seleccionar quais faixas devem ser executadas ou não, e os seus respectivos níveis (ganhos). As apresentações de menu e os mecanismos de selecção, de controlo dos níveis, etc. podem ser de tipos padrão. As apresentações de menu e a entrada de selecções são bem conhecidas de utilizadores de computadores pessoais e de produtos electrónicos de grande consumo. (Por exemplo, gravadores de vídeo convencionais são -6- controlados por apresentações do menu e selecções do utilizador). O uso de software predeterminado para o controlo das apresentações de menu e das entradas dos utilizadores limita a flexibilidade — a única variabilidade é na definição das faixas que, naturalmente, depende do conteúdo áudio do disco em particular que esteja a ser executado. Mas é possível que nalguns casos sejam desejadas opções de menu que não sejam padrão. Por exemplo, o software padrão que é contemplado processa os sinais de áudio de uma forma sincronizada. Mas suponhamos que uma editora de software, para um disco em particular, deseja permite ao utilizador alterar as relações das fases entre as várias faixas, por exemplo, atrasando faixas relativamente umas às outras a fim de conseguir efeitos de reverberação não-padrão. Isto iria requerer não só diferentes tipos de selecções de menu, mas iria requerer mudanças no software básico de processamento (por exemplo, atrasando o processamento de dados numa faixa em relação a outra). Mesmo isto, todavia, é fornecido nesta invenção. Hoje em dia é prática comum a distribuição de software em discos ópticos. Tudo o que é necessário é a inclusão no disco óptico da invenção o software que é carregado no aparelho quando o disco for lido pela primeira vez, cujo software modifica e substitui o software padrão para o processamento de dados de faixas de áudio. Desta forma, pode ser atingida uma flexibilidade total. A invenção é apresentada no contexto de um sistema geral que oferece numerosas funções vantajosas. A totalidade do sistema é descrito apesar de as reivindicações anexadas serem dirigidas a funções específicas. A lista geral de funções que são de interesse particular na descrição abaixo inclui: • Vídeo padrão e impedimento territorial. • Executação em relações de aspectos múltiplos. • Executação em versões múltiplas, por exemplo, classificação PG e classificação R, do mesmo filme no mesmo disco, com desactivação parental automática e selectiva de visualização de classificação R. -7- • Códigos de autorização encriptados que previnem que editoras não autorizadas produzam discos utilizáveis. • Fornecimento de faixas de áudio em múltiplos idiomas e faixas de subtítulos em múltiplos idiomas num único disco, com o utilizador a escolher o idioma da sua escolha. • Fornecimento de múltiplas “outras” faixas de áudio, por exemplo, cada uma contendo algum componente de música orquestral, com o utilizador a escolher a mistura desejada. • A codificação em ritmo variado dos blocos de dados, e uso eficiente da capacidade de bits com comutação e/ou mistura de faixas, para permitir todas as capacidades acima referidas num único portador.
Outros objectivos, funções e vantagens da invenção serão aparentes após a consideração das seguintes descrições detalhadas em conjunto com os desenhos, em que: A figura 1 mostra um sistema do estado da arte e tipifica a falta de flexibilidade na, e o pobre desempenho de, sistemas de media actualmente disponíveis; A figura 2 mostra o enquadramento ilustrativo da invenção; A figura 3 é uma tabela que lista os campos na porção de introdução da faixa de dados digitais de um disco óptico que pode ser executado no sistema da figura 2; A figura 4 é uma tabela semelhante que lista os campos em cada um dos blocos de dados que seguem a secção de introdução da faixa da figura 3; -8-
As figuras 5A-5E compreendem um gráfico de operação que ilustra o processamento pelo sistema da figura 2 dos dados contidos na secção de introdução da faixa de um disco óptico que esteja a ser tocado. A figura 6 é um gráfico de operação que ilustra o processamento de blocos de dados, no formato apresentado na figura 4, que segue à secção de introdução da faixa; A figura 7A é um diagrama de estado e legenda que caracteriza a forma como o aparelho da invenção lê apenas aqueles blocos de dados numa faixa de um disco que são requeridos para a execução de uma versão seleccionada de um filme ou outra apresentação de vídeo, e a figura 7B mostra a forma como uma de duas versões alternativas podem ser tocadas seguindo as regras ilustradas pelo diagrama de estado na figura 7A; A figura 8 mostra simbolicamente uma técnica do estado da arte utilizada na compressão da representação digital de um sinal de vídeo; e A figura 9 ilustra as relações entre três diferentes relações de aspectos de imagens. O estado da arte
As limitações do actual estado da arte são exemplificadas pelo sistema na figura 1. Tal sistema está presentemente disponível para executar uma única fonte de material de programa, usualmente uma cassete de vídeo VHS, para gerar um sinal de vídeo em conformidade com a selecção de um de entre múltiplos padrões. Um sistema deste tipo é referido como sendo um gravador de cassetes de vídeo (VCR) de múltiplos padrões, apesar de serem mostrados no -9- desenho componentes independentes. Tipicamente, uma fita VHS 7 tem gravado em si um sinal (analógico) NTSC de vídeo, e a fita é tocada num gravador de cassetes de vídeo VHS 5. O sinal analógico é convertido em forma digital num conversor analógico-digital A/D 9, e as representações digitais de sucessivas imagens são escritas para o armazém 11 de imagens de vídeo. O circuito 13 apaga depois as imagens em excesso, ou estima e adiciona imagens adicionais, necessárias para estar em conformidade com o padrão seleccionado, por exemplo, PAL. Para converter de um padrão para outro, é geralmente necessário mudar o número de linhas horizontais num campo ou imagem (graduação de imagem). Isto é usualmente conseguido deixando cair algumas linhas e/ou repetindo algumas ou tirando a média de sucessivas linhas para derivar uma nova linha a ser inserida entre estas. A íunção principal do circuito 13, naturalmente, é o de converter uma representação de uma imagem digital na sua forma analógica como saída do vídeo.
Sistemas deste tipo mostrados na figura 1 degradam geralmente a saída do vídeo. Cassetes de vídeo convencionais fornecem uma qualidade de vídeo reduzida quando estas suportam mais do que um padrão de vídeo. Uma razão é porque existe uma dupla conversão de analógico para digital e vice-versa. Outra é porque a graduação de imagens é usualmente executada de uma forma tosca (apagando linhas, repetindo linhas e tomando a média das linhas). Existem formas conhecidas, todavia, de executar a graduação de imagens no domínio digital sem degradar a imagem. Embora não seja geralmente utilizada, a técnica está no estado da arte e será resumidamente descrita uma vez que também é utilizada no enquadramento ilustrativo da invenção.
Para dar um exemplo concreto, o padrão PAL tem 625 linhas por imagem, enquanto que o padrão NTSC tem 525 linhas por imagem. Em virtude de nenhuma parte da imagem ser formada durante o retraçar vertical, nem todos -10- os varrimentos das linhas horizontais em qualquer dos padrões são utilizáveis para a representação da informação da imagem. No padrão PAL existem normalmente 576 linhas por imagem com informação da imagem, e numa imagem de NTSC existem normalmente 483 linhas com informação da imagem.
Para converter de um padrão para outro, são primeiro desentrelaçados sucessivos campos. Depois 576 linhas são convertidas em 483, ou vice-versa, e entrelaçadas novamente. Como isto é feito é fácil de visualizar conceptualmente. Considere-se, por exemplo, um fatia vertical muito fina através de uma imagem PAL. A fatia é dividida na suas três componentes de cores. A graduação da imagem para converter de PAL para NTSC, de um ponto de vista conceptual, não é mais do que o desenhar de uma curva baseada em 576 pedaços PAL de dados de cor e depois o dividir da curva em 483 partes para derivar um pedaço de dados para cada linha horizontal do desejado sinal NTSC. Na realidade, isto é conseguido através de um processo de interpolação, e é feito digitalmente. (A graduação da imagem, em geral, pode também envolver uma alteração da relação de aspecto, por exemplo, ao ir de HDTV para NTSC, e pode requerer o tosquiar de informação em ambos os lados de cada linha horizontal.).
Embora os sistemas do estado da arte proporcionem de facto a conversão de padrões, este é quase o limite da sua flexibilidade. O sistema na figura 2, por outro lado, oferece uma flexibilidade sem precedentes em formas ainda não contempladas no estado da arte. O sistema ilustrativo da invenção O sistema da figura 2 inclui uma drive de disquetes 21 para executar um disco óptico 23. Dados digitais armazenados no disco aparecem no condutor 25 de SAÍDA DE DADOS. O funcionamento da drive do disco é -11 - governado pelo microprocessador 27 controlador da drive do disco. A cabeça de leitura é posicionada por comandos emitidos através do cabo condutor 29 do CONTROLO DA POSIÇÃO DA CABEÇA, e a velocidade da rotação do disco é governada por comandos emitidos através do condutor 31 de CONTROLO DO RITMO. Discos ópticos são usualmente conduzidos a velocidade linear constante ou a velocidade angular constante. (Outra possibilidade envolve o uso de um número discreto de velocidades angulares constantes.) Discos da invenção pode ser conduzidos a velocidade linear constante de forma a que o comprimento linear da faixa tomada por cada bit é o mesmo quer um bit seja gravado numa porção interna ou externa da faixa. Isto permite o armazenamento da maioria dos dados. Uma velocidade linear constante requer que o ritmo de rotação do disco diminua quando as faixas externas estão a ser lidas. Este tipo de controlo de disco óptico é convencional. Por exemplo, o padrão áudio CD também requer discos que são rodados a um ritmo linear constante. O microprocessador 41 é o controlador mestre do sistema. Como tal, este emite comandos ao controlador da drive do disco através dos condutor 43 e determina o estado do controlador da drive do disco através dos condutor 45. O controlador da drive do disco é proporcionado com duas outras entradas. O analisador 47 de número / apontador de bloco emite comandos ao controlador da drive do disco através dos condutor 49, e o condutor 51 de BUFFER CHEIO estende um sinal de controlo do gate OR 54 para o controlador da drive do disco. Estas duas entradas serão descritas mais abaixo. (Em geral, embora seja feita referência a condutores individuais, deverá ser entendido que neste contexto alguns destes condutores são na realidade cabos para estender os bits em paralelo. Por exemplo, enquanto que a saída do gate OR 54 pode ser estendida para o controlador da drive do disco através de um único condutor 51, o analisador 47 de número / apontador de bloco poderá ser ligado ao controlador da drive do disco através de um cabo 49 para que dados de múltiplos bits possam ser - 12- enviados em paralelo em vez de em série).
Uma característica importante do sistema na figura 2 é o de a informação de bit ser armazenada no disco a um ritmo que varia de acordo com a complexidade do material codificado. Quer com isto dizer que não são o número de bits por segundo que realmente aparecem no condutor 25 de SAÍDA DE DADOS que variam, mas antes que o número de bits que são utilizados por segundo é que variam. Informação de vídeo é armazenada em forma digital comprimida. A figura 8 mostra a maneira como as imagens de vídeo são codificadas de acordo com os padrões MPEG1 e MPEG2. Uma imagem I independente é codificado na sua totalidade. Imagens previstas ou imagens P são imagens que são previstas com base nas imagens independentes precedentes, e a informação digital que é realmente requerida para uma imagem P representa simplesmente a diferença entre a imagem efectiva e a sua previsão. Imagens B bidireccionais previstas são imagens que são previstas a partir de imagens I e/ou P, com a informação requerida para uma tal imagem representando mais uma vez a diferença entre a forma efectiva e a sua previsão. (Conforme poderá ser apreciado, as funções de avanço rápido e de retrocesso rápido, se desejadas, são melhor implementadas utilizando imagens I.) O número de bits requeridos para representar qualquer imagem depende não só no seu tipo, mas também na informação visual efectiva que é para ser representada. Obviamente, isto requer muito menos bits para representar um céu azul do que requer para representar um campo de flores. Os padrões MPEG são desenvolvidos para permitir a codificação de imagens com um número mínimo de bits. A informação das imagens é requerida a um ritmo constante. Por exemplo, se um filme é representado em forma digital no disco, 24 imagens serão representadas para cada segundo de filmagem. O número de bits requeridos para uma imagem difere radicalmente de imagem para imagem. Uma vez que as imagens são processadas a um ritmo constante, é aparente que o número de bits que são processados - 13- (usados) por segundo podem variar desde valores muito baixos até valores muito altos. Assim quando bits são realmente lidos do disco, embora possam ser lidos do disco a um ritmo constante, estes não são necessariamente processados a um ritmo constante.
Aplicam-se considerações similares a qualquer áudio armazenado no disco. Qualquer bloco de dados poderá conter a informação de bit requerida para um número variável de imagens. Qualquer bloco de dados pode conter de forma semelhante a informação de bit requerida para um período de tempo variável de um número variável de até numerosas faixas de áudio. (Existe apenas uma faixa física. A referência a múltiplas faixas de áudio é para diferentes séries de fatias de divisão de tempo (time-division) contendo os respectivos materiais áudio.) As faixas de áudio contêm informação digital, que poderá também estar em forma comprimida. Isto significa que se houver informação armazenada em qualquer bloco de dados para uma faixa de áudio em particular, aqueles bits não representam necessariamente o mesmo período de tempo. Poder-se-á pensar que a duração do som gravado para qualquer faixa de áudio correspondente a qualquer imagem representada num bloco seria a duração das imagens. Todavia, isto não é necessariamente verdade. Isto significa que informação de áudio pode ser lida antes desta ser relamente necessária, com a leitura de mais informação de áudio a poder fazer uma pausa quando uma quantidade suficiente tiver sido acumulada ou com a não inclusão do áudio em alguns blocos de dados para compensar pelo sobre fornecimento precedente. Isto leva ao conceito de buffering, a função dos buffers de áudio 53, o buffer de vídeo 55, o buffer de pan scan 57, o buffer de subtítulos 59, e o gate OR 54 que gera o sinal BUFFER CHEIO.
Conforme cada bloco de dados é lido do disco, este passa pelo gate 61, desde de que o gate esteja aberto, e os campos de bits são distribuídos pelo multiplexador 63 para os vários buffers e, através da linha COMANDO / DADOS - 14- 65, para o controlador mestre 41. Cada bloco de dados no enquadramento ilustrativo da invenção contém informação de bit de vídeo correspondente a um número variável de imagens. Conforme acima referido, pode haver um grande número de bits, ou um número pequeno, ou mesmo até nenhum bit (por exemplo, se o disco em particular que está a ser tocado não representa qualquer vídeo). Sucessivos grupos de dados de vídeo são armazenados no buffer de vídeo 55 separados por marcadores. O descodificador de vídeo 67 emite um comando através do condutor 69 quando este quer ser fornecido com uma nova fornada de dados através do condutor 71. Comandos são emitidos a um ritmo estável, embora o número de bits fornecidos em resposta variam de acordo com o número de bits requeridos para as imagens em particular que estão a ser processadas. O ritmo a que os bits estão a ser lidos da drive do disco é suficientemente elevada para acomodar as imagens que necessitam de informação máxima, mas a maioria das imagens não necessitam. Isto significa que o ritmo a que os blocos de dados são realmente lidos é superior ao ritmo a que são utilizados. Isto não significa, todavia, que um sistema bem desenvolvido deverá atrasar a leitura de um bloco de dados até que os dados sejam realmente requeridos para processamento. Para já, quando os dados são realmente requeridos, a cabeça de leitura pode não estar posicionada no início do desejado bloco de dados. É por esta razão que o buffering é proporcionado. O buffer de vídeo 55 contém a informação de bit para um número de sucessivas imagens (o número efectivo dependendo do ritmo a que os bits são lidos, o ritmo a que as imagens são processadas, etc. conforme é sabido no estado da arte), e a informação de bloco de dados de vídeo é lida do buffer de vídeo a um ritmo constante de imagens determinado pelo descodificador 67 de vídeo. Dados de vídeo são fornecidos ao buffer apenas até que o buffer esteja cheio. Uma vez cheio o buffer não deverá ser enviada mais informação porque esta não poderá ser armazenada. Quando o buffer de vídeo estiver cheio, um sinal no condutor 69 leva a que a saída do gate OR 54 tenha um valor elevado para informar ao controlador 27 do drive do disco que um dos - 15- buffers está cheio.
Comentários semelhantes aplicam-se aos outros três tipos de buffers . (Existe um único buffer de subtítulos 59, um único buffer de pan scan 57, e numerosos buffers de áudio 53, as funções de cada um serão abaixo descritas). Quando qualquer destes buffers estiver cheio, a sua saída correspondente leva a que o gate OR 54 controle o condutor do BUFFER CHEIO para um valor elevado para assim informar ao controlador da drive do disco que um dos buffers está cheio. Os buffers de áudio 53 e o buffer de subtítulos 59 funcionam de uma forma comparável àquela descrita para o buffer de vídeo 55. O descodificador 71 do processador de áudio emite um comando ao buffer de áudio quando este requer dados da faixa de áudio, altura em que os buffers de áudio fornecem tais dados. Deste forma semelhante, o gerador de gráficos 73 extrai dados do buffer de subtítulos 59, e o processador / graduador vertical 87 de pan scan recebe dados do buffer de pan scan 57 conforme será abaixo descrito.
Quando qualquer um dos quatro buffers estiver cheio (que inclui qualquer um dos buffers individuais dentro do bloco 53), o controlador da drive do disco 27 leva a que o drive do disco pare de ler dados. Os dados não voltam a ser lidos até que todos os buffers possam aceitá-los, isto é até que nenhum buffers esteja cheio e o condutor 51 tenha um valor baixo. (Dum modo oposto, se os buffers estiverem a ser esvaziados de dados rapidamente demais, um ajuste no sinal de RITMO DE CONTROLO no condutor 31 aumenta a velocidade do disco e consequentemente o ritmo a que os buffers são enchidos.)
Esta discussão sobre buffering surgiu da consideração da entrada 51 do BUFFER CHEIO para o controlador da drive do disco 27. A outra entrada que fica por descrever é aquela representada pelo cabo 49. Conforme será descrito mais abaixo, cada bloco de dados tem um número serial do bloco assim como - 16- informação do apontador no seu início. O circuito 47 lê o número serial do bloco e analisa a informação do apontador. O apontador, que é um número serial do bloco, aponta para o bloco de dados que deverá ser lido de seguida. Esta informação é fornecida ao controlador da drive do disco através do cabo 49. É desta forma que o controlador da drive do disco pode controlar o posicionamento da cabeça de leitura do drive do disco para que possa aceder ao bloco de dados desejado. Muitas vezes será lido o bloco errado — isto é de se esperar no caso de haver um salto para um novo bloco, como é o caso, por exemplo, quando é dado um salto de uma faixa para outra quando se toca um disco áudio de CD. Se o drive do disco lê um bloco de dados cujo número serial do bloco é muito elevado ou muito baixo, isto é determinado pelo analisador 47 do número / apontador do bloco que depois emite um novo comando através do cabo 49 para o controlador da drive do disco para o levar a ler outro bloco com um número serial do bloco mais baixo ou mais elevado respectivamente. Durante o tempo que a cabeça de leitura se está a posicionar para ler um novo bloco, os dados que são lidos não são na realidade utilizados. O gate 61 permanece fechado para que a informação não seja entregue ao desmultiplexador 63 para distribuição aos quatro buffers e ao controlador mestre 41 através do cabo condutor de COMANDO / DADOS. E apenas quando chegar ao bloco de dados correcto, conforme determinado pelo circuito 47 analisando o número serial do bloco no início do bloco, que o condutor 75 é impulsionado para um valor elevado para abrir o gate 61. O remanescente do bloco é então entregue ao desmultiplexador. Os bits de dados lidos do disco são também entregues ao controlador mestre 41 do microprocessador através do condutor 77. Cada bloco de dados contém não só informação de bit que tem de ser distribuída aos vários buffers, mas também informação de controlo, por exemplo, bits que identificam o tipo de dados realmente encontrados no bloco. Os bits de identificação (bandeiras e semelhantes, conforme será descrito mais abaixo) são fornecidos ao controlador - 17- mestre para que esteja em controlo do sistema em todos os momentos. Os bits de identificação são utilizados pelo desmultiplexador para controlar a distribuição de dados aos vários buffers. (O controlador mestre emite comandos através do condutor 76 para o analisador 47 de número / apontador de bloco que exerce não só um controlo geral sobre este elemento, como também controlo específico levando o elemento 47 a desligar o sinal activo no condutor 75 conforme for apropriado para prevenir que blocos de dados completos entrem no desmultiplexador se estes não forem requeridos para processamento subsequente.) O controlador mestre está no coração do sistema e de facto executa a maioria do processamento que será descrito mais abaixo. O utilizador do aparelho comunica com o controlador mestre via o interface 79, tipicamente um teclado. Ao utilizador é também proporcionado um mecanismo de chave e fechadura, mostrado simbolicamente pelo número 81, que é aqui referido como a opção “fechadura parental”. Se a fechadura estiver fechada, não serão mostrados filmes de classificação R. A forma como isto é controlado por bits representados na realidade no disco será descrito mais abaixo. Se a fechadura estiver fechada, e se apenas estiver no disco um filme de classificação R, um sinal de desactivação no condutor 83 de CONTROLO DA FECHADURA PARENTAL fecha o gate 61. Nenhum dos bits de dados são transmitidos através do gate e o disco não poderá ser tocado. Conforme será aparente mais abaixo, se o disco também tiver uma versão do filme que não seja de classificação R, este será mostrado se for seleccionado pelo espectador. Embora a funcionalidade da fechadura parental é mostrada como requerendo o uso de uma chave e fechadura física, é de se entender que esta funcionalidade pode ser implementada requerendo entradas no teclado conhecidas apenas pelos pais das crianças. A forma de informar o controlador mestre que as versões de classificação R de um filme não são para serem vistas não é restrita a qualquer forma específica. Assim como chaves -18- físicas e chaves codificadas são utilizadas alternadamente para controlar o acesso a um computador, assim estas podem ser no sistema na figura 2. O que é importante é a forma como duas versões diferentes podem ser representadas no mesmo disco (sem requer uma versão completa de cada uma), e como o sistema determina se uma versão seleccionada pode à partida ser vista. Isto será descrito mais abaixo. O controlador mestre 41 inclui várias outras saídas que ainda não foram descritas aqui. O condutor 85 representa um bus de RELÓGIO MESTRE que é estendido a todos os sub-sistemas mostrados na figura 2. Em qualquer sistema digital, é requerido um sinal relógio mestre para controlar o faseamento correcto dos vários circuitos. As outras seis saídas do controlador mestre são estendidas ao desmultiplexador 63, ao descodificador 71 do processador de áudio, ao processador / graduador vertical 87 de pan scan, ao armazém de imagens de vídeo, ao circuito de entrelaçamento e de pulldown 3:2 89, ao gerador de gráficos 73, e ao gerador de sincronização e conversor 92 de DVA. Estes são cabos condutores de controlo para gerir as operações dos blocos dos circuitos individuais. O descodificador 71 do processador de áudio processa os dados nos buffers 53 e obtém sinais analógicos individuais de áudio que são estendidos a um sistema de amplificador / altifalante mostrado simbolicamente pelo número 91. O descodificador de vídeo 67 obtém um sinal de VÍDEO DIGITAL no condutor 93 dos dados de vídeo comprimidos que são lidos do buffer 55. O vídeo digital é fornecido ao processador / graduador vertical 87 de pan scan imagem por imagem. A codificação / descodificação de um vídeo em particular que é empregue não é uma caractrística da presente invenção. Um padrão preferido seria na linha do MPEG1 e MPEG2, mas estes são apenas ilustrativos. O mesmo é verdade para a codificação da faixa de áudio. A presente invenção não é limitada a métodos de codificação específicos. - 19- O funcionamento de circuitos 57 e 87 podem melhor ser compreendidos considerando primeiro o desenho simbólico na figura 9. A informação digital que é armazenada no disco óptico no enquadramento preferido da invenção caracteriza imagens que tenham uma relação de aspecto “mestre” de 16:9, a chamada imagem de “ecran largo”. A relação de aspecto mestre é mostrado no canto superior esquerdo na figura 9. Se o sinal analógico final a ser mostrado no receptor de televisão do utilizador requer esta relação de aspecto, e o número de linhas horizontais de varrimento com informação de imagem (em oposição a linhas horizontais de varrimento que ocorrem durante a reconstituição vertical) corresponde ao número de linhas horizontais representadas pela informação bit de vídeo armazenada no disco, então o gerar do sinal analógico de vídeo é linear. Mas se o receptor de televisão do utilizador acomodar um sinal de TV tendo uma relação de aspecto de 4:3, e a relação de aspecto mestre no disco for de 16:9 em vez de 4:3, então existem duas escolhas. Uma é o de mostrar a imagem original em forma de “caixa de correio”. Conforme apresentado no lado direito da figura 9, o que é feito neste caso é uma compressão vertical uniforme de uma imagem mestre para que a sua dimensão horizontal caiba nos limites do receptor de televisão. Isto resulta na dimensão vertical sendo encurtada ao mesmo tempo para que esta encha menos do que a totalidade da altura da área do ecran da TV. O que isto significa é que os varrimentos das linhas horizontais em cima e em baixo de cada imagem em geral têm de ser postos sem dados, formando bandas escuras nos seus lugares — mas a relação de aspecto original é preservado. A outra opção é para um pan scan de relação de aspecto reduzido. O que isto envolve é a sobreposição de uma caixa tendo uma relação de aspecto de 4:3 na imagem original de ecran largo. Como resultado, o lado esquerdo desta imagem, o lado direito, ou ambos os lados, são tosquiados. (Em todos os casos, mesmo que uma imagem de ecran largo correspondente a uma relação de aspecto mestre 16:9 é para ser mostrada, poderá ser necessário efectuar um número de varrimentos -20- das linhas horizontais o que é diferente do número de linhas horizontais representados no disco. O número de linhas horizontais é uma função do padrão do sinal de vídeo ao qual a saída do vídeo tem de se conformar. Alterando o número de linhas é um processo conhecido como graduação vertical, conforme acima descrito.)
No que diz respeito ao processamento pan scan, será aparente da figura 9 que a fim de identificar aquela porção de uma imagem com relação de aspecto mestre 16:9 que deverá ser utilizada para formar uma imagem de pan scan de relação de aspecto reduzido, tudo o que é requerido é o especificar do ponto de partida ao longo de cada varrimento da linha horizontal da informação que deverá ser utilizada. Especificando um único número (por exemplo, coluna 200 de entre um total de 960 colunas) é suficiente para esta finalidade. A questão, todavia, é se a mesma coluna é sempre utilizada. Nalguns casos pode ser dito ao gravador que se for desejada uma relação de aspecto 4:3, este deverá sempre ser tirado do centro da imagem de ecran largo. Noutros casos, um ponto de partida de coluna variável pode ser desejado, e neste caso um bloco de dados contém realmente informação que representa o número da coluna inicial que deverá ser utilizada desde aquele ponto até que outra alteração seja efectuada.
Conforme será aparente mais abaixo, a informação de vídeo em cada bloco de dados inclui uma bandeira que representa se a informação de coluna do pan scan deverá ser actualizada. Se existir tal bandeira, o descodificador 67 de vídeo emite um comando através do condutor 95 para o buffer de pan scan 57. Nesta altura o bujfer aceita uma actualização de pan scan vinda do desmultiplexador 63. Aquela actualização permanece no buffer, para uso pelo processador / graduador vertical 87 de pan scan com as imagens seguintes, até que outra alteração tenha lugar. -21 - É no processador / graduador vertical 87 de pan scan que o número de linhas horizontais é ajustado e é alterada a relação de aspecto. O vídeo digital é fornecido pelo descodificador 67 de vídeo e a informação de pan scan, se esta for requerida, é providenciada pelo buffer 57. A saída do circuito 87 consiste em vídeo digital não comprimido, na relação de aspecto desejado e representado pelo número de linhas horizontais requeridas para o padrão de televisão seleccionado.
Uma vez armazenada em forma digital a informação da imagem vídeo no armazém de imagem 89, esta pode ser repartida em campos entrelaçados se o padrão seleccionado o requer. Também, o pulldown 3:2 é a técnica utilizada para converter filmes de 24-imagens-por-segundo em vídeo de 60-imagens-por-segundo (os valores nominais de 24 e 60 são na realidade 23,97 e 59,94); para converter dados representativos de um filme para um formato NTSC, a informação (bloco de dados) da imagem tem de ser lida a um ritmo de 24 por segundo. (Conforme é padrão no actual estado da arte, tal transformação aplica a imagem 1 do material da fonte aos campos 1, 2 e 3 do sinal de vídeo, imagem 2 do material da fonte aos campos 4 e 5 do sinal de vídeo, imagem 3 do material da fonte aos campos 6, 7 e 8, etc., assim produzindo 60 campos para 24 imagens de origem.) Por outro lado, a conversão para o padrão PAL é relativamente simples, e o pulldown 3:2 não é requerido. O padrão PAL requer 50 campos por segundo. As imagens são processadas a um ritmo de 25 por segundo, e todas as imagens são utilizadas para formar dois campos. (Devido ao facto de os filmes serem gravados a um ritmo de 24 imagens por segundo embora sejam processados a um ritmo de 25 por segundo quando convertidos para PAL, tudo o que acontece num ecran de TV ocorre 4% mais rápido na Europa do que nos Estados Unidos.) Se as imagens são processadas a um ritmo de 25 por segundo ou de 24 por segundo é controlado alterando a frequência do sinal do RELÓGIO MESTRE no condutor 85. -22- A saída do bloco 89 é digital, e é estendida ao gerador de sincronização e ao conversor digital-analógico 92. É neste elemento que impulsos apropriados de sincronização são inseridos nos campos, e a informação digital é convertida em analógica. Quaisquer subtítulos que são requeridos são contidos no buffer 59. Sob o controlo do microprocessador 41, os comandos são emitidos através do cabo condutor 97 de controlo para o gerador de gráficos 73. Este circuito convencional extrai informação codificada dos caracteres do buffer de subtítulos, e gera um sinal de VÍDEO no condutor 99 que descreve os subtítulos. O sinal de accionamento (KEY) é gerado no condutor 98, e os dois sinais são estendidos a um circuito convencional 96 de accionamento. Este dispositivo funde os subtítulos com a imagem de vídeo (utilizando accionamento rígido ou linear conforme a opção do fabricante, como é conhecido no estado da arte), e estende o sinal de vídeo composto para um écran 94 de TV convencional.
Campos de introdução da faixa
Antes de proceder com a descrição do processamento em detalhe, será de grande ajuda considerar a informação que é armazenada na porção de introdução da faixa do disco. Esta informação é armazenada em campos individuais conforme mostrado na figura 3, e é esta informação que controla o subsequente processamento dos dados lidos do disco. O formato do bloco de dados é mostrado na figura 4, mas para uma compreensão de como os dados neste bloco são utilizados, é necessário apreciar a informação de preparação que é lida primeira.
Fazendo referência à figura 3, no início da faixa existem um número de bits de sincronização de introdução (lead-in). Embora para todas as outras entradas são mostrados números de bits mínimos e máximos nas colunas apropriadas, nenhum destes números são proporcionados para o bits de -23- sincronização de introdução. O número de bits de sincronização requeridos no início da faixa depende do hardware utilizado. Dado um hardware em particular e o âmbito das velocidades de disco envolvidas, são proporcionados um número suficiente de bits de sincronização no início da faixa para permitir aos circuitos envolvidos na leitura do disco, incluindo o controlador da drive do disco 27 e o analisador 47 de número / apontador de bloco, para se sincronizarem ao fluxo de bits no condutor 25 de SAÍDA DE DADOS. A sincronização de bits é uma técnica bem conhecida em sistemas digitais. O segundo campo consiste em 40 bits que representam territórios autorizados. Existem várias formas como as editoras de software podem bloquear a execução do seu software. O mais importante envolve o controlar se filmes com classificação R podem ser vistos (a opção de bloqueio parental), e se o sinal analógico de vídeo final de saída pode assumir o padrão seleccionado pelo utilizador. É desta forma, por exemplo, que uma editora de software poderá permitir que um filme seja visto num receptor NTSC mas não num receptor PAL. Mas desde que o aparelho seja proporcionado com este tipo de controlo de bloqueio, este pode ser estendido a territórios. Todos os aparelhos utilizados com os discos da invenção conformem com o mesmo conjunto de especificações. Uma característica do desenvolvimento é de que cada aparelho é proporcionado com uma representação do território ou territórios para os quais este foi entendido para venda. Por exemplo, o território ou territórios podem ser representados pelas configurações de um interruptor DIP, um código armazenado no ROM de um microprocessador (por exemplo, no controlador mestre 41) ou semelhante. É presumido que existem um total de 40 territórios possíveis. Cada disco tem um campo de 40 bits na sua secção de introdução, sendo cada um destes bits associado a um dos 40 territórios. Um 1 em qualquer posição do bit é uma indicação de que o disco está autorizado a ser executado no respectivo território, e um 0 é uma indicação de que o disco não está autorizado. O aparelho cujo código indica que este está para venda na China, por exemplo, não executará um disco se existir um 0 no campo de território dos 40 bits na posição associada com a China.
Como exemplo do uso de tal característica, considere-se um aparelho destinado para venda num país em particular. Uma editora de software poderá distribuir um filme que por razões contratuais não pode ser distribuído naquele país. É por esta razão que um 0 seria armazenado na posição do bit associado com aquele país no campo dos territórios autorizados da secção de introdução da faixa. Ao detectar este bit, o controlador mestre 41 levará o circuito 47 a gerar um sinal de inibição no condutor 75 que iria levar o gate 61a bloquear a passagem de todos os dados. O terceiro campo é um bit único, uma bandeira que indica se existe qualquer informação no campo que lhe segue. Esta informação é aqui designada “software especial”. O aparelho da figura 2 executa normalmente o mesmo r código de software, tipicamente contido em memória de apenas de leitura. E este código que será descrito em relação aos gráficos de operação do desenho. Todavia, uma vez que o aparelho é controlado por microprocessador, não existe razão para que este não seja utilizado para um propósito totalmente não relacionado, e isto pode ser feito simplesmente carregando software do disco. Se a bandeira do software especial for um 1, então o controlador mestre 41 lê através do condutor 77 o software que se segue imediatamente no campo 4. Assim, dependendo de a bandeira do software especial ser um 0 ou um 1, o quarto campo ou é vazio ou contém um software de comprimento indeterminado. No final do software existe uma palavra de sincronização que é única no sentido em que esta palavra não é permitida existir noutro local no fluxo geral de dados. Quando o padrão da palavra de sincronização aparece, isto é uma indicação de que o campo de dados precedentes chegou ao fim, e que se segue um novo campo. (Na -25- eventualidade de dados tendo o padrão da palavra de sincronização aparecerem no fluxo de dados e serem mal interpretados como sendo uma palavra de sincronização, isto pode ser evitado utilizando técnicas conhecidas. Por exemplo, se a palavra de sincronização consistir em 32 bits de um determinado padrão, e alguma sequência geral de dados incluir nela este padrão, então depois da gravação de 31 bits dos dados de padrão, um bit extra, tendo um valor oposto ao valor do último bit do padrão da palavra de sincronização, pode ser inserido no fluxo de bits. Quando o aparelho vê este bit, este descarta-o e trata o seguinte bit como sendo um bit de dados em vez do último bit da palavra de sincronização.)
Um exemplo de software especial pode ser o software para controlar jogos de vídeo. Enquanto o aparelho é proporcionado com um sistema de operação desenhado para passar filmes e áudio de múltiplas faixas, é perfeitamente exequível que o aparelho execute funções adicionais e/ou diferentes envolvidas na utilização de jogos de vídeo. Isto é especialmente verdade se o interface do utilizador for separável e joysticks e semelhantes possam ser ligados no lugar de um teclado para acomodar o equipamento periférico de jogos. O sistema pode ser convertido num aparelho de jogos de vídeo simplesmente através do armazenamento do software necessário conforme este é lido de um disco. Enquanto que nos gráficos de operação que serão descritos mais abaixo o software especial é mostrado como sendo contido em si mesmo e não envolvendo os passos de processamento padrão, o software especial pode certamente chamar subrotinas do sistema de operação para a execução a fim de tirar vantagem do código incorporado.
O quinto campo consiste em 12 posições de bits, cada um correspondendo a um padrão diferente. Os padrões incluem European HDTV de 1250 linhas, Japanese HDTV de 1125 linhas, o proposto American HDTV de 1050 linhas, (assim como 1080 linhas e 787 linhas dos padrões propostos), PAL -26- de 625 linhas, NTSC de 525 linhas, SECAM de 625 linhas, “caixa de correio” de 360 linhas, etc. Até é possível acomodar padrões futuros, embora para formar um sinal de vídeo apropriado em tal caso seria necessário software diferente. Todavia, isso implica simplesmente proporcionar software num disco para complementar o sistema operativo incorporado.
Como exemplo simples, se a posição do primeiro bit de um campo de 12 bits corresponde ao padrão NTSC, e se o utilizador seleccionar um padrão NTSC para executar no seu receptor de TV, ou se este é a sua configuração default (conforme será descrito mais abaixo), então um sinal NTSC será gerado apenas se o primeiro bit no campo de padrões autorizados for um 1. O campo 6 contém sempre 100 bits. Estes bits representam idiomas de áudio representativos — diálogo — para um filme. É raro que sejam preparadas tantas versões do mesmo filme, e não é contemplado que tantas versões sejam realmente incluídas num disco. De facto, existem um máximo de 16 faixas de áudio que podem conter diálogo em idiomas diferentes. Cada um dos 100 bits, exceptuando o primeiro, representa um de 99 idiomas. Se houver um 1 na posição de bit correspondente, isto é uma indicação de que existe uma faixa de áudio com diálogo no idioma correspondente. A primeira das posições dos 100 bits não corresponde realmente a um idioma. Em vez disso, um 1 na primeira posição de bit significa que existe uma faixa de “música e efeitos” (“M&E”). (Por “efeitos” significa tais coisas como o som associado à trovoada, tiros de armas e semelhantes.) Conforme indicado no campo de Comentários na figura 3, existem N “l”s no campo 6 da secção de introdução da faixa em geral, onde N tem um valor máximo de 16 (uma faixa de M&E e até 15 faixas de diálogo, ou até 16 faixas com diálogo sem M&E). Como exemplo único, suponhamos que a terceira posição de bit corresponde a francês, o quinto a grego, e o campo de 100 bits é 10101000....0.
V -27- \ Λ
Isto significa que existe uma faixa de M&E, assim como faixas de diálogo em francês e em grego. Isto não significa que cada bloco de dados no disco inclui informação de bit que representa M&E, e diálogo em francês e em grego. O que isto de facto significa é que qualquer bloco de dados tem no máximo três faixas de áudio com M&E e/ou diálogo. Isto também significa que qualquer bloco de dados que tenha tal informação de faixa de áudio contém a informação na ordem M&E, francês, grego. Exactamente como o sistema determina que blocos de dados específicos contêm a informação áudio para aqueles idiomas representados no campo de 100 bits será descrito mais abaixo em relação aos campos contidos num bloco de dados.
Deverá ser entendido que as faixas de áudio de idioma não incluem necessariamente apenas diálogo. Conforme será descrito em breve, é possível misturar uma faixa de M&E com uma faixa de diálogo em francês, com o resultado sendo uma faixa de áudio completa adequada para executar em França. Mas é certamente possível que uma faixa de áudio em particular incluirá M&E pré-misturada e diálogo original. Por exemplo, se a posição do bit 10 do campo de 100 bits representar diálogo em inglês e existir um 1 lá armazenado, isto significa que existe uma versão de áudio no idioma inglês no disco. Todavia, é possível que na correspondente faixa de áudio exista não só diálogo em inglês, mas uma banda sonora completa incluindo a M&E. Ao mesmo tempo, pode existir M&E numa faixa separada, se existir um 1 na primeira posição do campo de 100 bits. Como as várias faixas são processadas a fim de obter uma banda sonora completa para executar em qualquer dado idioma depende de informação subsequente. O campo 6 representa simplesmente quais os idiomas de áudio que estão disponíveis, assim como se existe uma faixa separada de M&E (sem qualquer diálogo).
Existe outro bocado de informação que é necessário para que o \
esquema áudio possa funcionar, e essa informação é representada no campo 7. Para cada uma das N faixas disponíveis para idiomas de áudio (até a um máximo de 16), existe um código de 3 bits no sétimo campo. Antes de descrever o significado dos códigos, tem de ser entendido como os códigos estão associados a uma faixa e idioma em particular. Suponhamos que o campo 6 é 101010000100...0 que é interpretado a significar que existe uma faixa de M&E, uma faixa em francês, uma faixa em grego e uma faixa em inglês. Desta informação por si, não há maneira de dizer se existe se quer alguma M&E na faixa francesa, grega ou inglesa. A única coisa que é sabida em termos de idiomas é que existe diálogo em apenas três idiomas. Para este exemplo, haveriam 12 bits no campo 7. Os primeiros três bits estão associados à faixa de M&E, os segundos três bits estão associados à faixa em francês, e os terceiros e quartos três bits estão associados à faixa em grego e em inglês respectivamente. Os códigos de três bits são como se seguem: 000 -- misturador mestre (M&E) 001 — comutador mestre (M&E) 010 — diálogo + (M&E), faixa de áudio completa 011 — faixa a ser misturada com o misturador mestre 100 — faixa a ser comutada com o comutador mestre
Estes cinco códigos são tudo o que é necessário para formar bandas sonoras completas em três idiomas disponíveis, francês, grego e inglês. Como as faixas são combinadas será descrito mais abaixo, mas o que tem de ser lembrado é que a razão de ser da totalidade do arranjo é o de proporcionar bandas sonoras em muitos idiomas (até 15), sem necessitar de aquilo que poderá ser uma gravação de duas horas para cada. De facto, se um filme tem uma duração de duas horas, mas o diálogo em si é de apenas 30 minutos, o objectivo é de gravar uma faixa completa (M&E ou banda sonora original), com apenas uma gravação de áudio de 30 minutos de diálogo para um idioma em particular. -29- O campo 8 contém Nx4 bits, isto é, 4 bits para cada um dos N “l”s no campo 6. Existe assim um código de 4 bits no campo 8 para cada faixa de idioma de áudio que está disponível no disco. O código de 4 bits representa o tipo de faixa, e existe um máximo de 16 possibilidades. Tipos de faixas típicas são mono de canal único, Dolby de dois canais, Musicam de 5,1 canais (“5.1-channel”), etc. [O termo (“5.1-channel”) refere-se a canais da esquerda, direita, centro, esquerda de trás e direita de trás em conjunto com um canal de sub-woofer.] Os códigos do tipo de faixa de 4 bits permitem ao controlador mestre determinar a forma como o descodificador 71 do processador de áudio opera nos dados das de-até-16 faixas de áudio para obter saídas analógicas para o sistema de altifalantes 91.
Considerando novamente o campo 7, existem várias formas como uma banda sonora completa, num idioma seleccionado, pode ser obtida de um disco. A operação de mistura envolve a mistura (o somar) de duas bandas sonoras. A operação de comutação envolve a comutação entre duas bandas sonoras, e a execução de uma delas em qualquer dado momento. A primeira faixa é sempre de M&E, se esta estiver disponível. O código para esta faixa é sempre 000 ou 001. Se o código for 000, isto significa que não existe diálogo na faixa e a sua M&E é para ser misturado com a faixa do idioma seleccionado. Se o código 001 estiver associado com a faixa em francês, por exemplo, isto significa que a primeira e a terceira faixa devem sempre ser misturadas. O diálogo, quando este existe, aparece na faixa em francês, e misturando-a com o misturador mestre proporciona uma banda sonora completa em francês. Por outro lado, a primeira faixa pode ser um comutador mestre. O que isto significa é que música e efeitos são gravados nesta faixa, com ou sem diálogo. A faixa francesa neste caso seria representada pelo código 100. Este contém M&E e diálogo, mas apenas quando há diálogo. A faixa de M&E, a primeira, é tocada sozinha quando não há qualquer diálogo, mas a quinta faixa é tocada sozinha quando existe diálogo. As -30- faixas são comutadas e não misturadas. A faixa francesa, quando diálogo é gravado nela, inclui não só diálogo mas também de M&E uma vez que isto seria a única fonte de M&E numa operação do tipo comutação. A quinta possibilidade (010) é que uma faixa em particular contém por acaso a banda sonora original, M&E em conjunto com diálogo no idioma original. Se o diálogo estiver no idioma seleccionado, a faixa pode ser tocada do início ao fim, sozinha. Esta faixa pode também servir como um comutador mestre (código 001) para outros idiomas.
Quando se trata de misturar faixas, quaisquer áudios que estejam nas duas faixas especificadas (o misturador mestre e a faixa que é misturada com este) são simplesmente adicionadas em conjunto em todos os tempos; qualquer áudio que exista nas duas faixas será tocado. E apenas quando comutando entre o comutador mestre e a faixa com a qual esta está comutada que uma faixa é tocada em vez da outra. É verdade que cada faixa pode conter informação áudio apenas quando a outra não a contém (o que permitiria a mistura), mas é concebível que o comutador mestre também incluirá diálogo, isto é, se esta for uma gravação da banda sonora original do filme. É por isso que é empregue a comutação -- apenas uma faixa é ouvida em qualquer dado momento. Conforme será descrito mais abaixo, cada bloco de dados inclui bits que informam ao controlador mestre quais faixas de áudio contêm na realidade dados naquele bloco. Se uma faixa de idioma de áudio seleccionada com um código original de faixa 100 tem dados em qualquer bloco de dados, então o descodificador 71 do processador de áudio processa os dados naquela faixa de áudio excluindo quaisquer dados que possam estar na faixa do comutador mestre. O campo 9 na figura 3 contém seis bits que são codificados para representar um número M. Isto é o número de “outras” faixas de áudio, separadas -31 - e para além das até-16 faixas de idioma de áudio. A utilização usual destas faixas é a de representar, em forma digital comprimida, instrumentos individuais ou misturas de instrumentos, tendo o utilizador a opção de as combinar. Numa forma extrema, poderia haver 63 faixas de instrumentos, sendo o utilizador capaz de combinar qualquer faixa que este desejar, e de fixar os seus níveis relativos antes de fazer a mistura. Se uma das faixas contém à partida o som combinado, é possível apagar qualquer instrumento da mistura orquestral especificando que o conteúdo da sua informação deverá ser apagada, ou subtraída, da mistura orquestral. Isto iria permitir ao utilizador, por exemplo, tocar o seu piano acompanhado por uma orquestra a tocar um concerto da qual o som do piano terá sido eliminado. Iria também permitir a um utilizador de separar um instrumento em particular para facilitar o treino. O que o utilizador faz precisamente com as “outras” faixas de áudio é determinado pelas selecções de menu que lhe estão disponíveis. O campo 8 identifica simplesmente quantas “outras” faixas de áudio estão presentes no disco. (O termo “outras” faixas de áudio parece ser tanto ou quanto pouco descritivo, mas isto não é o caso. A intenção é de que o termo possa subsumir qualquer uso da faixa de áudio que não seja o proporcionar de faixas de áudio para filmes. Em vez de ter música orquestral nestas “outras” faixas de áudio, por exemplo, é possível ter vocalistas individuais, permitido a um utilizador estudar diferentes harmonizações.). É aparente que se existem de facto 63 “outras” faixas de áudio, então muita se não toda a capacidade do disco pode ser atribuída a dados de áudio. Mas esta é precisamente a razão porque são disponibilizadas tantas faixas de áudio. É certamente contemplado que alguns discos executáveis no sistema da figura 2 não incluirão vídeo. De facto, o campo 19, a ser descrito mais abaixo, é um campo de 1 bit que informa ao controlador mestre se existe quaisquer dados de vídeo no disco. -32-
Uma vez determinado que existem M “outras” faixas de áudio, o campo seguinte especifica como cada faixa está codificada. À semelhança do caso do campo 8, um código de 4 bits é utilizado para cada uma das “outras” faixas de áudio. Assim o número de bits no campo 10 pode ser tão baixo como 0 (se não houverem “outras” faixas de áudio) ou tão elevado como 252 (63x4).
Enquanto o aparelho pode determinar pela leitura dos campos 9 e 10 quantas “outras” faixas de áudio existem, o utilizador tem de ser dito o que está nestas faixas a fim de este saber o que fazer com elas. Existe uma descrição de cada faixa, e está em múltiplos idiomas. A primeira coisa que o utilizador tem de ser dado é uma lista dos idiomas em que existem descrições das “outras” faixas de áudio. Um campo de 100 bits é utilizado para esta finalidade. Conforme indicado na figura 3, o campo 11 tem 100 bits. Um 1 em qualquer posição de bit é uma indicação de que estão disponíveis definições de faixas no respectivo idioma. A correspondência entre posições de bits e idiomas é a mesma no campo 11 como no campo 6. Será de lembrar que a primeira posição de bit no campo 6 corresponde à M&E, não a um idioma tradicional. A primeira posição de bit no campo 11 é assim não utilizada, e podem estar no máximo 99 “l”s no campo 11.
Antes das definições das faixas serem realmente lidas e processadas, o aparelho tem de determinar quais as opções de menu a proporcionar ao utilizador. Suponhamos, por exemplo, que existem dez “outras” faixas de áudio, cada uma tendo sons de diferentes instrumentos de orquestra. Uma vez disponibilizadas ao sistema operativo as definições das faixas no idioma seleccionado, este pode apresentar um menu padrão ao utilizador. O utilizador pode então escolher faixas específicas para serem tocadas em conjunto, faixas específicas para serem eliminadas os seus níveis relativos, e outras opções “padrão”. Todavia, na eventualidade das “outras” faixas de áudio não representarem música de orquestra, ou representam-na mas duma forma que -33- requer selecções de menu fora do comum, o software padrão do sistema operativo de interface com o utilizador para que o sistema possa determinar o que é para ser feito com as “outras” faixas de áudio não será suficiente. Para acomodar situações fora do comum, o sistema operativo tem de ser proporcionado com software especial para a criação do menu, assim como para controlar como as faixas seleccionadas são misturadas / eliminadas depois das selecções do utilizador. A técnica utilizada é a mesma que a técnica acima descrita em relação ao carregamento de software especial para alterar a operação geral do aparelho (campos 3 e 4). O campo 12 é um bit único. Se este for um 1, é uma indicação de que existe um campo 13 que contém software especial de mistura / eliminação. Conforme indicado na figura 3, o campo 13 tem assim entre nenhum bits a um número indeterminado de bits que é dependente do comprimento do software especial a ser carregado na máquina vindo do disco. O software especial termina com uma palavra de sincronização para que o aparelho saiba quando se inicia o próximo campo. O campo seguinte, campo 14, consiste nas definições das faixas propriamente ditas. Uma vez que existem M “outras” faixas de áudio, e existem P idiomas nos quais estas têm de ser definidas para o utilizador, estão representadas P x M sequências de caracteres no campo 14. Cada série é separada da seguinte por um caractere de escapar. Primeiro existem M sequências de caracteres (definições das faixas) no primeiro idioma correspondendo à primeira posição no campo 11 que contém um 1, depois existem M sequências de caracteres no segundo idioma correspondendo à segunda posição de bit no campo 11 que contém um 1, etc. Conforme será descrito mais abaixo, o utilizador informa ao aparelho em qual dos idiomas disponíveis deverá ser mostrado o menu que inclui as definições das faixas. Enquanto que a totalidade da série de bits de DADOS DE SAÍDA da drive do disco é estendida ao controlador mestre no sistema na figura 2, apenas a sequência de caracteres correspondente ao idioma seleccionado é processada. Estas são processadas e mostradas de acordo com o software -34- padrão, ou com o software especial de mistura / eliminação que fora só lido do campo 12 se tal software estiver incluído no disco. (Deverá ser notado que é a função do desmultiplexador 63 distribuir aos vários buffers apenas os respectivos bits de dados que lhes são destinados. É o controlador 41 que diz ao desmultiplexador o que fazer depois do controlador interpretar a informação tanto na secção de introdução das faixas como nos bloco de dados individuais.).
Conforme descrito em relação à figura 2, é feita provisão para a inserção de subtítulos. O idioma é seleccionado pelo utilizador conforme será descrito, mas o aparelho tem de ser dito em que idiomas estão disponíveis os subtítulos. Outro campo de 100 bits é utilizado para este fim. Conforme indicado na linha 15 da figura 3, os “l”s no campo representam os idiomas individuais disponíveis para subtítulos. Como no caso dos idiomas disponíveis para mostrar, existe um máximo de 99 uma vez que a primeira posição de bits corresponde a M&E que não é num sentido estrito um “idioma”. O campo 16 é um código de versões múltiplas de 4 bits. O aparelho é informado não apenas se existem duas versões da mesma apresentação de vídeo no disco, mas também quais são as escolhas em relação às mesmas. O primeiro bit é um 0 se existir apenas uma versão no disco, e neste caso o segundo e quarto bits são ignorados. O bit 1 tem um valor de 1 se existirem duas versões no disco. O segundo bit no código diz ao aparelho se é para ser implementada a opção de fechadura parental, ou se um outro critério é para ser utilizado na selecção sobre qual a versão a ser tocada. A situação usual é quando é implementada a opção de fechadura parental, e neste caso o bit na segunda posição do código de 4 bits é um 0. Isto informa ao aparelho que este deve determinar se a opção de fechadura parental está “ligada”. Se estiver ligada, versões de classificação R (ou, no sentido mais lato, de classificação para adultos) não deverão ser tocadas. O bit na posição 3 do código é uma indicação de se a versão A (a primeira ou única -35- versão) é de classificação R ou não (0 = não, 1 = sim), e o quarto bit no código proporciona a mesma informação para a versão B se existirem duas versões; se existir apenas uma versão então o quarto bit é ignorado. Isto é toda a informação de que o aparelho necessita para determinar se qualquer das duas ou ambas as versões podem ser tocadas. Quando existem duas versões do mesmo filme no disco, é perguntado ao utilizador para seleccionar uma delas. Mas se a opção de fechadura parental estiver “ligada” e uma das duas versões for de classificação R, o utilizador é apenas dada a possibilidade de tocar a versão de não-adulto, ou de tocar nenhuma, conforme será descrito mais abaixo. Se ambas as versões forem de classificação R e a opção de fechadura parental estiver “ligada”, então o utilizador não poderá ver qualquer versão.
Por outro lado, é possível que existam duas versões do mesmo material no disco, mas não havendo a questão de um deles ser de classificação para adultos e o outro não. Por exemplo, uma versão poderá ser um filme didáctico incluindo perguntas e respostas, e a outrá poderá envolver um teste sobre a mesma matéria incluindo apenas as perguntas. Para a maior parte as duas versões seriam iguais. Nestes casos, o primeiro bit no campo 16 seria ainda um 1 para indicar que estão disponíveis duas versões, mas o segundo bit seria um 1 em vez de um 0, para indicar que a escolha entre as duas versões não depende de elas serem ou não de classificação R. Um 1 na segunda posição de bit é uma indicação de que o terceiro e quarto bit caracterizam as duas versões respectivamente em relação a uma característica que não é a classificação. O que o terceiro e quarto bit realmente significam neste caso, e quais as escolhas de menu proporcionadas ao utilizador, tem de ser determinado recorrendo a critérios diferentes. A mesma técnica que foi anteriormente aqui utilizada é agora utilizada mais uma vez — software especial é proporcionado a par dos códigos de versão. O campo 17 consiste num único bit que serve de -36- bandeira para indicar se está disponível software especial de versão. Se o bit for um 1, então o campo 18 é lido para aceder ao software. Como no caso dos dois campos de software anteriores, o campo 18 termina com um palavra de sincronização para indicar o início do campo seguinte. O software especial controla uma apresentação no menu que é exclusiva do disco em particular. O campo seguinte consiste num único bit. Conforme indicado na figura 3, este informa ao aparelho se estão disponíveis dados de vídeo. Se não estiverem, isto significa simplesmente que não existem campos de bloco de dados de vídeo na totalidade dos blocos de dados para serem descritos em relação à figura 4. O campo 20 é um único bit, e identifica a relação de aspecto base ou mestre. Se o bit tiver um valor 0, isto é uma indicação de que qualquer vídeo no disco tem uma relação de aspecto de “ecran largo” de 16:9, conforme apresentado na figura 9. Por outro lado, se o bit tiver for um 1, isto é uma indicação de que a relação de aspecto do vídeo no disco é de 4:3.
Conforme acima descrito, se o vídeo original tiver uma relação de aspecto de “ecran largo”, então existem duas maneiras de derivar uma relação de aspecto reduzido de 4:3. Uma maneira é a de formar a imagem de vídeo desde a parte central do original em “ecran largo”. Outra maneira é a de fazer um pan scan no sentido em que a secção da imagem original que é realmente utilizada não é necessariamente sempre a parte central. De facto, a figura 9 mostra a utilização de mais informação no lado esquerdo do que no lado direito da imagem original. O campo 21 é um único bit que é indicativo da disponibilidade de pan scan. Se o campo 21 é um 1, a relação de aspecto de base é 4:3 para que a disponibilidade de pan scan seja irrelevante ~ um bit único no campo 21 é simplesmente ignorado. Mas se a relação de aspecto de base for 16:9 (o campo 20 -37- tem um 0), o valor do bit no campo 21 diz ao aparelho se os subsequentes blocos de dados proporcionam informação sobre a coluna de partida que possa ser carregada no buffer de pan scan 57 na figura 2. Se o bit no campo 21 é um 0, os blocos de dados não incluem informação sobre a coluna de partida, e se o vídeo é para ser tocado com a relação de aspecto 4:3 de um original de “ecran largo”, então a imagem de vídeo é formada a partir da parte central de cada imagem original. Por outro lado, se a informação de pan scan estiver disponível nos blocos de dados, então o buffer 57 na figura 2 é actualizado conforme requerido e o vídeo finalmente formado terá um grau de variabilidade adicional. O campo 22 é um número de 20 bits que representa o número total de blocos de dados no disco. Todavia, se existem duas versão diferentes, embora tenham muitos blocos de dados em comum, o restante número de blocos nas duas versões poderão ser diferentes. Por exemplo, uma cena poderá ser totalmente omitida de uma das versões, e neste caso teria um número total de blocos de dados inferior. Por esta razão, se o campo 16 indicar que existem duas versões de um filme ou de outro material de fonte no disco, o campo 23 proporciona o número total de blocos de dados na versão A, e o campo 24 proporciona o número total de blocos de dados na versão B. Ambos os campos são omitidos se apenas existir uma versão no disco.
Cada bloco de dados pode incluir informação de vídeo para um número variável de imagens. O sistema poderia determinar o tempo total de excussão através do número de blocos de dados (tanto o número total se só existir uma versão, ou dois números diferentes se existirem duas versões), apenas se o sistema for informado sobre o ritmo original de imagens e do número médio de imagens representadas em cada bloco para o disco na sua totalidade. Dois discos com o mesmo número de blocos de dados terão tempos diferentes de excussão se o material original de fonte de um deles for filme cujas imagens foram geradas a -38- um ritmo de 24 por segundo e o outro tinha um material original de fonte derivado de uma câmara de vídeo de 30 imagens por segundo. O campo 25 é um valor de 4 bits que identifica o ritmo original de imagens (24, 30, etc.), um número necessário para a correcta geração do sinal de vídeo. Embora o tempo representado por cada bloco de dados poderá ser determinado através do ritmo de imagens se cada bloco de dados conter apenas uma imagem. Também, pode não haver qualquer informação de imagem, isto é, a bandeira de vídeo disponível no campo 19 pode ser 0. Consequentemente, o campo 26 é proporcionado. Este campo contém um número de 10 bits que representa o factor temporal do bloco, isto é, a duração média representada por cada bloco. A multiplicação do factor temporal do bloco pelo número total de blocos (ou o número total numa versão em particular) resulta no tempo de execução. (Na prática, o factor temporal do bloco é quase o mesmo para ambas as versões no disco. Se desejado, podem ser proporcionados factores temporais de bloco independentes.)
Conforme é de prática comum em discos ópticos em geral, o disco da invenção pode ser proporcionado com uma tabela de conteúdo para permitir ao utilizador seleccionar uma parte em particular para tocar, ou simplesmente para informá-lo do que está precisamente no disco e quanto tempo cada parte leva a tocar. O campo 27, se incluído, é uma tabela de conteúdo. Se apenas estiver uma versão do material fonte em disco, então existe apenas uma tabela de conteúdo. Caso contrário, existe um campo 28 adicional que consiste numa tabela de conteúdo para uma segunda versão. A figura 3 apresenta os sub-campos do campo 27.
Por falta de um termo melhor, a representação de vídeo é dividida naquilo que é chamado de “capítulos”. Para cada capítulo a tabela de conteúdo inclui um número de capítulo de 8 bits, permitindo assim um máximo de 255 capítulos individuais. A seguir a cada número de capítulo existe um número serial -39- do bloco de 20 bits do bloco de partida. Será de recordar que todos os blocos de dados no disco são numerados em série. Por outras palavras, enquanto que blocos de dados podem ser comuns a ambas as versões A e B, ou específicas a apenas uma versão, os números dos blocos de dados estão em ordem de série ao longo da faixa do disco. A tabela de conteúdo inclui o número serial do bloco do bloco de dados que é o bloco de partida para cada capítulo.
De igual modo, a fim de determinar o tempo de execução de cada capítulo, o sistema tem de saber quantos blocos estão incluídos em cada capítulo. Por esta razão, o seguinte pedaço de informação é um 20 bit de duração do bloco. Multiplicando este número pelo factor temporal do bloco permite a determinação do tempo de execução de cada capítulo. Altemativamente, o tempo de execução efectivo de cada capítulo poderá ser proporcionado em vez da duração do bloco. (Tal informação poderá ser proporcionada para diferentes versões e padrões.). A fim de apresentar o título de cada capítulo, têm de ser proporcionados séries de idiomas. Mais uma vez, o sistema tem de ser avisado sobre os idiomas que estão disponíveis para mostrar os títulos dos capítulos para que o utilizador possa seleccionar um deles. A técnica usual de proporcionar um bloco de 100 bits para a identificação dos idiomas disponíveis é empregue.
Finalmente, as séries de idioma propriamente ditas para a identificação individual dos capítulos são proporcionadas. Cada série termina com um caractere de escapar para a separar da próxima série. Esta é a mesma técnica utilizada em relação às definições das “outras” faixas de áudio acima descritas em relação ao campo 14. O campo 29 tem um mínimo de 100 bits e um máximo de 1200 bits. r E de lembrar que podem existir até 12 padrões autorizados, isto é, a saída final de -40- vídeo pode ser em até 12 diferentes formatos. A fím de assegurar a conformidade com os padrões de qualidade acordados entre todos os fabricantes de aparelhos e todas as editoras de software que acordaram em suportar um conjunto comum de especificações, é possível prevenir que editoras de software desautorizadas publiquem discos que irão tocar em aparelhos da invenção.
Mais, é possível limitar a algumas editoras em particular o fabrico de discos que irão tocar de acordo com apenas um subconjunto dos 12 padrões. Por exemplo, se há direitos de autores a serem pagos por cada disco que é fabricado de acordo com umas das especificações acordadas, e os direitos de autores variam de acordo com o número de padrões para o qual um disco pode ser tocado, é possível limitar certos fabricantes de software a apenas o subconjunto de padrões para os quais estes concordaram pagar. Por esta razão, existe um código de autorização encriptado para cada padrão; os códigos são todos armazenados no campo 29. O disco tocará de acordo com um padrão em particular apenas se o código de autorização encriptado correcto estiver contido no disco. O campo 29 inclui 100 bits para cada um dos padrões autorizados no campo 5. Uma vez que pelo menos um padrão tem de ser autorizado existem pelo menos 100 bits. O número máximo de bits são 1200 se todos os 12 padrões forem autorizados. O esquema de encriptação é baseado em princípios de criptografia de chave pública. Criptografia de chave pública é presentemente muito conhecida, e uma exposição bastante clara sobre o assunto pode ser encontrada na edição de Agosto de 1979 do “Scientific American”, num artigo de HellMan entitulado “The Mathematics of Public-key Cryptography”. O uso do sistema de criptografia de chave pública permite que uma mensagem seja encriptada no local A de acordo com uma chave secreta, ser transmitida ao local B, e desencriptada no local B de acordo com uma chave pública. A chave secreta para encriptar a -41 - mensagem é conhecida apenas pelo transmissor. Tal esquema é tipicamente utilizado para autenticar uma mensagem. Após a desencriptação no local de recepção da mensagem encriptada transmitida, a mensagem será legível apenas se tiver sido encriptada com o par da chave privada. E uma vez que a chave privada é privada, se mensagem encriptada for legível, deve ter tido origim no detentor da chave privada.
Criptografia de chave pública é utilizado na invenção da seguinte maneira. Os dados propriamente ditos da faixa são processados pela editora de software de acordo com um algoritmo predeterminado. Os pormenores do processamento não são importantes. Qualquer processador não trivial que proporcione, por exemplo, um resultado de 100 bits baseado nos dados do disco será suficiente. Um resultado de 100 bits é uma “mensagem” a ser transmitida via o disco em qualquer uma de entre uma e doze formas de encriptação. Existem 12 pares de chaves no sistema de criptografia, cada um associado a um dos diferentes padrões. A chave privada para o primeiro padrão autorizado no disco é utilizada para encriptar a mensagem de 100 bits e a encriptação de 100 bits é armazenada no campo 29. Esta encriptação é o código de autorização para um padrão em particular. A mesma coisa é feita para todos os outros padrões autorizados para um disco em particular, com a chave privada associada a cada um dos padrões a ser utilizada em cada caso. O sistema operativo do aparelho computa o mesmo resultado ou mensagem de 100 bits que foi originalmente computada pela editora de software. O software do aparelho usa depois a chave pública associada a cada um dos padrões autorizados no disco para desencriptar o respectivo código de autorização encriptado para aquele padrão. A mensagem desencriptada deverá condizer com a mensagem computada pelo sistema operativo depois de processar os dados do disco. Se não condizerem, é uma indicação de que a editora de -42- software não tinha a chave privada para encriptação do código de autorização para o padrão em particular, e o aparelho não produzirá um sinal de vídeo de acordo com aquele padrão.
Para explicar isto de uma maneira diferente, vamos assumir que a chave privada para o padrão autorizado N no disco dá origem a uma mensagem encriptada PriN(X), onde X é a mensagem a ser encriptada. Igualmente, a função PubN(X) representa a desencriptação de uma função X utilizando um par de chave pública. Admitemos ainda que seja assumido que o algoritmo pré-determinado para o processamento dos dados no disco é conhecido por todos os fabricantes de aparelhos e das editoras de software, e dá origem a um resultado de 100 bits que é tratado como um “mensagem” M cujo conteúdo (valor) depende dos dados no disco. Para o padrão N, a editora de software, depois de primeiro derivar M, armazena no disco o código PriN(X) de autorização encriptada de 100 bits. O aparelho deriva primeiro o valor M da mesma forma que a editora de software o fez. O software do aparelho utiliza então a chave pública associada ao padrão N para desencriptar o código de autorização encriptado. O sistema operativo deriva assim o Pub^Pri^M) ). Uma vez que a desencriptação de uma mensagem encriptada deverá resultar na mensagem original, o resultado desta desencriptação deverá ser o mesmo valor M que o sistema operativo deriva ao processar os dados no disco. Se for, então o padrão em particular não só está autorizado, como a editora tem o direito de o autorizar. Por outro lado, se a desencriptação do código de autorização encriptado M não condizer com o resultado algorítmico M derivado pelo aparelho (porque a editora de software não tinha a chave privada com a qual derivar PriN(M)), então aquele padrão em particular é trancado fora.
Embora um tal esquema funciona em abstracto, existe um problema prático que tem de ser ultrapassado. Suponhamos, por exemplo, que o algoritmo -43 - utilizado para derivar a “mensagem” original M envolve o processamento de 20 blocos de dados no disco com números de bloco disposto em série predeterminados. (O processamento poderá ser algo tão simples como a multiplicação por cada um dos sucessivos grupos de 100 bits cada, e utilizando como resultado de cada multiplicação -- para a próxima multiplicação — apenas os 100 bits menos significantes.). Uma editora que não tem poder para autorizar o padrão N no disco pode todavia, desejar fazê-lo. Este não conhece a chave privada com a qual deve encriptar o valor M derivado que é aplicável ao seu software. Consequentemente, este não sabe qual código encriptado de 100 bits este deveria pôr no disco que irá desencriptar para o valor M num aparelho. Mas o que este pode fazer é copiar os 20 blocos de dados predeterminados de outro disco legítimo e pô-los no seu próprio disco, e também copiar o código de autorização encriptado no campo 29. Esses 20 blocos de dados, quando processados num aparelho, resultam no valor M, e irão condizer com o código de autorização encriptado “roubado” depois de este ser desencriptado no aparelho. Naturalmente, a editora de software pode ter cometido infracção do Copyright, mas isto simplesmente agrava o crime. O problema prático que a editora de software enfrenta é que este terá blocos de dados que são “tocados” e que estarão totalmente fora de contexto no que diz respeito ao seu filme. Todavia, devido à maneira como versões múltiplas de um filme podem ser armazenadas no mesmo disco em primeiro lugar é que o aparelho pode ser controlado para saltar por cima de certos blocos de dados, conforme será descrito mais abaixo, a editora de software pode codificar os seus próprios blocos de dados para que os blocos de dados copiados não sejam tocados. Desta maneira, a protecção encriptada pode ser tomada ineficaz. A solução é que enquanto o algoritmo que deriva a “mensagem” M pode em primeiro lugar também operar em blocos de dados predeterminados, este poderia operar em pelo menos a secção de introdução da faixa. Não há maneira -44- nenhuma que uma editora não autorizada possa copiar os campos de introdução da faixa de outro disco porque isso daria ao aparelho informações incorrectas sobre o conteúdo vídeo e áudio no disco da editora não autorizada. Os dados de introdução são uma função do assunto em particular no disco, e tem de aparecer na faixa a fim de permitir o correcto funcionamento do disco. Assim a informação apresentada na figura 3 pode ser tratada como uma “mensagem” M cujas encriptações, uma para cada padrão autorizado, são derivadas utilizando as respectivas chaves privadas e são armazenadas no campo 29 de introdução. (Em todo o rigor, a “mensagem” M é o resultado do processamento de todos os campos exceptuando o campo 29. Também, os campos mais compridos, como aqueles que contêm software, podem ser omitidos do processamento.). O aparelho deriva a mesma “mensagem”, desencripta um código de autorização encriptado com a chave pública associada ao respectivo padrão, e depois compara os dois. Se estes não condizerem, o aparelho determina que aquele padrão em particular não foi autorizado para a editora do disco em particular. O campo do código de autorização encriptado é mostrado perto do fim da figura 3 e assim o correspondente processamento é descrito perto do fim do gráfico de operação das figuras 5A - 5C conforme será descrito mais abaixo. O posicionamento do campo do código de autorização encriptado conforme apresentado facilita uma descrição do seu processamento, mas de facto o campo pode ser colocado com vantagens no início do processamento. É de recordar que pode ser lido software especial do disco para modificar a sequência do aparelho normal. É assim concebível que um falsificador poderia escrever software especial que permitisse passar ao lado do processamento do código de autorização. Fazendo o processamento antes até da leitura de qualquer software especial, impede que o código de autorização seja passado ao lado.
Voltando à descrição dos campos das faixas de introdução, o campo 30 é uma bandeira de comando / dados de um bloco de dados de 1 bit. Este bit -45- informa ao sistema operativo se os blocos de dados incluem informação de comando ou dados que são para ser lidos durante a execução do disco. Como o sistema determina se um bloco de dados em particular contém comandos ou dados será descrito mais abaixo. O campo 30 indica simplesmente se tal informação existe de todo. Finalmente, os campos 31 e 32 são campos de "apanha tudo" para permitir ao disco controlar maneiras pouco usuais do aparelho processar a informação no disco. É de recordar que o campo 3 contém uma bandeira que indica se o campo 4 contém software especial que leve o aparelho a operar de acordo com um programa que é totalmente diferente daquele que é usualmente empregue, o campo 12 .indica se o campo 13 contém software especial de mistura / eliminação para uso com as “outras” faixas de áudio, e o campo 17 contém uma bandeira que indica se o campo 18 contém software de versão especial para o processamento do código de versões múltiplas de 4 bit. O campo 31, indica se existe um software “suplementar” no campo 32. O software “suplementar” é diferente do software especial do campo 4 no sentido em que o software no campo 4 é basicamente um substituto do processamento que é normalmente utilizado, enquanto que o software “suplementar” trabalha geralmente com aquele código, em conjunto com comandos e dados que são encontrados nos blocos de dados.
Tipicamente, o software “suplementar” iria permitir a execução de um jogo de vídeo, com comandos e dados relacionados nos blocos de dados a determinar o percurso da execução. Mas existem outras utilizações para esta técnica. Como outro exemplo da maneira como o software “suplementar”, e comandos e dados nos blocos de dados, podem ser utilizados, consideremos um disco desenvolvido para tocar / passar um filme clássico com subtítulos, mas que também é proporcionado com um comentário crítico que é para ser mostrado periodicamente em vez dos subtítulos, talvez durante momentos em que o ecran é lavado a fica em branco à excepção do comentário crítico. Para mostrar a flexibilidade que é possível, vamos até considerar um caso em que o comentário -46- crítico é para ser num idioma diferente. O que é requerido em tal caso é que o buffer de subtítulos 59 na figura 2 seja carregado durante a execução de alguns blocos de dados com subtítulos num idioma e com subtítulos noutro idioma durante a execução de outros blocos de dados (alguns blocos de dados contendo subtítulos correspondentes ao filme original, e outros contendo comentário crítico noutro idioma). Em tais casos, tem de ser dito ao sistema de alguma maneira para comutar para frente e para trás entre os subtítulos dos idiomas, isto é, as diferentes faixas de subtítulos têm de ser processadas em diferentes blocos de dados. Isto pode ser controlado convenientemente através de emissão de comandos nos próprios blocos de dados. Da mesma forma, se for desejado pôr o ecran em branco e interromper o filme durante a apresentação do comentário, poderá ser incluído no bloco de dados um valor de dados que representa o tempo de duração do ecran em branco. Alternadamente, se for para fazer um comentário num idioma diferente, poderá ser escolhida uma faixa de áudio diferente para este propósito. Em qualquer caso, o software especial carregado do campo 32 iria controlar o processamento dos comandos e dados contidos nos blocos de dados, e iria trabalhar em conjunto com o sistema operativo do aparelho. Q processamento dos campos das faixas de introdução O gráfico de operação das figuras 5A-5E representam o processamento da informação nos campos das faixas de introdução. A descrição deste processamento preliminar é agora apresentado, tendo em mente as funções dos campos individuais. Os campos nos blocos de dados, assim como o processamento dos blocos de dados, são descritos mais abaixo. O processamento do sistema começa, conforme mostrado no topo da figura 5A, com a leitura das regulações default. Estas são regulações estabelecidas pelo interruptores DIP, códigos ROM, ou o uso de qualquer outro -47- dispositivo ou técnica que configure o sistema quando este é ligado. É típico em sistemas baseados em microprocessadores a reconfiguração de todas as bandeiras e a leitura das regulações default quando o aparelho é ligado.
Existem quatro regulações default que são assim determinadas a fim de configurar o sistema. O primeiro é o padrão — aparelhos vendidos nos Estados Unidos, por exemplo, serão tipicamente configurados, no estado default, para produzirem um sinal de vídeo NTSC. A seguinte regulação default é o idioma — o idioma do diálogo da banda sonora, o idioma dos subtítulos (se existem), e o idioma no qual o menu é para ser apresentado no ecran. Nos Estados Unidos, por exemplo, o idioma default seria o inglês. Se o utilizador não informar o aparelho de que outro idioma é desejado para uma ou mais destas funções, a faixa 10 de idioma de áudio será utilizada para gerar a banda sonora, e sequências de caracteres no idioma inglês serão utilizados na composição do menu de mistura / eliminação para as “outras” faixas de áudio e para a tabela de conteúdos. Quanto aos subtítulos, o default usual é “sem idioma”. O terceiro default é a relação de aspecto, 4:3 nos Estados Unidos. A relação de aspecto determina as dimensões relativas do ecran representado pelo sinal de saída final de vídeo.
Finalmente, o estado da fechadura parental é determinada. No sistema da figura 2, isto implica simplesmente a determinação da regulação da fechadura 81. Mas também é possível dispensar o fecho e chave física, e de armazenar o estado da fechadura parental numa memória não-volátil depois de primeiro introduzir no teclado uma palavra-chave conhecida apenas pelas pessoas que exercitam o controlo sobre a função de fecho. -48-
Conforme acontece em muitos dispositivos de grande consumo, o teclado pode ser utilizado pelo utilizador em qualquer momento para interrogar ou controlar o aparelho. Sequências de controlo rotineiro que são padrão no estado da arte não são mostradas nos gráficos de operação. Por exemplo, o teclado, ou um dispositivo de controlo remoto associado, pode ser utilizado para controlar o volume, avanço rápido, um salto para um capítulo específico, etc. O processamento normal pode ser interrompido para controlar um ecran através da operação da tecla de menu, conforme é conhecido no estado da arte. No início do processamento da figura 5A, é mostrado um teste para determinar se a tecla de menu é utilizada. A razão para mostrar uma interrogação sobre se a tecla de menu é utilizada no início do processamento, em oposição a qualquer outro período durante a execução do disco, é porque este é o mecanismo pelo qual as regulações default podem ser alteradas. Se a tecla de menu for utilizada quando o aparelho é ligado, o sistema mostra o menu. Conforme indicado no gráfico de operação, o utilizador é dado a opção de alterar os defaults, de visualizar as tabelas de conteúdos do disco, e/ou (no caso da tecla de menu ter sido utilizada acidentalmente) retomar simplesmente ao processamento sem alterar nada. Conforme indicado, dependendo da selecção do menu, os defaults são alterados, a totalidade do processo de selecção do menu é abortado, ou uma bandeira de TOC (tabela de conteúdos) é fixada em 1. Esta bandeira será examinada mais tarde para determinar se a tabela de conteúdos deverá ser apresentada.
Até aqui, nenhuma informação do disco foi processada. (Nesta descrição, são por vezes feitas referências à leitura de um campo e outras vezes ao processamento de um campo. Deverá ser compreendido que mesmo quando é dito que depois de um certo passo de processamento é lido um campo, o campo poderá na realidade ter sido lido antes mas armazenado num buffer para uso mais tarde. Dependendo do contexto, a leitura de um campo significa lê-lo na realidade -49- para que os bits apareçam no condutor 25 de SAÍDA DE DADOS na figura 2, ou para fazer alguma coisa com os dados se estes foram anteriormente lidos e buffered.). Com referência à figura 3, o primeiro campo de informação que é lido da secção da faixa de introdução é um campo de 40 bits representando territórios autorizados. De seguida, é feita uma verificação para ver se o território no qual o aparelho foi destinado a ser utilizado é um daqueles autorizados no disco. O território do aparelho é também um tipo de configuração default, mas não é agrupado com os outros porque este não pode ser alterado pelo utilizador. (Para permitir a um utilizado mudar de um território para outro onde queira usar o seu aparelho, o território do aparelho pode ser alterado por um técnico autorizado.). Se o aparelho tiver sido desenvolvido para utilização na China, por exemplo, e a China não for um dos territórios autorizados no disco, a execução do disco será abortado.
Por outro lado, se o disco tiver sido autorizado para tocar no território do aparelho, o campo 3 é lido. Este bit único diz simplesmente ao sistema se software especial está presente. Conforme mostrado no gráfico de operação, se este estiver presente então o software especial é lido do campo 4 e é executado. O processamento termina com o passo “executar o software especial”. Isto é destinado a mostrar que o software especial no campo 4 substitui basicamente o sistema operativo incorporado. Tal software será empregue quando uma mudança radical estiver envolvida no uso geral do aparelho. (Conforme acima mencionado, isto não é para dizer que o software especial não pode chamar rotinas BIOS e semelhantes dos chips de ROM que contêm o sistema operativo.)
Se não estiver presente nenhum software especial, o sistema lê o padrão default, por exemplo, determina que um padrão NTSC é para ser empregue. Se o utilizador tiver alterado o padrão default através de uma selecção de menu, por exemplo, para PAL, então PAL será o novo padrão default. O - 50- sistema acede depois ao campo 5 que autoriza até 12 padrões. O teste que é efectuado é para determinar se o padrão default (o original, ou conforme alterado no início do processamento) é autorizado. Se este não for, é apresentado um ecran que mostra ao utilizador os padrões autorizados, e este selecciona depois um. Depois de ser feita uma selecção apropriada, ou se o padrão default for autorizado, o sistema processa os campos 6 e 7. A leitura do campo 6 informa ao aparelho sobre os idiomas de áudio disponíveis (até 16, incluindo a M&E e 15 idiomas.)
Mais uma vez, um valor default é testado contra um conjunto de opções permitidas. Anteriormente, foi o padrão default que fora testado contra os padrões autorizados lidos do disco. Desta vez é o idioma de áudio default (quer seja o idioma default no momento da ligação quer seja um idioma diferente seleccionado pelo utilizador se a tecla de menu fora operada) que é comparado com todos aqueles disponíveis. Conforme mostrado no gráfico de operação, se o idioma default não estiver disponível, é formada uma apresentação que lista os idiomas de áudio disponíveis, e o utilizador selecciona um deles. O sistema lê depois os tipos de faixas no campo 7. Este é o campo que informa ao sistema operativo se existe uma faixa de M&E, se esta é para ser utilizada como um mestre de mistura ou de comutação, e se a faixa de idioma seleccionada é uma faixa de áudio completa, é para ser misturada com o misturador mestre, ou para ser comutada com o comutador mestre. De seguida, são lidos do campo 8 os códigos das faixas. Conhecendo o idioma seleccionado, e o seu tipo de faixa e código de faixa, assim como a informação sobre M&E, mistura e comutação, o sistema operativo tem toda a informação que necessita para gerar uma banda sonora para o filme que a acompanha que vem de encontro às necessidades do espectador. A seguinte coisa que é feita é a leitura do campo 9 para determinar -51- o número de “outras” faixas de áudio que estão no disco, sendo desde nenhum até 63. Se não existirem de facto “outras” faixas de áudio, todo o processamento para determinar o que é para ser feito com estas faixas é passado ao lado. Mas se existirem tais faixas, o campo 10 é primeiro lido para determinar como estas estão codificadas. Em virtude de o utilizador ter de ser informado sobre o que está nas faixas antes deste poder determinar o que é para ser feito com as faixas, o sistema tem seguidamente de determinar lendo o campo 11 quais os idiomas de menus das “outras” faixas que estão em disco. O tipo de verificação usual é então efectuado para ver se o menu está disponível no idioma default. Se não estiver, os idiomas disponíveis são apresentados e o utilizador selecciona um deles.
Conforme acima descrito, o sistema operativo pode executar uma rotina padrão para ler o menu, apresentá-lo, e interagir com o utilizador enquanto este determina o que deve ser feito com as “outras” faixas de áudio. Mas na eventualidade de requer uma mistura ou eliminação especial, será necessário software especial de mistura / eliminação. O campo 12 é lido para ver se tal software está disponível e, conforme indicado no gráfico de operação, qualquer software especial de mistura / eliminação que estiver no disco é lido do campo 13. Só então é que os itens do menu propriamente ditos (no idioma seleccionado) são lidos do campo 14 e apresentados ao utilizador. Utilizando os menus disponibilizados pelo sistema operativo, o utilizador selecciona o modo de execução para as “outras” faixas de áudio. O utilizador pode, por exemplo, misturá-las em qualquer maneira autorizada, utilizar o que está numa faixa para eliminação (por inversão de fases) de outra faixa mais inclusiva, ajustar uma faixa para tocar exclusivamente, ajustar os níveis relativos de áudio, etc. O software especial de mistura / eliminação, pode, naturalmente, proporcionar estas opções assim como outras não comummente oferecidas.
Conforme mostrado na figura 5B, a informação dos subtítulos é -52- agora processada de acordo com o modelo estabelecido. Primeiro, o sistema determina se subtítulos são de todo em todo desejados. No início mesmo do processamento na figura 5A, é de recordar que uma das regulações default é o idioma dos subtítulos. As regulações default usuais serão de que os subtítulos não são desejados. Se este for de facto o caso, o processamento dos subtítulos é simplesmente passado por cima. Mas se subtítulos são desejados, os idiomas de subtítulos disponíveis são lidos do campo 15. É depois feito um teste para ver se o idioma de subtítulos default está disponível. São não estiver, são apresentados os idiomas de subtítulos disponíveis e o utilizador selecciona um deles.
De seguida, o código de 4 bits de versões múltiplas é lido no campo 16. O primeiro bit indica se existem duas versões, ou apenas uma. Não é feita aqui uma ramificação porque primeiro o sistema tem de determinar se está disponível um software especial de versão, e isto é determinado no campo 17. Se estiver disponível um software especial de versão, este é lido do campo 18 e executado. Até ao ponto em que este software tem de saber se são disponíveis versões múltiplas, e o que os códigos na terceira e quarta posição representam, já foi aqui determinado. Embora esteja indicado no gráfico de operação que as opções apresentadas ao utilizador são para seleccionar de entre as versões autorizadas, ou para sair, é para ser entendido que as opções apresentadas serão geralmente diferentes se for executado software especial de versões. Também, é para ser entendido que pode existir software especial de versões mesmo que exista apenas uma versão que possa ser tocada. Por exemplo, pode ser apropriado avisar o utilizador de que um programa em particular pode ser extraordinariamente perturbador, e perguntar por uma resposta de “continuar” antes de iniciar a execução — tudo isto sendo separado e à parte de uma classificação R.
Se software especial de versões não estiver disponível, então os bits -53- 3 e 4 no código de 4 biís de versões múltiplas são utilizados por razões de classificação. É feito um teste para ver se a fechadura parental está ligada. Se não estiver, então não existem restrições na execução das versões A e B, e ambas as versões são autorizadas. Se tiver sido previamente determinado que existe apenas uma versão, então essa versão é considerada como sendo a versão A e esta é autorizada.
Por outro lado, se a fechadura parental estiver ligada, têm se ser feitos testes para ver se as versões no disco têm classificação R. Conforme mostrado na figura 5C, se a versão A for de classificação R, assim como a versão B, então é abortado a execução do sistema; embora não mostrada, pode ser apresentada uma mensagem apropriada para informar ao utilizador a razão porque o sistema parou de tocar. Se a versão A for de classificação R mas a versão B não for, então é apenas autorizada a versão B. Por outro lado, se a versão A não for de classificação R mas a versão B for, então é apenas autorizada a versão A. Finalmente, mesmo que a fechadura parental esteja ligada, se nenhuma das versões for de classificação R, ambas as versões são autorizadas. O sistema apresenta de seguida as opções disponíveis ao utilizador. Este pode escolher de entre as versões autorizadas, ou pode sair e parar de tocar o disco. (Este último caso poderá surgir, por exemplo, se uma criança tentar ver uma versão de classificação R, é lhe dito que esta não pode ser tocada, e é tomada uma decisão para avançar para uma coisa mais interessante.).
Se apenas estiver disponível uma versão, se esta não for de classificação R, e se não existir nenhum software especial de versões, então pode não haver necessidade para uma apresentação — existe apenas um filme que possa ser tocado, e não existem restrições sobre quem o pode ver. Não obstante, conforme mostrado no gráfico de operação, ao utilizador ainda é dada a opção -54- entre executar o que está no disco ou abortar a execução. O sistema poderia ser desenvolvido para saltar a apresentação nestes casos e simplesmente assumir que o utilizador quer ver a única versão do filme que está no disco. Por outro lado, o gerar da apresentação permite ao utilizador verificar que o disco que este meteu no aparelho é de facto o disco que este pretende.
Embora a invenção tenha sido descrita até agora em termos de uma ou duas versões de um filme num disco, é para ser entendido que podem existir três ou mais versões. Esta é uma das principais razões de proporcionar desde logo a capacidade de ler software especial de versões. Este software pode incluir toda a informação requerida sobre as várias versões donde são formados os écrans dos menus para que o utilizador possa escolher o que é para ser executado. Conforme acima descrito, o software especial de versões pode permitir escolhas entre modos de ensinamento e de testes, e outras opções que nada têm a haver com se filmes em particular são de classificação para adultos. O sistema lê de seguida o bit de disponibilidade de vídeo no campo 11, e assim determina se os blocos de dados que serão processados contêm subsequentemente dados de vídeo. Se estiverem presentes dados de vídeo, então a relação de aspecto de base ou mestre no qual tenha sido armazenado no disco tem de ser determinado. O passo seguinte envolve assim a leitura do campo 20 para determinar se a relação de aspecto base ou mestre é 16:9 ou 4:3. Se a relação de aspecto mestre for 4:3, os seguintes cinco passos são passados por cima porque a disponibilidade de pan scan é irrelevante. Se a relação de aspecto default for de 4:3, então existe uma correspondência de um para um entre as imagens armazenadas e as apresentadas; se a relação de aspecto default for 16:9, então é apresentada uma imagem 4:3 num “ecran largo” com uma banda escura em cada lado. (Altemativamente, a imagem 4:3 poderia ser expandida para preencher o ecran 16:9, com a consequente perda de informação de cima e/ou de baixo.) mas -55- se a relação de aspecto for 16:9, conforme mostrado na figura 9, existem várias possibilidades que têm de ser exploradas.
Um dos valores default que são determinados desde o início do processamento é a relação de aspecto. O sistema operativo verifica se a relação de aspecto default é pan scan de 4:3. Com referência à figura 9, se a relação de aspecto mestre é “ecran largo” (sendo processada a ramificação do gráfico de operação), então as possibilidades são “caixa de correio”, pan scan centrada na imagem “ecran largo” (não mostrado na figura 9), ou pan scan variável (isto é com um número variável de coluna de partida). Se o default não for pan scan 4:3, então não existem escolhas para o utilizador fazer neste momento. O default é então “ecran largo” ou “caixa de correio”, e o processamento subsequente é de acordo com o default que já tiver sido determinado.
Por outro lado, se o default for pan scan 4:3, a questão é se informação de pan scan variável existe no disco. O bit de disponibilidade de pan scan é então lido do disco no campo 21. Se pan scan estiver disponível, isto significa que os blocos de dados irão especificar ao sistema operativo quais os números da coluna de partida para o pan scan — o utilizador não necessita de escolher nada neste momento. Por outro lado, se pan scan não estiver disponível, e este era o default do utilizador, este terá de decidir de entre duas possibilidades — um corte ao centro, em que a parte central de cada imagem de “ecran largo” pode ser vista, ou uma forma de “caixa de correio” em que a totalidade de todas as imagens pode ser vista, mas o ecran tem bandas escuras em cima e em baixo. E formada uma apresentação de menu, e o utilizador selecciona um dos dois modos.
Este uso de uma relação de aspecto comum no disco que não obstante permite ao utilizador escolher de entre vários tipos diferentes de apresentações exemplifica a abordagem de desenvolvimento da invenção. A ideia -56- básica é a de proporcionar a máxima flexibilidade ao mesmo tempo que se armazena todos os dados requeridos num disco óptico sensivelmente do tamanho de um CD convencional. Depois de estar armazenado no disco um filme de “ecran largo”, quase mais nenhum bem de raiz adicional é requerido para permitir ao utilizador gerar uma saída de vídeo tendo outra qualquer relação de aspecto. Embora possam existir até 15 idiomas no qual o dialogo possa ser ouvido, não existem nem de longe 15 bandas sonoras completas por causa das capacidades de mistura e comutação incluídas no aparelho e a maneira como informação redundante é eliminada das faixas de idioma de áudio. A mesma coisa se aplica aos padrão de vídeo. Enquanto que até à data o vídeo de elevada qualidade tem requerido um meio que possa ser tocado apenas em NTSC ou PAL, etc., a presente invenção permite que o mesmo disco dê origem a sinais de vídeo até 12 padrões. Uma das vantagens da invenção é que esta reduz grandemente o número de discos diferentes que têm de ser produzidos, por exemplo, por uma produtora de filmes que distribui filmes em todo mundo. Embora seja verdade que alguns campos terão de ser alterados de tempos a tempos, por exemplo, diferentes padrões têm de ser autorizados quando os vídeos forem lançados em NTSC e em PAL em alturas diferentes, tais alterações são relativamente triviais e são facilmente feitas.
Uma vez tomada a decisão sobre o modo do ecran, o campo 22 é lido para determinar o número total de blocos de dados no disco. Se existirem versões múltiplas, são também lidos os campos 23 e 24 a fim de determinar o número total de blocos de dados em cada versão. O campo 25 é então lido para determinar o ritmo original de imagens, e o campo 26 é lido para determinar o factor temporal do bloco. O campo 27 é então processado. É de recordar da figura 3 que este é o campo que contém todas as informações necessárias para a apresentação da tabela de conteúdos. A tabela de conteúdos para a versão seleccionada (campo 27 -57- se apenas existir uma versão, ou existem duas e a primeira foi seleccionada; ou o campo 28 se existem duas e a segunda foi seleccionada) inclui uma representação de 100 bits dos idiomas de apresentação dos capítulos disponíveis. O idioma de menu default é verificado contra aqueles que estão disponíveis. Se o idioma de menu default não estiver disponível, o utilizador é informado dos idiomas em que os títulos dos capítulos podem ser apresentados, e este selecciona de entre estes. Uma vez determinado o idioma de apresentação da informação dos capítulos, são calculadas as durações em tempo das várias tabelas de conteúdos. Uma vez que é conhecida quantos blocos de dados existem em cada capítulo, a duração de cada capítulo pode ser determinada multiplicando o número de blocos pelo factor temporal do bloco. A tabela de conteúdos não é necessariamente apresentada. Esta é apenas apresentada se a bandeira TOC fora activada no início do processamento, tendo o utilizador indicado que a tabela de conteúdos deveria ser apresentada. Se a bandeira TOC for 0, não há necessidade de apresentar a tabela de conteúdos. O sistema selecciona automaticamente o primeiro bloco de dados como o ponto de partida, isto é, a execução do disco começa no início. Por outro lado, se a bandeira TOC for um 1, a tabela de conteúdos é apresentada e o utilizador é dado a opção de seleccionar o ponto de partida. A seguir à tabela ou tabelas de conteúdos no disco estão os códigos de autorização encriptados para os padrões autorizados no campo 5. O sistema operativo lê o código de autorização encriptado para o padrão que está seleccionado. Este lê a seguir os dados predeterminados para o padrão que está seleccionado. É de recordar que para cada um dos 12 padrões possíveis, são processados dados predeterminados no disco para derivar uma “mensagem” M que serve como um código de autorização. E este código de autorização que é armazenado em forma encriptada no disco utilizando a chave privada associada a -58- cada padrão. Os dados que são lidos do disco podem ser diferentes para cada padrão, desde que os mesmos dados são lidos e processados tanto durante o processo de encriptação como quando o aparelho deriva por si só a “mensagem” M. Conforme acima referido, é preferível que os dados incluam pelo menos parte dos campos de introdução porque seria auto-derrotismo para uma editora autorizada copiar estes dados.
Depois de estarem lidos os dados predeterminados para o padrão seleccionado, o código de autorização (“mensagem” M) é computado através dos dados. Utilizando a chave pública associada com o padrão seleccionado, cuja chave é imbuída no sistema operativo, o código de autorização armazenado no disco para o padrão seleccionado é desencriptado. O teste para saber se a editora de software está autorizada a publicar discos que irão executar como sinais de vídeo no padrão seleccionado envolve a comparação o código de autorização de desencriptação com o código de autorização computado. Se estes não combinarem, é abortado a execução.
Se estes dois códigos combinarem, é lido o campo 30. Este bit único informa simplesmente ao processador mestre se existem quaisquer comandos ou dados armazenados nos blocos de dados para além do complemento normal mostrado na figura 4 e que será descrito mais abaixo. Se a bandeira é um 0, o sistema operativo nem procura tais comandos ou dados adicionais nos blocos de dados. Se a bandeira é um 1, isto significa que comandos ou dados podem estar presente num bloco de dados, mas não necessariamente.
Finalmente, o campo 31 é lido a fim de determinar se está disponível software “suplementar”. Se estiver, este é lido do campo 32. O software “suplementar”, conforme acima descrito, não é para ser utilizado em vez do software do sistema operativo, mas antes como suplemento a este. Esta é a -59- diferença básica entre o software nos campos 4 e 32. Falando de uma forma geral, o software “suplementar” opera em comandos e dados incluídos nos blocos de dados num campo cuja presença é indicada (embora não necessariamente em todos os blocos de dados, conforme será aparente mais abaixo) pela bandeira do software “suplementar”.
Com a leitura do campo 32 e a sua integração com o sistema operativo, a cabeça de leitura é levada a mover-se para o ponto de partida. Conforme acima descrito, o ponto de partida ou é o primeiro bloco de dados ou um bloco de dados determinado pelo utilizador se um capítulo diferente do primeiro tiver sido seleccionado. Os blocos de dados são lidos em sequência e o desmultiplexador 63 na figura 2 distribui os campos de dados a vários buffers. Conforme descrito no gráfico de operação, a leitura dos blocos de dados ocorre apenas se nenhum dos buffers estiver cheio. Mais, antes de ser lido um novo bloco de dados, o sistema verifica se existem algumas interrupções que têm de ser atendidas. O controlador 41 é a fonte de todas as interrupções. Por exemplo, se o utilizador tiver operado o teclado, o controlador gera uma interrupção na linha 43 na figura 2 que temporariamente pára a leitura dos blocos de dados. Depois das interrupções terem sido processadas, ou se não existir nenhuma interrupção a ser atendida, é lido o bloco de dados seguinte. Conforme será descrito, o número serial do bloco é uma das primeiras coisa a serem lidas. O analisador 47 de número / apontador de bloco sabe o número do bloco seguinte que é requerido. Muitas vezes, isto será simplesmente o bloco que se segue na sequência da série. Todavia, o número do bloco pode estar fora de sequência, por exemplo, se tiver de ser dado um salto para outro capítulo, ou, conforme será aparente mais abaixo, certos blocos têm de ser saltados no disco quando se toca uma de múltiplas versões de um filme. Em qualquer caso, os sistemas verificam se o bloco que está a ser lido é o bloco correcto. Se não for, é feita um ramificação para o início do processo de leitura de blocos para que possa ser lido um bloco diferente. -60- λ: Q2Z3a@B035==&S=6S3=S^
Também, o gate 61 na figura 2 é fechado para que os dados “incorrectos” no condutor 25 não sejam estendidos ao desmultiplexador 63.
Se o bloco lido for o bloco requerido, uma das primeiras coisas lidas imediatamente a seguir ao número do bloco são os dados do apontador. Os dados do apontador são utilizados pelo analisador 47 de número / apontador de bloco para determinar o número do bloco do bloco de dados seguinte que é requerido, conforme é indicado lá para o final do gráfico de operação. O número do bloco é transmitido através do cabo 49 para o microprocessador controlador 27 do drive do disco a fim de aceder a este bloco de dados ao completar a leitura do actual bloco de dados. Conforme indicado no final do gráfico de operação, o remanescente do bloco de dados que está a ser processado neste momento é lido e carregado nos vários buffers, depois do qual pode ser lido outro bloco de dados. O gráfico de operação que se acabou de rever controla o processamento do aparelho. O que é realmente feito com os dados lidos dos blocos de dados é mostrado no gráfico de operação na figura 6, e este gráfico de operação será descrito depois dos campos num bloco de dados, conforme listado na figura 4, serem compreendidos. Mas a fim de apreciar a função dos dados do apontador que estão incluídas num bloco de dados, serão primeiro descritas as figuras 7A e 7B. Estas figuras mostram como blocos de dados associados a versões individuais ou ambas as versões de um filme se interrelacionam uma com a outra, e como o sistema é controlado para saltar por cima de certos blocos de dados a fim de executar a versão seleccionada.
Figuras 7A e 7B — A Função dos Dados do Apontador
No enquadramento ilustrativo da invenção, pode haver duas versões do mesmo filme no disco. A maioria dos blocos de dados irão representar vídeo e áudio que é comum às duas versões. Todavia, haverá outros blocos que são -61 - específicos a uma versão ou à outra. A questão é como controlar a leitura em sucessão dos blocos de dados que são requeridos para a versão seleccionada entre as duas versões.
Por questões de descrição, serão utilizadas as letras A, B e C para identificar respectivamente os blocos de dados que são específicos à versão A do filme, blocos de dados que são específicos à versão B, e blocos de dados que são comuns a ambas. A figura 7B ilustra uma porção da faixa com sucessivos blocos de dados sendo marcados A, B, ou C. É para ser entendido que na prática existem muitos milhares de blocos de dados em sucessão do mesmo tipo, com a maioria dos blocos de dados no disco sendo do tipo C. Todavia, para ilustrar a maneira como o sistema salta por cima de blocos de dados que não são requeridos, a figura 7B mostra no máximo dois blocos do mesmo tipo em sucessão. A figura 7B mostra duas sequências, uma em cima para executar a versão B, e outra em baixo para executar a versão A. Se for seleccionada a versão B, e é assumido que de alguma forma o bloco B no lado esquerdo está a ser executado, é aparente que os dois blocos A que se seguem têm de ser saltados por cima a fim de ir para o quarto bloco, um bloco B. Depois deste bloco ser executado, o bloco A que se segue tem de ser saltado por cima. São depois executados dois blocos comuns do tipo C, depois do qual o bloco A que se segue tem de ser saltado por cima para outro bloco C. O bloco seguinte, um bloco B, é então executado, seguido por blocos B, C e B. Finalmente, é dado um salto por cima de um bloco A para o último bloco mostrado na figura 7B, um bloco C.
Se estiver em execução a versão A, por outro lado, são executados dois sucessivos blocos A, depois há um salto por cima de um bloco B, são executados os seguintes cinco blocos — A, C, C, A, C —, seguido de dois saltos por cima de dois blocos B para um bloco C, e finalmente há um salto por cima de outro bloco B para um bloco A seguido por um bloco C. -62- O padrão que emerge é que existem três tipos de transições de um bloco para outro. Primeiro, existe a execução de um bloco imediatamente a seguir à execução do bloco precedente. Existem sete exemplos disto mostrado na figura 7B — AA, BB, CC, CA, CB, AC e BC. As duas possibilidades que são excluídas são AB e BA, uma vez que blocos específicos às duas versões nunca serão executados durante a mesma sessão de execução do disco, e muito menos uma a seguir à outra. Embora existam sete tipos de transição de um tipo de bloco para outro tipo de bloco, existem na realidade apenas três operações básicas — ir de um bloco de um tipo qualquer para o seguinte bloco de um tipo qualquer; um salto de tanto um A para um A ou C, como de um B para um B ou C; ou uma ramificação de um bloco C tanto para um A ou B adjacente, como para um B ou A algures mais adiante na linha. A maioria das transições são do primeiro tipo. O segundo tipo ocorre quando um A é seguido de um B (cujos dois blocos nunca podem ser executados em sucessão); tem de ser dado um salto de A para outro A ou para um C. Reparos similares aplicam-se a um B seguido por um A. O terceiro tipo ocorre no final da execução de um bloco C, quando já não existe qualquer material comum para ser tocado e tem de ser feita uma comutação para uma versão ou para outra; o bloco seguinte é executado se este fizer parte da versão seleccionada, ou senão alguns blocos terão de ser saltados por cima se a ramificação for para um bloco na outra versão. A figura 7A mostra o diagrama de estado que define como e quando as transições são feitas de um bloco para outro. Conforme será abaixo descrito, todos os blocos de dados incluem uma bandeira apontadora de dois bits, possivelmente seguida de um campo que contém um apontador de 20 bits. (Quando o apontador está presente, este aponta sempre para o número serial do bloco de outro bloco de dados.). Fazendo referência ao código na figura 7A, se a bandeira apontadora de dois bits for 00, isto é uma indicação de que o -63- processamento deve continuar com o bloco seguinte: neste caso, não há necessidade de um apontador. Se a bandeira apontadora de dois bits for um código 01, isto é uma indicação de que deverá ser dado um salto para um bloco na mesma versão a alguma distância mais abaixo, ou para um bloco C a alguma distância mais abaixo. Em qualquer destes casos, é necessário um apontador.
Os códigos 10 e 11 são utilizados quando é para ser feita uma ramificação de um bloco comum C. Qual o código que é utilizado depende do bloco que se segue ser um A ou um B. Se o bloco que segue ao C for um A, é utilizado o código 10 e o apontador é para um B ou um C mais abaixo na linha. Se o código for 11, isto significa que o bloco seguinte é um B, e o apontador é para um A ou um C mais abaixo na faixa. O sistema operativo sabe qual a versão que está a ser tocada. Se estiver a ser executada a versão A e o actual bloco tem uma bandeira apontadora de 10, isto significa que o bloco seguinte, um A, deverá ser executado depois do actual bloco. Não há necessidade de um apontador. O apontador é necessário no caso de estar a ser executada a versão B. Neste caso, uma vez que o bloco seguinte é um A, este não deverá ser executado. O aparelho deverá saltar para o bloco identificado pelo apontador — ou para um outro C, ou para um B específico à versão B que está a ser executada.
Da mesma maneira, se estiver a ser executada a versão A e o actual bloco for um C com um código 11 na sua bandeira apontadora, isto significa que o bloco seguinte é um B. Uma vez que está a ser executada a versão A, o bloco seguinte não deverá ser executado depois do actual. Em vez disso, é dado um salto para o bloco A ou C identificado pelo apontador. Por outro lado, se estiver a ser executada a versão B o sistema continua simplesmente para o bloco seguinte.
A legenda na figura 7A mostra se é utilizado ou não o apontador quando são encontradas bandeiras apontadoras 10 e 11 num bloco C. A -64- representação 10(P) é uma indicação de que o apontador deverá ser utilizado, e a representação 10 [P] é uma indicação de que o apontador deverá ser ignorado. É de recordar que o código 10 é utilizado para um bloco C quando o bloco seguinte for um A. Se estiver a ser executada uma versão A, o apontador não é necessário. É por isso que uma transição do bloco C para o bloco seguinte, um bloco A, é mostrada pelo símbolo 10[P]. Por outro lado, se estiver a ser executada uma versão B, uma vez que o bloco seguinte é um A este não pode ser executado depois do actual C. Em vez disso, tem de haver um salto para o bloco identificado pelo apontador e assim o uso da representação 10(P) — o apontador aponta ou para o bloco B ou para outro C.
Argumentos semelhantes aplicam-se às representações 11(P) e 11 [P]- Em ambos os casos, é o bloco C que está a ser executado e o bloco seguinte é um B. Se a versão A estiver a ser executada, o bloco seguinte não deverá ser executado e assim o símbolo 11(P) é requerido para mostrar uma transição de estado. Por outro lado, se a versão B estiver a ser executada, deverá ser executado o seguinte bloco B, e assim o símbolo 11 [P] é apropriado.
Os quatro códigos, assim como as utilizações de (P) e [P], são apresentadas na figura 7B. Fazendo referência à sequência de transição EXECUTAR B, a primeira transição mostrada é 01(P). É de recordar que o código 01 representa um salto de uma versão para um bloco da mesma versão ou para um bloco comum, e é requerido um apontador. A primeira transição mostrada é 01(P), um salto de um bloco B para outro bloco B. A transição seguinte na linha EXECUTAR B é 01(P), um salto de um B para um C. De seguida é um exemplo da transição mais comum, 00, a execução ordeira do bloco seguinte depois do actual bloco. A quarta transição na linha EXECUTAR B é representada por um -65- símbolo 10(P). O código 10 representa uma ramificação de um bloco C quando o bloco seguinte é um A, o exemplo ilustrado na figura 7B. Em tal caso, conforme indicado na figura 7A, se está a ser executada a versão B é dado um salto para o bloco identificado pelo apontador — neste caso, o C seguinte. O código 11 é utilizado para identificar uma ramificação de um bloco C quando o bloco seguinte é um B. Se estiver a ser executada a versão B, o caso em consideração, o apontador não é necessário porque o bloco seguinte é para ser executado. É por isso que o seguinte código mostrado é 11 [P]. Seguem-se dois códigos 00 que representam transições óbvias para blocos adjacentes, seguidos por um código 11[P], uma ramificação de um bloco C para o bloco seguinte que é um B. Finalmente, é dado um salto deste bloco B por cima do seguinte bloco A para um bloco C. Isto requer um código 01(P) — o código utilizado para saltar de um bloco de qualquer versão para um bloco da mesma versão ou para um bloco comum. A sequência EXECUTAR A na figura 7B assume que é a versão A que está a ser executada. Os primeiros quatro códigos representam transições para blocos adjacentes, ou um salto de um bloco de uma versão para outro bloco na mesma versão. O seguinte código, 10[P], é utilizado para mostrar uma ramificação de um bloco C para um bloco A adjacente. O apontador não é utilizado uma vez que a versão A está a ser executada, e o código 10 é empregue porque o seguinte bloco é um bloco A. O seguinte código 00 simboliza a transição do bloco A para o seguinte bloco C.
Segue-se um salto do bloco C para outro bloco C, saltando por cima de dois blocos B. O código 11 é utilizado porque este é o código empregue quando um bloco B segue um bloco C. O símbolo utilizado é 11(P), e não 11[P], porque o apontador é requerido na ida de um bloco C para outro bloco C mais -66- abaixo na linha. Da mesma maneira, o código seguinte é mais uma vez um código 11(P) para simbolizar uma ramificação do bloco C para um bloco A mais abaixo na linha. A sequência na figura 7B termina com a transição de um bloco A para o bloco seguinte que é um C, para o qual é utilizado o código 00. O diagrama de estado na figura 7A resume todas as possibilidades. Consideremos primeiro o estado em que um bloco A está a ser processado, representado pelo círculo com um A no seu interior no canto superior esquerdo. A bandeira apontadora de dois bits num bloco A é 00 se o seguinte bloco também for um A (mostrado pela transição de A de volta a A). Se o bloco seguinte for um B, por outro lado, então este claramente não deverá ser executado. Tem de haver um salto do bloco A por cima do B, ou para outro A ou para um C. Em qualquer caso, o código é 01(P). O desenho mostra tanto um salto por cima de B (para outro A), como um salto por cima de B para um C. A única outra transição de um bloco A é para o bloco seguinte se este for um C. Isto é mostrado pelo código 00.
Existem quatro transições semelhantes mostradas para o estado B, isto é quando um bloco de dados na versão B está a ser lida. O código 00 é utilizado se o bloco seguinte for um B ou um C. O código 01(P) é utilizado quando o bloco seguinte for um A, e este é saltado por cima para que o sistema possa de seguida ler outro B ou um C.
As transições de um bloco C são mais complicadas porque existem sete destas, em vez de apenas quatro como é o caso de cada um dos blocos A e B. Se o bloco seguinte também for um C, o código é simplesmente 00 — lê o bloco seguinte. Se o bloco seguinte for um B e tem de ser dado um salto para outro C, o código 10(P) controla o salto por cima do A. Da mesma maneira, o código 11(P) controla um salto por cima de um B para outro C. E de recordar que estes dois códigos são utilizados para controlar as ramificações de um bloco C, dependendo de o bloco seguinte ser um A ou B. Em quaisquer dos casos se o bloco seguinte não é para ser lido, este (e blocos iguais a este) têm de ser saltados por cima para o próximo C.
Todavia, depois de ler um bloco C, também é possível ler um A ou um B. Para ler um A, são utilizados um dos códigos 11(P) ou 10[P]. O código 11 é empregue quando o bloco seguinte é um B, e neste caso é requerido o apontador. O código 10 é utilizado quando o bloco seguinte é um A, e neste caso o apontador não é utilizado. Da mesma maneira, para ler de seguida um bloco B, ou é utilizado o código 10(P) ou o 11[P]. O primeiro é empregue quando o bloco seguinte no disco for um A, e o apontador é requerido porque este bloco tem de ser saltado por cima. Por outro lado, se o bloco seguinte for um B, o código 11 diz ao sistema para prosseguir para este bloco que se segue, e no processo ignorar o apontador porque este não é necessário.
Talvez o ponto mais importante a reconhecer é um que não é aparente dos desenhos, e é que a maioria dos blocos irão conter bandeiras apontadoras 00 e nenhum apontador. (O código 00 é o único sem um campo apontador a seguir.). Isso é porque uma vez que uma imagem de qualquer versão esteja a ser executada, ou uma vez que uma imagem do material comum esteja a ser executada, o mais provável é que a imagem seguinte seja do mesmo tipo. Consequentemente, um código 00 por si só faz o trabalho. O resultado final é que as duas versões do mesmo filme podem ser armazenadas no disco, tendo o utilizador a opção de executar qualquer uma delas (desde que seja permitido pela fechadura parental), e apenas uma fracção muito pequena da totalidade dos bens de raiz do disco é “desperdiçado” por se estar a fazer a gestão de arquivo de bits que controlam as transições de um bloco para o bloco seguinte que é para ser lido depois deste. Mais uma vez, isto vai de encontro à filosofia subjacente ao desenvolvimento de proporcionar a máxima flexibilidade e o maior número de -68- opção possíveis, sem desnecessariamente desperdiçar bits no processo.
Também deverá ser notado que a invenção não está limitada à colocação de apenas duas versões de um filme num disco. É possível usar a mesma técnica com três ou mais versões (embora a necessidade para tantas versões é menos provável). Em tal caso, os blocos comuns requeriam dois apontadores, não apenas um. Se existem três versões no disco, a seguir a um bloco C, o bloco seguinte poderá ser um A, B ou D. Dois apontadores seriam requeridos para apontar para os dois blocos que são para ser encontrados mais abaixo na linha. Obviamente, isto é apenas uma das alterações que teriam de ser feitas. A questão é que versões múltiplas podem ser acomodadas, embora seja à custa de mais bits de gestão de arquivo. Não obstante, o número total de bits de apontadores deste tipo é ainda inconsequente em comparação com o número total de bits áudio e vídeo.
Campos de Blocos de Dados A figura 4 mostra os campos de um bloco de dados, e o formato é semelhante àquele que e mostrado para os campos da faixa de introdução na figura 3. Todos os blocos de dados começam com uma palavra de sincronização. Conforme acima descrito, o padrão da palavra de sincronização não pode aparecer nos dados, e assim quando este é detectado o sistema operativo sabe que um novo bloco de dados está prestes a iniciar. O segundo campo é um número serial do bloco de 20 bits. Todos os blocos no disco são numerados em ordem serial. O número do bloco é a primeira coisa lida porque este é utilizado pelo analisador 47 de número / apontador de bloco na figura 2. O número do bloco é essencial, por exemplo, para saltar de um bloco para outro. A cabeça de leitura será normalmente posicionada num ponto -69- perto do bloco desejado, mas é muito improvável que o bloco correcto seja seleccionado na primeira tentativa. Isto é particularmente verdade uma vez que o número de bits nos blocos de dados é variável, e o sistema não tem maneira de saber quantos bits existem nos blocos que são saltados. Lendo o número do bloco no início do bloco de dados, o sistema pode rapidamente determinar se a cabeça tem de ser reposicionada. O terceiro campo é um código de dois bits que representa se o bloco faz parte da versão A, da versão B, ou se é comum a ambas. (Apenas três de entre quatro códigos possíveis são utilizados.) Pode-se interrogar porque é que o sistema alguma vez teria de verificar a versão num bloco em particular, uma vez que quando começa a executar a versão A ou a versão B, os apontadores discutidos em relação às figuras 7A e 7B irão sempre identificar um bloco que seja ou comum ou parte da versão que está a ser executada. A resposta tem a ver com as operações de avanço rápido e recuo rápido. Embora estas operações não tenham sido discutidas extensivamente por serem técnicas inteiramente convencionais, quando avançando rapidamente, por exemplo, a cabeça de leitura pode ser posicionada mais ou menos arbitrariamente. O vídeo não deverá ser mostrado se este for da versão errada. Não é possível determinar a versão de um bloco olhando simplesmente para o número ou para o apontador do bloco. Nenhum destes identifica a versão. É por esta razão que o sistema tem de determinar a versão do bloco quando este é primeiro lido.
Os campos 4 e 5 contêm a bandeira apontadora de dois bits e o apontador de 20 bits que têm de ser explicados em pormenor em relação às figuras 7A e 7B. O campo 6 é uma bandeira de um bit que pode ou não estar presente. Com referência à figura 3, a bandeira de disponibilidade do vídeo no -70- campo 19 diz ao sistema operativo se existe algum vídeo nos blocos de dados. Mesmo que exista, todavia, isto não significa que todos os blocos de dados contêm vídeo. Para um sistema em que existe uma única imagem representada em cada bloco de dados, e os bloco de dados são processados a um ritmo fixo, haveria vídeo em todos os blocos de dados, mesmo que seja um vídeo “minimalista” que consiste de um código representando um “sem alteração”. Mas podem existir sistemas em que um bloco de dados possa representar mais ou menos que uma única imagem. Por exemplo, pode-se dar o caso de a informação de vídeo num bloco de dados, se de todo presente, seja sempre do mesmo número de bits. Dependendo da compressão, pode-se dar o caso de muitas imagens serem representadas num único bloco de dados. Em tal caso, alguns dos blocos seriam desprovidos de bits de vídeo. Dependendo do esquema de codificação empregue, o bit no campo 6 informa ao sistema operativo se existe de todo um campo 7. Se existe vídeo, o campo 7 contém a informação de vídeo, terminando com uma palavra de sincronização. Conforme acima referido, a codificação propriamente dita dos blocos de vídeo e áudio não faz parte da presente invenção. Embora esquemas de MPEG sejam preferidos, outros podem ser utilizados. O campo 8 contém de entre nenhum até 16 bits. É de recordar que o campo 6 da faixa de introdução contém 100 posições de bits, mas apenas N destes (onde o N máximo é 16) podem representar bits de valor 1 porque só podem existir no máximo 16 faixas de áudio no disco (das quais a M&E é considerada como sendo uma destas). Para cada uma destas N faixas, o campo 8 informa ao sistema operativo se existe algum áudio presente no bloco de dados. Existem assim X “l”s, até a um máximo de N. A primeira posição de bits de N do campo 8 corresponde à primeira faixa de idioma de áudio identificada no campo 6 da faixa de introdução. O segundo bit no campo 8 de um bloco de dados está associado ao segundo idioma de áudio representado no campo 6 da faixa de introdução, etc. A razão porque existem apenas N (máximo = 16) bits no campo 8 -71 - da figura 4, em vez de 100, é porque é sabido através da faixa de introdução quais os idiomas que podem estar presentes num bloco de dados. Não há razão para proporcionar 84 ou mais posições de bits em cada bloco de dados para indicar que os idiomas correspondentes não estão presente quando é sabido através da faixa de introdução que estes não se encontram em lugar algum no disco. É de recordar que o valor X na figura 4 não é igual ao valor N na figura 3. Esta última representa o número total de idiomas de áudio existentes em qualquer parte do disco, e o seu valor máximo é 16. O símbolo X representa quantos daqueles N estão realmente representados no actual bloco de dados. O campo 9 contém X blocos de idioma de áudio. Suponhamos que existem 10 idiomas de áudio representados no disco, mas que apenas seis destes estão representados no actual bloco de dados. Neste caso, existiriam X sequências de bits correspondentes aos idiomas de áudio, cada um terminando com um caractere de escapar. O caractere de escapar é utilizado para separar os blocos de áudio uns dos outros. Se sempre que um bloco de áudio estiver presente este tiver uma duração fixa, então, uma vez que é sabido quantos blocos de áudio estão presente num bloco de dados através da informação no campo 8, não é necessário proporcionar uma palavra de sincronização no final do campo. O blocos de áudio de comprimento variável requereriam uma palavra de sincronização no final do campo. O campo 9 na faixa de introdução contém um valor de 0 a 63 que representa o número de “outras” faixas de áudio. Embora possam existir M tais “outras” faixas de áudio, conforme mostrado na figura 3, isto não significa que cada uma delas é representada no actual bloco de dados. O campo 10 em cada bloco de dados contém M bits, um para cada uma das “outras” faixas de áudio no disco. Se o actual bloco de dados contém realmente informação de bits para qualquer uma destas M faixas depende de se a correspondente posição de bit no -72- campo 10 contém um 1. Se existirem Y “l”s e Y é inferior a M, isto significa que nem todas as “outras” faixas de áudio estão representadas no actual bloco de dados. O campo 11 contém Y “outras” faixas de áudio, cada uma terminando com um caractere de escapar. Será de apreciar que a maneira como as faixas de áudio e as “outras” faixas de áudio são representadas no bloco de dados são comparáveis.
Com referência novamente à figura 2, é de recordar que os bits de dados num bloco de dados são distribuídos para bujfers de áudio, um buffer de vídeo, um buffer de pan scan e um buffer de subtítulos, assim como para o controlador mestre 41 através da linha 65 de COMANDO / DADOS. Até aqui, a representação dos blocos de áudio, “outras” faixas de áudio e um bloco de vídeo foram considerados na análise dos campos na figura 4. Antes de proceder com a representação dos dados dos subtítulos, todavia, é de entender que existe uma diferença na maneira como é representada a informação dos subtítulos, em oposição aos dados de áudio e vídeo. Estes últimos são representados numa base de bloco-por-bloco, e os bujfers são continuamente atestados com novos dados de áudio e vídeo. Os subtítulos, por outro lado, não necessitam de mudar de imagem para imagem. De facto, um subtítulo nem será distinguido se este não ficar no ecran por mais de uma imagem. Consequentemente, uma vez representados os dados do subtítulo no buffer 59 se figura 2, este leva à formação de um subtítulo no ecran permanecendo lá até que nova informação de subtítulo for carregada no buffer. Para remover um subtítulo sem introduzir um novo, é carregado no buffer um novo subtítulo que consiste num campo em branco. O campo 12 no bloco de dados consiste em P bits, cada um correspondendo a um dos P idiomas diferentes de subtítulos identificados no campo 15 da faixa de introdução. (É de recordar que a primeira posição em todos os campos de 100 bits correspondentes a idiomas não representam realmente um -73- idioma, mas antes a M&E, de forma a que existem um máximo de 99 idiomas de subtítulos.) Qualquer subtítulo para o qual existe uma actualização no actual bloco de dados tem um 1 na sua posição correspondente no campo 12. Podem existir até Z “l”s, sendo o valor máximo de Z igual a P.
Para cada idioma de subtítulos para o qual exista uma actualização no actual bloco de dados, a actualização aparece no campo 13. Existem Z blocos de actualização, cada um terminando com um caractere de escapar. É importante compreender que um bloco de actualização pode ser um campo em branco. Esta é a maneira como um subtítulo é removido quando um novo subtítulo ainda não está para ocupar o seu lugar. O campo 14 consiste num bit que pode ou não estar presente. O campo está presente apenas se o campo 21 na faixa de introdução for um 1. Em tal caso, a informação de pan scan está disponível no bloco de dados. Se a informação de pan scan estiver disponível, cada bloco de dados tem de dizer ao sistema operativo se contém realmente uma nova coluna de partida para o pan scan. O campo 14 é um único bit, uma bandeira, que indica se existe uma actualização de pan scan. Se o bit for um 1, o campo 15 é um número de coluna de 9 bits, isto é, uma actualização de pan scan.
Finalmente, o campo 16 é um único bit que pode ou não estar presente, dependendo do valor do campo 30 na faixa de introdução. Esta bandeira de um bit na faixa de introdução diz ao sistema operativo se comandos “suplementares” e dados podem estar presentes no campo 17 de um bloco de dados. Se a bandeira de comando / dados presente for um 1, o bloco comando / dados é lido do campo 17. O campo termina com um caractere de escapar.
Um campo de bloco de dados contém assim até seis tipos diferentes -74- de dados — áudio, “outro” áudio, vídeo, informação de pan scan, subtítulos e um bloco de comando / dados. Estes são os seis tipos de informação que foram acima discutidos em relação com a figura 2, com desmultiplexador 63 a distribuir os diferentes blocos de informação para os buffers áudio, buffer vídeo, bujfer de pan scan, buffer de subtítulos, e controlador mestre.
Processamento dos Campos dos Blocos de Dados O processamento dos dados num bloco de dados é relativamente linear. O processamento mostrado no gráfico de operação da figura 6 ensambla com os campos dos blocos de dados propriamente ditos mostrados na figura 4. Já foi descrito como o analisador 47 de número / apontador de bloco na figura 2 processa o número serial do bloco, versão, bandeira apontadora de dois bits e apontador contido nos campos 2-5 do bloco de dados. O campo seguinte é a bandeira de vídeo presente. Conforme mostrado na figura 6, se for determinado que dados de vídeo estão presentes, o buffer de vídeo 55 na figura 2 é carregado com o vídeo no campo 7. Se os dados de vídeo não estiverem presente, o buffer é simplesmente carregado com um marcador. r E importante perceber a necessidade de ter marcadores. A fim de o sistema operativo ser sempre capaz de sincronizar informação de vídeo, áudio, subtítulos, etc., este tem de ser capaz de dizer onde nos vários buffers diferentes está a informação do mesmo bloco de dados. Por outras palavras, o sistema operativo tem de saber qual parte dos dados áudio num buffer de áudio vai com qual parte dos dados vídeo num buffer de vídeo. Caso contrário os vários itens de informação não podem ser sincronizados uns com os outros. Proporcionando marcadores nos buffers para dados que não estão presente nos blocos de dados, o sistema operativo pode manter os vários itens de informação sincronizados uns com os outros. -75-
De seguida, o sistema operativo olha para o campo 8 para determinar quantas das N faixas de áudio no disco (ver figura 3) estão realmente representadas no actual bloco de dados. O mesmo é verdade para as M “outras” faixas de áudio representadas o campo 10. Todos os dados de áudio e “outras” faixas de áudio são carregados nos seus respectivos buffers. O gráfico de operação mostra a sequência apenas para a primeira e última faixa de áudio. Em cada caso, é efectuado um teste para ver se a faixa de áudio ou “outras” faixas de áudio têm dados presentes no actual bloco de dados. Cada uma das faixas resulta em qualquer coisa ser carregado no seu respectivo buffer — ou dados propriamente ditos seguidos de um marcador, ou somente um marcador.
Depois da informação áudio e vídeo, um bloco de dados contém actualizações de subtítulos. Se existir informação de actualização para os subtítulos num idioma seleccionado, este é carregado no buffer de subtítulos; caso contrário é apenas armazenado um marcador. Os três blocos que dizem respeito a subtítulos dizem respeito apenas a uma única faixa, esta correspondendo ao idioma do subtítulo seleccionado.
De seguida, é lida a bandeira de actualização de pan scan no campo 14. Se estiver presente informação de actualização de pan scan, este também é carregado, desta vez num buffer de pan scan. Se não estiver disponível qualquer informação nova, o marcador é simplesmente colocado no buffer de pan scan para indicar que outro bloco de dados passou sem qualquer nova informação de actualização de pan scan.
Finalmente, o sistema determina se estão disponíveis comandos ou dados (se o campo 30 da faixa de introdução disser que existem comandos ou dados nos blocos de dados). Se comandos / dados estiverem presente, i.e. o campo 16 no bloco de dados for um 1, este é carregado do campo 17 para a -76- memória no controlador mestre 41 da figura 2. Se não existirem comandos ou dados disponíveis apenas é carregado um marcador na memória do microprocessador.
Deve ser notado que nenhuma das sequências de processamento da figura 6 mostram a verificação a ser feita sobre se o respectivo tipo de informação está disponível no disco em primeiro lugar. Mas é de entender que um teste como “está presente o comando / dados?” consiste na realidade em duas partes. Primeiro, a bandeira de comandos / dados do bloco de dados no campo 30 da faixa de introdução é um 0 ou um 1? Se for 0, os comandos e dados nem são procurados durante o processamento do bloco de dados. Por outro lado, se comandos ou dados podem estar presente num bloco de dados como resultado de a bandeira de dados no campo 30 da faixa de introdução ser um 1, então cada bloco de dados tem o seu campo 16 verificado para ver se a bandeira de comandos / dados presente é um 1. É o valor da bandeira no bloco de dados que determina se apenas um marcador é carregado, ou se um marcador seguido de bits de dados. Comentários semelhantes aplicam-se às outras sequências. Por exemplo, não há razão para verificar se está presente uma actualização de pan scan se da faixa de introdução é determinado que não existe informação de pan scan em nenhum lugar no disco.
Lisboa, 12 de Setembro de 2000
JORGE CRUZ
Agente Oficial da Propriedade Industrial
RUA VICTOR CORDON, 14 1200 LISBOA
Figura 1 estado da arte gravador VHS
conversor analógico-digital A/D armazém de imagem de vídeo
gerador de sincronização, conversor de padrões, e conversor digital-analógico D/A
Saída de vídeo
Figura 8 estado da arte referência intra-imagem independente | imagem imagens imagens previstas imagens imagens previstas bidireccionais bidireccionais previstas previstas
Figura 9
Relação de aspecto de “ecran largo” Relação de aspecto original de “caixa de correio”
Relação de aspecto reduzido de pan scan -2- ¥ figura 2
Amplifíer
Audio buffers
Audio processor decoder
Block number /pointer analyzer
Buffer full
CD ROM
Command / data
Data out
Demultiplexer
Display
Gate
Graphics generator Head position control Key Keyer
Master clock
Microprocessor disk drive controller
Microprocessor master controller Pan scan buffer
Pan scan processor / vertical scaler Parental lock control Rate control Subtitle buffer
Sync generator and D/A convertor
User interface Video
Video buffer
Video frame store, interface e 3:2 pulldown circuit
Video decoder . figura 3
Amplificador Buffers de áudio
Descodificador processador de áudio
Analisador de número / apontador em bloco
Buffer cheio
CD ROM
Comandos / dados
Saída de dados
Desmultiplexador
Ecran
Gate
Gerador de gráficos Controlo de posição da cabeça Chave
Accionador
Relógio mestre
Controlador do microprocessador do drive do disco
Controlador mestre do microprocessador Buffer de pan scan
Processador de pan scan / graduador vertical Controlador da fechadura parental Controlo de ritmo Buffer de subtítulos
Gerador de sincronização e conversor digital-analógico D/A Interface do utilizador Vídeo
Buffer de vídeo
Armazém de imagens de vídeo, interface e circuito de pulldown 3:2 Descodificador de vídeo -3- bits de sincronização de introdução territórios autorizados bandeira de software especial software especial com terminação em palavra de sincronização padrões autorizados idiomas de áudio disponíveis, M&E mais 99 tipos de faixas codificação das faixas número de “outras” faixas de áudio codificação para as “outras” faixas de áudio idiomas de apresentação disponíveis bandeira do software especial de mistura / eliminação software especial de mistura / eliminação com terminação em palavra de sincronização sequências P x M cada um terminando com caractere de escapar idiomas de subtítulos disponíveis código de versão múltipla bandeira de software de versão especial software de versão especial com terminação em palavra de sincronização bandeira de disponibilidade de vídeo relação de aspecto de base disponibilidade de pan scan número total de blocos de dados
número de blocos de dados na versão A
número de blocos de dados na versão B ritmo original de imagens factor temporal do bloco tabela de conteúdos para a primeira versão para cada capítulo : número do capítulo de 8 bits número serial do bloco de 20 bits do bloco de partida bloco de duração do capítulo de 20 bits idiomas de apresentação dos capítulos disponíveis (100 bits) sequências de idiomas identificando os capítulos cada um terminando com -4- caractere de escapar 28 tabela de conteúdos para a segunda versão 29 código de autorização encriptado para cada padrão com terminação em palavra de sincronização 30 bandeira de comandos / dados do bloco de dados 31 bandeira de software “suplementar” 32 software “suplementar” com terminação em palavra de sincronização -5- palavra de sincronização número serial do bloco versão (A, B ou comum) bandeira apontadora de 2 bits apontador bandeira de vídeo presente bloco de vídeo com terminação em palavra de sincronização faixas de áudio presente X blocos de idiomas de áudio, cada um terminando com caractere de escapar “outras” faixas de áudio presente Y “outras” faixas de áudio presente actualização de subtítulos presente Z blocos de actualização de subtítulos, cada um terminando com caractere de escapar bandeira de actualização de pan scan actualização de pan scan bandeira de comandos / dados presente bloco de comandos / dados terminando com caractere de escapar
-6- figura 5A partida ler configurações default: 1. Padrão 2. Idioma A. Áudio B. Subtítulos C. Menus 3. Relação de aspecto 4. Estado da fechadura parental teclas do menu operadas ? apresentar o menu: alterar • os defaults • tabela de conteúdos • retomar selecção do menu ? alterar defaults alterar defaults tabela de conteúdos fixar bandeira TOC = 1 ler territórios autorizados o território é autorizado ? abortar
ler bandeira de software especial A
A o software especial está presente ? ler software especial executar software especial ler padrão default ler padrões autorizados o padrão default é autorizado ? apresentar padrões autorizados -7- seleccionar um padrão autorizado ler idiomas de áudio e tipos de faixas disponíveis o idioma de áudio default está disponível ?
B C
figura 5 B
B
apresentar idiomas de áudio disponíveis seleccionar um idioma de áudio disponível C ler codificação para o idioma de áudio seleccionado ler número de “outras” faixas de áudio quantas ? ler codificação para “outras” faixas de áudio disponíveis ler idiomas de menus disponíveis o idioma de menus default está disponível ?
apresentar idiomas de menus disponíveis seleccionar um idioma de menus disponível D
D o software especial de mistura / eliminação está disponível ?
ler software especial de mistura / eliminação ler menu de “outras” faixas de áudio apresentar menu de “outras” faixas de áudio seleccionar modo de tocar de “outras” faixas de áudio os subtítulos requeridos estão em default ? ler idiomas de subtítulos disponíveis o idioma de subtítulos default está disponível ? apresentar idiomas de subtítulos disponíveis seleccionar um idioma de subtítulos disponível E -8-
figura 5 C E
ler código de 4 bits de versão múltipla determinar se estão disponíveis versões múltiplas software especial está disponível ? fechadura parental está ligada ? autorizar versões A e B versão A tem de classificação R ? F versão B tem de classificação R ? abortar autorizar a versão A versão B tem de classificação R ? autorizar a versão B F ler software de versão especial executar software de versão especial apresentar opções : • versões autorizadas G • sair seleccionar versão ou sair sair ? abortar ler bit de disponibilidade de vídeo o vídeo está presente ? ler relação de aspecto de base relação de aspecto ? H figura 5 D G H o default épan scan 4:3 ? ler bit de disponibilidade de pan scan o pan scan está disponível ? -9- apresentar escolhas : • corte central • caixa de correio seleccionar modo de apresentação ler número de bloco (20 ou 60 bits)
ler ritmo original de imagens ler factor temporal do bloco ler tabela de conteúdos para a versão seleccionada I I o idioma de menu default está disponível ? apresentar idiomas de apresentação de capítulos disponíveis seleccionar idioma de apresentação de capítulo calcular duração de tabela de conteúdos bandeira TOC ? fixar a partida no início apresentar tabela de conteúdos seleccionar ponto de partida ler código de autorização encriptado para o padrão seleccionado ler dados do disco predeterminados para o padrão seleccionado
J
figura 5 E
J computar código de autorização para o padrão seleccionado dos dados do disco predeterminados desencriptar código de autorização para o padrão seleccionado o código de desencriptação = código computado ? ler bandeira de comandos / dados do bloco de dados ler bit de software “suplementar” o software “suplementar” está presente ? ler software “suplementar” e integrar com o sistema operativo
K
K ir para o ponto de partida - 10- algum buffer esta cheio ? interrupção do controlador ? interromper processo ler número do bloco este é o bloco requerido de seguida ? ler dados do apontador processar dados do apontador para identificar bloco requerido de seguida ler remanescente do conteúdo do bloco de dados e carregá-lo nos buffers - 11 -
- 11 - figura 6 Partida o vídeo está presente ? carregar o marcador no buffer de vídeo carregar o buffer de vídeo o primeiro áudio seleccionado está presente ? carregar o marcador no buffer de áudio carregar o buffer de áudio o último áudio seleccionado está presente ? carregar o marcador no buffer de áudio carregar o buffer de áudio B Β a informação de actualização do subtítulo seleccionado está presente ? carregar o marcador no buffer de subtítulos carregar o buffer de subtítulos ler bandeira de actualização de pan scan a actualização de país está presente ? carregar o marcador no buffer de pan scan carregar o buffer de pan scan ler bandeira de comandos / dados o comandos / dados está presente ? carregar o marcador na RAM carregar o comandos / dados na RAM A figura 7 A jump over to another saltar por cima para outro next próximo use pointer ignore pointer utilizar apontador ignorar apontador continue to next block continuar para o bloco seguinte - 12- jump to same version or common, one pointer branch from commom
next block is an A, pointer is to a B or a C (if version A is being played, continue to next block) (if version B is being played, jump to block identified by pointer) branch from commom
next block is an B, pointer is to a A or a C (if version A is being played, jump to block identified by pointer) (if version B is being played, continue to next block) saltar para a mesma versão ou comum, um apontador ramificar de um comum
bloco Seguinte é um A, apontador para um B
ou um C (se versão A está a ser tocada, continuar para o bloco Seguinte) (se versão B está a ser tocada, saltar para o bloco identificado pelo apontador) ramificar de um comum
bloco Seguinte é um B, apontador para um A
ouumC (se versão A está a ser tocada, saltar para o bloco identificado pelo apontador) (se versão B está a ser tocada, continuar para o bloco seguinte)

Claims (14)

  1. REIVINDICAÇÕES 1. Um sistema para controlar a execução de faixas de áudio de um portador de software, tendo o dito portador de software uma pluralidade de faixas de áudio sincronizadas umas com as outras e tendo cada uma em si gravado informação áudio para ser selectivamente combinada com a informação áudio gravada noutras ditas faixas, e dados textuais definindo os conteúdo áudio das ditas faixas; compreendendo meios para executar o dito portador de software e derivar destes os ditos dados textuais e ditas informações áudio, meios para apresentar a um utilizador um menu derivado dos ditos dados textuais para informar ao dito utilizador sobre a informação áudio disponível para ser combinada, meios para permitir ao dito utilizador introduzir a maneira como a informação áudio disponível é para ser combinada baseado nas opções de menu apresentadas, caracterizado por meios de inversão de fase da informação áudio em pelo menos uma das ditas faixas, e meios para combinar a informação áudio seleccionada incluindo informação áudio invertida na fase para efectuar o cancelamento de áudio de acordo com as entradas do utilizador.
  2. 2. Um sistema para controlar a execução de faixas de áudio de um portador de software, o sistema compreendendo um portador de software tendo uma pluralidade de faixas de áudio sincronizadas umas com as outras e tendo cada uma em si gravado informação áudio para ser selectivamente combinada com a informação áudio gravada noutras ditas faixas, e dados textuais definindo os conteúdo áudio das ditas faixas; meios para executar o dito portador de software e derivar destes os ditos dados textuais e ditas informações áudio, meios para apresentar a um utilizador um menu derivado dos ditos dados textuais para informar ao dito utilizador sobre a informação áudio disponível para ser combinada, meios para permitir ao dito utilizador introduzir a maneira como a -2- informação áudio disponível é para ser combinada baseado nas opções de menu apresentadas, caracterizado por meios de inversão de fase da informação áudio em pelo menos uma das ditas faixas, e meios para combinar a informação áudio seleccionada incluindo informação áudio invertida na fase para efectuar o cancelamento de áudio de acordo com as entradas do utilizador.
  3. 3. Um sistema de acordo com reivindicação 1 ou reivindicação 2, em que informação áudio gravada no dito portador de software é gravado digitalmente em blocos separados e identificáveis.
  4. 4. Um sistema de acordo com reivindicação 3, em que cada bloco do portador de software contém indícios de quais faixas de áudio no bloco contêm informação áudio, e os ditos meios de combinação operam apenas nas faixas de áudio de qualquer bloco que seja requerido para combinar informação áudio de acordo com as ditas entradas do utilizador.
  5. 5. Um sistema de acordo com reivindicação 1, reivindicação 2, ou reivindicação 4, em que o dito portador de software tem em si gravado uma identificação do tipo de cada faixa de áudio, e mais inclui meios para processar informação áudio derivada de acordo com a identificação dos tipos da ditas faixas.
  6. 6. Um sistema de acordo com reivindicação 1 ou reivindicação 2, em que os dados textuais no dito portador de software está em idiomas múltiplos e o dito portador de software tem ainda em si gravado um código para cada um dos ditos idiomas, e ainda inclui meios para a selecção de um idioma em que o dito menu é apresentado.
  7. 7. Um sistema de acordo com reivindicação 6 incluindo ainda i -3-
    meios para representar um idioma default, os ditos meios de selecção de um idioma sendo operacionados para seleccionar um idioma de acordo com ambos o dito idioma default e os idiomas múltiplos em que os ditos dados textuais são contidos no portador de software.
  8. 8. Um sistema de acordo com reivindicação 7 incluindo ainda meios, responsivos ao dito idioma default combinando com nenhum dos ditos idiomas múltiplos, para permitir que o utilizador escolha um idioma disponível.
  9. 9. Um sistema de acordo com reivindicação 1, reivindicação2 ou reivindicação 8, em que, baseado nos dados textuais que definem o conteúdo áudio das ditas faixas, os ditos meios de apresentação apresentam um conjunto padrão de opções de menu.
  10. 10. Um sistema de acordo com reivindicação 9, em que o dito conjunto padrão de opções de menu inclui a combinação de informação áudio de faixas seleccionadas com respectivos níveis seleccionados.
  11. 11. Um sistema de acordo com reivindicação 1 ou reivindicação 2, em que as ditas opções de menu incluem a combinação de informação áudio de faixas seleccionadas com respectivos níveis seleccionados.
  12. 12. Um sistema de acordo com reivindicação 10 ou reivindicação 11, em que os ditos níveis incluem valores que permitem que uma faixa de informação áudio possa ser efectivamente apagada de outra.
  13. 13. Um sistema de acordo com reivindicação 12, em que um portador de software pode conter software para controlar a apresentação de opções não-padrão de menu e a combinação de informação áudio seleccionada de -4- acordo com as entradas do utilizador baseada nesta, e ainda incluindo meios de leitura do dito software e para posteriormente operar de acordo com este.
  14. 14. Um sistema de acordo com a reivindicação 1, reivindicação 2 ou reivindicação 12, em que um portador de software pode conter software para controlar a apresentação de opções de menu específicas ao portador e a combinação de informação áudio seleccionada de acordo com as entradas do utilizador baseada nesta, e ainda incluindo meios de leitura do dito software e para posteriormente operar de acordo com este. Lisboa, 12 de Setembro de 2000
    JORGE CRUZ Agente Oficial da Propriedade Industrial RUA VICTOR CORDON, 14 1200 LtSBOA
PT94930813T 1993-10-29 1994-10-13 Sistema e metodo para controlar a execucao de multiplas faixas de audio de um portador de software PT729621E (pt)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/145,326 US5469370A (en) 1993-10-29 1993-10-29 System and method for controlling play of multiple audio tracks of a software carrier

Publications (1)

Publication Number Publication Date
PT729621E true PT729621E (pt) 2000-12-29

Family

ID=22512575

Family Applications (2)

Application Number Title Priority Date Filing Date
PT94930813T PT729621E (pt) 1993-10-29 1994-10-13 Sistema e metodo para controlar a execucao de multiplas faixas de audio de um portador de software
PT99118364T PT967610E (pt) 1993-10-29 1994-10-13 Sistema e metodo para controlar a execucao de multiplas faixas de audio de um portador de software

Family Applications After (1)

Application Number Title Priority Date Filing Date
PT99118364T PT967610E (pt) 1993-10-29 1994-10-13 Sistema e metodo para controlar a execucao de multiplas faixas de audio de um portador de software

Country Status (13)

Country Link
US (1) US5469370A (pt)
EP (2) EP0729621B1 (pt)
JP (1) JP2948911B2 (pt)
KR (1) KR100211554B1 (pt)
AT (2) ATE219855T1 (pt)
AU (1) AU673635B2 (pt)
CA (1) CA2175064C (pt)
DE (2) DE69430878T2 (pt)
DK (2) DK0967610T3 (pt)
ES (2) ES2149891T3 (pt)
GR (1) GR3034384T3 (pt)
PT (2) PT729621E (pt)
WO (1) WO1995012180A1 (pt)

Families Citing this family (105)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5550782A (en) * 1991-09-03 1996-08-27 Altera Corporation Programmable logic array integrated circuits
US5953485A (en) * 1992-02-07 1999-09-14 Abecassis; Max Method and system for maintaining audio during video control
US5576843A (en) * 1993-10-29 1996-11-19 Time Warner Entertainment Co., L.P. System and method for controlling play of multiple dialog audio tracks of a software carrier
KR100228028B1 (ko) * 1993-10-29 1999-11-01 니시무로 타이죠 다종 언어 대응형 기록매체 및 재생장치
EP0836192A1 (en) 1993-10-29 1998-04-15 Kabushiki Kaisha Toshiba Multi-scene recording medium and method and apparatus for reproducing data therefrom
US6408129B1 (en) * 1993-10-29 2002-06-18 Time Warner Entertainment Co, Lp Method for processing a plurality of synchronized audio tracks, including phase inversion of a selected track
JP2677775B2 (ja) * 1994-04-14 1997-11-17 株式会社東芝 再生装置
US7188352B2 (en) * 1995-07-11 2007-03-06 Touchtunes Music Corporation Intelligent digital audiovisual playback system
US8661477B2 (en) 1994-10-12 2014-02-25 Touchtunes Music Corporation System for distributing and selecting audio and video information and method implemented by said system
ATE188793T1 (de) 1994-10-12 2000-01-15 Touchtunes Music Corp Intelligentes system zur numerischen audio- visuellen reproduktion
US7424731B1 (en) 1994-10-12 2008-09-09 Touchtunes Music Corporation Home digital audiovisual information recording and playback system
US5778142A (en) * 1994-11-24 1998-07-07 Kabushiki Kaisha Toshiba Large capacity recording medium, method and apparatus for reproducing data from a large-capacity recording medium, and method and apparatus for recording data on a large-capacity recording medium
KR100254090B1 (ko) * 1995-02-16 2000-04-15 니시무로 타이죠 기록 매체 재생 장치
US6288991B1 (en) 1995-03-06 2001-09-11 Fujitsu Limited Storage medium playback method and device
CA2192077C (en) * 1995-04-14 2001-02-27 Hideki Mimura Recording medium, apparatus and method for recording data on the recording medium, apparatus and method for reproducing data from the recording medium
US5813010A (en) * 1995-04-14 1998-09-22 Kabushiki Kaisha Toshiba Information storage and information transmission media with parental control
US6009433A (en) * 1995-04-14 1999-12-28 Kabushiki Kaisha Toshiba Information storage and information transmission media with parental control
KR100326130B1 (ko) * 1995-08-21 2002-09-05 마츠시타 덴끼 산교 가부시키가이샤 동적인재생출력의전환을실현하는멀티미디어광디스크와그재생장치및그재생방법
TW329515B (en) * 1995-10-24 1998-04-11 Matsushita Electric Ind Co Ltd Recording medium and reproduction apparatus
US5991496A (en) * 1995-11-29 1999-11-23 Sony Corporation Recording/reproducing apparatus and method thereof
US5801694A (en) * 1995-12-04 1998-09-01 Gershen; Joseph S. Method and apparatus for interactively creating new arrangements for musical compositions
US5699277A (en) * 1996-01-02 1997-12-16 Intel Corporation Method and apparatus for source clipping a video image in a video delivery system
JP4112644B2 (ja) 1996-02-28 2008-07-02 パイオニア株式会社 情報記録媒体、情報記録装置及び情報記録方法並びに情報再生装置及び情報再生方法
FR2753868A1 (fr) 1996-09-25 1998-03-27 Technical Maintenance Corp Procede de selection d'un enregistrement sur un systeme numerique de reproduction audiovisuel et systeme pour mise en oeuvre du procede
FR2769165B1 (fr) 1997-09-26 2002-11-29 Technical Maintenance Corp Systeme sans fil a transmission numerique pour haut-parleurs
EP1076928B1 (en) * 1998-04-14 2010-06-23 Hearing Enhancement Company, Llc. User adjustable volume control that accommodates hearing
US6311155B1 (en) 2000-02-04 2001-10-30 Hearing Enhancement Company Llc Use of voice-to-remaining audio (VRA) in consumer applications
US7415120B1 (en) 1998-04-14 2008-08-19 Akiba Electronics Institute Llc User adjustable volume control that accommodates hearing
FR2781582B1 (fr) 1998-07-21 2001-01-12 Technical Maintenance Corp Systeme de telechargement d'objets ou de fichiers pour mise a jour de logiciels
US8028318B2 (en) 1999-07-21 2011-09-27 Touchtunes Music Corporation Remote control unit for activating and deactivating means for payment and for displaying payment status
FR2781580B1 (fr) 1998-07-22 2000-09-22 Technical Maintenance Corp Circuit de commande de son pour systeme de reproduction audiovisuelle numerique intelligent
FR2781591B1 (fr) 1998-07-22 2000-09-22 Technical Maintenance Corp Systeme de reproduction audiovisuelle
JP2000244725A (ja) * 1999-02-22 2000-09-08 Sony Corp 付加情報重畳方法、付加情報検出方法、付加情報重畳装置および付加情報検出装置
US8726330B2 (en) 1999-02-22 2014-05-13 Touchtunes Music Corporation Intelligent digital audiovisual playback system
US6681077B1 (en) * 1999-04-02 2004-01-20 Matsushita Electric Industrial Co., Ltd. Optical disc, recording device and reproducing device
JP3199711B2 (ja) * 1999-04-02 2001-08-20 松下電器産業株式会社 光ディスクとその記録装置および再生装置
US6442278B1 (en) 1999-06-15 2002-08-27 Hearing Enhancement Company, Llc Voice-to-remaining audio (VRA) interactive center channel downmix
US6985594B1 (en) 1999-06-15 2006-01-10 Hearing Enhancement Co., Llc. Voice-to-remaining audio (VRA) interactive hearing aid and auxiliary equipment
FR2796482B1 (fr) 1999-07-16 2002-09-06 Touchtunes Music Corp Systeme de gestion a distance d'au moins un dispositif de reproduction d'informations audiovisuelles
EP1206741A1 (en) * 1999-08-11 2002-05-22 Spinware, Inc. System and method for controlling access to data stored in a portable storage medium
FR2805377B1 (fr) 2000-02-23 2003-09-12 Touchtunes Music Corp Procede de commande anticipee d'une selection, systeme numerique et juke-box permettant la mise en oeuvre du procede
FR2805060B1 (fr) 2000-02-16 2005-04-08 Touchtunes Music Corp Procede de reception de fichiers lors d'un telechargement
FR2805072B1 (fr) 2000-02-16 2002-04-05 Touchtunes Music Corp Procede d'ajustement du volume sonore d'un enregistrement sonore numerique
US7266501B2 (en) * 2000-03-02 2007-09-04 Akiba Electronics Institute Llc Method and apparatus for accommodating primary content audio and secondary content remaining audio capability in the digital audio production process
US6351733B1 (en) 2000-03-02 2002-02-26 Hearing Enhancement Company, Llc Method and apparatus for accommodating primary content audio and secondary content remaining audio capability in the digital audio production process
NL1014950C2 (nl) * 2000-04-14 2001-10-16 Franke & Franke Showprodukties Compactdisk.
FR2808906B1 (fr) 2000-05-10 2005-02-11 Touchtunes Music Corp Dispositif et procede de gestion a distance d'un reseau de systemes de reproduction d'informations audiovisuelles
US20040096065A1 (en) * 2000-05-26 2004-05-20 Vaudrey Michael A. Voice-to-remaining audio (VRA) interactive center channel downmix
FR2811175B1 (fr) 2000-06-29 2002-12-27 Touchtunes Music Corp Procede de distribution d'informations audiovisuelles et systeme de distribution d'informations audiovisuelles
FR2811114B1 (fr) 2000-06-29 2002-12-27 Touchtunes Music Corp Dispositif et procede de communication entre un systeme de reproduction d'informations audiovisuelles et d'une machine electronique de divertissement
FR2814085B1 (fr) 2000-09-15 2005-02-11 Touchtunes Music Corp Procede de divertissement base sur les jeux concours a choix multiples
US20030078687A1 (en) * 2001-10-15 2003-04-24 Du Breuil Thomas Lemaigre Method and system for automatically configuring an audio environment
US20040004599A1 (en) * 2002-07-03 2004-01-08 Scott Shepard Systems and methods for facilitating playback of media
US8584175B2 (en) 2002-09-16 2013-11-12 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US8151304B2 (en) 2002-09-16 2012-04-03 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US8103589B2 (en) 2002-09-16 2012-01-24 Touchtunes Music Corporation Digital downloading jukebox system with central and local music servers
US10373420B2 (en) 2002-09-16 2019-08-06 Touchtunes Music Corporation Digital downloading jukebox with enhanced communication features
US7822687B2 (en) 2002-09-16 2010-10-26 Francois Brillon Jukebox with customizable avatar
US9646339B2 (en) 2002-09-16 2017-05-09 Touchtunes Music Corporation Digital downloading jukebox system with central and local music servers
US8332895B2 (en) 2002-09-16 2012-12-11 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US11029823B2 (en) 2002-09-16 2021-06-08 Touchtunes Music Corporation Jukebox with customizable avatar
US20040266337A1 (en) * 2003-06-25 2004-12-30 Microsoft Corporation Method and apparatus for synchronizing lyrics
WO2005003927A2 (en) * 2003-07-02 2005-01-13 James Devito Interactive digital medium and system
KR100588874B1 (ko) * 2003-10-06 2006-06-14 엘지전자 주식회사 노래방 기능을 갖는 영상표시기기 및 그 제어방법
US20050132293A1 (en) * 2003-12-10 2005-06-16 Magix Ag System and method of multimedia content editing
US8732221B2 (en) * 2003-12-10 2014-05-20 Magix Software Gmbh System and method of multimedia content editing
US20080168350A1 (en) * 2007-01-05 2008-07-10 Jones David N Method and system for movie karaoke
EP2102596B1 (en) * 2007-01-10 2018-01-03 TomTom Navigation B.V. Method of indicating traffic delays, computer program and navigation system therefor
US9330529B2 (en) 2007-01-17 2016-05-03 Touchtunes Music Corporation Game terminal configured for interaction with jukebox device systems including same, and/or associated methods
US9171419B2 (en) 2007-01-17 2015-10-27 Touchtunes Music Corporation Coin operated entertainment system
US20080201158A1 (en) 2007-02-15 2008-08-21 Johnson Mark D System and method for visitation management in a controlled-access environment
US9953481B2 (en) 2007-03-26 2018-04-24 Touchtunes Music Corporation Jukebox with associated video server
US20090022015A1 (en) * 2007-07-18 2009-01-22 Donald Harrison Media Playable with Selectable Performers
US9357061B2 (en) 2007-09-10 2016-05-31 Dsi-Iti, Llc System and method for the automatic distribution of inmate phone recordings
US10290006B2 (en) 2008-08-15 2019-05-14 Touchtunes Music Corporation Digital signage and gaming services to comply with federal and state alcohol and beverage laws and regulations
US8332887B2 (en) 2008-01-10 2012-12-11 Touchtunes Music Corporation System and/or methods for distributing advertisements from a central advertisement network to a peripheral device via a local advertisement server
WO2010005569A1 (en) 2008-07-09 2010-01-14 Touchtunes Music Corporation Digital downloading jukebox with revenue-enhancing features
US10564804B2 (en) 2009-03-18 2020-02-18 Touchtunes Music Corporation Digital jukebox device with improved user interfaces, and associated methods
US9292166B2 (en) 2009-03-18 2016-03-22 Touchtunes Music Corporation Digital jukebox device with improved karaoke-related user interfaces, and associated methods
US10719149B2 (en) 2009-03-18 2020-07-21 Touchtunes Music Corporation Digital jukebox device with improved user interfaces, and associated methods
CN102449658A (zh) 2009-03-18 2012-05-09 踏途音乐公司 娱乐服务器及相关的社交网络系统
US20110075537A1 (en) * 2009-09-25 2011-03-31 General Electric Company Holographic disc with improved features and method for the same
US8327268B2 (en) * 2009-11-10 2012-12-04 Magix Ag System and method for dynamic visual presentation of digital audio content
JP5571200B2 (ja) 2010-01-26 2014-08-13 タッチチューンズ ミュージック コーポレイション 改善されたユーザインターフェースを備えたデジタルジュークボックス装置および関連手法
US9024166B2 (en) * 2010-09-09 2015-05-05 Harmonix Music Systems, Inc. Preventing subtractive track separation
AU2012308184B2 (en) 2011-09-18 2015-08-06 Touch Tunes Music Corporation Digital jukebox device with karaoke and/or photo booth features, and associated methods
US10496250B2 (en) 2011-12-19 2019-12-03 Bellevue Investments Gmbh & Co, Kgaa System and method for implementing an intelligent automatic music jam session
US11151224B2 (en) 2012-01-09 2021-10-19 Touchtunes Music Corporation Systems and/or methods for monitoring audio inputs to jukebox devices
EP2992683A1 (en) 2013-04-30 2016-03-09 Dolby Laboratories Licensing Corporation System and method of outputting multi-lingual audio and associated audio from a single container
WO2015070070A1 (en) 2013-11-07 2015-05-14 Touchtunes Music Corporation Techniques for generating electronic menu graphical user interface layouts for use in connection with electronic devices
KR102533342B1 (ko) 2014-03-25 2023-05-17 터치튠즈 뮤직 컴퍼니, 엘엘씨 향상된 사용자 인터페이스를 가지는 디지털 주크박스 장치 및 관련 방법
EP4218975A3 (en) 2015-05-19 2023-08-30 Harmonix Music Systems, Inc. Improvised guitar simulation
US9773486B2 (en) 2015-09-28 2017-09-26 Harmonix Music Systems, Inc. Vocal improvisation
US9799314B2 (en) 2015-09-28 2017-10-24 Harmonix Music Systems, Inc. Dynamic improvisational fill feature
JP2017151355A (ja) * 2016-02-26 2017-08-31 ヤマハ株式会社 電子打楽器
US10572961B2 (en) 2016-03-15 2020-02-25 Global Tel*Link Corporation Detection and prevention of inmate to inmate message relay
US9609121B1 (en) 2016-04-07 2017-03-28 Global Tel*Link Corporation System and method for third party monitoring of voice and video calls
US10735431B2 (en) 2016-11-02 2020-08-04 Global Tel*Link Corp. Control of internet browsing in a secure environment
US10708369B2 (en) 2016-11-02 2020-07-07 Global Tel*Link Corp. Control of internet browsing in a secure environment
US9990826B1 (en) 2016-12-07 2018-06-05 Global Tel*Link Corporation System for monitoring offender during correctional supervisory program
US10027797B1 (en) 2017-05-10 2018-07-17 Global Tel*Link Corporation Alarm control for inmate call monitoring
US10225396B2 (en) 2017-05-18 2019-03-05 Global Tel*Link Corporation Third party monitoring of a activity within a monitoring platform
US10860786B2 (en) 2017-06-01 2020-12-08 Global Tel*Link Corporation System and method for analyzing and investigating communication data from a controlled environment
US9912821B1 (en) 2017-06-30 2018-03-06 Global Tel*Link Corporation Call processing system for modifying inmate communication limits
US10638201B2 (en) 2018-09-26 2020-04-28 Rovi Guides, Inc. Systems and methods for automatically determining language settings for a media asset

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2496375B1 (fr) * 1980-12-17 1985-12-20 Sony Corp Appareil d'enregistrement/reproduction de signaux de television avec des signaux autio multiplexes
US4523236A (en) * 1981-06-19 1985-06-11 Sanyo Electric Co., Ltd. Video signal recording and reproducing apparatus, including means for discriminating the mode of multiplexing of an audio signal
US5023707A (en) * 1985-12-02 1991-06-11 Media Transference International, Ltd. System for combining multiple audio channels into the baseband video signal and the recovery of the audio channels therefrom
JPH0670876B2 (ja) * 1987-02-10 1994-09-07 ソニー株式会社 光学ディスク及び光学ディスク再生装置
US4858033A (en) * 1987-03-18 1989-08-15 Chippendale Arthur J Apparatus for pacing, queing and equipment control in audiovisual work
WO1988008190A1 (en) * 1987-04-16 1988-10-20 Louis Tubman Multi-track audio recording and process for making same
US5146833A (en) * 1987-04-30 1992-09-15 Lui Philip Y F Computerized music data system and input/out devices using related rhythm coding
CZ284768B6 (cs) * 1988-01-19 1999-02-17 Philips Electronics N. V. Způsob přenosu informačních signálů a zařízení pro jeho provádění
US5280572A (en) * 1988-06-24 1994-01-18 Time Warner Interactive Group Inc. Method and apparatus for storing text data in subcode packs
JP2845920B2 (ja) * 1989-02-09 1999-01-13 パイオニア株式会社 記録再生方式
JP2751315B2 (ja) * 1989-02-14 1998-05-18 ソニー株式会社 記録及び再生方法及び装置
US5092216A (en) * 1989-08-17 1992-03-03 Wayne Wadhams Method and apparatus for studying music
JPH0413287A (ja) * 1990-04-28 1992-01-17 Nec Home Electron Ltd 自動再生方法及び装置
JPH0467490A (ja) * 1990-07-06 1992-03-03 Pioneer Electron Corp 情報再生装置
US5130815A (en) * 1990-07-20 1992-07-14 Mti Associates Method and apparatus for encoding a video signal having multi-language capabilities
JP2596206B2 (ja) * 1990-10-08 1997-04-02 ヤマハ株式会社 演奏データ記録再生装置および演奏データ記録再生方法
US5262964A (en) * 1991-04-10 1993-11-16 International Business Machines Corporation Method and apparatus for variable playback speed of multimedia data interchange within a data processing system
US5715224A (en) * 1991-07-05 1998-02-03 Sony Corporation Recording medium with synthesis method default value and reproducing device
US5576843A (en) * 1993-10-29 1996-11-19 Time Warner Entertainment Co., L.P. System and method for controlling play of multiple dialog audio tracks of a software carrier
US5463565A (en) * 1993-10-29 1995-10-31 Time Warner Entertainment Co., L.P. Data block format for software carrier and player therefor
US5497241A (en) * 1993-10-29 1996-03-05 Time Warner Entertainment Co., L.P. System and method for controlling display of motion picture subtitles in a selected language during play of a software carrier
KR100228028B1 (ko) * 1993-10-29 1999-11-01 니시무로 타이죠 다종 언어 대응형 기록매체 및 재생장치

Also Published As

Publication number Publication date
ES2149891T3 (es) 2000-11-16
DE69425069D1 (de) 2000-08-03
DK0729621T3 (da) 2000-10-23
DE69430878D1 (de) 2002-08-01
AU7982394A (en) 1995-05-22
DE69425069T2 (de) 2001-03-08
ES2178329T3 (es) 2002-12-16
CA2175064A1 (en) 1995-05-04
KR960706134A (ko) 1996-11-08
KR100211554B1 (ko) 1999-08-02
JP2948911B2 (ja) 1999-09-13
EP0729621A4 (en) 1997-01-29
DK0967610T3 (da) 2002-07-22
JPH08510850A (ja) 1996-11-12
ATE194241T1 (de) 2000-07-15
CA2175064C (en) 1997-11-18
US5469370A (en) 1995-11-21
AU673635B2 (en) 1996-11-14
EP0729621B1 (en) 2000-06-28
GR3034384T3 (en) 2000-12-29
PT967610E (pt) 2002-09-30
EP0967610A1 (en) 1999-12-29
ATE219855T1 (de) 2002-07-15
DE69430878T2 (de) 2003-01-30
EP0967610B1 (en) 2002-06-26
WO1995012180A1 (en) 1995-05-04
EP0729621A1 (en) 1996-09-04

Similar Documents

Publication Publication Date Title
PT729621E (pt) Sistema e metodo para controlar a execucao de multiplas faixas de audio de um portador de software
KR100231632B1 (ko) 소프트웨어 캐리어 및 그에 대한 플레이어의 데이타 블록 포맷9data block format for software carrier and player therefor)
PT726013E (pt) Sistema e metodo para controlar o tocar de multiplas versoes do mesmo filme armazenadas em disco optico
KR100232119B1 (ko) 소프트웨어 캐리어를 인증하는 시스템 및 방법
PT971354E (pt) Metodo para controlar o tocar de faixas de audio de um portador de software
US6408129B1 (en) Method for processing a plurality of synchronized audio tracks, including phase inversion of a selected track
PT971536E (pt) Portador/gravador digital de software e feixe de dados para controlar a apresentacao de subtitulos
PT726016E (pt) Sistema e metodo para as editoras de software em discos controlarem a distribuicao dos discos