Estou tentando usar o SoX para fazer o loop de um arquivo de áudio. Este comando parece funcionar perfeitamente:
play noise.wav repeat -
Mas, ao ler a página man
do sox, encontro esta informação preocupante:
Requires temporary file space to store the audio to be repeated.
Note that repeating once yields two copies: the original audio
and the repeated audio.
Estou tendo um pouco de dificuldade para entender o que realmente está acontecendo aqui. Primeiro de tudo, eu não sei porque precisaria de arquivos temporários, se eu não estou saindo para um novo arquivo, ele pode simplesmente ler o mesmo arquivo várias vezes. Segundo, há duas coisas que eu faço não que quer que aconteçam (e se elas fizerem acontecerem e não puderem ser mitigadas, então o SoX não será adequado para isso uso):
Eu tentei ver a saída da execução de play
em strace
, mas há muitos dados para analisar. Eu também tentei rodar a partir do disco rígido, e enquanto ele não girava imediatamente quando eu comecei o segundo loop, ele fez girar depois de alguns loops. A maneira como a unidade está sendo usada nunca roda assim, sugerindo que play
esteja escrevendo algo na unidade. Por outro lado, eu li em algum lugar que os arquivos temporários estão em / tmp - mas estão no SSD e não vejo nada enquanto play
está em execução.
Então, o que é que se repete realmente ? Se é realmente escrever coisas, basta tocar em um loop, isso é algo que outros jogadores também fazem que simplesmente não está documentado?