editor.py aktualisiert
This commit is contained in:
@@ -173,6 +173,7 @@ def create_finished(filename, start, end):
|
|||||||
"-i", str(source),
|
"-i", str(source),
|
||||||
"-ss", f"{start:.3f}",
|
"-ss", f"{start:.3f}",
|
||||||
"-t", f"{end - start:.3f}",
|
"-t", f"{end - start:.3f}",
|
||||||
|
"-af", "loudnorm=I=-16:TP=-1.5:LRA=11",
|
||||||
"-c:a", "libmp3lame",
|
"-c:a", "libmp3lame",
|
||||||
"-b:a", "128k",
|
"-b:a", "128k",
|
||||||
str(temp),
|
str(temp),
|
||||||
@@ -423,10 +424,15 @@ th { color:#aaa; font-weight:normal; }
|
|||||||
.button { display:inline-block; border:0; border-radius:6px; padding:9px 13px; background:#333; color:#fff; cursor:pointer; text-decoration:none; }
|
.button { display:inline-block; border:0; border-radius:6px; padding:9px 13px; background:#333; color:#fff; cursor:pointer; text-decoration:none; }
|
||||||
.button:hover { background:#444; }
|
.button:hover { background:#444; }
|
||||||
.empty { color:#999; padding:15px 0; }
|
.empty { color:#999; padding:15px 0; }
|
||||||
|
.loading-overlay { position:fixed; inset:0; background:rgba(0,0,0,.78); display:none; align-items:center; justify-content:center; z-index:1000; }
|
||||||
|
.loading-overlay.active { display:flex; }
|
||||||
|
.spinner { width:54px; height:54px; border:5px solid #444; border-top-color:#fff; border-radius:50%; animation:spin .8s linear infinite; }
|
||||||
|
@keyframes spin { to { transform:rotate(360deg); } }
|
||||||
@media(max-width:800px) { body { padding:12px; } table,thead,tbody,tr,th,td { display:block; } thead { display:none; } tr { padding:10px 0; border-bottom:1px solid #333; } td { border:0; padding:5px 0; } }
|
@media(max-width:800px) { body { padding:12px; } table,thead,tbody,tr,th,td { display:block; } thead { display:none; } tr { padding:10px 0; border-bottom:1px solid #333; } td { border:0; padding:5px 0; } }
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
<div class="loading-overlay" id="loadingOverlay"><div class="spinner" aria-label="Laden"></div></div>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<h1>Event Audio – Editor</h1>
|
<h1>Event Audio – Editor</h1>
|
||||||
<div class="subtitle">Fertige Aufnahmen aus {{ recordings_dir }}</div>
|
<div class="subtitle">Fertige Aufnahmen aus {{ recordings_dir }}</div>
|
||||||
@@ -443,7 +449,7 @@ th { color:#aaa; font-weight:normal; }
|
|||||||
<td>{{ item.datetime }}</td>
|
<td>{{ item.datetime }}</td>
|
||||||
<td>{{ item.size }}</td>
|
<td>{{ item.size }}</td>
|
||||||
<td>{{ item.duration }}</td>
|
<td>{{ item.duration }}</td>
|
||||||
<td><a class="button" href="{{ url_for('edit_recording', filename=item.filename) }}">✂ Bearbeiten</a></td>
|
<td><a class="button" href="{{ url_for('edit_recording', filename=item.filename) }}" onclick="showLoading()">✂ Bearbeiten</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</tbody>
|
</tbody>
|
||||||
@@ -471,6 +477,9 @@ th { color:#aaa; font-weight:normal; }
|
|||||||
{% else %}<div class="empty">Noch keine bearbeiteten Aufnahmen vorhanden.</div>{% endif %}
|
{% else %}<div class="empty">Noch keine bearbeiteten Aufnahmen vorhanden.</div>{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<script>
|
||||||
|
function showLoading() { document.getElementById('loadingOverlay').classList.add('active'); }
|
||||||
|
</script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
"""
|
"""
|
||||||
|
|||||||
Reference in New Issue
Block a user