Programando em NCL 3.0.pdf - Telemidia - PUC-Rio
Programando em NCL 3.0.pdf - Telemidia - PUC-Rio Programando em NCL 3.0.pdf - Telemidia - PUC-Rio
AplicacoesNCLjoao.ncl (2 Kbytes)imagensfoto.png (50 Kbytes)chuteira.png (40 Kbytes)videosdrible.mp4 (108 Kbytes)codigos LuaLUAgoals.lua (1 Kbyte)Figura B.3 Árvore de diretórios para um carrossel.A divisão anterior pode não ser a melhor divisão dos arquivos emmódulos. A divisão depende de quando os arquivos serão necessários, osrelacionamentos entre eles etc.Vamos agora colocar os módulos no carrossel. Como o Módulo 1contém a aplicação e ela deve ser carregada antes de tudo, para diminuir o seuretardo de acesso vamos inserir o Módulo 1 mais de uma vez no carrossel,como ilustra a Figura B.4.Módulo 1Módulo 2Módulo 1Módulo 3Figura B.4 Carrossel de objetos para o exemplo da Figura B.3.Como mencionamos, transmitir um módulo mais de uma vez em umcarrossel diminui seu tempo de acesso, mas aumenta o tamanho do carrossel eo tempo de acesso dos outros módulos. Mais ainda, como a banda passante dedifusão é constante (6 MHz no caso do Brasil), aumentar o tamanho docarrossel é diminuir a banda dos outros fluxos que irão no mesmo sinal TS(Transpor Stream), incluindo o áudio e o vídeo principal de um programa deTV. Diminuir a banda desses sinais é diminuir sua qualidade.Alternativamente, poderíamos ter optado por colocar o arquivo joão.ncl nosmódulos 1 e 2, pois nada impede que um arquivo seja transmitido mais deuma vez, em mais de um módulo. Entretanto, os mesmos cuidados devem sertomados. De fato, a otimização de um carrossel é um problema extremamentecomplexo. Não existe maneira de saber qual é o carrossel de objetos maiseficiente para todos os casos. É necessário saber a estrutura e o projeto decada aplicação específica carregada pelo carrossel e, mesmo assim, não énada fácil chegar à solução mais eficiente.456
Como já mencionamos, cada instância do carrossel de objetos érepresentada por um Service Domain, que consiste em uma identificaçãoúnica do carrossel de objetos. Todo Service Domain possui um objeto ServiceGateway, que contém referências para todos os objetos dispostos na raiz docarrossel de objetos.O Service Gateway é um objeto do carrossel de objetos cuja localizaçãoé transmitida em uma mensagem DownloadServerInitiate (DSI), queapresentamos na Seção B.2 (um carrossel de objetos será sempretransportado em um carrossel de duas camadas).O padrão DSM-CC utiliza a mesma estrutura de referências IOR(Interoperable Object Reference), definidas nas especificações CORBA parareferenciar um objeto no carrossel. No contexto do protocolo carrossel deobjetos, uma IOR é normalmente composta pelo identificador do carrossel,seguido do identificador do módulo e pelo identificador do objeto.Vamos a um exemplo um pouco mais simples que o anterior para tornarmais claro o processo. Considere a árvore de diretórios apresentada na FiguraB.5 e o carrossel de objetos gerado a partir dessa árvore, com o ServiceDomain de valor hexadecimal “1”. Nesse Service Domain, dois módulos sãogerados e identificados com valores em hexadecimal “1” e “2”. Oidentificador de cada objeto é apresentado através do campo “objectKey”. Oobjeto que representa o Service Gateway (na Figura B.5: objeto do tipo “srg”)é identificado com o valor “1” e é encapsulado no Módulo “1”. Comoconsequência, a IOR do objeto Service Gateway transmitida na mensagemDownloadServerInitiate é definida por “1,1,1” (Service Domain = 1, id domódulo = 1 e id do objeto = 1). Os objetos que representam o arquivo“weatherConditions.ncl” e o diretório “images” são identificados pelosvalores hexadecimais “2” e “3”, respectivamente, e também são encapsuladosno Módulo “1”. Já o objeto que representa o arquivo contendo o conteúdo daimagem é identificado com o valor “1”, mas encapsulado no Módulo “2”.O objeto Service Gateway possui, por sua vez, duas IORs. Pararelacionar uma IOR ao nome do objeto que a mesma referencia, bem como aotipo desse objeto (arquivo, diretório etc.), as especificações DSM-CC utilizamo conceito de binding. Assim, no exemplo, o objeto Service Gateway possuidois bindings para os dois objetos do Módulo “1” que são filhos diretos daraiz do sistema de arquivos representado pelo carrossel.457
- Page 446 and 447: A.2 Conversão de SinaisPara utiliz
- Page 448 and 449: Figura A.2: Lei A e lei .A Tabela A
- Page 450 and 451: as bandas menos importantes utiliza
- Page 452 and 453: E temos a seguinte codificação, g
- Page 454 and 455: Note que, assim procedendo, o decod
- Page 456 and 457: Y = 0,299R + 0,587G + 0,114BAs comp
- Page 458 and 459: Uma vez que uma imagem estática po
- Page 460 and 461: Note que, no modo progressivo, os p
- Page 463 and 464: ao redor que possuam uma amplitude
- Page 465 and 466: Figura A.9. O MP3 usa bandas não-u
- Page 467 and 468: CentralPrincipalEsquerdoPrincipalDi
- Page 469 and 470: televisão. A recomendação BT 601
- Page 471 and 472: JPEG modo sequencial, gerando os bl
- Page 473 and 474: Macroblocos também podem ser codif
- Page 475 and 476: No MPEG-2, o perfil principal (main
- Page 477 and 478: Fn (atual)ME+-DnTQXReordenaCodifica
- Page 479 and 480: A função do MPEG-2 System [ISO/IE
- Page 481 and 482: Na classe de tráfego contínuo com
- Page 483 and 484: A.4.3 ÁudioA mídia de áudio tem
- Page 485 and 486: eserva de pacotes antes de dar iní
- Page 487 and 488: Faria, A.L.A. “Implementação do
- Page 489 and 490: ITU-T G.723.1 (1996). International
- Page 491 and 492: B.1 IntroduçãoO DSM-CC [ISSO/IEC
- Page 493 and 494: como uma mensagem de alto nível pa
- Page 495: carrossel é transmitida no fluxo d
- Page 499 and 500: Eventos de fluxo são bastante úte
- Page 501 and 502: ARIB STB-B24 V 4.0 (2004). Associat
- Page 503 and 504: C.1 IntroduçãoA definição de do
- Page 505 and 506: parte da definição do nó e depen
- Page 507 and 508: Outro tipo especial de nó de conte
- Page 509 and 510: Note que a definição de dois tipo
- Page 511 and 512: 2..nidRule1..* ruleList1..*0..10..*
- Page 513 and 514: podem ser estendidas: evento de exi
- Page 515 and 516: Um evento de apresentação pode mu
- Page 517 and 518: C.9.1 ConectoresA Figura C.6 ilustr
- Page 519 and 520: RoleideventTypeminCardinalitymaxCar
- Page 521 and 522: condição ou avaliação, quanto u
- Page 523 and 524: opcionalmente negada. Qualquer expr
- Page 525 and 526: de estados de eventos, a ideia é f
- Page 527 and 528: Por outro lado, a exibição do nó
- Page 529 and 530: C.10 Objetos de Dados XObjetos de R
- Page 531 and 532: O NCM define uma classe descritor g
- Page 533 and 534: navegação em um documento. Usuár
- Page 535 and 536: i) ela pode conter nós de conteúd
- Page 537 and 538: D.1 Conectores CausaisNo Capítulo
- Page 539 and 540: Listagem D.1 Exemplo de base de con
- Page 541 and 542: E.1 IntroduçãoUm receptor pode co
- Page 543 and 544: Como mencionamos, um NPT pode come
- Page 545 and 546: F.1 IntroduçãoComo mencionamos no
Como já mencionamos, cada instância do carrossel de objetos érepresentada por um Service Domain, que consiste <strong>em</strong> uma identificaçãoúnica do carrossel de objetos. Todo Service Domain possui um objeto ServiceGateway, que contém referências para todos os objetos dispostos na raiz docarrossel de objetos.O Service Gateway é um objeto do carrossel de objetos cuja localizaçãoé transmitida <strong>em</strong> uma mensag<strong>em</strong> DownloadServerInitiate (DSI), queapresentamos na Seção B.2 (um carrossel de objetos será s<strong>em</strong>pretransportado <strong>em</strong> um carrossel de duas camadas).O padrão DSM-CC utiliza a mesma estrutura de referências IOR(Interoperable Object Reference), definidas nas especificações CORBA parareferenciar um objeto no carrossel. No contexto do protocolo carrossel deobjetos, uma IOR é normalmente composta pelo identificador do carrossel,seguido do identificador do módulo e pelo identificador do objeto.Vamos a um ex<strong>em</strong>plo um pouco mais simples que o anterior para tornarmais claro o processo. Considere a árvore de diretórios apresentada na FiguraB.5 e o carrossel de objetos gerado a partir dessa árvore, com o ServiceDomain de valor hexadecimal “1”. Nesse Service Domain, dois módulos sãogerados e identificados com valores <strong>em</strong> hexadecimal “1” e “2”. Oidentificador de cada objeto é apresentado através do campo “objectKey”. Oobjeto que representa o Service Gateway (na Figura B.5: objeto do tipo “srg”)é identificado com o valor “1” e é encapsulado no Módulo “1”. Comoconsequência, a IOR do objeto Service Gateway transmitida na mensag<strong>em</strong>DownloadServerInitiate é definida por “1,1,1” (Service Domain = 1, id domódulo = 1 e id do objeto = 1). Os objetos que representam o arquivo“weatherConditions.ncl” e o diretório “images” são identificados pelosvalores hexadecimais “2” e “3”, respectivamente, e também são encapsuladosno Módulo “1”. Já o objeto que representa o arquivo contendo o conteúdo daimag<strong>em</strong> é identificado com o valor “1”, mas encapsulado no Módulo “2”.O objeto Service Gateway possui, por sua vez, duas IORs. Pararelacionar uma IOR ao nome do objeto que a mesma referencia, b<strong>em</strong> como aotipo desse objeto (arquivo, diretório etc.), as especificações DSM-CC utilizamo conceito de binding. Assim, no ex<strong>em</strong>plo, o objeto Service Gateway possuidois bindings para os dois objetos do Módulo “1” que são filhos diretos daraiz do sist<strong>em</strong>a de arquivos representado pelo carrossel.457