Adicionando data stamp a vlc streams gravados

4

Eu tenho alguns arquivos bat criados para gravar meus fluxos de áudio favoritos, mas gostaria de incluir as datas no arquivo de saída.

Existe uma maneira de incluir a data no nome do arquivo de saída com o código abaixo?

Gostaria que o arquivo mostrasse um formato semelhante a este wzakfrimix-Jan 01 2016.mp3 ou algo próximo o suficiente.

"C:\Program Files (x86)\VideoLAN\VLC\vlc.exe" "http://208.46.117.156:80/7/648/72151/v1...et/wzak-fm" :sout=#transcode{vcodec=none,acodec=mp3,ab=128,channels=2,samplerate=44100}:file{dst="X:\WzakFriMix.mp3",no-overwrite}:sout-keep
    
por jp0213x 01.01.2016 / 07:32

1 resposta

3

Adding date stamp to vlc recorded streams

I have few bat files created to record my favorite audio streams but I would like to include the dates in the output file.

Is there a way to include the date in the name of the output file for the code below? For the example I would like the file to show a format similar to this "wzakfrimix-Jan 01 2016.mp3"

Veja se um dos itens abaixo será feito como esperado, supondo que suas URLs de fluxo favoritas possam ser conectadas como uma matriz em linhas separadas e com guias, conforme mencionado nas notas de script abaixo, bem como o [primeiro] exemplo mais importante.

O script mais avançado repete seus caminhos de fluxo de URL favoritos (o array é o maior ou o menor que você precisa) em um loop. Caso contrário (talvez como você faz isso agora com vários arquivos em lote) você poderia codificar as variáveis Month Name, Month Day Number e Year manualmente no nome do arquivo de destino (exemplo abaixo) .

Mais uma vez, duas variações abaixo do que pode ser suficiente para a sua necessidade, mas eu defini algumas das variáveis de logig do script no topo de cada exemplo.

NOTAS DE SCRIPT

Estes são configurados para serem executados como scripts em lote e não manualmente a partir da linha de comando com copiar e colar; caso contrário, eu precisaria adicionar exemplos para fazer isso também.

A imagem abaixo é o exemplo de script superior em que cada caminho http://~ precisa ser válido e supostamente diferente por linha. Retire as linhas que não são necessárias ou adicione outras conforme necessário, mas todas precisam ter caminhos válidos para baixar o arquivo que você está prestes a gravar em arquivos MP3.

  • Imagem lógica da matriz em lote (valor iterado por linha da matriz)

Exemplosdescriptemlote

ComumalistadeURLsparaseusfluxos(comoumscriptemlotes)

@ECHOONSETVLC=C:\ProgramFiles(x86)\VideoLAN\VLC\vlc.exeSETMM=%DATE:~4,2%SETYYYY=%DATE:~10,4%SETDD=%DATE:~7,2%:VBSDynamicBuildSETTempVBSFile=%tmp%\~tmpMnthTemp.vbsIFEXIST"%TempVBSFile%" DEL /F /Q "%TempVBSFile%"
ECHO WScript.Echo(MonthName(%MM%,True))>>"%TempVBSFile%"
FOR /F %%A IN ('CSCRIPT //nologo "%TempVBSFile%"') DO SET Mmm=%%~A

:VLCStreamURLs
FOR %%B IN (
    "http://208.46.117.156/7/648/72151/v1/interactive.akacast.akamaistream.net/wzak-fm"
        "<http://ValidPath2/~>"
        "<http://ValidPath3/~>"
        "<http://ValidPath4/~>
        "<http://ValidPath5/~>"
        "<http://ValidPath6/~>"
        "<http://ValidPath7/~>"
) DO (
    "%VLC%" "%%~B" :sout=#transcode{vcodec=none,acodec=mp3,ab=128,channels=2,samplerate=44100}::file{dst="X:\%%~NB-%Mmm% %DD% %YYYY%%%~XB",no-overwrite} :sout-keep
)
GOTO EOF

URL único por script em lote (pode ser semelhante a como você faz isso agora)

@ECHO ON
SET VLC=C:\Program Files (x86)\VideoLAN\VLC\vlc.exe
SET MM=%DATE:~4,2%
SET YYYY=%DATE:~10,4%
SET DD=%DATE:~7,2%

:VBSDynamicBuild
SET TempVBSFile=%tmp%\~tmpMnthTemp.vbs
IF EXIST "%TempVBSFile%" DEL /F /Q "%TempVBSFile%"
ECHO WScript.Echo(MonthName(%MM%,True))>>"%TempVBSFile%"
FOR /F %%A IN ('CSCRIPT //nologo "%TempVBSFile%"') DO SET Mmm=%%~A

:VLCStreamURL
"%VLC%" "http://208.46.117.156/7/648/72151/v1/interactive.akacast.akamaistream.net/wzak-fm" :sout=#transcode{vcodec=none,acodec=mp3,ab=128,channels=2,samplerate=44100}::file{dst="D:\wzakfrimix-%Mmm% %DD% %YYYY%.mp3",no-overwrite} :sout-keep
GOTO EOF
    
por 01.01.2016 / 10:00