Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Di Aug 20, 2019 11:05

Foren-Übersicht » Sonstiges » Projekte
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 35 Beiträge ]  Gehe zu Seite 1, 2, 3  Nächste
Autor Nachricht
 Betreff des Beitrags: Xenorate Media Player 2.6
BeitragVerfasst: Mo Aug 11, 2008 14:29 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Servus leute,

ich hatte vor ein paar Jahren mal mein selbst entwickelten Multi Media Player "Xenorate" vorgestellt.
Da ich das Projekt nun komplett wieder zum Leben erweckt habe will ich natürlich euch das nicht vorenthalten.

Geschichte

Xenorate ist wie manche vielleicht wissen oder auch nicht mein Hauptprojekt, andem ich schon seit 1999 Werkele.
Das ganze ist ein Delphi Projekt welches gedacht ist, alle audio/video/stream usw formate abzuspielen.

Offiziel existiert das Projekt seit 2002 mit dem namen "Xenorate" und wurde seitdem etliche male in einigen Computer PC Zeitschriften vorgestellt.
Dies kann man natürlich auf der offizielen Xenorate Homepage nachlesen, allerdings hat sich da seit vielen Jahren nicht mehr viel "Offiziel" getan.

Schlechte Zeiten

Aber, das letzte Release ist 1 1/2 Jahre her, sowie die letzten news.
Das Forum musste wegen "Spam" gelöscht werden und die Zahl der Downloads der offizielen Version sinkt täglich.

Eigentlich hatte ich das Projekt schon zum sterben verurteilt, erst recht weil es tonnenweise an fehler hatte,
die den genuss von Multimedia trübten.

Käferbeseitigung

Allerdings anfang diesen Jahres hab ich den aktuellen code in ein "Subversion Repository" gepackt
und angefangen die bugs zu Analysieren und beseitigen.

Nach 2 Monaten intensiver Fehlersuche hab ich den Haupt übeltäter und viele kleinere bugs beseitigt.

Da mich es angekotzt habe, das ich keine Japanischen files abspielen kann,
hab ich in einem monat 60% vom code bis auf ein paar ausnahmen komplett auf Unicode umgebaut.

Nach einer gründlichsten überarbeitung der Hauptcode teile lief dann alles rund.

Neue features

Natürlich hab ich nicht nur Fehler beseitigt, sondern auch neue unterstützungen eingebaut wie z.b.

- Mausrad support für (Volume / Media seeking)
- Unicode support (Anzeigen und Abspielen von UTF-16 files)
- Stabiles und Schnelleres Video System
- Vista support
- Besseres Codecpack
- Playlist einträge verschieben
- Neue dateiformate
- Besseres Random

und etliches mehr.

Veränderungen

- Homepage wird auf ein CMS System umgestellt mit neuem Layout
- Neuer Standard Skin
- Bugtracking Portal (Mantis)

Release

Nun ist es so, das die Version von Programmiertechnischer sicht fertig ist, aber ich die Version erst offiziel hochladen will wenn die neue Homepage Online geht.
Seit geraumer Zeit hab ich die überarbeitete Version ausgewählten Tester zur verfügung gestellt und alles sieht bisher sehr gut aus ;)

Wenn alles so weiter läuft wie bisher dann wird es im Sep/Okt ein Release geben ;)

Wer lust hat kann gern die Version von meinem Bugtracking Portal herunterladen und ausprobieren.

Das ganze ist zu finden unter http://tracker.xenorate.com (News/Main sind die links zu finden)
Läuft unter win 2k/xp/vista, es wird wohl nicht mehr auf Win9x systemen laufen da (Unicode)

Zur technischen Seite wird noch ein Post folgen!

Bis dahin,
Finalspace


Dateianhänge:
Dateikommentar: Preview new skin
xenoskin2_main.JPG
xenoskin2_main.JPG [ 7.75 KiB | 14168-mal betrachtet ]


Zuletzt geändert von Finalspace am Di Jun 16, 2009 17:14, insgesamt 1-mal geändert.
Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Technische Seite Xenorate 2.60.x
BeitragVerfasst: Di Aug 12, 2008 11:24 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
So hier mal die Technische Seite von Xenorate:

Entwicklung

Xenorate wurde vollständig in Delphi 5 entwickelt.
Mittlerweile bin ich auf Delphi 7 umgestiegen, weil es einigen Komponenten bevorzugen.

Unicode

Um Xenorate Unicode fähig zu bekommen hab ich mich den alten TNTUnicodeControls bedient
und einiges umgeproggt, sowie fast alle String/File routinen nach Unicode umgebaut (Inkl. ID3 Tag reader etc.)

Alles läuft bis auf ein paar ausnahmen mit WideString und PWideChar ab.

Skin Engine

Ist sehr simplel und statisch gelöst.
Jedes control ist basierend auf TImage oder TPaintbox.
Gezeichnet wird also per Canvas bzw. BitBlt.

Selbst die Playlist ist in der art selbst gebaut, was aber auch die meiste Arbeit gekostet hatte zu programmieren.
Für die Verschiebfunktion hab ich 3 tage dran gebaut :(

Aber im allen ist das ziemlich schnell und tut bisher seinen zweck ;)

Audio Playback

Für Audioplayback wird die BASS library benutzt.
Das funktioniert sehr gut, der CD Modus ist ebenfalls in Bass gelöst.

Bass hat standard mässige unterstützten für einige Streambare Audio formate wie z.b. mp3/wave/ogg.
Da mir das aber nicht genug ist, hab ich bass um einige andere formate erweitert wie AAC/MPC/FLAC usw.
Diese stellt bass als 3rd party ebenfalls zur verfügung.

Für alle anderen weiteren audio formate wird directshow benutzt.

DVD/Video script/playback

Das videoplayback läuft vollständig auf der DirectShow ebene ab und basiert auf den DSPack Multimedia Komponenten.

Da leider DSPack tot ist und es voller bugs war musste ich diese erst beseitigen damit das benutzbar war,
sowie einige direkt anpassungen für Xenorate.

Um sicherzustellen das formate wie avi/mpg/mkv/ogm/ts/mp4 und weitere immer abgespielt werden,
habe ich ein Scriptsystem (Basierend auf Bero Script) entwickelt welches bestimmte Filter Kombinationen benutzt damit der Abspielvorgang unahängig der Automatischen Erkennung von MS abläuft. (Graph.RenderFile)

Das ganze ist mittlerweile ziemlich mächtig geworden und wird auch ständig von mir erweitert.

Ich erhoffe mir damit neue formate (sofern DirectShow filter dafür existieren) problemlos in Xenorate zu integrieren,
ohne eine Zeile code der Haupt Anwendung zu ändern.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Sep 19, 2008 10:58 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Update 2008-09-19

Es gibt einiges neues seit der letzten Version, ich habe einige Tickets umgesetzt,
sowie einige Verbesserungen an der Skin Engine durchgeführt.

Das Skin XML Format ist nun fertig, die lade routinen sind gut optimiert, dank eigener simplen XPath Funktion ;)

Neuer Standard Skin ist zu 90% fertig und muss sagen, bis auf ein paar kleinigkeiten und das noch fehlendene "Video Vollbild Steuerungs Fenster" ist alles sauber und sieht gar nicht schlecht aus.

Hier mal nen bild:
Bild


Es war gar nicht so leicht, den Skin so umzusetzten wie ich mir das vorgestellt hatte,
musste einiges in der Skin Engine umbauen damit das gepasst hatte:

- Ecken bei Resize forms, können nun unterschiedlich gross sein.
- Time Numbers können nun ebenfalls unterschiedlich gross sein.

Bisher sieht aber alles gut aus, ich hab einer der hoffentlich letzten kritischen bugs der Video Engine gefixed,
welches Xenorate crashen hatte lassen.

Ein wenig da optimiert und da gefixed.

[url]Was noch ansteht ist[/url]

Änderungen:

- Skin pfad überarbeitung (Nutzung von User Application Data)
- Intelligentere Video grössen erkennung
- Screenshot Funktion überarbeiten
- Sprachdateien überarbeiten (Deutsch/English)

New features:

- Ballon tips implementieren (Playstate, Fehlerstati etc.)
- Fehler Management verbessern
- Xenorate fokusieren wenn Video abgespielt wird, falls Xenorate nicht im Minimieren zustand ist.
- Mehr Hotkey funktionen hinzufügen
- Skin Preview implementieren
- Support zur steuerung des Audio Outputs (SPDIF, 5.1 etc.)


Ein Release dieser Version wird noch hoffentlich diese Woche laufen und erste Betatests des neuen Skins ;)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Okt 02, 2008 15:02 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Update 2008-10-02

Es gibt ein paar neuerungen seit dem letzten Update.
Ich fass mich diesmal kurz:

Fixes:

- Kritischer video absturz fehler beseitigt (Com schnittstelle stirbt unterwegs)
- Kleinere mini bugs beseitigt

Neuerungen:

- Support für Mehrkern CPUs bei Musik (1 Thread per core)
- Einstellen der Musik abspiel Priorität (Buffer length, Update Period)

- Korrekte erkennung der Streams mit ausgabe von Detail Informationen möglich
- Besseres Fehlermanagement dank Stream erkennung.
Streams wo nicht dekodiert werden können, wird der entsprechende Grund angezeigt.
z.b. "Video codec for format "XVID" not found."
- Einstellen was Xenorate tun soll, falls ein "Fehler" passiert ist: "Nichts", "Nächste datei abspielen"

Preview von Streamerkennung (Media informations)

Alle streams gefunden:
Bild

Video decoder nicht gefunden:
Bild

Neuer Skin steht zum Download bereit:

Der neue Base2 Skin welcher Standard Skin von Xenorate 2.60.0.0 wird, steht zum Download bereit.
Allerdings ist dieser noch in der Beta Phase, somit ist diese noch nicht ganz fertig.

Das "Videofullscreen Control" Fenster ist noch nicht umgesetzt und ist momentan nur ein Farb misch der Skin datei ;D

Zu findest ist der Skin auf http://tracker.xenorate.com

Planung für Zukunft

Endlich kann ich das machen, wo ich die Ganze zeit machen wollen.
Features einbauen, Runder machen, auf features von Usern eingehen ;)

Deshalb sind noch geplant:

- Verbessertes Fehler Management (Aussagekräftigere Fehlermeldungen)
- Log dateien durch eigenes "Xenorate Trace" tool ersetzten.
- Bessere Explorer integration
- Skin preview in Config Dialog

- Benutzerhandbuch (Suche noch willigen der das machen will, bei bedarf einfach PM an mich!)

- Verbesserung der Video Engine (Support für möglichkeit Video Renderer zu wählen)
- Support für Video Mixing Renderer 7/9
- Support für Enhanced Video Renderer (Vista support)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Okt 28, 2008 10:19 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Update 2008-10-28

Es hat sich wieder einiges getan, einige neue sachen sind dazugekommen, sowie paar bugs wurden gefixed.

Das Audiosystem unterstützt nun Mehrkern CPUs, sowie eine einstellung der Abspiel Priorität.

Bild

Das Fenster Fokus verhalten wurde verbessert, sollte nun immer korrekt im Vordergrund geholt werden, wenn man ne Datei per Explorer startet
oder man das Hauptfenster anklickt.

Hab das Textlogging durch nen eigenes Trace Tool ersetzt, dies beschleunigt natürlich das logging intern
und gibt mir defintiv mehr Übersicht über Fehler.

Bild

Die Notifications wurde verbessert, es gibt nun Format Datenbanken welche die FourCC und AudioCC Codes enthalten.

Leider funktionieren die Balloon tips nur wenn das Tray Icon aktiv ist, eventuell werd ich ne eigene Balloon box implementieren,
damit ich unabhängig von dem Tray Käse bin.

Der Download findet sich auf der News (Main) seite des Tracker Portals:
http://tracker.xenorate.com

BaseSkin2

Am Skin hat sich bisher nix getan, momentan liegt der Schwerpunkt defintiv an dem Feintuning vom Player selbst.

Geplant für Nächste Version

- Notifications fertigstellen (Balloon tips, Mediainfos)
- Besseres internes logging (Richtige nutzung von Xenorate Trace)
- Fehler Management verbessern
- Mehr Hotkeys
- Skin Vorschau
- Fenster verwaltung verbessern

Planung für die Zukunft

- Auswahl des Video Renderers per Configuration mit Fallback.

Folgende Video Renderer Kombinationen werden umgesetzt:

- Video Renderer
- Overlay Mixer > Video Renderer (Dies benutzt Xenorate momentan)
- Video Mixing Renderer 9
- Enhanced Video Renderer (Vista only)

Durch diese änderung muss einiges dann in der xgraph script engine passieren,
weil dieses momentan auf Overlay Mixer und Video Renderer zugeschnitten ist.

- Screenshot Funktion verbessern

- Bessere Explorer integration


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Mär 02, 2009 10:33 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Update 2009-02-26

Nach langer zeit auch mal wieder ein Update hier.
Es gab einige veränderungen seit dem letzten Update hier:

- Generelle Stablität erhöht
- Performance verbessert
- Video stabilität verbessert
- Richtiges form docking system implementiert like winamp (Form glue)
- Internet verbindung erkennung bei News verbessert
- Icons in Configuration
- Kleinere Bugfixes
- Support für Fernbedienungen für Windows Media Center :P

Alle änderungen sind im Xenorate Bugtracker Portal aufgelistet.

Es gibt auch nun eine Roadmap, wo alle Tickets die noch offen sind aufgelistet werden, sowie eine Prozentualer fortschritt.
Mantisei dank ;)

Ich empfehle jedem der Xenorate benutzt oder benutzen will, sich dieses Release zu ziehen.
Bisher ist das die stabilste Xenorate Version die jemals erschienen ist


http://tracker.xenorate.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Mai 18, 2009 23:16 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Kurz eine Neuigkeit die den ein oder anderen vielleicht Interessieren könnte,

Xenorate 2.6 steht kurz vor der dem Release

Das bedeutet:

- Alle Programmiertechnischen Punkte der Roadmap für Version 2.6 sind abgeschlossen.

Siehe:

http://tracker.xenorate.com/roadmap_page.php

- Die alte Webseite wurde gesichert und durch ein Logo ersetzt.

Siehe:

http://xenorate.com

Was noch zu tun ist damit das Release als "Release Candidate" rauskann ist folgendes:

- Xenorate Webseite Design für Typolight erstellen (CSS Geraffel)

- Englisch sowie die Deutsche Sprachdatei überarbeiten

- Design für Vollbild Steuerungs Fester fertigstellen

- Skin abrunden (Professioneller gestalten)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Release Candidate 1 ist raus
BeitragVerfasst: Di Jun 16, 2009 19:02 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
So ich habe nun das erste Release Candidate für Xenorate 2.6 hochgeladen.

Die Version enthält einige Bugfixes, sowie endlich den neuen Standard Skin inkl. "Video Vollbild Steuerung".

Neues commandline handling

Das Commandline Handling ist komplett neugeschrieben worden und arbeitet nun mit Pipes,
welches mir eine integration in andere Anwendungen (z.b. Media Portal) ermöglicht,
sowie eine Remote Steuerung der Anwendung ;-)

Dies verbessert natürlich auch die Explorer integration.

Vista support

Es gibt nun auch endlich eine richtige Vista Unterstützung ;-)

Die Xenorate Resourcen werden nun per User in den Anwendungsdaten Ordner installiert. (Wenn vista erkannt wurde)
EXE und DLL´s bleiben weiterhin im "Programme\Xenorate" Verzeichnis.

Ich habe dafür gesorgt das alle Funktionen keine Admin rechten mehr benötigen.
Das wurde erreicht indem:

- Nur noch lesend auf LOCAL_MACHINE und CLASSES_ROOT zugegriffen wird.
- Resourcen aus Anwendungsdaten gelesen wird
- Vista Manifest erstellt mit "asInvoker" Rechten, so das keine Admin rechte benötigt werden.

Videosystem verbessert

- Erkennung der Media informationen verbessert
- DVD Modus wieder repariert, da war nen faules ei drin :P
- Endlich die lästigen "Lila" Balken im Video entfernt, welches durch den Color key vom Overlay Mixer kamen.
- Kleinere performance optimierungen indem ich die video engine aufgeräumt hab

Wie immer kann die Version von

http://tracker.xenorate.com/main_page.php

heruntergeladen werden.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jun 22, 2009 14:40 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Update 2009-06-22

Neue Homepage:

Ich habe die neue Homepage nahezu fertig.
Hier mal ein Schnupper Screenshot der neuen HP:

Bild

Wen es interessiert, das ganze baut auf Typolight auf.

Typolight ist ein CMS System, welches einen einfachen Aufbau bietet,
aber dennoch ziemlich mächtige funktionen bietet.

Ich hab praktisch bis auf CSS nichts programmieren müssen.

Habe mir auch diesmal viel mühe beim erstellen des Contents gemacht.
Die Feature seiten zu bauen, hatte gut 3 tage gedauert :P

2.6 Release

Bisher sieht alles recht gut aus, ich habe noch 4 tickets offen (3 kamen noch dazu).
Das sind aber mini bugfixes die ich 1-2 stunden fertig habe 8)

Sprich das release rückt sehr nahe.



Ich halte euch auf jedemfall aufem laufenden.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jul 01, 2009 19:13 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Relaunch 2009

Die neue Homepage ist nun fertig und wurde heute aktiviert.

Ich habe einen netten news eintrag geschrieben, der einmal auf der hauptseite
sowie im player selbst erscheint.

Die addresse hat sich nicht geändert, ist alles gleich geblieben:
http://www.xenorate.com
http://www.xenorate.de

Das Release 2.6 ist somit auch abgeschlossen und wartet im Download bereich auf euch ;-)

Es gibt auf der Homepage eine sehr grosse feature liste, die ich immer aktuell halte.
Wer also gern Details über Xenorate Media Player wissen will, der kann sich das gerne durchlesen.

Zukunftsplanung

Ich habe noch viel zu tun, wenn ich mir die Roadmap im Bugtracker angucke -.-

Die Homepage muss noch nach Deutsch übersetzt werden und natürlich auch im CMS zur auswahl stehlen.
Dazu kommen noch kleinere Änderungen an der Homepage und und und.

Hauptsächlich will ich mich aber einem neuen Videosystem widmen, welches verschiedene Video Renderer zur auswahl bietet,
sowie eine eigens entwickelte Codec Erkennung mit Profil system und eine allgemeine Performance Optimierung.

Endlich kommt auch wieder OpenGL ins spiel, da ich auch einen Video Renderer in OpenGL basteln werde.
Es wird auf jedemfall folgende Video Renderer zur auswahl geben:

- Eigener GDI Video Renderer
- Overlay Mixer > Video Renderer (Aktueller weg von Xenorate 2.6)
- Video Mixing Renderer 7
- Video Mixing Renderer 9
- Enhanced Video Renderer (Vista only)
- Eigener OpenGL Video Renderer

Ich hatte ursprünglich vor komplett weg von DSPack (DirectShow Wrapper für Delphi) zu gehen,
da dieses schon seit 2004 nicht mehr aktuallisiert wird und mir immer ein wenig unstabil vorkam.

Da aber DSPack DirectShow Filter als TComponent in die Anwendung integrieren kann,
sofern der komplette Quellcode vorliegt, werd ich mich noch nicht davon verabschieden.


Dateianhänge:
Dateikommentar: Screenshot vom neuen Standard Skin
screenshot_player_audio_playing.png
screenshot_player_audio_playing.png [ 46.63 KiB | 13936-mal betrachtet ]
Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 10, 2009 19:48 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
u]Update 2009-07-10[/u]

Ich war fleissig und habe angefangen mir eine neue TCustomControl klasse zu
basteln, die als Video Ausgabe für die nächste Xenorate Version geplant ist.

Dieses teil ist dazu da, verschiedene DirectShow Video Renderer zur nutzen
und dem User die Wahl zu lassen, mit welchem Video Renderer er seine Videos angucken will.

Dazu ist die codebasis sehr flexibel gestaltet, damit ich jeden x-beliebigen video renderer filter
unterstützen kann.

Folgende Video Renderer hab ich schon eingebaut:

- Enhanced Video Renderer (Der ab .NET 3.0 mitgelieferte video renderer, der als standard in vista benutzt wird)
- Video Mixing Renderer 9 (Sehr guter video renderer für XP oder höher)
- Video Mixing Renderer 7 (Existiert seit Windows 2000, aber ist besser als der Overlay Mixer :P)
- Default Video Renderer (Standard video renderer der seit Windows 95 existiert und kein Overlay kann).
- OpenGL Video Renderer (Eigenens entwickelter video renderer welches OpenGL als ausgabe nutzt)

Das hab ich in erster linie gemacht, damit ich weg von DSVideoWindowEx2 komme,
welches aktuell die Rendering Basis für Xenorate ist, allerdings seit 2003 nicht mehr weiterentwickelt wird
und was am aller wichtigsten ist, weg vom Overlay Mixer.

Dieses ding sorgt dafür, das Vista in den Basic Theme Modus umschaltet,
sobald man ein Video mit Xenorate startet und eine eklige Infobox anzeigt,
das die Anwendung nicht kompatibel mit Vista sei :-(

Download

Ich habe das Projekt mal kompiliert und hochgeladen.
Ihr könnt es gern mal testen und im Xenorate Meinungsforum rückmeldung geben.

Bedienung ist selbst erklärend ;-)

http://xenorate.com/dgl/xvideoengine.exe

OpenGL Video Renderer

Leider macht der noch einige Probleme wenns um Resizen und Parent Handle umschalten geht.
Ich hätte wohl direkt Win32 API programmieren sollen, anstatt nen TForm zu nutzen :(

Immernoch hab ich das Problem, das der YUV > RGB/BGR konverter sehr langsam ist, und somit HD Videos unanguckbar macht.

Dazu kommt noch, das es auf dem alten OpenGL stiel programmiert ist, welches natürlich keine richtige Overlay unterstützung bietet.

Selbst mit PBO ist es langsam, welches aber auch daran liegen kann, das ich mir das damals zusammengehackt habe,
und froh war das es funktioniert hat.

Wenn ich sowas wie einen Allocator in GL hätte:

- Speicher direkt auf der Graka reservieren
- Bits direkt in den Speicher schreiben, fertig.
- Aktuelles Videobild anzeigen vom Graka speicher

Das wäre genial, aber ich weiss nicht ob es mittlerweile sowas gibt.

Ich müsste das ding fitt machen für GL 2 und Shader nutzen für die Konvertierung von YUV > RGB/BGR.

Bild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Sep 09, 2009 09:22 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Update 2009-09-09

Leider musste ich letzte Woche feststellen das Xenorate 2.6 im internet irgendwie
keine grosse Positive Resonanz bekommen hat, der grund hierfür ist wohl ein "Buffer Overflow" in meinem XPL Playlist format.

Dieser Buffer Overflow kann es angreifer ermöglichen schadcode in einer speziell angefertigen XPL Playlist auszuführen.

Der Grund dafür war ein Stück Code der das alte Non-Unicode-XPL Format lesen wollte, falls im Header die falsche Version erkannt wurde.
Da sieht man mal wieder, das Abwärtskompabilität nicht immer gut ist :(

Viele Seiten die ich gefunden habe, haben Xenorate als "Harmful" Player dargestellt.

Natürlich hab ich schnell reagiert und eine 2.6.1 Released welches einen verbesserten XPL Loader enthält.

Zusätzlich hab ich das XPL Format ein wenig umgestellt, das es in Zukunft schwieriger wird "Buffer Overflows" auszunutzen.
Wenn eine XPL Playlist gespeichert wird, wird diese mit einer arg Signierungscode versehen.
Sobald der Signierungscode falsch ist, ist es eine ungültige Playlist.

Ich empfehle also jedem die neue Version von dem Homepage runterzuladen, oder per LiveUpdate zu aktuallisieren.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Sep 28, 2009 20:25 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Update 2009-09-28

Ich habe nun meinen neuen Video Renderer mit ich zu verschiedene "DirectShow Video Renderer"
wechseln kann grundlegend fertig und auch sogar endlich in Xenorate selbst integriert.

Mit einfachen virtuellen funktionen die überschrieben werden,
geht wechseln von Video Renderern sehr einfach von der Hand =)

Musste viele Codeteile umbauen und neuschreiben,
was ich hoffe Xenorate eine Stabilitätsstufe höher bringt.

Folgende Video Renderer werden aktuell unterstützt:

- Video Renderer ohne Overlay Mixer
- Video Renderer mit Overlay Mixer (Der alte DSPack, DSVideoWindowEx2 weg)
- Video Mixing Renderer 7
- Video Mixing Renderer 9
- Enhanced Video Renderer
- OpenGL Video Renderer

Man kann auch wieder die Aspektratio umstellen,
sowie in den Vollbild oder Fenster modus umschalten.

Was mir aktuell noch Kopfschmerzen bereitet sind:

- Enhanced Video Renderer Ratio ändern hat komische effekte.

Wenn ich die Ausgabe Grösse vom EVR anpasse, dann wird das meistens nicht richtig übernommen
und es sieht dann sehr komisch aus, wenn da Bildreste die rumwackeln neben dem eigentlichem Video sind.

Bisher kein Plan was ich da tun kann.

Kann ich den nen Resize Ereignis erzwingen mittels WinAPI ?
Das nämlich der Kontext neu gezeichnet werden muss.

- Wie bekomm ich OSD (On-Screen-Display) in allen DirectShow Video Renderer zum laufen.

Im Overlay Mixer, also methode 2 ist es kein Problem da ich hier auf den "ColorKey" zugreifen kann und
muss dann nur noch mit OnPaint drauf zeichen, mit der Hindergrundfarbe des Colorkeys.

Aber für die anderen gibt es das nicht, da gibt es die Alpha Bitmaps (VMR Bitmap),
welche als eigener Layer übers Video gelegt wird, was grundsätzlich gut ist... aber...
der text würde sich immer dem video anpassen und z.b. immer im video sein auch wenn es nicht notwendig ist.

Spiele gerade mit Transparenten Forms rum um zu gucken ob ich nicht eine art Workaround für
finden kann, welche dann auch bei allen läuft.

- Desktop Playback

Dies geht wohl nur mit dem jeweiligen Colorkey und wie ich oben schon geschrieben habe,
unterstützt nur der Overlay Mixer diesen :(

Aktuell hab ich keinen Plan wie ich das bei den anderen umsetzten kann.

- Color controls (Brightness

Was ich ebenfalls noch nicht implementiert habe, sind Farbsteuerungen.
Dürfte bis auf OpenGL eigentlich sehr einfach sein.

Ich hab bisher kein Plan, wie ich ohne Shader "Helligkeit/Kontrast" etc. simulieren kann in OpenGL ohne
die komplette Gamma von Windows umzustellen :(


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Xenorate Media Player 2.6
BeitragVerfasst: So Jan 17, 2010 23:53 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Nach langer zeit mal wieder ein update

Ich hab mehrere monate verzweifelt versucht meinen neuen video renderer in xenorate zu integrieren.
Leider ist es mir nicht gelungen, alles wie ich es will zum laufen zu bringen.

Die wichtigsten video renderer bleiben schwarz (EVR, VMR9)
Es gibt krasse resize bugs in allen video rendern.
Meine Directshow Script Engine mag die neuen Video Renderer nicht. Ich krieg die zusammenarbeit mit der neuen render architektur einfach nicht hin.

So langsam komm ich auch an ein punkt wo das Projekt zu gross ist und ich
den überblick verloren habe. 250.000 zeilen code unstrukturierter code ist einfach unpraktisch.

Man kann sagen ich hab aktuell sämtliche motivation verloren, weil jede änderung an dem programm 100 neue bugs aufreisst :(


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Xenorate Media Player 2.6
BeitragVerfasst: Mo Apr 26, 2010 08:53 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Ich hab mich mal wieder aufgerafft ein bischen was am Xenorate Projekt zu machen.
Genaugenommen arbeite ich gerade an dem 2.6.2 bugfix release welches einige nervige Fehler von Xenorate beseitigen soll.

Bisher habe ich folgendes schon umgesetzt:

UAC Elevation Prompt

Ich habe eine COM Klasse erstellt in der alle Funktionen implementiert sind die Administrator Rechte benötigen.
Diese COM Klasse enthält ihr eigenes Security Manifest und wird Automatisch installiert über den Installer.

Xenorate benutzt nur noch diese COM klasse zum Zugriff auf folgende Administrator Aufgaben:

- Fileextension-Registrierung
- Eintrag im Kontextmenü (Add/Play with xenorate)
- Xenorate als Standard Media Player registrieren

Funktionieren tut das sehr gut, jedesmal wenn ich eine dieser Einstellungen ändern muss,
wird der UAC Dialog aufgerufen ;-)

Ich habe auch es so umgesetzt, das selbst wenn man alle 3 Optionen ändert,
nur einmal der UAC Dialog angezeigt wird.

Form position bei Auflösungsänderung verschoben

Dieses Problem habe ich ebenfalls behoben und es kann die Position der Forms nicht mehr verändert werden,
wenn die Anwendung den Fokus nicht mehr enthält.

Das hat aber Nachteile, das ich noch dafür sorgen muss, das wenn die Forms ausserhalb des Bildschirms sind,
das ich diese z.b. auf den Primary Display Zentrieren muss.

Neue Shortcut zum anzeigen des Mediainfos Ballons

Ist nun ebenfalls implementiert und auf Standard-Taste "I" gelegt.


Das ist natürlich nicht alles, was noch alles implementiert wird, kann man der Roadmap für 2.6.2 entnehmen.
http://tracker.xenorate.com/roadmap_page.php


Es wird auch demnächst einen Betatest geben bei dem das UAC feature explicit getestet werden wird.


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 35 Beiträge ]  Gehe zu Seite 1, 2, 3  Nächste
Foren-Übersicht » Sonstiges » Projekte


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.055s | 19 Queries | GZIP : On ]