Parse user metadata
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 22/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- javascript, typescript
- Ambito
- data
Direzione di ricerca
This is a usage question about walking MP4 udta/ilst boxes: the sample calls mp4boxFile.getBoxes("ilst") and then dumps the raw payload with TextDecoder, and asks whether ilst is the only box holding user metadata such as comments. Start in the box-parsing sources (the udta/meta/ilst box definitions and getBoxes) to see whether ilst children are exposed as parsed boxes or only as raw data, and test with a file that carries a comment atom. Done means a documented, correct way to read comment metadata, or a small parser improvement, rather than manual byte decoding.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
I’m trying to get the users metadata of a video (comment notably). I tried to do something like that:
<!DOCTYPE html>
<html>
<head>
<title>MP4 Metadata Extraction</title>
</head>
<body>
<input type="file" id="fileInput" accept=".mp4">
<div id="metadataDisplay"></div>
<script src="mp4box.all.js"></script>
<script>
document.getElementById("fileInput").addEventListener("change", function (e) {
const file = e.target.files[0];
if (file) {
const reader = new FileReader();
reader.onload = function (e) {
const arrayBuffer = e.target.result;
// Initialize mp4box
const mp4boxFile = MP4Box.createFile();
mp4boxFile.onReady = (info) => {
console.log("READY");
console.log(info);
};
mp4boxFile.onError = () => {
console.log("Error");
};
// Create a Blob from the ArrayBuffer
/* const blob = new Blob([arrayBuffer]);
*/
console.log("created blob");
// Read the Blob using mp4box
arrayBuffer.fileStart = 0;
mp4boxFile.appendBuffer(arrayBuffer);
// Get metadata, ilst is inside udta, and seems to be the one with comments (maybe others could as well?)
/* const udtaBoxes = mp4boxFile.getBoxes("udta"); */
const ilstBoxes = mp4boxFile.getBoxes("ilst");
const decoder = new TextDecoder('utf-8');
ilstBoxes.forEach( (ilstBox) => {
console.log(decoder.decode(ilstBox.data));
});
};
reader.readAsArrayBuffer(file);
}
});
</script>
</body>
</html>
and I’m close enough to get the content, but I’m not sure how to parse it further, and I’m not sure if this is the only box that can contain user content. Is there a simpler way to get user metadata, like comments?
- Lingua principale
- TypeScript
- Stelle
- 2.5k
- Fork
- 390
- Merge medio
- 1g 17h
- PR unite (30g)
- 8
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di gpac/mp4box.js
-
mp4box.js — 20-byte `sgpd` box with large `entry_count` causes unbounded loop and heap OOM abortAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 32/100
gpac/mp4box.js#551 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 45/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 48/100
gpac/mp4box.js#528 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 40/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di gpac/mp4box.js
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
prime-radiant-inc/evener#5901 ·
I maintainer di solito rispondono entro 1 giorno
-
bug needs-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
Bug: Batcher binds the texture that opens a new batch twice (one draw call per element with maxBatchableTextures = 1)Forse già presa @darzarzycki l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
I maintainer di solito rispondono entro 2 giorni
-
area:study-data p2-high ready-for-agent type:chore
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
fderuiter/deruiter.dev#3706 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
nicobailon/pi-subagents#3242 ·
I maintainer di solito rispondono entro 1 giorno