Cara menemukan aplikasi mana yang menggunakan iSight (kamera iMac)

36

Bagaimana cara mengetahui aplikasi mana yang memiliki kamera terbuka pada iMac (Running Leopard)? Lampu hijau menyala yang menunjukkan bahwa kamera sedang digunakan dan juga bilik foto tidak dapat terhubung ke kamera. Satu-satunya aplikasi lain yang berjalan adalah Safari dan Finder (sebaik yang saya tahu), yang tampaknya tidak menggunakan kamera.

Jika ini adalah Windows, saya akan menggunakan Process Explorer, apa yang dapat saya lakukan pada Mac untuk melihat siapa yang membuka perangkat tertentu?

EDIT: menggunakan saran dari NSD, saya hampir punya solusi dengan

    lsof | grep "USBVDC"

Itu menunjukkan semua aplikasi mencoba menggunakan kamera, tetapi bukan yang benar-benar memilikinya. Mungkin cukup dekat.

Tony Lee
sumber

Jawaban:

24

Tebakan terbaik saya adalah Agen iChat berjalan di latar belakang.

Jika tidak, coba:

lsof | grep -i "AppleCamera"

Dalam versi OS X sebelumnya (sebelum Yosemite), ini harus digunakan:

lsof | grep -i "iSight"
Hasaan Chop
sumber
1
lsoftidak menunjukkan apa pun yang terkait dengan iSight yang digunakan atau tidak.
Chealion
Tidak mengherankan.
Hasaan Chop
3
Saya selangkah lebih dekat, saya menemukan cara untuk menemukan aplikasi yang ingin menggunakan kamera iSight USB bawaan menggunakan saran Anda. lsof | grep -i "USBVDC". Hampir, jika tidak setiap aplikasi, akan menggunakan library /System/Library/QuickTime/QuickTimeUSBVDCDigitizer.component/Contents/MacOS/QuickTimeUSBVDCDigitizer untuk sampai ke kamera.
Tony Lee
Komponen QuickTime sedikit lebih terlibat daripada perpustakaan, tetapi Anda benar; tangkapan yang bagus.
Hasaan Chop
sekarang "FaceTime"
LI Daobing
19

Pada 2014, VDCberfungsi sebagai lsofistilah pencarian untuk ini:

$ lsof | grep VDC
FaceTime  1097 user  txt      REG                1,4    405264    2934 /System/Library/Frameworks/CoreMediaIO.framework/Versions/A/Resources/VDC.plugin/Contents/MacOS/VDC
zigg
sumber
Mengetahui itu HipChat untuk saya - tidak yakin ketika mencoba memulai panggilan video, tetapi tidak ada di UI yang menyarankan kamera sedang digunakan.
phatskat
Menggunakan jawaban ini saya menemukan itu adalah klien Parallels saya, yang berbagi kamera dengan mesin windows virtual
GreenAsJade
7

lsofadalah taruhan yang bagus. Grepping for 'VDC' memberi saya hasil terbaik, tetapi dalam versi OSX yang lebih lama Anda mungkin harus menggunakan istilah lain 'AppleCamera', 'iSight'.

Kemudian Anda memiliki daftar, dan Anda melihat bahwa beberapa program menggunakan cam. Anda dapat mencoba untuk membunuh mereka satu per satu, tetapi bagaimana jika ada di browser dan Anda memiliki jutaan tab terbuka?

Biasanya trik ini bekerja untuk saya:

  • buka ActivityMonitor,
  • cari VDC, VDCAssistant terdaftar,
  • paksa berhenti VDCA tahan.

Hasilnya adalah semua proses yang mencoba menggunakan kamera untuk sementara terputus. Ini menangani proses yang terus menggunakan kamera karena beberapa kesalahan. VDCAsistant dihidupkan ulang secara otomatis.

Trik ini juga berfungsi dengan baik jika suatu program tidak dapat mengakses kamera.

iwein
sumber
4

Saya baru saja menemukan bahwa memiliki Facetime diminimalkan menyebabkan LED iSight sering muncul. Tutup FaceTime dengan mengklik tombol merah di sudut kiri atas. Anda masih akan menerima panggilan FaceTime tetapi kamera hanya akan dihidupkan ketika mereka masuk.

MotoBarsteward
sumber
Ini menyelesaikan masalah LED iSight berkedip hijau untuk saya, tapi saya tidak bisa memikirkan pembenaran yang masuk akal (atau dokumentasi apa pun) tentang mengapa Facetime akan mengambil foto saya ketika itu diminimalkan.
christianbundy
0

iSight / AppleCamera sekarang diganti namanya menjadi FaceTime

lsof | grep -i "FaceTime"

mungkin sebagai root, kalau-kalau ada orang lain yang menggunakannya. Biasanya facetime diminimalkan yang menjadi masalah. Buka dan keluarlah.

zainengineer
sumber
0

Meminjam solusi luar biasa yang saya sarankan, tetapi merampingkannya dan menjadikannya skrip, Anda dapat melakukan ini:

sudo pkill 'VDCAssistant'

Anda kemudian dapat menempatkan ini dalam suatu fungsi untuk membuatnya lebih mudah diingat:

repocam () {
    sudo pkill 'VDCAssistant'
}

Anda dapat meletakkan fungsi itu di .zshrcfile Anda .bashrcatau apa pun yang Anda gunakan.

Di luar ruang lingkup tetapi layak dilakukan:

Anda bahkan dapat mengatur pekerjaan cron atau launchd agent atau apa pun yang Anda inginkan (Google untuk detail!) Untuk menjalankannya sesering mungkin. Jika Anda bisa mengetahui aplikasi mana (seperti HipShat) yang memicu masalah, Anda mungkin bisa menemukan cara untuk menjalankannya saat keluar dari aplikasi.

Mungkin juga untuk memicu skrip ketika komputer Anda bangun atau tidur.

iconoclast
sumber
0

Anda juga dapat menggunakan aplikasi pengawasan: https://objective-see.com/products/oversight.html

aplikasi pengawasan dapat mendeteksi apakah beberapa aplikasi lain menggunakan kamera atau mikrofon Anda, memberi tahu Anda, lalu Anda dapat memilih untuk memblokirnya, meninggalkannya, atau menambahkannya ke daftar putih.

LI Daobing
sumber