2 votes

Utiliser la commande Screencapture pour enregistrer l'écran -- Comment obtenir l'identifiant de la source audio ?

Je veux écrire un script planifié pour utiliser la commande screencapture pour enregistrer l'écran automatiquement en arrière-plan, comme ceci :

$ screencapture -v -V 60 output.mov -A xxxx

xxxx' est l'identifiant de la source audio. Je dois spécifier ce paramètre pour enregistrer l'audio interne de MacOS, en utilisant un périphérique audio virtuel tel que Soundflower et sans l'identification de la source audio spécifiée, les vidéos capturées sont toujours muettes.

Comment puis-je obtenir les identifiants de tous les appareils audio de la manière la plus simple possible ? J'ai essayé de nombreuses applications et scripts mais je n'ai toujours pas trouvé la solution.

3voto

nakanote Points 11

El -A <id> a été remplacée par l'option -G <id> option. En ce qui concerne l'ID, il pourrait s'agir de SoundflowerEngine:1 ou quelque chose comme ça. Vous pouvez obtenir tous les ID des périphériques audio en exécutant le code Swift suivant (nécessite l'installation de Xcode) :

import Cocoa
import AVFoundation

let session = AVCaptureDevice.DiscoverySession.init(deviceTypes: [.builtInMicrophone, .externalUnknown], mediaType: nil, position: .unspecified)

for device in session.devices {
    print("device=\(device.localizedName), id=\(device.uniqueID)")
}

# Save it as ids.swift, and
$ swift ids.swift
device=MacBook Pro Microphone, id=BuiltInMicrophoneDevice
device=Soundflower (64ch), id=SoundflowerEngine:1

$ screencapture -v -V 60 -G SoundflowerEngine:1 output.mov

Alternativement, vous pouvez utiliser l'outil de ligne de commande que j'ai créé sans installer Xcode :

$ list-av-capture-devices
[
  {
    "deviceType" : "AVCaptureDeviceTypeBuiltInMicrophone",
    "isConnected" : true,
    "localizedName" : "MacBook Pro Microphone",
    "manufacturer" : "Apple Inc.",
    "modelID" : "Digital Mic",
    "uniqueID" : "BuiltInMicrophoneDevice"
  },
  ...
]

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X