Usando o OGG / Vorbis, existe uma maneira de continuar a gravar em um arquivo de áudio existente?

5

Estou usando o Vorbis / ogg para gravar áudio (usando arecord e depois pipping para oggenc). Eu fiz o download do oggvideotools, que me deu oggCat , o que me permitirá juntar dois arquivos de áudio previamente gravados em um arquivo. Mas meu problema é este:

O dispositivo em que estou trabalhando é conhecido por ter o "plug pull", mas está gravando enquanto a energia está ligada (trocando as baterias, etc.). Quando o dispositivo for ligado novamente, preciso continuar a gravar no arquivo anterior (gravação automatizada).

Agora, posso usar arecord para gravar dois arquivos separados e, depois que a gravação terminar, posso oggCat os dois, mas isso não me dá o que eu quero 100%, preciso ser capaz para continuar gravando onde o primeiro arquivo foi cortado.

Eu originalmente coloquei isso no Stackoverflow, tentando solicitar uma resposta python, mas ele foi fechado pelos moderadores - espero que este seja um lugar melhor para isso. Eu preciso de soluções python e busybox. Infelizmente, outras soluções fora do Python e do Busybox não estão disponíveis para mim - além disso, o download de pacotes / programas adicionais também não está disponível, eu tenho oggenc , arecord e oggvideotools .

Algum conselho sobre onde procurar? Posso de alguma forma canalizar os dados arecord de um arquivo temporário para oggCat ? Como:

oggCat NewFile.ogg File1.ogg (arecord file2.ogg ...)

Em que (arecord file2.ogg ...) é o arquivo atualmente sendo gravado e, simultaneamente, está sendo anexado a Newfile.ogg ?

PS. Os arquivos de áudio terão exatamente os mesmos parâmetros - ou seja, mesmos canais, taxas, etc.

    
por Justin 19.10.2012 / 16:15

1 resposta

1

Eu não testei, mas considere o uso de substituição de processos . Isso levará a saída padrão de um programa e fornecerá a outro programa por meio de um pipe.

oggCat NewFile.ogg File1.ogg <(arecord)

Se eu estiver correto, isso acrescentaria a nova gravação ao audio.ogg. O maior problema que vejo é que o arecord aparece como saída para gerar um wav por padrão, então você pode precisar codificá-lo como um ogg.

Desculpe, não tenho microfone para testá-lo. Mas eu respondi de qualquer maneira porque eu senti que esta é a parte que você estava procurando e pode descobrir o resto por si mesmo.

    
por 30.11.2012 / 18:18