Come leggere i metadati di un file video MKV in C #?
Domanda
Come leggere i metadati di un file video MKV in C # (o C o C ++ o AS3)?
Ad esempio, quali
creator
metadatacreator
hasKeyframes
hasVideo
hasAudio
hasMetaData
canSeekToEnd
duration
datasize
videosize
videocodecid
audiosize
audiocodecid
audiosamplerate
audiosamplesize
stereo
filesize
lasttimestamp
lastkeyframetimestamp
lastkeyframelocation
keyframes (filepositions, times)
width
height
framerate
videodatarate
audiodatarate
Soluzione
C'è sempre tentando di analizzare l'intestazione da soli.
Anche i riferimenti che ho visto al href="http://ebml.sourceforge.net/" rel="nofollow noreferrer"> biblioteca Buona fortuna!
Altri suggerimenti
Recentemente ho postato C # versione di https://bitbucket.org/OlegZee/nebml . Contiene Titolo editor di campione che demostrate modifica in linea di determinate proprietà.
Si potrebbe provare a chiedere questo oltre al forum di Doom9 nella loro sezione di sviluppo. Anche MediaInfo.DLL potrebbe anche funzionare per voi.
Il modo più semplice per ottenere un sacco di questo è di generare un 'istanza di mkvinfo
e analizzare la sua produzione. Un problema con quello che si sta chiedendo è che un file Matroska può avere un numero illimitato di flussi video e audio. Quindi si dovrebbe enumerare i flussi nel file prima di ottenere queste proprietà.