Sim, já testei.
Mas neste caso, como devo proceder com a variável?
Devo declará-la com aspas?
CONFIG="-vvv input_stream --sout
'#transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128,deinterlace}:
rtp{mux=ts,dst=239.255.12.42,sap,name=\"TestStream\"}' "A única forma de obter o conteúdo completo da variável (nos meus testes e utilizando um echo) foi delimitá-la com aspas, embora o vlc não consiga tratar. Sim, este teste eu também já fiz e não funcionou. Obrigado pela dica Fabiano. Abraços Fernando Gottlieb 2009/1/6 Fabiano Caixeta Duarte <[email protected]>: > 2009/1/5 Fernando Gottlieb <[email protected]> > >> Tentei simplificar para explicar, mas vi que não ajudou muito. >> Vamos à prática. >> >> Criei um serviço no OpenSUSE usando o padrão Suse, não o LSB. >> Este serviço recebe parâmetros de um arquivo de configuração. >> O serviço consiste em receber um streaming (áudio/vídeo) e transcodificar >> para >> outro endereço. >> >> A forma original e funcional é esta: >> >> vlc -vvv input_stream --sout >> '#transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128,deinterlace}: >> rtp{mux=ts,dst=239.255.12.42,sap,name="TestStream"}' >> >> No arquivo de configuração, armazeno todos os parâmetros que serão >> passados para o VLC. >> >> CONFIG="-vvv input_stream --sout >> '#transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128,deinterlace}: >> rtp{mux=ts,dst=239.255.12.42,sap,name="TestStream"}' " >> >> No script do serviço, faço a leitura do arquivo de configuração e >> obtenho o conteúdo da variável através de >> $CONFIG e executo-o da seguinte forma: >> >> /sbin/startproc vlc $CONFIG >> >> A instrução completa, na forma original como relatado acima, funciona, >> tudo numa só linha, mas como >> não quero reescrever este serviço (no caso de uma alteração de >> parâmetros) estou tentando obter as >> configurações de outro arquivo. >> >> Se uso " " para limitar os dados da variável, um echo $CONFIG mostra o >> conteúdo da variável porém o >> serviço não inicializa. >> >> Se uso ' ' para limitar os dados, o próximo apóstrofo ( '#transcode " >> ) fechará a primeira sentença quebrando >> a variável. Sem falar que o próximo caractere ( # ) torna o restante >> do conteúdo um mero comentário na linha. >> >> Estes são alguns problemas que observei. >> >> Eis um exemplo prático de streaming de um arquivo de vídeo: >> >> vlc arquivo.avi -vvv --sout >> >> >> '#transcode{vcodec=mp4v,acodec=mpga,vb=1800,ab=128,width=352,height=288,fps=30.00,audio-sync,deinterlace}:std{access=udp,mux=ts,dst=239.255.255.201}' >> >> E para visualizar, use o VLC no linux/windows: >> >> Vá em 'abrir mídia na rede' e digite: >> >> udp://@239.255.255.201 >> >> Abraços >> >> Fernando Gottlieb >> > > Agora sim! Claro como água (limpa). Ou quase. > > Precisamos agora saber como o startproc trata os parâmetros. > > Já tentou fazer > > startproc vlc "$CONFIG" > > pra evitar que o bash trate as aspas simples e deixe o startproc se virar > com elas? > > -- > Fabiano Caixeta Duarte > Especialista em Redes de Computadores > Linux User #195299 > Ribeirão Preto - SP > > [As partes desta mensagem que não continham texto foram removidas] > >
