Windows 10 64 bits.
Como capturar/gravar/baixar vários URLs de streaming de áudio com um script cmd ou PowerShell?
Eu capturo 15 fluxos de áudio .mp3 de 15 servidores por uma hora todas as noites usando um lote cmd. Eu passei por wget, ffmpeg, vlc e curl. Meu script produz resultados não confiáveis, apenas um dia em sete todos os 15 fluxos são capturados por uma hora. Curl é o mais confiável. Eu abro uma instância de curl para cada fluxo.
start "" /min %windir%\curl.exe.lnk http://bbcmedia.ic.llnwd.net/stream/bbcmedia_radio1_mf_q -o "%temp%\bbc1.mp3"
Eu tentei powershell hoje à noite e falhou. Lentamente, metade das 15 instâncias do powershell se fecharam e a outra metade não capturou por uma hora.
start "" /min "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe.lnk" -Command "(new-object net.webclient).DownloadFile('http://bbcmedia.ic.llnwd.net/stream/bbcmedia_radio1_mf_q', '%temp%\bbc1.mp3')"
Achei que capturar 15 fluxos em uma instância do powershell poderia ser melhor, mas o segundo fluxo nunca é iniciado porque o primeiro fluxo nunca termina.
$Urls = @()
$Urls += "http://bbcmedia.ic.llnwd.net/stream/bbcmedia_radio1_mf_q"
$Urls += "http://bbcmedia.ic.llnwd.net/stream/bbcmedia_radio3_mf_q"
$OutPath = "$env:temp\"
ForEach ( $item in $Urls) {
$file = $OutPath + ($item).split('/')[-1] + ".mp3"
(New-Object System.Net.WebClient).DownloadFile($item, $file)
}
Quatro horas de bing e google não produziram resposta.
Como capturar/gravar/baixar streaming de áudio na linha de comando?
Não estou preso no powershell ou no curl. Os únicos requisitos são que ele seja executado no Windows 10 de 64 bits, capture todos os 15 fluxos de forma confiável e possa ser executado sem interação do usuário.
Windows 10 64 bits. Não requer privilégios de administrador.
Como capturar/gravar/baixar vários URLs de streaming de áudio com um script cmd ou PowerShell usando streamripper v1.64.6, sleep , PowerShell 5.1 ( System.Net.WebClient DownloadFileAsync ), curl v.7.55.1 e ffmpeg v.3.4. Os fluxos de áudio são servidos de várias maneiras, não é uma boa ideia confiar em um método de captura.
Estou tendo muito sucesso com cmd, streamripper v.1.64.6 e ffmpeg v.3.4.
Stop-process é usado para matar ffmpeg e curl para gravar o download no arquivo.
Você pode ouvir os streams enquanto eles baixam com o Windows Media Player. O comprimento dos metadados nem sempre será exibido corretamente.
O ffmpeg pode ser usado para fazer muito pós-processamento, como escrever metadados e aparar. Altere o caminho para ffmpeg e curl. streamripper, System.Net.WebClient e curl overwrite por padrão. Eu configurei o ffmpeg para sobrescrever.
Esses scripts baixam por 30 segundos.
Usando cmd, streamripper e ffmpeg: Quando o streamripper perde sua conexão, ele renomeia o arquivo original e inicia a captura novamente. Este lote concatena os arquivos. O Streamripper capturará iheart, tunein, streamguys, streamtheworld, radiojar, abacast e streams de destaque, pelo menos. Como sempre, escreva seus comandos
start "" streamripper.exe.lnk
para evitar pausas.URLs de transmissão mudam. Escrevi uma página que pode ajudar a encontrar um URL de transmissão. Como encontrar um URL de transmissão iheart.
Usando Powershell, curl e ffmpeg:
Pesquisa do Google - Use curl para baixar streams de áudio
Pesquisa do Google - Use ffmpeg para baixar streams de áudio
Pesquisa do Google - Use ffmpeg para gravar metadados
Alternativas para System.Net.WebClient: Powershell pode executar comandos em paralelo no stackoverflow
como capturar streaming de áudio como salvar streaming de áudio como produzir streaming de áudio como gravar streaming de áudio
Windows 10 de 64 bits, script PowerShell 5 para ripar/capturar/gravar/salvar/baixar streaming de áudio para flash drive como .mp3 com streamripper, wget, curl, ffmpeg, sistema operacional exclui arquivos suspeitos, bloqueia a área de trabalho se não houver mouse ou atividade do teclado por X segundos, proíbe o uso de scripts, o usuário é limitado a direitos padrão / de usuário e faz logoff em uma hora. Corte os primeiros 3 minutos.
Mata com força todas as instâncias de ffmpeg, wget, curl e streamripper sem perguntar.
O padrão é a captura de 10 segundos de quatro fluxos. Consulte $zsegundos.
Tente ffmpeg, wget ou curl se o streamripper não for bem-sucedido com o seu stream.