Dato un file video identificare il codec di cui necessita

mercoledì 09 maggio 2007 - 07.51

mattecapelli Profilo | Newbie

Ciao a tutti.
E' possibile fare una cosa del genere da codice? Esiste qualche classe del framework o API che se ne occupa?
Grazie in anticipo.

Brainkiller Profilo | Guru

>Ciao a tutti.
>E' possibile fare una cosa del genere da codice? Esiste qualche
>classe del framework o API che se ne occupa?

Non mi risulta esista, te la devi creare tu.
E' necessario analizzare gli headers binari del file per capire in che modo è stato codificato.

Qui trovi una serie di codici presenti negli headers che ti riconducono al codec o al produttore del codec:
http://www.fourcc.org/codecs.php
Ciao

David De Giacomi | Microsoft MVP
http://blogs.dotnethell.it/david/

mattecapelli Profilo | Newbie

ok grazie mille per la risposta!
...e...ormai che sei in piedi ...secondo te qual è il metodo più veloce per ottenere il fourcc da un file binario?

aprirlo con un BinaryReader o usare l'oggetto di mediaplaye IWMPMedia?

parlo da ignorante non avendo mai lavorato su file multimediali.
In pratica devo controllare se un dato file è un video...e nel caso verificare se la mia azienda ha distribuito un codec di quel tipo.
Grazie in anticipo
Ciao!

Brainkiller Profilo | Guru

>ok grazie mille per la risposta!
>...e...ormai che sei in piedi ...secondo te qual è il metodo
>più veloce per ottenere il fourcc da un file binario?

Esatto. Io ho lavorato tempo fa ma con i tipi di file immagine, non video. Immagino che anche per i codec ognuno codifichi alla sua maniera però credo che la posizione in cui viene indicato che codec è stato utilizzato sia sempre fissa. Dovresti trovare quel punto. E per fare questo ogni formato ha le sue specifiche quindi se analizi un wmv devi cercare documentazione sugli headers del file wmv e della sua struttura. Una volta trovate le info con un BinaryReader vai a leggerti i pochi byte che ti servono.
Ciao

David De Giacomi | Microsoft MVP
http://blogs.dotnethell.it/david/
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5