Webcam ve Mikrofon İzin Testi

TAKİP ET

Kamera ve mikrofon izinlerinizi online test edin. Tarayıcınızın webcam ve ses erişim güvenliğini hızlıca kontrol edin.

Webcam ve mikrofon izin testi, tarayıcınızın kamera ve ses erişim ayarlarını kontrol etmek için kullanılan önemli güvenlik araçlarından biridir. Günümüzde birçok web sitesi ve uygulama; görüntülü görüşme, canlı yayın ve sesli iletişim özellikleri nedeniyle kamera ile mikrofon erişimi talep etmektedir. Bu nedenle kullanıcıların izin durumlarını düzenli olarak kontrol etmesi büyük önem taşır.

Modern tarayıcılar, kullanıcı izni olmadan kamera veya mikrofon erişimine izin vermez. Ancak geçmişte verilen izinler bazı durumlarda unutulabilir ve güvenlik riski oluşturabilir. Webcam ve mikrofon test araçları sayesinde kullanıcılar cihazlarında kamera desteği, mikrofon erişimi ve izin durumlarını hızlı şekilde analiz edebilir.

Online kamera ve mikrofon kontrol sistemleri; tarayıcı güvenliği, gizlilik ayarları ve cihaz erişim izinleri hakkında detaylı bilgi sunar. Böylece kullanıcılar hangi sitelerin erişim yetkisine sahip olduğunu daha bilinçli şekilde yönetebilir ve dijital gizliliklerini artırabilir.

Webcam / Mikrofon İzin Testi

Kamera ve mikrofon izin durumunuzu güvenli şekilde kontrol edin.

İzin Durumu Kontrol bekleniyor... Test başlatıldığında tarayıcı izin isteyebilir. Kamera Desteği Kontrol ediliyor... Mikrofon Desteği Kontrol ediliyor... Kamera İzni Bekleniyor... Mikrofon İzni Bekleniyor... Webcam / Mikrofon Testini Başlat Bu test yalnızca izin durumunu kontrol eder. Görüntü veya ses kaydı yapılmaz. .media-permission-section { background: #f8fafc; } .media-permission-card { max-width: 900px; margin: auto; background: #fff; border-radius: 24px; padding: 35px; box-shadow: 0 20px 50px rgba(15, 23, 42, 0.08); } .media-title h2 { font-size: 34px; font-weight: 800; color: #111827; margin-bottom: 10px; } .media-title p { color: #64748b; margin-bottom: 28px; } .media-main { padding: 22px; border-radius: 20px; margin-bottom: 18px; background: #eff6ff; border: 1px solid #bfdbfe; } .media-main span { display: block; color: #64748b; font-size: 14px; margin-bottom: 6px; } .media-main strong { display: block; color: #2563eb; font-size: 28px; font-weight: 800; } .media-main small { display: block; color: #475569; margin-top: 6px; } .media-safe { background: #ecfdf5; border-color: #bbf7d0; } .media-safe strong { color: #16a34a; } .media-warning { background: #fff7ed; border-color: #fed7aa; } .media-warning strong { color: #ea580c; } .media-risk { background: #fef2f2; border-color: #fecaca; } .media-risk strong { color: #dc2626; } .media-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 15px; margin-bottom: 20px; } .media-box { background: #f1f5f9; border-radius: 18px; padding: 18px; } .media-box span { display: block; font-size: 14px; color: #64748b; margin-bottom: 6px; } .media-box strong { color: #2563eb; font-size: 18px; word-break: break-word; } .media-test-btn { border: 0; background: #2563eb; color: #fff; padding: 14px 24px; border-radius: 999px; font-weight: 700; cursor: pointer; } .media-test-btn:hover { background: #1d4ed8; } .media-note { margin-top: 18px; background: #eff6ff; color: #1e40af; padding: 14px 16px; border-radius: 14px; font-size: 14px; } @media (max-width: 576px) { .media-permission-card { padding: 25px 18px; } .media-grid { grid-template-columns: 1fr; } .media-title h2 { font-size: 28px; } .media-main strong { font-size: 22px; } } document.addEventListener("DOMContentLoaded", function () { const setText = (id, value) => { document.getElementById(id).textContent = value || "Bilinmiyor"; }; const mainBox = document.getElementById("mediaMainBox"); const status = document.getElementById("mediaStatus"); const desc = document.getElementById("mediaDesc"); const startBtn = document.getElementById("startMediaTest"); function setMain(type, title, text) { mainBox.classList.remove("media-safe", "media-warning", "media-risk"); mainBox.classList.add(type); status.textContent = title; desc.textContent = text; } const mediaSupported = !!(navigator.mediaDevices && navigator.mediaDevices.getUserMedia); setText("cameraSupport", mediaSupported ? "Destekleniyor" : "Desteklenmiyor"); setText("microphoneSupport", mediaSupported ? "Destekleniyor" : "Desteklenmiyor"); async function checkPermissionStatus() { if (!navigator.permissions) return; try { const camera = await navigator.permissions.query({ name: "camera" }); const microphone = await navigator.permissions.query({ name: "microphone" }); setText("cameraPermission", translatePermission(camera.state)); setText("microphonePermission", translatePermission(microphone.state)); } catch (e) { console.warn("Permission API desteklenmiyor:", e); } } function translatePermission(state) { if (state === "granted") return "İzin Verildi"; if (state === "denied") return "Engellendi"; if (state === "prompt") return "Sorulacak"; return "Bilinmiyor"; } checkPermissionStatus(); startBtn.addEventListener("click", async function () { if (!mediaSupported) { setMain( "media-risk", "Desteklenmiyor", "Tarayıcınız kamera veya mikrofon erişimini desteklemiyor." ); return; } try { const stream = await navigator.mediaDevices.getUserMedia({ video: true, audio: true }); setText("cameraPermission", "İzin Verildi"); setText("microphonePermission", "İzin Verildi"); setMain( "media-safe", "İzin Verildi", "Kamera ve mikrofon erişimi kullanılabilir durumda." ); stream.getTracks().forEach(track => track.stop()); } catch (error) { console.error(error); if (error.name === "NotAllowedError") { setText("cameraPermission", "Engellendi"); setText("microphonePermission", "Engellendi"); setMain( "media-risk", "İzin Engellendi", "Kamera veya mikrofon izni kullanıcı tarafından reddedildi." ); } else if (error.name === "NotFoundError") { setMain( "media-warning", "Cihaz Bulunamadı", "Kamera veya mikrofon donanımı bulunamadı." ); } else { setMain( "media-warning", "Test Tamamlanamadı", "Tarayıcı veya sistem ayarları erişimi engellemiş olabilir." ); } } }); });