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.
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