J'essaie d'exécuter ffmpeg à partir du script ruby dans windows.Kill Processus démarré par IO.popen automatiquement si le script ruby parent est tué
def execute_ffmpeg(command)
IO.popen(command){|io|
io.each{|line|
# Show Progress
}
}
end
command_ffmpeg = "ffmpeg -y -i input.avi -vb 1000k -ab 96k output.mp4 2>&1"
execute_ffmpeg(command_ffmpeg)
Cela fonctionne très bien, si j'attends que l'encodage se termine. Mais si je termine le script ruby, le processus de ffmpeg reste en arrière-plan.
Comment est-ce que je peux tuer le processus de ffmpeg quand le processus parent de rubis est terminé?
J'utilise Ruby 1.9.3 dans Windows 7.
Merci pour votre réponse. Comme vous le mentionnez à cause de la fourche, je ne pouvais pas exécuter le code dans Windows. et j'ai lu votre code et manuel de référence encore et encore. Mais je ne pouvais pas le réécrire. Je vais vérifier à nouveau après avoir appris les bases de l'E/S. – Tetsu