Cuando uso el comando say
puedo darle una opción -o (nombre del archivo)
para que grabe en un archivo. Sin embargo, eso suprime la salida de audio.
¿Hay alguna forma de hacer que haga ambas cosas en un solo comando?
Cuando uso el comando say
puedo darle una opción -o (nombre del archivo)
para que grabe en un archivo. Sin embargo, eso suprime la salida de audio.
¿Hay alguna forma de hacer que haga ambas cosas en un solo comando?
En un solo comando con el comando incorporado say
, no; en dos comandos incorporados (say
y afplay
), sí:
$ say -o /tmp/output-file.aiff Hola
$ afplay /tmp/output-file.aiff
En mi ejemplo, esto introduce un pequeño retraso:
$ time sh -c "say Hola"
real 0m0.778s
user 0m0.008s
sys 0m0.012s
$ time sh -c "say -o /tmp/output-file.aiff Hola && afplay /tmp/output-file.aiff"
real 0m1.048s
user 0m0.050s
sys 0m0.048s
Parece difícil o imposible con el comando say
incorporado.
Puede ser capaz de redirigir el audio de say
a través de un AUNetSend que a su vez escribe en disco y reproduce el audio; consulte Audio Hijack a continuación.
Puede usar las herramientas de código abierto espeak
y ffplay
para lograr esto. El siguiente comando tanto dice "Hola mundo" como crea un archivo .wav
de la grabación:
espeak --stdout "hola mundo" | tee -a hola.wav | ffplay -i -
El comando combina tres herramientas:
espeak
convierte el texto en audio.tee
se utiliza para desviar una copia de stdout
a un archivo.ffplay
reproduce el audio.espeak
puede leer desde un archivo o página web utilizando la bandera f
:
espeak --stdout -f myfile.txt | tee -a myfile.wav | ffplay -i -
Otra herramienta como ffmpeg
o iTunes se puede utilizar para convertir el archivo wav
a un archivo MP3 o AAC.
Para instalar espeak y ffplay, use HomeBrew o MacPorts. Con HomeBrew configurado, el comando de instalación es:
brew install espeak ffmpeg
Alternativamente, una buena opción es utilizar una herramienta de terceros como Audio Hijack:
¡Grabe cualquier audio con Audio Hijack! Guarde audio de aplicaciones como iTunes, Skype o Safari, o de dispositivos de hardware como micrófonos y mezcladores.
Esta captura de pantalla muestra Audio Hijack tomando la salida de Skype, grabando en disco y reproduciendo a través del altavoz.
AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.