2017-08-26 1 views
4

J'essaie d'utiliser ffmpeg pour décoder les données audio. Bien que cela fonctionne pour charger à partir d'un fichier, je voudrais éviter d'utiliser des fichiers car pour ce faire, cela signifie que je devrais utiliser un fichier temporaire. Au lieu de cela, je voudrais diriger les données (que j'ai déjà chargées) en utilisant stdin.Entrée de pipe dans ffmpeg

Est-ce possible?

par exemple,

  1. fichier mp3 charger manuellement
  2. tuyau dans le processus ffmpeg pondu
  3. Obtenez le résultat brut

(il devrait fonctionner avec ffprobe et ffplay aussi)

Répondre

-1

ffmpeg possède un indicateur de tuyau spécial qui indique au programme de consommer stdin. Notez que le format d'entrée doit généralement être défini explicitement.

exemple (sortie est en PCM 16 bits signé format little-endian):

cat file.mp3 | ffmpeg -f mp3 -i pipe: -c:a pcm_s16le -f s16le pipe: 

tuyaux docs sont here
types audio pris en charge sont here

+0

@AbstractDissonance mis à jour la réponse à mieux expliquer une format brut – MrBar