Hvordan findes og genkendes fil- og mediatyper?
Hejsa,Et lidt mere fundamentalt windows spørgsmål, da jeg så småt er begyndt at rode med udviklingen af codecs i form af DMO (DirectX Media Object).
Spørgsmålet lyder:
Hvordan finder programmer i Windows ud af hvordan den skal bruge en bestemt fil og media-type.
Her tænker jeg på hvordan der internt i f.eks. Windows Media Player eller Winamp findes ud af hvilken medie type der forsøges at afspille.
I mine egne tanker tror jeg det foregår sådan her:
1: Winamp åbnes
2: Der forsøges at afspille en fil.
3: Winamp gennemsøger filen for at finde ud af hvilken medietype det er.
[SPØRGSMÅL: Hvordan gennemsøges filen? - er det en slags header ? - er det en simpel registrering i registreringsdatabasen?]
4: Winamp finder ud af at det er en XVID fil, med en defineret media type: Video RGB24.
5: Winamp kalder Windows's DMO/CODEC database og spørger alle DMO's om de understøtter Video RGB24.
6: XVID DMO/Codec svarer tilbage med "JA JEG KAN GODT!".
7: Winamp har nu fundet en DMO/CODEC som kan finde ud af at decode/decrypterer media typen korrekt, og påbegynder opfyldningen af DMO'ens input buffer.
8: DMO'en tager imod input bufferen og behandler dataen så Winamp kan begynde at afspille fra Output bufferen.
Det ovenstående er sådan min forståelse er tingene er bygget op efter at have søgt en del på internettet - men jeg mangler dokumentation for hvordan Windows og en application som f.eks. Winamp finder ud af hvilket CODEC / DMO der benyttes til en bestemt media type, og hvordan applicationen overhovedet finder ud af hvilken mediatype det er ?
Jeg ved det er et udfordrende spørgsmål - men jeg kan ikke finde dokumentation for hvordan genkendelsen foregår.
Håber der er nogen der ved hvordan det fungerer, og kan finde noget dokumentation for hvordan det bruges ved udvikling af egen DMO.
//EoniX
