Audiodescription Video Generator
About this app
Create and generate audiodescriptions for your videos effortlessly. Transform your visuals into immersive audio descriptions to make your content accessible to all.
Audiodescription Video Generator Audiodescription Video Generator Add Description
Related apps
Put this on your site
Source
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Audiodescription Video Generator</title>
<meta name="description" content="Create and generate audiodescriptions for your videos effortlessly. Transform your visuals into immersive audio descriptions to make your content accessible to all.">
<meta name="keywords" content="audiodescription, video generator, accessibility, audio, video, content creation">
<!-- Libraries -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js" crossorigin="anonymous"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" crossorigin="anonymous">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.min.js" crossorigin="anonymous"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@6.6.0/css/fontawesome.min.css" crossorigin="anonymous">
<script type="text/javascript">
try {
// App Javascript Goes Here. Place your entire script content inside the try block for error handling.
let descriptions = [];
function addDescription() {
const descriptionInput = document.getElementById("descriptionInput");
const descriptionText = descriptionInput.value.trim();
if (descriptionText) {
descriptions.push(descriptionText);
renderDescriptions();
descriptionInput.value = "";
}
}
function renderDescriptions() {
const descriptionList = document.getElementById("descriptionList");
descriptionList.innerHTML = "";
descriptions.forEach((desc, index) => {
const listItem = document.createElement("li");
listItem.className = "list-group-item d-flex justify-content-between align-items-center";
listItem.innerText = desc;
const removeButton = document.createElement("button");
removeButton.className = "btn btn-danger btn-sm";
removeButton.innerHTML = '<i class="fas fa-trash"></i>';
removeButton.onclick = () => { removeDescription(index) };
listItem.appendChild(removeButton);
descriptionList.appendChild(listItem);
});
}
function removeDescription(index) {
descriptions.splice(index, 1);
renderDescriptions();
}
document.addEventListener("DOMContentLoaded", function() {
document.getElementById("addDescriptionButton").onclick = addDescription;
document.getElementById("descriptionInput").addEventListener("keypress", function (e) {
if (e.key === "Enter") {
addDescription();
}
});
});
} catch (error) {
// This will throw the error to the parent window.
throw error;
}
</script>
<style>
body {
background: linear-gradient(135deg, #f06, #48f);
color: #ffffff;
}
#main-container {
margin-top: 50px;
background: rgba(0, 0, 0, 0.7);
padding: 30px;
border-radius: 10px;
box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}
h1 {
text-align: center;
margin-bottom: 30px;
}
.list-group-item {
background-color: rgba(200, 200, 200, 0.1);
border: none;
}
.btn {
margin-left: 10px;
}
</style>
</head>
<body>
<div id="main-container" class="container">
<h1>Audiodescription Video Generator</h1>
<div class="mb-3">
<input type="text" id="descriptionInput" class="form-control" placeholder="Enter audiodescription...">
<button id="addDescriptionButton" class="btn btn-success mt-2">Add Description</button>
</div>
<ul id="descriptionList" class="list-group">
<!-- Descriptions will be added here -->
</ul>
</div>
</body>
</html>
NEW APPS
These are apps made by the community!