Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Mediaplayer anderes Format vorgaukeln? (https://www.delphipraxis.net/110911-mediaplayer-anderes-format-vorgaukeln.html)

Mattze 26. Mär 2008 15:53


Mediaplayer anderes Format vorgaukeln?
 
Hallo,

eine einfache Digitalkamera kann auch "Filme" aufnehmen. Die sind dann als .AVI gespeichert.
Einige Programme können die aber nicht direkt abspielen (Irfanview, Delphis Mediaplayer...), jedenfalls bei mir nicht. "... Video::mjpeg Dekomprimierer nicht gefunden" oder so ähnlich. (Der Ton wird aber korrekt wiedergegeben - habe ich mir sagen lassen, da ich taub bin.)
Der Windows Mediaplayer kann das übrigens richtig!

Wenn ich diese AVI in MPG einfach nur umbenenne geht es!!!???
Daher die Frage:
Wie kann ich dem Delphi-Mediaplayer ein anderes Format vorgaukeln, ohne die Datei extra umbenennen zu müssen? (Ist sonst ziemlich unangenehm, wenn es ein größeres Video von DVD ist!)

Gruß
Mattze

DIET3RIX 26. Mär 2008 18:26

Re: Mediaplayer anderes Format vorgaukeln?
 
Hi,
es ist nicht dein Ernst oder?
Du kannst mit WMP keine AVI-Datei wiedergeben, aber wenn du diese in MPEG »umbenennst« dann kannst du diese mit WMP abspielen?

Zacherl 26. Mär 2008 18:27

Re: Mediaplayer anderes Format vorgaukeln?
 
Nene nur beim Delphi Media Player meint er geht es nicht.

hathor 26. Mär 2008 18:59

Re: Mediaplayer anderes Format vorgaukeln?
 
Video-Files enthalten am Anfang eine 4-Byte-Kennung(FourCC): z.B. XVID,DX50(für DIVX5,0), DIVX(OpenDivx), WMV1(Windows Media Video V7), MPG2(MPEG 2,SVCD/DVD),
MPG1(MPEG 1,VCD), etc.
Die Endung spielt KEINE Rolle!

Avicodec:
http://avicodec.free.fr/ftp/AVIcodec_1.2_b110.exe


Mediainfo:
http://sourceforge.net/project/showf...ease_id=584206

Mattze 27. Mär 2008 13:00

Re: Mediaplayer anderes Format vorgaukeln?
 
Hallo,

dann habe ich das offenbar doch nicht richtig deutlich gemacht. Es ist nämlich wirklich mein völliger Ernst und ich staune auch selber darüber...

Ich probiere es noch mal:
Die Filmschnipsel der digitalen Appafotorate Canon S30 und Fujifilm Finepix S5700 liegen als AVI vor.
(Ich möchte wetten, die anderer digitaler Appafotorate auch!)
Irfanview und der TMediaplayer von Delphi können sie nicht mit Bild abspielen:
"Video nicht verfügber. Dekomprimierer 'vids:mjpg' wurde nicht gefunden."
Laut Hexeditor steht da auch AVI im Header drin. Der fängt an "RIFF,^N.AVI LIST...".
Wenn ich nur den Typ von AVI nach MPG ändere, kann das sowohl Irfanview als auch TMediaplayer.
(Bsp: Original DSCF0103.AVI umbenannt nach DSCF0103.mpg)
Der Windows Mediaplayer kann das als AVI und auch als mpg.

Da das mit dem einfachen Umbenennen funktioniert, kann das mit der Typüberprüfung im Header nicht "absolut" stimmen - was mich auch sehr wundert. Vielleicht: Er prüft Headertyp und Nametyp. Sind sie ungleich, nimmt er den Nametyp. Wäre aber sehr komisch. Eigentlich müsste es umgekehrt sein, dass das was im Header steht den Ausschlag gibt.

Auf jeden Fall bin ich so zu meiner Frage gekommen.
Wie kann man dem TMediaplayer ein anderes Format vorgaukeln (als selbst im Header steht)?
Irgendwie müsste es ja gehen, weil - siehe oben - einfach umbenannt geht es ja. Nur das man z. B. Dateien von CD-Rom oder DVD nicht einfach umbenennen kann.
Mir schwebt es so vor:
Zuerst versuche ich richtig als AVI zu öffnen. Kriege ich einen Fehler, wird der abgefangen und ich versuche es mit MPG. (Das Abfangen geht nicht einfach mit "Try..Except..End", da die Datei auch als AVI abgespielt wird, aber eben nur der Ton ohne Bild.)

Ich hoffe, jetzt habe ich das Problem deutlicher gemacht.
Genau dieses Problem (auch direkt mit Irfanview) findet man auch im Netz! Dort wird auch die Lösung des Umbennenens zu MPG genannt!

Gruß
Mattze

rollstuhlfahrer 27. Mär 2008 19:37

Re: Mediaplayer anderes Format vorgaukeln?
 
HI,

ich tipp mal (weiß es aber nicht), dass man, wenn man beim TMediaplayer die Eigenschaft DeviceType ändert, dem Player ein anderes Format vorgaukelt. Es könnte aber auch dabei passieren, dass dann garnichts mehr ausgegeben wird.

rollstuhlfahrer

Mattze 28. Mär 2008 17:17

Re: Mediaplayer anderes Format vorgaukeln?
 
Hallo und danke!

Habe ich natürlich gleich probiert. Mit allen möglichen Formaten aus der Delphi-Hilfe.
Es klappt natürlich nicht. Hätte mich auch sehr gewundert.

Wundern tue ich mich aber nun trotzdem!
Sowohl die AVI-Fehlermeldung als auch die in MPG umbenannte Videodatei wird unabhängig vom eingestellten Format wiedergegeben. Das geht doch eigentlich gar nicht! Ich habe in meiner ganzen Quelle gesucht. Devicetype wird nur einmal gesetzt und trotzdem!
Merkwürzig!!!???

Gruß
Mattze

Popov 28. Mär 2008 17:47

Re: Mediaplayer anderes Format vorgaukeln?
 
Zitat:

Zitat von Mattze
Die Filmschnipsel der digitalen Appafotorate Canon S30 und Fujifilm Finepix S5700 liegen als AVI vor.

Also, AVI Endung sagt noch gar nichts aus. AVI ist NUR ein Container. Der Container beinhaltet dann die Video-Datei und Audio-Datei(en). Die Video-Datei kann z.B. divx, xvid, tscc, iv50, cvid usw. sein. Es gibt zig verschiedene Formate. Das gleiche gilt für Audio, z.B. mp3, ac3, pcm usw. Für jeden der Formate, ob Video oder Audio, brauchst du ein eigenen Codec der es lesen kann. Bei dir sieht es so aus, daß deine Kamera einen Videocodec benutzt, der nicht auf dem Computer installiert ist. Dafür wird bei Audio ein Codec benutzt der auf dem Computer installiert ist.

Nun zu dem Unterschied zwischen Windows Media Player und VLC Media Player. Die Codecs sind unter Windows installiert, so daß jeder Player auf sie zugreifen kann. Das macht auch der WMP. VLC Media Player dagegen nutzt seine eigene Codec-Bibliothek. Somit kann WMP unter Umständen Filme anzeigen die VLC nicht kann und umgekehrt. In der Regel kann VLC mehr Formate lesen als WMP. In diesem Fall wohl nicht.

Was du machen solltest ist dirch zuerst informieren welcher Video-Codec es ist. Das Einfachste Programm dafür ist AVICodes (suche es im Internet). Es sagt dir bei Video und Audio die Codecs. Dann kannst du sie dir besorgen und installieren. Hex Editoren sagen dir nicht viel. Desser sind Programme wie AVICodec.

Wenn du Filme dann konvertieren willst, dann gibt es einige kostenlose Lösungen. Ein Universalgenie ist das Programm "SUPER Konverter". Konvertiere es in Avi mit DivX und du kannst es überall gucken. Nur beachte bitte die Bitrate, sie darf nicht zu gering sein.

Mattze 28. Mär 2008 18:50

Re: Mediaplayer anderes Format vorgaukeln?
 
Hallo,

danke Dir, aber das ist alles bekannt. Du hast das nicht richtig gelesen!?
1. AVI (neben RIFF) steht auch im Header der Datei! (Also nix "nur Container". Da bin ich schon etwas weiter.)
2. Der WMP KANN das ordentlich abspielen, der DMP (Delphis TMediaplayer-Komponente) NICHT. Es zeigt die gleiche Fehlermeldung, wie sie auch Irfanview zeigt. Welcher Codec nicht gefunden wird, ist bekannt!

Noch mal die eigentlich zwei gleichen Fragen:
1. Warum kann der WMP das und der DMP nicht, wenn sie doch auf die gleichen installierten Codecs zugreifen.
2. Es ist egal, ob der Dateityp nun Apfel oder Birne ist. Wie kann ich dem DMP nun vorgaukeln, dass er statt Apfel Birne annimmt und abspielt?

Gruß
Mattze

Dunkel 28. Mär 2008 20:19

Re: Mediaplayer anderes Format vorgaukeln?
 
Zitat:

Zitat von Mattze
1. AVI (neben RIFF) steht auch im Header der Datei! (Also nix "nur Container". Da bin ich schon etwas weiter.)

AVI ist nur ein Container-Format!

Zitat:

Zitat von Mattze
2. Der WMP KANN das ordentlich abspielen, der DMP (Delphis TMediaplayer-Komponente) NICHT. Es zeigt die gleiche Fehlermeldung, wie sie auch Irfanview zeigt. Welcher Codec nicht gefunden wird, ist bekannt!
{ ... }
1. Warum kann der WMP das und der DMP nicht, wenn sie doch auf die gleichen installierten Codecs zugreifen.

Öffne mal via Start - Ausführen die mplayer2.exe und probier es mal damit. Ich meine irgendwo gehört/gelesesn zu haben, dass die Delphi-Implementation des MediaPlayers auf den alten 6.4er aufbaut, nicht auf die aktuelle 10er oder 11er Version. U.U. kann der MediaPlayer 6.4 nicht alle Codecs abspielen.

Zitat:

Zitat von Mattze
2. Es ist egal, ob der Dateityp nun Apfel oder Birne ist. Wie kann ich dem DMP nun vorgaukeln, dass er statt Apfel Birne annimmt und abspielt?

Gar nicht, bzw. nur durchs Umkodieren in einen anderen, unterstützen Codec. Das Ändern der Dateierweiterung sollte keine Auswirkung auf die Datei und deren Wiedergabe haben.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:14 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz