AI Cartoon Maker
body {
font-family: Arial, sans-serif;
margin: 0;
padding: 0;
}
header {
background-color: #333;
color: #fff;
padding: 20px;
text-align: center;
}
main {
display: flex;
flex-direction: column;
align-items: center;
margin-top: 20px;
}
#preview {
position: relative;
}
#video-preview {
width: 100%;
max-width: 400px;
}
canvas {
display: none;
}
footer {
background-color: #333;
color: #fff;
padding: 10px;
text-align: center;
position: fixed;
bottom: 0;
width: 100%;
}
document.addEventListener('DOMContentLoaded', function () {
const videoPreview = document.getElementById('video-preview');
const canvasPreview = document.getElementById('canvas-preview');
const startRecordingBtn = document.getElementById('start-recording');
const stopRecordingBtn = document.getElementById('stop-recording');
let stream;
startRecordingBtn.addEventListener('click', startRecording);
stopRecordingBtn.addEventListener('click', stopRecording);
async function startRecording() {
try {
stream = await navigator.mediaDevices.getUserMedia({ video: true, audio: true });
videoPreview.srcObject = stream;
} catch (err) {
console.error('Error accessing media devices: ', err);
}
}
function stopRecording() {
if (stream) {
const tracks = stream.getTracks();
tracks.forEach(track => track.stop());
videoPreview.srcObject = null;
}
}
});
No comments: