Ir para o conteúdo

 Voltar a Ginga-NCL: I...
Tela cheia

Teste de TS MPEG

15 de Janeiro de 2008, 9:41 , por Desconhecido - | 1 Pessoa seguindo este artigo.
Visualizado 812 vezes

Bom dia a todos,

Olhando o código fonte, observei que é possível "receber" um TS MPEG via socket, porta 9000.

Tenho um dump de um TS  MPEG de um trailler da HBO e aparentemente o stream está de acordo com os padrões (conseguí assistir o vídeo através de um programa que processa pacotes TS).

Como fazer para que o STB Virtual (VMWare) possa se conectar a um "TS Server" que fiz para testes?

Esse "server" escuta a porta 9000 e quando recebe um "ack()" do STB, envia um pacote TS de 188 bytes.

Só que não conseguí fazer com que o STB se conecte ao meu server (na verdade não sei como configurá-lo para isso - pelo código fonte observei que precisa "ativar" o módulo Tuner e TSParser).

Alguma dica?

Autor: Emerson Gama


6161 comentários

  • 6d8523ee8653cf0ab9ef0e1348918792?only path=false&size=50&d=404Marcio Moreno(usuário não autenticado)
    16 de Janeiro de 2008, 14:47

     

    Oi, Emerson.

    Voce deve compilar o gingacc-tuner, gingacc-tsparser e gingacc-dataprocessing. Para saber como habilitar esses tres projetos no gingancl, faca um ./configure --help nesse ultimo projeto.

    Sds. Marcio

    • 95ce283678e479c7d9cd928bd3fef4e0?only path=false&size=50&d=404Emerson Gama(usuário não autenticado)
      17 de Janeiro de 2008, 8:17

       

      Oi Marcio,

       Eu já havia habilitado esses recursos segundo o wikki e resolveu o problema.

      Meu TS roda legal, mas quando o utilizei via socket udp notei que havia certa perda de pacotes por parte da aplicação, mas acredito que é porque estou usando apenas uma máquina com a VM do STB e a cpu trabalhou forte.

      Obrigado pela resposta, e eu conseguí fazer o teste que pretendia.

      Valeu.
       

      • F1e6fb10735c0301477a947030e83289?only path=false&size=50&d=404Daniel Faustino(usuário não autenticado)
        27 de Março de 2008, 14:59

         

        Olá Emerson creio que este problema deve-se ao buffer de recepção UDP. Resolvi este problema de perda de pacotes aumentando o buffer de rede na mão mesmo.

      • 474722106877bbe5fc3d15c1bed48815?only path=false&size=50&d=404Claudio Monteiro(usuário não autenticado)
        17 de Junho de 2008, 19:10

         

        Emerson, tudo bem? Estou realizando o mesmo teste que vc aqui. No entanto, estou usando um STB instalado em um Linux Slackware personalisado que construí aqui. Instalei todas as dependências necessárias para o funcionamento do gingancl player. Estou executando todas as aplicações desenvolvidas aqui (escritas em NCL e Lua). No entanto, estou querendo que meu STB receba, via unicast, um fluxo MPEG-TS que vem do meu gerador cd TS que tenho aqui. Inseri o IP do meu servidor de TS dentro do arquivo "unicast.ini" que está dentro do /misc e executei, no /misc ./gingaNcl. Não consegui visualizar o video? Alguma dica? O servidor de TS tem que ficar "escutando" na porta 9000 ou deve transmitir na porta 9000?

        Obrigado desde já. 

         

        • 6d8523ee8653cf0ab9ef0e1348918792?only path=false&size=50&d=404Marcio Moreno(usuário não autenticado)
          19 de Junho de 2008, 16:19

           

          Oi, Claudio.

          O servidor deve criar o servico unicast na porta 9000, esperando solicitacao do cliente.

          Sds. Marcio

          • 474722106877bbe5fc3d15c1bed48815?only path=false&size=50&d=404Claudio Monteiro(usuário não autenticado)
            24 de Junho de 2008, 10:28

             

            Jóia Marcio?

            Eu estou usando o VLC para gerar o fluxo MPEG-TS unicast?

            O NCLPlayer não está conseguindo conectar nele na porta 9000...

            Você pode me sugerir um gerador de MPEG-TS alternativo ou o VLC funciona mesmo!

            Obrigado desde já.

            • 6d8523ee8653cf0ab9ef0e1348918792?only path=false&size=50&d=404Marcio Moreno(usuário não autenticado)
              1 de Julho de 2008, 11:41

               

              Oi, Claudio.

              Apesar de nao ser o servidor que eu uso, o VLC funciona aqui pra mim. Entretanto, acho que pode estar acontecendo um equivoco. A versao Java (Ginga-NCL emulator) eh utilizada para apresentar apenas documentos locais. Por outro lado, esse tipo de funcionalidade, a que voce se refere, estarah disponivel atraves do stb virtual ou do source da versao c++ instalado na sua distribuicao linux.

              Sds. Marcio

              • Ce17e5b2f64497bece7f2a5f636885d9?only path=false&size=50&d=404Rafael Carvalho(usuário não autenticado)
                15 de Julho de 2008, 19:40

                 

                Olá Márcio,

                Desculpe pelo incomodo, mas qual o servidor que você usa? É de código aberto?

                 

                Abs,

                Rafael. 

              • Ce17e5b2f64497bece7f2a5f636885d9?only path=false&size=50&d=404Rafael Carvalho(usuário não autenticado)
                6 de Agosto de 2008, 18:29

                 

                Olá Marcio,

                 Estou tentando configurar o setup-box virtual para receber um fluxo mpeg2-ts gerado pelo VLC.

                Já configurei o arquivo unicast.ini com o ip da minha interface de rede.

                Para gerar o fluxo estou utilizando um arquivo que veio no setup-box como demonstração (corrego1.mp4). Para o VLC passo o seguinte comando: vlc -vvv corrego1.mp4 --sout '#standard{access=udp,mux=ts,dst=172.16.147.130:9000}'

                E no shell da máquina virtual: /misc/gingancl

                O shell mostra a seguinte mensagem:

                (*) DirectFB/Core: Single Application Core. (2007-11-15 23:03)
                (*) Direct/Thread: Running 'VT Switcher' (CRITICAL, 1585)...
                (*) Direct/Thread: Running 'Keyboard Input' (INPUT, 1586)...
                (*) DirectFB/Input: Keyboard 0.9 (directfb.org)
                (*) Direct/Thread: Running 'PS/2 Input' (INPUT, 1587)...
                (*) DirectFB/Input: IMPS/2 Mouse 1.0 (directfb.org)
                (*) DirectFB/Genefx: MMX detected and enabled
                (*) DirectFB/Graphics: MMX Software Rasterizer 0.6 (directfb.org)
                (*) DirectFB/Core/WM: Default 0.3 (directfb.org)
                (!) DirectFB/FBDev: Panning display failed (x=0 y=0 ywrap=0 vbl=0)!
                    --> Invalid argument
                (#) DirectFBError [GfxManager IDirectFBScreen::TestConfiguration]: Not supported!
                gingaNcl tuner
                tuning... atempt '1'
                pipe '0.ts' created
                main create av
                Trying unicast add 172.16.147.1
                pipe '0.ts' opened
                main create av ok
                Trying group 224.255.255.255
                tuned!
                Tuned! Receiveing TS... from socket.

                E o VLC mostra que onsegui fazer conexão. Porém nada é exibido no setup-box.

                Vi que vc sugeriu que poderia ser o buffer. Recompilei o ginga alterando de 188 para 600, porém nada mudou.

                Será que você ou mais alguém teria uma dica para me ajudar?

                Muito obrigado.

                • Ce17e5b2f64497bece7f2a5f636885d9?only path=false&size=50&d=404Rafael Carvalho(usuário não autenticado)
                  8 de Agosto de 2008, 21:17

                   

                  Olá a todos,

                   

                  Prosisgo com as tentativas de fazer o setup-box virtual sintonizar um fluxo mpeg ts. Já recompilei o ginga aumentando o buffer ainda mais e tentei outro arquivo. Porém até agora não obtive sucesso.

                  Como coloquei no meu posta acima, me parece que o ginga está pronto para receber o fluxo. No lado do servidor (VLC) a informação que tenho é que conseguiu efetuar conexão, porém nada é exibido no setup-box, nem um pequeno quadrinho seguer para me alegar :-)

                  Agora estou trabalhando com duas possibilidades: o arquivo que eu estou usando como base para fazer o streaming não esta codificado corretamente (acho estranho não estar codificado corretamente, pois utilzei um vídeo que veio com o ginga como exemplo) ou o fluxo enviado pelo servidor (VLC) não está de acordo com o que o ginga espera receber e por isso não exibe.

                  Também tenho umas dúvidas: o vídeo que estou utilizando para teste (corrego1.mp4) está com resolução de 352x240, se eu conseguisse transmitir o fluxo o que veria? Um vídeo pequeno no centro? Ou eu preciso transmitir um fluxo que tenha um vídeo já na resolução do setup?

                   

                  Por favor, gostaria de contar com as dicas dos mais sábios e que já passaram por isso. Vi algumas respostas, nos foruns, de pessoas que relataram que conseguiram transmitir e sintonizar o setup, mas não falaram como. Gostaria de contar com a ajuda de vocês.

                   

                  Obrigado,

                  Rafael.

                  • B6b3cae0711e1cd6e59c07cc4b342f8b?only path=false&size=50&d=404José Ricardo Júnior(usuário não autenticado)
                    12 de Agosto de 2008, 15:35

                     

                    Olá Rafael, e também olá a todos,

                    Eu também não consegui rodar um vídeo passado por streaming gerado pelo VLC. Vi seu post no outro tópico (desculpe a demora de responder) e minha resposta é "não", não consegui rodar o vídeo.

                    O VLC transmite os dados, bem como o Ginga os recebe (o terminal do linux que exibe a saída do Ginga mostra pacotes sendo recebidos). Algumas poucas vezes consegui ver pedaços distorcidos de um frame (que congela) e ouvir alguns ruídos. Se não me engano quando isso aconteceu eu enviei usando o formato TS mesmo, que o VLC gera.

                    Eu, assim como você, acredito que o problema está realmente no formato TS gerado pelo VLC, que não dece ser compativel com o do Ginga, não sei porque...

                    Quanto ao vídeo ser pequeno, acredito que ele será exibido na tela toda, mas com qualidade ruim, assim como acontece quando você coloca, no Media Player, por exemplo, um vídeo pequeno para rodar em tela cheia.

                     O tópico que eu havia descrito minha dúvida foi esse: www.​soft​ware​publ​ico.​gov.​br/d​otlr​n/cl​ubs/​ging​a/fo​rums​/mes​sage​-vie​w?me​ssag​e_id​=463​5919

                    Nele, Marcio Moreno apresenta uma solução (aumentar o tamanho do buffer) que ainda não testei. Assim que possível farei novos testes e informo aqui. No mais, se alguém conseguir, me avise :)
                     

                     E só para constar: para rodar um vídeo recebido por stream é suficiente executar o "/misc/launcher.sh" sem nenhum NCL como parâmetro. Se houver outra maneira, por favor me avisem.

                     

                    Atenciosamente,

                    José Ricardo

                     

                    • Ce17e5b2f64497bece7f2a5f636885d9?only path=false&size=50&d=404Rafael Carvalho(usuário não autenticado)
                      12 de Agosto de 2008, 20:02

                       

                      Olá José e todos,

                       Desculpe minha expressão, mas fiquei feliz com sua resposta de não ter conseguido. Eu já estava achando que penas eu não estava conseguindo, isso porque tem vários posts que dão a entender que o caso foi resolvido. Agora fica evidente que este assunto em específico ainda não ficou claro; como sintonizar o Ginga? Qual servidor streaming usar para testes?

                      Essas são questões para as quais eu ainda não encontrei resposta.

                      Estou investigando o problema do VLC, já tentei várias configurações e não obtive sucesso. Já usei o sample1 do directfb-extra para testar os vídeos e eles foram tocados.

                      Também já recompilei o Ginga com um buffer maior, tentei vários valores, sem sucesso.

                      Uma dúvida: esse aquivo ts que vc citou, vc gerou um .ts com o VLC e depois utilizou o .ts no streaming ou utilizou diretamente o arquivo (tipo .mp4) para o streaming? Eu tentei das duas formas e não consegui.

                       

                      Fica o pedido para quem já conseguiu configurar o Ginga para receber um fluxo mpeg2 ts ajudar-nos nesse empreitada.

                       

                      Pode-se usar também /misc/gingaNcl para rodar o vídeo recebido pelo streaming.

                      Informação deste link: svn.​soft​ware​publ​ico.​gov.​br/t​rac/​ging​a/wi​ki/B​uild​ing_​Wiki​_Gin​gaNC​L

                      • B6b3cae0711e1cd6e59c07cc4b342f8b?only path=false&size=50&d=404José Ricardo Júnior(usuário não autenticado)
                        22 de Agosto de 2008, 16:28

                         

                        Olá Rafael,

                        Respondendo sua pergunta

                        "Uma dúvida: esse aquivo ts que vc citou, vc gerou um .ts com o VLC e depois utilizou o .ts no streaming ou utilizou diretamente o arquivo (tipo .mp4) para o streaming? Eu tentei das duas formas e não consegui."

                         Eu tb testei os dois, inclusive com diversas conmfigurações de Codec de áudio e vídeo.

                        Fiz alguns testes hoje, já com a nova versão do GingaNCL mas também não obtive sucesso. A conexão entre minha máquina e a máquina virtual ocorre mas uma mensagem de erro é exibida informando que não encontrou servidor, mensagem esta que não me recordo ter visto nos testes que fiz usando a versão anterior do Ginga-NCL.

                        server not found: No route to host

                        Seria, então, necessário ter um servidor de vídeo rodando na máquina host para poder rodar o vídeo? O VLC não é suficiente? Alguém sabe dizer?

                        Obrigado,
                        Ricardo

                         

                        • A6b22a188bb507d73fea04518f5b0a47?only path=false&size=50&d=404Paulo Muniz de Ávila(usuário não autenticado)
                          29 de Setembro de 2008, 18:08

                           

                          Boa tarde !

                          Estou com o mesmo problema no ginga stb-virtual para receber o fluxo ts. Observe que a conexão é realizada mas em seguida é gerado o erro. Transmitindo o mesmo video (ts) para versão 0.9.27 instalada em um mini-pc o arquivo e recebido e exibido corretamente. Abaixo o erro informado na versão 0.9.28 (stb-virtual).

                          conecting to 192.168.98.106: 9000
                          pipe '0.ts' created
                          main create av
                          pipe '0.ts' opened
                          main create av ok
                           connected to 192.168.98.106 on port '9000'returning '10'
                          Tuner::run() call receive
                          (*) Direct/Interface: Loaded 'Xine' implementation of 'IDirectFBVideoProvider'.
                          (*) Direct/Thread: Running 'Xine Input' (DEFAULT, 1853)...
                          audio_alsa_out : supported modes are 8bit 16bit 24bit mono stereo (4-channel not enabled in xine config) (4.1-channel not enabled in xine config) (5-channel not enabled in xine config) (5.1-channel not enabled in xine config) (a/52 and DTS pass-through not enabled in xine config)
                          xine: found input plugin  : stdin streaming input plugin
                          xine: couldn't find demux for >fifo://tmp/xine-vp-0000<
                          (!) DirectFB/VideoProvider_Xine: there is no demuxer plugin to decode 'fifo://tmp/xine-vp-0000'.
                          interface/content/Contents.cpp <73>:
                                  (#) DirectFBError [dfb->CreateVideoProvider(dfb, mrl, &provider)]: Not supported!
                           (!!!)  *** WARNING [Application exited without deinitialization of DirectFB!] *** [core.c:813 in dfb_core_deinit_check()]
                           (!!!)  *** WARNING [still objects in 'Layer Region Pool'] *** [object.c:231 in fusion_object_pool_destroy()]
                           (!!!)  *** WARNING [still objects in 'Layer Context Pool'] *** [object.c:231 in fusion_object_pool_destroy()]
                           (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
                           (!!!)  *** WARNING [still objects in 'Window Pool'] *** [object.c:231 in fusion_object_pool_destroy()]
                           (!!!)  *** WARNING [still objects in 'Surface Pool'] *** [object.c:231 in fusion_object_pool_destroy()]

                          • Ce17e5b2f64497bece7f2a5f636885d9?only path=false&size=50&d=404Rafael Carvalho(usuário não autenticado)
                            3 de Outubro de 2008, 14:51

                             

                            Olá Paulo,

                             Eu tive problemas com a versão 0.9.27 (onde vc disse que conseguiu fazer funcionar) e não consegui exibir nada. Ainda não testei na 0.9.28.

                            Vc poderia me ajudar e informar qual servidor streaming de vídeo vc usou para enviar o vídeo? VC enviou um vídeo em qual formato?

                            Desde já, agradeço,

                             

                            Abs,

                            Rafael.

                            • A0f8d49077819f06aaf22e06322d945a?only path=false&size=50&d=404Mathias Weber(usuário não autenticado)
                              10 de Novembro de 2008, 14:30

                               

                              Ola!!

                              Estou tentando fazer o teste utilizando o VLC, mas a unica resposata que recebo é :

                              IP = '172.16.19.2'PORT NUMBER = '9000'
                              conecting to 172.16.19.2: 9000
                              pipe '0.ts' created
                              server not found: Connection refused
                              main create av
                              server not found: Connection refused
                              server not found: Connection refused
                              pipe '0.ts' opened
                              server not found: Connection refused
                              main create av ok

                              O IP da minha maquina na interface esta 172.16.19.2,

                              o IP da STB-virtual esta 172.16.19.130.

                              para iniciar o vlc usei varias tentativas, dentre elas a citada aqui neste tópico.

                              vlc -vvv making_of_elephants_dream.mp4 --sout '#standard{access=udp,mux=ts,dst=172.16.19.130:9000}'

                               

                              Uma ajuda seria muito bem vinda.

                              Obrigado.

                              • 6d8523ee8653cf0ab9ef0e1348918792?only path=false&size=50&d=404Marcio Moreno(usuário não autenticado)
                                10 de Novembro de 2008, 15:26

                                 

                                Oi, Mathias.

                                Muitos usuarios e desenvolvedores vem reportando esse tipo de dificuldade com o STB-Virtual. Descobrimos que existe um  problema na comunicacao entre as interfaces de rede local e do VMWare, ao considerar o uso de NAT. Estamos tentando encontrar uma solucao mais simples, mas a unica encontrada ateh o momento foi a de utilizar Bridged no VMWare e desabilitar as conexoes de interfaces virtuais (as criadas pelo VMWare). Assim que uma solucao mais trivial for encontrada, postaremos aqui. Boa sorte!

                                Sds. Marcio

                                • A0f8d49077819f06aaf22e06322d945a?only path=false&size=50&d=404Mathias Weber(usuário não autenticado)
                                  10 de Novembro de 2008, 16:02

                                   

                                  Olá Marcio, obrigado pela resposta, mas ainda não resolveu,

                                  coloquei o vmplayer como bridged e desativei as interfaces criadas pela vmware (vmnet0 e vmnet8), o comando que utilizei foi

                                  vlc -vvv making_of_elephants_dream.mp4 --sout '#standard{access=udp,mux=ts,dst=150.162.202.51:8080}'

                                  e o mesmo erro é apresentado....gingaNcl tuner
                                  tuning... NetworkInterface::tune(eth:udp_unicast)
                                  NetworkInterface::createProvider(eth:udp_unicast)
                                  IP = '150.162.202.29'PORT NUMBER = '8080'
                                  conecting to 150.162.202.29: 8080
                                  server not found: Connection refused
                                  server not found: Connection refused
                                  server not found: Connection refused
                                  server not found: Connection refused
                                  server not found: Connection refused
                                  server not found: Connection refused
                                  server not found: Connection refused
                                  server not found: Connection refused
                                  server not found: Connection refused
                                  server not found: Connection refused
                                  server not found: Connection refused
                                  server not found: Connection refused
                                  server not found: Connection refused
                                  server not found: Connection refused
                                  server not found: Connection refused
                                  server not found: Connection refused
                                  NetworkInterface::tune(fs:local)
                                  NetworkInterface::createProvider(fs:local)
                                  openFile: No such file or directory

                                  tem alguma idéia?

                                  Obrigado...

                                  Mathias

                                  • 6d8523ee8653cf0ab9ef0e1348918792?only path=false&size=50&d=404Marcio Moreno(usuário não autenticado)
                                    10 de Novembro de 2008, 16:24

                                     

                                    Apos realizar as configuracoes, voce reiniciou a maquina (real)? Checou os IPs/Portas? Existe algum firewall/bloqueio de portas no SO/concentrador/roteador?

                                    • A0f8d49077819f06aaf22e06322d945a?only path=false&size=50&d=404Mathias Weber(usuário não autenticado)
                                      11 de Novembro de 2008, 11:09

                                       

                                      Opa!! desculpa a demora em responder, pois quis testar em outra rede por garantia.

                                      mas da mesma forma não consegui fazer funcionar.

                                      a forma que utilizei para desativar as redes da vmware foram:

                                      inicialmente com o comando "ifconfig vmnet0 down"

                                      como não deu certo tentei desativa-las no arquivo de configuração na vmware, /etc/vmware/networking

                                      a unica coisa que não tentei ainda é e uma máquina WIN.

                                      ps. meu firewall esta desligado.

                                      Obrigado pela ajuda.

                                      • 6d8523ee8653cf0ab9ef0e1348918792?only path=false&size=50&d=404Marcio Moreno(usuário não autenticado)
                                        4 de Fevereiro de 2009, 10:54

                                         

                                        Oi, Mathias.

                                        Conseguiu resolver o problema? Estranho, porque aqui, na versao 0.9.28, consigo tanto de linux <=> linux quanto de linux <=> windows. A estranheza eh que, por ser unicast, deveria ser trivial esse contato. Para tentar localizar o problema, uma alternativa seria criar um socket na mao e, depois um pipe para ver se ao menos uma conexao voce consegue (porque, pela sua saida, nem conexao com o servidor vlc houve).

                                        Sds. Marcio

                                        • Ce17e5b2f64497bece7f2a5f636885d9?only path=false&size=50&d=404Rafael Carvalho(usuário não autenticado)
                                          10 de Fevereiro de 2009, 15:23

                                           

                                          Olá Marcio e todos,

                                          Também estou com problemas para fazer o Ginga receber um fluxo MPEG-2 TS.

                                          O cenário que tenho é:

                                            - um computador desktop com Ginga-NCL (versão C++, 0.9.28) embarcado (não é a máquina virtual)

                                            - um outro computador desktop enviando um fluxo TS com o programa VLC.

                                          Efetuei as configurações no arquivo unicast.ini, colocando o IP do servidor streaming.

                                          Quando inicio o Ginga aparece o seguinte:

                                             ~~~~~~~~~~~~~~~~~~~~~~~~~~| DirectFB 1.2.6 |~~~~~~~~~~~~~~~~~~~~~~~~~~
                                                  (c) 2001-2008  The world wide DirectFB Open Source Community
                                                  (c) 2000-2004  Convergence (integrated media) GmbH
                                                ----------------------------------------------------------------

                                          (*) DirectFB/Core: Single Application Core. (2008-11-02 20:41)
                                          (*) Direct/Thread: Started 'LiRC Input' (-1) [INPUT OTHER/OTHER 0/0] <8388608>...
                                          (*) DirectFB/Input: LIRC Device 0.2 (directfb.org)
                                          (*) Direct/Thread: Started 'PS/2 Input' (6139) [INPUT OTHER/OTHER 0/0] <8388608>...
                                          (*) DirectFB/Input: IMPS/2 Mouse 1.0 (directfb.org)
                                          (*) Direct/Thread: Started 'Linux Input' (6140) [INPUT OTHER/OTHER 0/0] <8388608>...
                                          (*) DirectFB/Input: Macintosh mouse button emulatio (1) 0.1 (directfb.org)
                                          (*) Direct/Thread: Started 'Linux Input' (6141) [INPUT OTHER/OTHER 0/0] <8388608>...
                                          (*) DirectFB/Input: AT Translated Set 2 keyboard (2) 0.1 (directfb.org)
                                          (*) Direct/Thread: Started 'Linux Input' (6142) [INPUT OTHER/OTHER 0/0] <8388608>...
                                          (*) DirectFB/Input: Power Button (FF) (3) 0.1 (directfb.org)
                                          (*) Direct/Thread: Started 'Linux Input' (6143) [INPUT OTHER/OTHER 0/0] <8388608>...
                                          (*) DirectFB/Input: Power Button (CM) (4) 0.1 (directfb.org)
                                          (*) Direct/Thread: Started 'Linux Input' (6144) [INPUT OTHER/OTHER 0/0] <8388608>...
                                          (*) DirectFB/Input: Sleep Button (CM) (5) 0.1 (directfb.org)
                                          (*) Direct/Thread: Started 'Keyboard Input' (-1) [INPUT OTHER/OTHER 0/0] <8388608>...
                                          (*) DirectFB/Input: Keyboard 0.9 (directfb.org)
                                          (*) DirectFB/Genefx: MMX detected and enabled
                                          (*) DirectFB/Graphics: MMX Software Rasterizer 0.6 (directfb.org)
                                          (*) DirectFB/Core/WM: Default 0.3 (directfb.org)
                                          (*) FBDev/Surface: Allocated 640x480 32 bit RGB32 buffer (index 0) at offset 0 and pitch 2560.
                                          (!) DirectFB/FBDev: Panning display failed (x=0 y=0 ywrap=0 vbl=1)!
                                              --> Invalid argument

                                                 --------------------- FusionSound v1.1.1 -------------------
                                                       (c) 2000-2002  convergence integrated media GmbH 
                                                       (c) 2002-2006  convergence GmbH                  
                                                  -----------------------------------------------------------

                                          (*) FusionSound/Device: ALSA 0.1 (directfb.org)
                                          (*) FusionSound/Device: 48000 Hz, 2 channel(s), 16 bits, 25.0 ms.
                                          (*) Direct/Thread: Started 'Sound Mixer' (6148) [OUTPUT OTHER/OTHER 0/0] <8388608>...
                                          (#) DirectFBError [Graphics IDirectFBScreen::TestConfiguration]: Not supported!
                                          NCLFILE =
                                          gingaNcl tuner
                                          tuning... NetworkInterface::tune(eth:udp_unicast)
                                          NetworkInterface::createProvider(eth:udp_unicast)
                                          IP = 'ip-do-servidor'PORT NUMBER = '9000'
                                          conecting to ip-do-servidor: 9000
                                          pipe '0.ts' created
                                          server not found: Connection refused
                                          main create av
                                          server not found: Connection refused
                                          server not found: Connection refused
                                          pipe '0.ts' opened
                                          server not found: Connection refused
                                          server not found: Connection refused
                                          main create av ok
                                          server not found: Connection refused
                                          server not found: Connection refused
                                          server not found: Connection refused
                                          server not found: Connection refused
                                          server not found: Connection refused
                                          server not found: Connection refused
                                          server not found: Connection refused
                                          server not found: Connection refused
                                          server not found: Connection refused
                                          server not found: Connection refused
                                          server not found: Connection refused
                                          NetworkInterface::tune(fs:local)
                                          NetworkInterface::createProvider(fs:local)
                                          openFile: No such file or directory
                                          NetworkInterface::tune(eth:udp_multicast)
                                          NetworkInterface::createProvider(eth:udp_multicast)
                                          IP = '224.255.255.255'PORT NUMBER = '9000'
                                          MulticastProvider server called
                                          Tuner::run() call receive
                                          Tuner::receive: Resolver Error 0 (no error)
                                          Tuner::receive: Resolver Error 0 (no error)
                                          Tuner::receive: Resolver Error 0 (no error)
                                          Tuner::receive: Resolver Error 0 (no error)

                                          ...

                                           Nada é exibido na tela.

                                          Utilizei o IPTraf para verificar se os pacotes estavam chegando. Confirmei que estão chegando.

                                           Também já aumentei o buffer, porém sem sucesso.
                                          Gostaria da ajuda de vcs para resolver isso.
                                          Será que poderia ser erro no formato dos pacotes TS?

                                          Não entendo porque dá a mensagem: 'server not found: Connection refused' e depois fica passando:  'Tuner::receive: Resolver Error 0 (no error)'  durante todo o envio do streaming. Se o servidor para de enviar o fluxo para de aparecer a mensagem.

                                          Vou continuar com mais testes e informo possíveis progressos.

                                          Marcio,

                                          Qual programa você utilizou para enviar o fluxo que você disse que conseguiu tanto de windows como de linux?

                                          Se foi o VLC, quais parâmetros você passou?

                                           

                                          Obrigado.

                                          • 6d8523ee8653cf0ab9ef0e1348918792?only path=false&size=50&d=404Marcio Moreno(usuário não autenticado)
                                            13 de Fevereiro de 2009, 13:04

                                             

                                            Oi, Rafael.

                                            Aqui no laboratorio a gente tem em desenvolvimento um streamer, porem fechado. Entretanto, com o vlc eu consigo sucesso. Fiz assim no vlc:

                                            file >> open file >> browse >> seleciono o TS.

                                            seleciono a opcao Stream/Save >> clico em Settigs... >> seleciono UDP e coloco o IP desejado

                                            daih eh ok >> ok

                                            no receptor, basta iniciar o gingancl sem parametros.

                                            Quanto ao seu problema, se fosse no formato do pacote, o tuner nao iria dizer que recebeu 0 bytes. Voce consegue as mesmas duas maquinas com vlc server/client ?

                                            Sds. Marcio

                                            • Ce17e5b2f64497bece7f2a5f636885d9?only path=false&size=50&d=404Rafael Carvalho(usuário não autenticado)
                                              16 de Fevereiro de 2009, 18:16

                                               

                                              Olá Marcio,

                                               Tentei o caminho que você indicou, porém não obtive sucesso. Acontece o mesmo erro.

                                               

                                              Nas duas  máquinas consigo enviar perfeitamente de vlc para vlc e também de vlc para mplayer.

                                               

                                              Efetuei mais alguns testes e verifiquei o seguinte:

                                              Ao iniciar o Ginga (gingaNcl sem parâmetros) ele tenta abrir uma conexão com o IP-servidor:porta configurado no arquivo unicast.ini. Isso como o previsto.
                                              Ao iniciar o VLC da forma que foi informada (unicast por UDP) o VLC tenta enviar um fluxo para o IP-cliente:porta configurado nele.

                                              O que acontece é:

                                              Servidor VLC envia fluxo para IP-ginga:9000 e Ginga tenta se conectar ao IP-vlc:9000.

                                              Porém na configuração de envio por UDP do VLC o mesmo não ouve conexão na porta 9000, ele envia um fluxo para a porta 9000 do Ginga. E o Ginga não tem nada ouvindo na sua porta 9000.

                                               

                                              Para confirmar isso configurei o VLC para streaming HTTP e assim ouvir uma conexão na porta 9000 do servidor. No Ginga mantive as mesmas configurações (unicast.ini com IP-vlc:9000).

                                              Após essa configuração parei de receber a mensagem: server not found: Connection refused

                                              A resposta do Ginga foi: 

                                              NCLFILE =
                                              gingaNcl tuner
                                              tuning... NetworkInterface::tune(eth:udp_unicast)
                                              NetworkInterface::createProvider(eth:udp_unicast)
                                              IP = 'IP-vlc'PORT NUMBER = '9000'
                                              conecting to IP-vlc: 9000
                                              pipe '0.ts' created
                                               connected to IP-vlc on port '9000'returning '14'
                                              Tuner::run() call receive
                                              main create av
                                              pipe '0.ts' opened
                                              main create av ok

                                              O que indica que o Ginga conseguiu efetuar conexão com o servidor VLC.

                                              Porém, após um pequeno tempo, é exibida a seguinte mensagem:

                                              UnicastProvider::receiveData Warning! Received '0' while reading socket source.
                                              Tuner::receive: Resolver Error 0 (no error)

                                              Penso que o Ginga não consegue ler nada do socket porque estabeleceu uma conexão TCP e está tentando ler UDP.

                                               

                                              A solução seria um servidor streamer que estabeleça conexão e envie um fluxo UDP. Pesquisei bem o VLC e acho que ele não faz isso.

                                               

                                              Gostaria da ajuda de vocês nesta batalha. :-) Alguém conhece servidor streamer que faça isso?

                                               

                                              Marcio,

                                              Poderia ser um erro do Ginga? Ele não deveria apenas esperar receber um fluxo em uma deterninada porta e não tentar efetuar uma conexão?

                                              Aguardo ancioso por respostas.

                                              Obrigado.

                                               

                                              • Ce17e5b2f64497bece7f2a5f636885d9?only path=false&size=50&d=404Rafael Carvalho(usuário não autenticado)
                                                2 de Março de 2009, 17:32

                                                 

                                                Prezados,

                                                 

                                                Continuei com a investigação do problema e esbarrei no seguinte:

                                                  - no tutorial de instalação do Ginga (http://svn.softwarepublico.gov.br/trac/ginga/wiki/Building_Wiki_GingaNCL)  diz que para receber um fluxo UDP o arquivo unicast.ini deveria ser configurado com o IP do servidor.

                                                - no código fonte (arquivo UnicastProvider.cpp linha 69) tem uma chamada (socketDescriptor = socket(AF_INET, SOCK_STREAM, 0);) que abre um socket TCP.

                                                 

                                                Gostaria de uma ajuda para esclarecer minha dúvida. Como enviar um fluxo por UDP se o Ginga abre um socket TCP?

                                                 

                                                E ainda mais: se envio o fluxo via TCP, qual deverá ser o protocolo de aplicação utilizado?

                                                 

                                                Agradeço e conto com a ajuda de todos.

                                                Abs,

                                                Rafael.

                                                 

                                                • 53863feab09b0cb8f67aa44bc1c2f392?only path=false&size=50&d=404Carlos Batista(usuário não autenticado)
                                                  30 de Março de 2009, 19:24

                                                   

                                                  Rafael,

                                                  a chamada

                                                   socket(AF_INET, SOCK_STREAM, 0)

                                                  cria um socket sem amarrá-lo a um protocolo, logo o mesmo pode ser usado para receber fluxos UDP. Acho que o seu problema não é esse, mas para fins de teste você pode alterar o código para

                                                   socket(AF_INET, SOCK_STREAM, UDP_PROTO)

                                                  de forma que você crie um socket UDP.

                                                  Outros usuários (e nós mesmos aqui no laboratório) conseguimos usar o Ginga recebendo fluxos TS via UDP. Caso o problema esteja persistindo sugiro um relato mais detalhado do seu problema para tentarmos achar sua causa e finalmente a solução.

                                                  []s

                                                  bidu

                                                  • 023e7fb10e824e10a4d4bf300adfb4fa?only path=false&size=50&d=404Diogo Pedrosa(usuário não autenticado)
                                                    20 de Maio de 2009, 16:48

                                                     

                                                    Senhores,

                                                    entrei no time dos que tiveram problemas tentando fazer uma transmissão unicast de um TS via UDP usando o VLC para o Virtual STB com Ginga. Estou usando a versão 0.10.1.

                                                    Pelas mensagens postadas, dá pra perceber que apesar de ser uma tarefa teoricamente simples, nem todos conseguem.

                                                    Pelo que entendi, os passos são os seguintes:

                                                    1- Editar o arquivo /usr/local/lib/ginga/files/tuner/unicast.ini para
                                                    colocar nele o endereço da máquina com o VLC, que no meu caso é 192.168.201.1:9000

                                                    2- Mandar o VLC transmitir o TS (estou usando o TS que vem em
                                                    (/misc/ncl30/sample03/video/corrego1.mp4) via UDP unicast para o endereço da máquina virtual, no meu caso 192.168.201.132:9000

                                                    3- Chamar o comando /usr/local/sbin/ginga

                                                    Quando realizo esses passos, a seguinte saída é mostrada:

                                                    [root@gingavm sbin]# ./ginga
                                                    CÓDIGO INSERIDO POR DIOGO Inicio da main
                                                    ComponentManager::getComponentDescription
                                                    ComponentManager::getComponent opening component 'libgingacccmparser.so'
                                                    ComponentManager::getComponent component 'libgingacccmparser.so' OPENED
                                                    ComponentManager::refreshComponentDescription REFRESHED.
                                                    ComponentManager::getComponent opening component 'libgingalssm.so'
                                                    ComponentManager::getComponent component 'libgingalssm.so' OPENED
                                                    ComponentManager::getComponent opening component 'libgingancl.so'
                                                    ComponentManager::getComponent component 'libgingancl.so' OPENED
                                                    ComponentManager::getComponent opening component 'libgingaccsystemio.so'
                                                    ComponentManager::getComponent component 'libgingaccsystemio.so' OPENED
                                                    ComponentManager::getComponent opening component
                                                    'libginganclprefetch.so'
                                                    ComponentManager::getComponent component 'libginganclprefetch.so' OPENED
                                                    ComponentManager::getComponent opening component 'libgingaccic.so'
                                                    ComponentManager::getComponent component 'libgingaccic.so' OPENED
                                                    ComponentManager::getComponent opening component
                                                    'libgingaccsystemiodfb.so'
                                                    ComponentManager::getComponent component 'libgingaccsystemiodfb.so'
                                                    OPENED

                                                         =======================|  DirectFB 1.0.1  |=======================
                                                              (c) 2001-2007  The DirectFB Organization (directfb.org)
                                                              (c) 2000-2004  Convergence (integrated media) GmbH
                                                            ------------------------------------------------------------

                                                    (*) DirectFB/Core: Single Application Core. (2009-04-22 14:05)
                                                    (*) Direct/Thread: Running 'VT Switcher' (CRITICAL, 25462)...
                                                    (!) Direct/Modules: Unable to dlopen
                                                    `/usr/local/lib/directfb-1.0-0/inputdrivers/libdirectfb_penmount.so'!

                                                    --> /usr/local/lib/directfb-1.0-0/inputdrivers/libdirectfb_penmount.so:
                                                    undefined symbol: dfb_input_modules
                                                    (*) Direct/Thread: Running 'Keyboard Input' (INPUT, 25463)...
                                                    (*) DirectFB/Input: Keyboard 0.9 (directfb.org)
                                                    (*) Direct/Thread: Running 'PS/2 Input' (INPUT, 25464)...
                                                    (*) DirectFB/Input: IMPS/2 Mouse 1.0 (directfb.org)
                                                    (*) DirectFB/Genefx: MMX detected and enabled
                                                    (*) DirectFB/Graphics: MMX Software Rasterizer 0.6 (directfb.org)
                                                    (*) DirectFB/Core/WM: Default 0.3 (directfb.org)
                                                    (!) DirectFB/FBDev: Panning display failed (x=0 y=0 ywrap=0 vbl=0)!
                                                        --> Invalid argument
                                                    (#) DirectFBError [gingacc-systemio DFBDeviceScreen TestConfig error: ]:
                                                    Not supported!
                                                    ComponentManager::getComponent opening component 'libgingaccplaimg.so'
                                                    ComponentManager::getComponent component 'libgingaccplaimg.so' OPENED
                                                    ComponentManager::getComponent opening component
                                                    'libgingaccsysctsimgdfb.so'
                                                    ComponentManager::getComponent component 'libgingaccsysctsimgdfb.so'
                                                    OPENED
                                                    (*) Direct/Interface: Loaded 'PNG' implementation of
                                                    'IDirectFBImageProvider'.
                                                    ComponentManager::getComponent opening component
                                                    'libgingacccontextmanager.so'
                                                    ComponentManager::getComponent component 'libgingacccontextmanager.so'
                                                    OPENED
                                                    InputManager::initializeInputIntervalTime imperative = '0' declarative =
                                                    '200'
                                                    ComponentManager::getComponent opening component 'libgingacctuner.so'
                                                    ComponentManager::getComponent component 'libgingacctuner.so' OPENED
                                                    ComponentManager::getComponent opening component 'libgingacctsparser.so'
                                                    ComponentManager::getComponent component 'libgingacctsparser.so' OPENED
                                                    ComponentManager::getComponent opening component
                                                    'libgingaccdataprocessing.so'
                                                    ComponentManager::getComponent component 'libgingaccdataprocessing.so'
                                                    OPENED
                                                    DataProcessor::createStreamTypeSectionFilter '11'
                                                    DataProcessor::createStreamTypeSectionFilter '12'
                                                    DataProcessor::createStreamTypeSectionFilter '17'
                                                    DataProcessor::createStreamTypeSectionFilter '18'
                                                    DataProcessor::createStreamTypeSectionFilter '41'
                                                    DataProcessor::addEPGListener
                                                    DataProcessor::addSEListener
                                                    CÓDIGO INSERIDO POR DIOGO Antes de chamar startPresentation
                                                    pipe '0.ts' created
                                                    lssm-ccm::sp creating av player
                                                    ComponentManager::getComponent opening component 'libgingaccplaavp.so'
                                                    ComponentManager::getComponent component 'libgingaccplaavp.so' OPENED
                                                    ComponentManager::getComponent opening component
                                                    'libgingaccsysctsdfbav.so'
                                                    ComponentManager::getComponent component 'libgingaccsysctsdfbav.so'
                                                    OPENED
                                                    pipe '0.ts' opened
                                                    lssm-ccp::sp create av ok
                                                    ComponentManager::getComponent opening component 'libgingaccplapav.so'
                                                    ComponentManager::getComponent component 'libgingaccplapav.so' OPENED
                                                    lssm ccm::sp show wmav
                                                    lssm ccm::sp cond_wait

                                                    Vcs podem notar que alterei o código para acrescentar alguns couts, para ter certeza de que eu estava entendendo por onde o fluxo de execução passava. Percebi que a chamada para abertura do socket não está sendo feita (linha 69 do arquivo /usr/src/gingaNcl/gingacc-cpp/gingacc-tuner/src/UnicastProvider.cpp, como indicado por Rafael).

                                                    Percebi tb a main que era usada na versão anterior (0.9.28)(/usr/src/gingaNcl/gingancl-cpp/src/main.cpp) chamava a função tune diretamente, enquanto que na main atual (0.10.1)(/usr/src/gingaNcl/ginga-cpp/src/main.cpp) essa chamada não é feita. Acredito que ela esteja sendo feita em Tuner::run(), mas não consegui encontrar quem chama o método run. Imagino que o tuner seja uma thread que deve estar sendo criada por alguém. É isso?

                                                    Para ter certeza que eu tava fazendo a transmissão do jeito certo, testei transmitir esse mesmo ts usando o VLC da minha máquina para ser recebido por um VLC de outra máquina e funcionou.

                                                    Além disso, rodei o comando "tcpdump -X -i en0 -n src host 192.168.201.1 and dst port 9000" na máquina virtual e percebi que os pacots estavam chegando.

                                                    Bom... até agora foi isso. Vocês tem alguma idéia do que eu possa estar fazendo errado?

                                                    Tenho também duas dúvidas em relação a esse assunto:
                                                    1) A versão atual permite receber o ts e apresentar um documento NCL ao mesmo tempo?
                                                    2) A versão atual permite receber dois ou mais TSs ao mesmo tempo, de forma que a tecla que represente o CHANNEL_UP ou CHANNEL_DOWN possa ser usado para alterar a visualização dos vídeos?

                                                    Muito obrigado!
                                                    Diogo

                                                    • Bcc27ecd0053edcccf276619be7eefe3?only path=false&size=50&d=404André Destro(usuário não autenticado)
                                                      10 de Julho de 2009, 15:07

                                                       

                                                      Quando executo o comando vlc recebo o erro:

                                                      [00000413] access_output_udp generic warning: send error: Conexão recusada

                                                      Vejo que a vmware está recebendo o pacote pois enquanto o video está sendo executado, o icone da rede fica piscando.

                                                      Alguém sabe resolver?

                                                      • Aee3a44929134136b9fc84e2dbd23401?only path=false&size=50&d=404Rodrigo Mizobe(usuário não autenticado)
                                                        6 de Agosto de 2009, 17:43

                                                         

                                                        Galera, acho que nao precisa de um tutorial, tem um jeito que da pra fazer alguns testes...

                                                        Utilizem o NetCat para ficar escutando a porta 9000, onde o vlc envia os dados, e atraves do NetCat mandem os dados pro pipe 0.ts, aqui deu certo

                                                         

                                                        []s

                                                        • 1be24fbdb66ff904c4f4e08b65ab0661?only path=false&size=50&d=404Sergio Fortier(usuário não autenticado)
                                                          8 de Agosto de 2009, 20:49

                                                           

                                                          Pode explicar melhor pra que usa o Virtual Set Top Box em VMware para windows?

                                                        • 5df5d8eeb3770422cc9c42a466faee62?only path=false&size=50&d=404Roberto Azevedo(usuário não autenticado)
                                                          9 de Agosto de 2009, 13:00

                                                           

                                                          Opa Rodrigo!

                                                          Testei aqui essa solução, usando o NetCat, e funciona perfeitamente. Acho que para fins de testes, é possível utilizar ela mesmo, sem problemas.

                                                          Valeu pessoal!

                                                          Obrigado Rodrigo, e a todos que ajudaram aqui!

                                                          Quem tiver algum problema (ou nao souber fazer), posta aí que eu mando um post detalhado depois!

                                                          • 1be24fbdb66ff904c4f4e08b65ab0661?only path=false&size=50&d=404Sergio Fortier(usuário não autenticado)
                                                            9 de Agosto de 2009, 17:25

                                                             

                                                            Preciso de ajuda.

                                                            Como estou fazendo...

                                                            1. configuro o VLC para unicast udb para IP_VMWARE_STB porta 9000

                                                            2. abro um shell e coloco /misc/launsher.sh          -    inicia o ginga

                                                            3. abro o shell e coloco netcat -u -l -p 9000 > 0.ts

                                                            ai dá broken pipe e para tudo com o erro seguinte no console do primeiro shell

                                                            (*) Direct/Interface: Loaded 'Xine' implementation of 'IDirectFBVideoProvider'.
                                                            (*) Direct/Thread: Running 'Xine Input' (DEFAULT, 1628)...
                                                            audio_alsa_out : supported modes are 8bit 16bit 24bit mono stereo (4-channel not enabled in xine config) (4.1-channel not enabled in xine config) (5-channel not enabled in xine config) (5.1-channel not enabled in xine config) (a/52 and DTS pass-through not enabled in xine config)
                                                            xine: found input plugin  : stdin streaming input plugin
                                                            demux_dts: unsupported DTS stream type, or not a DTS stream
                                                            xine: couldn't find demux for >fifo://tmp/xine-vp-0000<
                                                            (!) DirectFB/VideoProvider_Xine: there is no demuxer plugin to decode 'fifo://tmp/xine-vp-0000'.
                                                            DFBVideoProvider.cpp <85>:

                                                            O que tô fazendo errado?

                                                            • 1be24fbdb66ff904c4f4e08b65ab0661?only path=false&size=50&d=404Sergio Fortier(usuário não autenticado)
                                                              9 de Agosto de 2009, 17:27

                                                               

                                                              se eu iniciar primeiro o netcat e depois o ginga, dá o mesmo erro :(

                                                              • 5df5d8eeb3770422cc9c42a466faee62?only path=false&size=50&d=404Roberto Azevedo(usuário não autenticado)
                                                                9 de Agosto de 2009, 17:34

                                                                 

                                                                Sérgio,

                                                                eu soube q a transcodificação do VLC tem alguns bugs. Eu testei aqui desabilitando ela. Tem uma opção no VLC para isso.

                                                                Eu fiz dois testes:

                                                                - um com o TS que eu já tinha pré-armazenado e

                                                                - outro transmitindo um MP4 pelo VLC

                                                                Ambos os casos desabilitei a transcodificação. Tente isso e, veja se resolve o problema.

                                                                • 1be24fbdb66ff904c4f4e08b65ab0661?only path=false&size=50&d=404Sergio Fortier(usuário não autenticado)
                                                                  9 de Agosto de 2009, 21:33

                                                                   

                                                                  Dá erro mesmo assim!

                                                                  (*) Direct/Interface: Loaded 'Xine' implementation of 'IDirectFBVideoProvider'.
                                                                  (*) Direct/Thread: Running 'Xine Input' (DEFAULT, 1476)...
                                                                  audio_alsa_out : supported modes are 8bit 16bit 24bit mono stereo (4-channel not enabled in xine config) (4.1-channel not enabled in xine config) (5-channel not enabled in xine config) (5.1-channel not enabled in xine config) (a/52 and DTS pass-through not enabled in xine config)
                                                                  xine: found input plugin  : stdin streaming input plugin
                                                                  demux_dts: unsupported DTS stream type, or not a DTS stream
                                                                  xine: couldn't find demux for >fifo://tmp/xine-vp-0000<
                                                                  (!) DirectFB/VideoProvider_Xine: there is no demuxer plugin to decode 'fifo://tmp/xine-vp-0000'.
                                                                  DFBVideoProvider.cpp <85>:
                                                                          (!) [ 1474:    0.000] --> Caught signal 11 (at 0x14, invalid address) <--
                                                                   (!!!)  *** WARNING [still objects in 'Layer Region Pool'] *** [object.c:231 in fusion_object_pool_destroy()]
                                                                   (!!!)  *** WARNING [still objects in 'Layer Context Pool'] *** [object.c:231 in fusion_object_pool_destroy()]
                                                                   (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
                                                                   (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
                                                                   (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
                                                                   (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
                                                                   (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
                                                                   (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
                                                                   (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
                                                                   (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
                                                                   (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
                                                                   (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
                                                                   (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
                                                                  (!) [ 1468:    0.015] --> Caught signal 11 (at (nil), invalid address) <--
                                                                   (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
                                                                   (!!!)  *** WARNING [still objects in 'Window Pool'] *** [object.c:231 in fusion_object_pool_destroy()]
                                                                   (!!!)  *** WARNING [still objects in 'Surface Pool'] *** [object.c:231 in fusion_object_pool_destroy()]
                                                                  /misc/launcher.sh: line 15:  1456 Aborted                 /usr/local/sbin/ginga
                                                                   

                                                        • Ce17e5b2f64497bece7f2a5f636885d9?only path=false&size=50&d=404Rafael Carvalho(usuário não autenticado)
                                                          10 de Agosto de 2009, 10:53

                                                           

                                                          Olá Rodrigo,

                                                           

                                                          Também testei aqui e funcionou.

                                                            - VLC:

                                                          vlc -vvv -I dummy video1.mp4 --sout '#standard{access=udp,mux=ts,dst=ip-do-ginga:9000}'

                                                           - Ginga:

                                                          nc -u -l -p 9000 > 0.ts

                                                          Depois foi só executar o Ginga-NCL sem passar parâmetro.

                                                           

                                                          Obrigado pela dica. Por enquanto acho que irá atender aos testes que eu precisava realizar.

                                                          • 1be24fbdb66ff904c4f4e08b65ab0661?only path=false&size=50&d=404Sergio Fortier(usuário não autenticado)
                                                            10 de Agosto de 2009, 19:26

                                                             

                                                            Caramba!

                                                            Só não funciona comigo? :(

                                                            Sempre dá o erro que descrevi acima. Posso usar o arquivo que quizer (.avi, .ts, .mp4, convertido ou não em .ts) e não funciona.

                                                            Tentei nc -u -l -p 9000 > 0.ts & /misc/launcher.sh            dá o mesmo erro

                                                            Se usar nc -u -l -p 9000    consigo confirmar que o virtual stb tá recebendo o stream

                                                            Alguem tem uma dica?

                                                            Valew!

                                                            • Aee3a44929134136b9fc84e2dbd23401?only path=false&size=50&d=404Rodrigo Mizobe(usuário não autenticado)
                                                              11 de Agosto de 2009, 9:54

                                                               

                                                              O seu erro está no xine, reponsável pela parte do vídeo, e não no ginga em si e nem na maneira em enviar um fluxo.

                                                              Com um vídeo normal, está apresentando normalmente?

                                                              • 1be24fbdb66ff904c4f4e08b65ab0661?only path=false&size=50&d=404Sergio Fortier(usuário não autenticado)
                                                                11 de Agosto de 2009, 18:41

                                                                 

                                                                Muito estranho!

                                                                Se usar o xine para tocar um video normal = ok

                                                                Usar o vlc para transmitir um video (com/sem transcodificação) para um arquivo no stb = arquivo é menor que o original e dá erro no xine (algo sobre DTS...)

                                                                O problema pode ser no Virtual STB? Ele não vinha com o netcat, baixei e compilei...

                                                                Será que quem está com problemas está usando o Virtual STB e quem tá ok usa o Ginga embarcado no proprio sistema?

                                                              • 023e7fb10e824e10a4d4bf300adfb4fa?only path=false&size=50&d=404Diogo Pedrosa(usuário não autenticado)
                                                                11 de Agosto de 2009, 14:52

                                                                 

                                                                Pessoal,

                                                                comigo está acontecendo exatamente o mesmo erro que acontece com Sergio.

                                                                Na janela onde coloco o VLC para transmitir, entre muitas outras mensagens, recebo várias desta:
                                                                [00000421] access_output_udp generic warning: send error: Conexão recusada

                                                                Roberto, como é que se desabilita a "transcodificação do VLC"? Procurei na interface gráfica e não encontrei nada com o qual eu achasse parecido.

                                                                Rodrigo, tentei usar alguns dos vídeos que estão disponíveis junto com aplicações do Clube NCL. Você acha mesmo que o problema é dos vídeos que estamos usando? Existe algum vídeo que vc já usou com sucesso nesse teste que esteja disponível na web para baixarmos e testarmos tb?

                                                                Valeu!

                                                            • 4438b5c2095f773e2e1c33587d7ede6f?only path=false&size=50&d=404Tiago Pomponet(usuário não autenticado)
                                                              13 de Agosto de 2009, 15:51

                                                               

                                                              Olá Sérgio.

                                                              Consegui fazer funcionar através do Netcat redirecionado para o arquivo 0.ts que o ginga abre, no entanto sem o netcat não funcionou ainda.

                                                               Abri 3 terminais:

                                                              No primeiro chamei o vlc com o comando vlc -vvv video.ts --sout '#standard{access=udp,mux=ts,dst=127.0.0.1:8080}'

                                                              No segundo terminal chamei o comando do Netcat: nc -u -l -p 8080 > 0.ts

                                                              No terceiro terminal chamei o ginga.

                                                               Desta maneira funcionou, o que significa que o vlc está enviando corretamente os pacotes para o ip e porta solicitados.

                                                               No caso de somente usar o vlc e o ginga (sem o netcat para redirecionar o conteúdo) não funcionou, no entanto suponho que seja por causa do IP de loopback que estou utilizando. Irei configurar o arquivo unicast.ini para receber em um outro ip que não seja o 127.0.0.1 e irei configurar uma máquina virtual rodando o vlc para este ip.

                                                               OBS.: Estou utilizando o Ginga C++ 0.10.1

                                                              • 1be24fbdb66ff904c4f4e08b65ab0661?only path=false&size=50&d=404Sergio Fortier(usuário não autenticado)
                                                                13 de Agosto de 2009, 19:19

                                                                 

                                                                Problemas:

                                                                1. Uso o Virtual STB. Talvez seja problema.

                                                                2. Usando VLC no windows, Virtual STB pelo WMware com 2 shell: 1 usando o NetCat e outro o ginga. não funciona.

                                                                3. Problema de rede? Acho que não. Coloquei o VLC pra enviar. No Virtual STB usei o comando df_xine udp://192.168.0.127:9000. Recepção perfeita do video. Não acho que seja problema de rede.

                                                                4. Problema no NetCat? Talvez. Como o Virtual STB não vem com o NetCat baixei do SF e "instalei". Será que a versão disponibilizada está bugada? Baixei o tarball da versão 0.7.1

                                                                 

                                                                Conclusões:

                                                                caminho completo = vlc - rede - netcat - pipe 0.ts - ginga

                                                                1. VLC stream = ok

                                                                2. Rede windowsXstb = ok

                                                                3. NetCat = ???

                                                                4. pipe 0.ts = ??? (ok em relatos)

                                                                7. Ginga = ??? (ok em relatos)

                                                                Idéias?

                                                                • 4438b5c2095f773e2e1c33587d7ede6f?only path=false&size=50&d=404Tiago Pomponet(usuário não autenticado)
                                                                  14 de Agosto de 2009, 11:11

                                                                   

                                                                  Olá a todos.

                                                                   Uma outra maneira de fazer o pipe 0.ts funcionar com o Ginga sem utilizar o netcat seria utilizar o cat.

                                                                   Obs. Para que o arquivo 0.ts exista é necessário executar o Ginga previamente sem nenhum parâmetro e depois finalizá-lo com CTRL+c. Este arquivo será criado na mesma pasta de onde o ginga foi chamado.

                                                                   Em um terminal chame o comando:

                                                                   cat video.ts > 0.ts

                                                                   Em um outro terminal execute o ginga.

                                                                   Se o arquivo video.ts estiver no formato correto o Ginga irá executar o vídeo normalmente. Para sair do Ginga o botão F11 não irá funcionar. Ao invés disso mude para outro terminal utilizando CTRL + ALT + F1-F6 e finalize  o Ginga com o comando kill ou CTRL + ALT + F7 para voltar a interface do X

                                                                   Ah e para converter qualquer vídeo para o formato .ts que o Ginga utiliza eu uso o VLC mesmo.

                                                                   Quanto ao funcionamento do ginga utilizando o arquivo unicast.ini ainda não consegui fazer funcionar.

                                                                  Espero ter ajudado.

                                                                  • Aee3a44929134136b9fc84e2dbd23401?only path=false&size=50&d=404Rodrigo Mizobe(usuário não autenticado)
                                                                    19 de Agosto de 2009, 12:19

                                                                     

                                                                    O fato de o F11 nao funcionar, e so esta especifica tecla ou voce perde o foco do teclado? Funciona crtl C? Tentou rodar uma aplicacao que requisita intervercao do usuario?

                                                                    Estou com um problema de perda de foco do keyboard....

                                                                  • 023e7fb10e824e10a4d4bf300adfb4fa?only path=false&size=50&d=404Diogo Pedrosa(usuário não autenticado)
                                                                    19 de Agosto de 2009, 17:23

                                                                     

                                                                    Valeu pela ajuda, Tiago! Finalmente consegui um resultado positivo relacionado a transmissão de vídeo.

                                                                    Estou usando o VSTB e não tive problema com o F11, ele continua funcionando normalmente.

                                                                    Porém... não consegui rodar uma aplicação ao mesmo tempo. É possível isso? Quando tento rodar uma aplicação bem simples que ocupa apenas um pequeno pedaço da tela, apenas a aplicação é mostrada. O resto da tela fica preta em vez de mostrar o vídeo de 0.ts.

                                                                    Outra dúvida que tenho: é possível simular mais de um canal e usar alguma tecla para trocar entre os canais? Tipo, um vídeo em 0.ts outro em 1.ts e assim por diante?

                                                                    Abraços!

                                                                    • 1be24fbdb66ff904c4f4e08b65ab0661?only path=false&size=50&d=404Sergio Fortier(usuário não autenticado)
                                                                      19 de Agosto de 2009, 20:22

                                                                       

                                                                      Como vc conseguiu receber o stream de video?

                                                                      Ainda nao consegui de forma direta ou indireta com netcat...

                                                                    • Aee3a44929134136b9fc84e2dbd23401?only path=false&size=50&d=404Rodrigo Mizobe(usuário não autenticado)
                                                                      20 de Agosto de 2009, 8:47

                                                                       

                                                                      Como nao foi possivel executar uma aplicacao com um stream, creio que so atraves de um script, senao uma ideia seria um no switch para o stream, pois como vemos no uso do netcat - cat- mesma funcao, o stream seria um "arquivo" - pipe - onde estariamos o referenciando como um video normal, mas com conteudo dinamico

                                                                      abs

                                                                      • 023e7fb10e824e10a4d4bf300adfb4fa?only path=false&size=50&d=404Diogo Pedrosa(usuário não autenticado)
                                                                        20 de Agosto de 2009, 9:41

                                                                         

                                                                        Sérgio,

                                                                        consegui usando o cat, como explicado por Tiago Pomponet no post 47. No meu caso, abri a VMWare Player e duas janelas de linha de comando conectadas a ele via ssh. Na primeira digitei:
                                                                        cat meuVideo.mpg > 0.ts
                                                                        Na outra, digitei:
                                                                        ./launcher.sh
                                                                        Quando tentei fazer o mesmo, só que chamando uma aplicação minha:
                                                                        ./launcher.sh main.ncl
                                                                        aconteceu o que expliquei acima: a aplicação rodou com sucesso, mas o vídeo não foi mostrado de fundo.

                                                                        Rodrigo,

                                                                        acho que não entendi sua sugestão. Vc está sugerindo uma forma de eu tentar simular mais de um canal? Eu deveria criar um script e chamá-lo em vez de chamar o comando "cat meuVideo.mpg > 0.ts", é isso?

                                                                        A outra opção é usar um nó switch dentro da aplicação? Essa opção eu só poderia usar caso conseguisse fazer a transmissão usando o vlc, é isso? Essa opção não seria muito interessante para mim, pois eu gostaria que minha aplicação ficasse totalmente independente da troca de canais. O que eu quero é que minha aplicação (que tem que ser residente) continue rodando enquanto o usuário realiza troca de canais.

                                                                        Valeu, pessoal!
                                                                        Abraços

                                                                        • Aee3a44929134136b9fc84e2dbd23401?only path=false&size=50&d=404Rodrigo Mizobe(usuário não autenticado)
                                                                          20 de Agosto de 2009, 11:16

                                                                           

                                                                          Como numa transmissao os canais teriam uma frequencia diferente(entao suponhamos que utilizamos duas portas para transmissao) e um script que ficaria recebendo a intervercao do usuario se estivesse em um canal ficaria jogando no 0.ts o determinado conteudo da porta referente... agora se fosse pelo vlc creio que teria que haver dois pipes nessa transmissao de teste, assim voce indentificaria o canal pelo pipe referente...

                                                                        • 1be24fbdb66ff904c4f4e08b65ab0661?only path=false&size=50&d=404Sergio Fortier(usuário não autenticado)
                                                                          20 de Agosto de 2009, 18:30

                                                                           

                                                                          Realmete usando o cat pra encaminhar um video para 0.ts funciona... Mas...

                                                                          O que estou tentando fazer é usar:

                                                                          Usar um programa pra enviar o que recebo por um receptor ISDB-Tb fullseg por UDP para o VirtualSTB. Não vai dar certo... :(

                                                                          1. Sistema interno de recepção UDP do VSTB está bugado.

                                                                          2. Usando o netcat não funciona

                                                                          3. o xine não consegue demuxar o nosso ISDB-Tb fullseg TS

                                                                          4. o xine não parece conseguir tocar videos em h264 1080i. da problema com entrelaçamento

                                                                           

                                                                          Uma pena... :(

                                                                    • 4438b5c2095f773e2e1c33587d7ede6f?only path=false&size=50&d=404Tiago Pomponet(usuário não autenticado)
                                                                      21 de Agosto de 2009, 10:46

                                                                       

                                                                      Olá Diogo,

                                                                       Bom quanto à primeira pergunta referente ao funcionamento de um vídeo recebido através do arquivo 0.ts paralelo com  com alguma aplicação ncl:

                                                                      Se não me engano, quando executamos alguma aplicação ncl localmente, isto é, passando como argumento algum arquivo ncl ex.: "ginga --ncl main.ncl", o Ginga não cria e nem utiliza o arquivo "0.ts" pois ele já tem as informações demultiplexadas (vídeo, aúdio, dados, etc) e fora de um fluxo de transporte ts. Por causa disto, acho que não seja possível realizar alguma aplicação juntamente com o vídeo "passado" para o arquivo 0.ts desta maneira utilizando o cat.

                                                                      No entanto, se um vídeo mais diversas aplicações ncl forem adicionadas a um arquivo ts (dentro de um fluxo de transporte modulado em um carrossel de dados assim como especificado na norma do MPEG-TS), e depois passados ao Ginga através do arquivo 0.ts, o Ginga deve demultiplexar esses conteúdos (aplicações, vídeo, áudio, dados) e interpretá-los de acordo como foram organizados no arquivo .ts, isto é, se foram organizados em "programas diferentes" serão executados em canais diferentes. Dá uma olhada nestes links abaixo: eles explicam detalhadamente como é formado um fluxo de transporte e seus elementos.

                                                                      [1] en.w​ikip​edia​.org​/wik​i/MP​EG_t​rans​port​_str​eam#​Prog​ram_​Spec​ific​_Inf​orma​tion​_.28​PSI.​29
                                                                      [2] www.​wiki​.mul​time​dia.​cx/i​ndex​.php​?tit​le=M​PEG-​2_Tr​ansp​ort_​Stre​am

                                                                      Bom acho que acabei explicando a segunda pergunta (dos canais) junto com a primeira resposta rsrsrs.

                                                                       Espero ter ajudado.

                                                                      • 023e7fb10e824e10a4d4bf300adfb4fa?only path=false&size=50&d=404Diogo Pedrosa(usuário não autenticado)
                                                                        21 de Agosto de 2009, 15:20

                                                                         

                                                                        Tiago,

                                                                        muito obrigado! Vc foi extremamente claro. Tudo faz sentido para mim agora. Vc já testou mandar um TS com vídeo e aplicação para o VSTB? Isso tá implementado e funcionando?

                                                                        Bom... de qualquer maneira, acho que não conseguirei gerar o TS do jeito que eu quero pq não tenho ferramentas para isso. Tentarei com ajuda de amigos.

                                                                        Abraços!

                                                                        • D60f2e22529545040fc45686d5606934?only path=false&size=50&d=404Felipe da Paz Lage(usuário não autenticado)
                                                                          16 de Janeiro de 2013, 13:10

                                                                           

                                                                          Tenho uma dúvida, no arquivo unicast.ini há algum código exceto o IP e a porta?
                                                                          Não encontro essa informação em nenhum lugar.
                                                                          Agradeço se puderem me responder

                                                                          • 84aac44002c016c696e0c7280d016860?only path=false&size=50&d=404Ricardo Rios(usuário não autenticado)
                                                                            16 de Janeiro de 2013, 16:48

                                                                             

                                                                            Olá Felipe,

                                                                             

                                                                            O arquivo unicast.ini faz parte de uma das versões antigas do Ginga. Sugiro que você atualize se código para obter a mais nova.

                                                                            Na versão atual você encontrar o arquivo tuner.ini. Nesse arquivo você poderá fazer configurações para unicast, multicast, filesystem sbtvdt. Por exemplo, se você quer sintonizar canais do padrão brasileiro, basta que o arquivo contenha a opção sbtvdt; sistema de arquivo: fs:/misc/ts.mpg; unicast: <IP>:<Port>; multicast: <Multicast IP>:<Port>.

                                                                            Abs,

                                                                            Ricardo Rios 

                                                                            • D60f2e22529545040fc45686d5606934?only path=false&size=50&d=404Felipe da Paz Lage(usuário não autenticado)
                                                                              16 de Janeiro de 2013, 17:43

                                                                               

                                                                              Muito obrigado Ricardo.
                                                                              Por isso que eu não tinha encontrado o arquivo unicast.ini, e por isso pensei em cria-lo.
                                                                              Vou prosseguir com os testes então.
                                                                              Mais uma vez, obrigado
                                                                              Abraços 

                                                                              • D60f2e22529545040fc45686d5606934?only path=false&size=50&d=404Felipe da Paz Lage(usuário não autenticado)
                                                                                6 de Fevereiro de 2013, 10:58

                                                                                 

                                                                                Quando eu executo /misc/launcher.sh /usr/local/sbin/ginga para a máquina virtual exibir o fluxo dá o seguinte erro:

                                                                                Fatal Error at file "/usr/local/sbin/ginga", line 1, column 1

                                                                                   Message: invalid byte '�' at position 1 of a 1-byte sequence

                                                                                 Isso pode estar sendo a razão do fluxo não estar sendo exibido?

                                                    • Ce17e5b2f64497bece7f2a5f636885d9?only path=false&size=50&d=404Rafael Carvalho(usuário não autenticado)
                                                      31 de Maio de 2009, 13:26

                                                       

                                                      Olá Diogo,

                                                       Assim como você, eu fiz vários testes para tentar transmitir um fluxo MPEG-2 TS para o Ginga-NCL.

                                                      Apesar de algumas pessoas falarem que já conseguiram e do pessoal que está desenvolvendo o Ginga-NCL garantir que é fácil (com uma explicação bem resumida no final desse documento: svn.​soft​ware​publ​ico.​gov.​br/t​rac/​ging​a/wi​ki/B​uild​ing_​Wiki​_Gin​gaNC​L) não houve um único usuário que postou um tutorial ou alguma informação mais detalhada de como proceder para conseguir executar tal procedimento.

                                                      Confesso que fiquei um pouco decepcionado com o suporte e a troca de informações oferecida nessa thred pelos desenvolvedores. Pois não consigo aceitar que um desenvolvedor de um software livre diga que uma funcionalidade é possível que ele já conseguiu fazer e ponto. SEM EXPLICAR COMO PROCEDEU.

                                                      Agora farei uma nova investida para tentar solucionar esse problema.

                                                      Comprometo-me que ao encontrar a solução irei postar um tutorial detalhado com um passo-a-passo.

                                                      Gostaria que os demais usuários que estão "brigando" para executar estes testes comprometam-se também. Assim toda a comunidade ganha.

                                                      Afinal, não é esse um dos propósitos de uma comunidade?

                                                      • 023e7fb10e824e10a4d4bf300adfb4fa?only path=false&size=50&d=404Diogo Pedrosa(usuário não autenticado)
                                                        1 de Junho de 2009, 9:27

                                                         

                                                        Oi Rafael!

                                                        Como eu estava querendo usar isso para um projeto da faculdade, devido a questões de tempo tive que deixar isso de lado e seguir com o projeto de outra forma. Quando eu tiver tempo voltarei a investir nisso, e assim como você, postarei qualquer coisa que eu conseguir descobrir.

                                                        Abraços!

  • B588a580ef40b94505fbf16a134fe89e?only path=false&size=50&d=404Thiago Falcao(usuário não autenticado)
    19 de Agosto de 2009, 9:52

     

    Bom dia,

     desenvolvi uma aplicação NCL para executar videos (stream) recebidos em broadcast, pelo servidor VLC, configurei o VLC cliente para salvar o video num arquivo, mas aplicação não consegue executar o arquivo.

    alguem sabe como solucionar esse problema???

     

    obs.: utilizando o VLC como cliente funciona normal.

Concurso ITU-T de Aplicações para IPTV 2012

13 de Agosto de 2012, 19:38, por Desconhecido

Gostaríamos de lembrar aos possíveis interessados que o prazo de registro para participação no Concurso ITU-T de Aplicações para IPTV 2012 (IPTV Application Challenge) se encerra nesta semana, dia 15 de agosto de 2012. Já o prazo para a submissão de aplicações se encerra no dia 07 de setembro de 2012.



NCL Eclipse 1.6 disponível

10 de Janeiro de 2012, 21:19, por Desconhecido

Caros membros da Comunidade Ginga,



Concursos de Aplicações Ginga-NCL

22 de Setembro de 2011, 3:22, por Desconhecido

    Gostaríamos de relembra-los de que há dois concursos de aplicações Ginga-NCL com inscrições ainda abertas. O convite é aberto a toda a comunidade de desenvolvedores de aplicações para o Middleware Ginga-NCL, em nível internacional. São os seguintes concursos:



Novas versões: Ginga e Ginga-NCL Virtual Set-top Box (v.0.12.3)

1 de Agosto de 2011, 20:58, por Desconhecido



Algumas Boas Notícias da Comunidade Ginga

28 de Julho de 2011, 21:31, por Desconhecido

Autor: Roberto Azevedo