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

Aktuelle Zeit: Di Apr 16, 2024 17:23

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



Ein neues Thema erstellen Auf das Thema antworten  [ 12 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Xenorate 3
BeitragVerfasst: Mo Jul 05, 2004 13:40 
Offline
DGL Member

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

Introduction:
von mir gabs in letzter zeit nicht mehr viel zu hören,
das liegt daran das ich aktiv an der neuen Xenorate version arbeite.
Wer Xenorate nicht kennt:
Es ist ein All-Round Mediaplayer für Audio/Video/DVD/Livestream und bietet
viele features wie Skinsystem, Mehrsprachenunterstützung, Playlist, Equalizer, OSD usw.
Mehr Infos unter www.xenorate.com.

Die gründe für Xenorate 3:
Xenorate ist mitterweile sehr bekannt geworden, bisher wurde die aktuelle version ( 2.11.0.8 ) 248725 mal heruntergeladen.
und wurde in vielen Computer-Zeitschriften vorgestellt wie Computer-Bild, PC-Praxis, CT usw.
Das macht einen Hobby Programmierer doch schon sehr stolz...
... trotzdem muss ich aber sagen, xeno hat ein paar kinderkrankheiten die vielen leuten die es benutzen nicht auffallen.
Einige böse käfer die Recherabhängig auftreten und die Un-Dynamik von Xenorate.
Das bedeutet im klartext, sämtliche Medienroutinen zu abspielen von dateien sind direkt in Xenorate intergriert.
Für Videomodus wurde DSPack (Directshow) eingesetzt und für den Audiomodus BASS 1.8 Library.
Um ein neues Dateiformat zu integrieren, müsste man das ganze projekt neu kompilieren. Das ist erstens viel aufwand, und wirkt später total unübersichtlich wenn
man mal so 80 formate drin hat, und 50 davon verschiedene Anpassungsroutinen benötigen.

Noch dazu ist das Skinsystem sehr Statisch aufgebaut, etliche TImages, TLabels, TPaintboxen kleben auf den Formularen.
Man kann keine neue Buttons, Progressbars oder sonstige sachen hinzufügen. Man hat eine fest geschriebene struktur welche man einhalten muss.
Und vor allem kann man keine persönlichen anpassungen von skins machen, ohne den skin selbst zu ändern.

Genau aus diesem grund hab ich mit einer komplett neuen version, besser gesagt einem komplett neuem Projekt angefangen.

Version 3 Einführung:

Xenorate 3 wird ein komplett neues Projekt, realisiert mit Delphi 5 Standard.
Hauptaugenmerk wird das Dynamische System von Xenorate 3 und der vollständige Unicode support.
Dateiformate sind nicht mehr länger in X3 selbst intergriert, sondern in DLL`s ausgelagert.
Das Hauptprogramm soll absolut unabhängig von den DLL´s sein.
Es ist somit auch möglich X3 auf auf mehren Platformen zu nutzen wie z.b.
Linux da man seine eigenen Medienroutinen selbst bauen kann und unabhängig von etweiligen Libs ist
und ich kann neue dateiformate integrieren ohne den basecode ändern zu müssen.
Man kopiert dann nur noch ne DLL rein und schon kann man z.b. Matroska Videos angucken *g*.

Das selbige betrifft auch das Skinsystem, welches in der End-Phase auch in einer DLL ausgelagert sein wird
und somit nicht WinAPI abhängig sein muss.
Das Skinsystem wird auf einer Scriptsprache aufbauen, welches vollen zugriff auf
Xenorate hat und man Dynamische Controls Integrieren kann mit Aktionen versehen kann.

Welches mich ganz besonders freuen wird ist der Unicode Support.
Es ist somit dann möglich, Japanische oder Sonstige Sprachen die auf Schriftzeichen basieren anzuzeigen und zu schreiben.
Selbstverständlich kann man auch Dateien welche in Unicode betitelt sind abspielen und korrekt anzeigen :)

Technik von X3:

Das Skinsystem basiert nicht mehr auf Delphi Standard Controls sondern
alle Controls wie TButton, TCheckbox, TProgressbar, TTrackbar, TListview sind selbst geschrieben und basieren
auf der freien (Graphics 32) Library welches auf Layer Basis arbeitet welches viele features mitbringt.
Es wird keine Limitierung der Controls geben, man kann theorisch unendlich viele Controls erstellen und diese mit Aktionen versehen.
Man kann z.b. Skins machen die nur aus 3 Buttons oder so bestehen, die nur grund abspielfeatures bieten.
Oder man baut einen Monster Skin der viele Buttons besitzt, Equalizer, Scrolllabel u.w.
Es ist somit alles möglich seine Skins so zu basteln wie mans will.
Grafikformate für Skin Bilder werden BMP, JPG und TGA unterstützt werden, eventuell noch PNG und GIF.
Für das Scriptsystem wird wahrscheinlich die Library von Lars Middendorf (Dynamic Pascal) verwendet werden.

Der grösste Teil von X3 wird das Hauptprogramm welches perfect mit Skinsystem und Mediensystem zusammenarbeiten muss und
die gesamte Erreignis verwaltung überwacht.

Für 1 oder mehrere Dateiformate wird eine DLL verwendet, welches von Aussen nur Grundfeatures wie Abspielen/Stoppen/Pause/Informationen bietet.
Es wird später nur noch vom Hauptprogram das Ziel Handle für Videoausgabe übergeben und der rest muss die DLL intern erledigen.
Erreignise wie z.b. bei DVD "Macrovision Sperre" werden an das Hauptprogram per Messages gesendet und dementsprechend verarbeitet.
Denn z.b. bei Macrovision sperre macht es keine sinn die DVD weiter abzuspielen das dieses ja nicht möglich ist, weil Macrovision dieses verhindert.
Somit muss die Wiedergabe beendet werden und eine Entsprechende Fehlermeldung ausgegeben werden.

Betreffend Einstellungen hab ich mir noch keine grössere gedanken gemacht,
hatte mir aber überlegt die Einstellungen aus den Medien DLL´s zusammen setzten zu lassen
+ natürlich die Grundfeatures.

Infos:

Mitte Juni 04 hat Programmierung begonnen und plannung sieht folgendermassen aus:

- Skin System
- Hauptprogram
- Medien System
- Alpha/Beta Test
- Release :-)

Fertigstellung sollte spätestens ende Oktober 04 werden.

Screens von Xenorate 3 (Stand 05.07.04):

Bild

Für Verbesserungsvorschläge bin ich gerne offen und freue mich über jede antwort.


Mfg,
Finalspace[/url]


Zuletzt geändert von Finalspace am Sa Mär 24, 2007 12:02, insgesamt 2-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jul 05, 2004 13:45 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Und hier gleich die erste Lauffähige Skinsystem Test version mit Unicode Support.
Nur MP3, da dies nur ein test ist und keine Medienlib oder Hauptprogram besitzt.

http://www.xenorate.com/final/Xenorate3_gr32_bass_test.zip

*Edit: Nur lauffähig unter NT/2K/XP !


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Xenorate goes MPlayer
BeitragVerfasst: So Apr 24, 2005 12:40 
Offline
DGL Member

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

lange gabs nix zu hören von mir, lag daran das im Prüfungsstress bin und allgemein sehr viel in meinem ausbildungsbetrieb zu tun habe und kein bock dann mehr habe richtig was coden...

... aber solangsam neigt sich die prüfung dem ende, am 26. -27. ist der Schulische Teil.
Und IHK Projekt im Juni irgendwann und meine lust zu coden kommt langsam wieder :)))

Auf jedemfall ist das Xenorate Projekt nicht tot, sondern lebt mehr als jemals zuvor.

Ich beschäftige mich schon seit längerem mit Unix (FreeBSD) und komme wirklich super zurecht damit und da es dafür einen wirklichen Perfekten Player gibt, wäre es ja ziemlich sinnlos diesen nicht zu nutzen.
Da es diesen Player auch für Windows gibt und dieser auch wirklich gut läuft kam mir die idee, Xenorate 3 im Videobereich als Frontend für MPlayer dienen zu lassen. Natürlich Platform unabhängig =)

Erste testversuche mit win als frontend klappten auf anhieb wunderbar :)

Werd aber erst nach meiner schulischen prüfung richtig damit anfangen.

Es wird auf jedemfall nur besser werden ;)

Bis dahin,
Finalspace


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Okt 12, 2005 10:57 
Offline
DGL Member

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

lange gabs nix zu hören von mir und wollte jetzt mal den aktuellen stand auftischen.
Also es sieht momentan so aus das ich in meiner Freizeit nur noch an Xenorate 3 programmiere.
Allerdings hab ich seit Projektstart (juni 04) mind. 9x neu begonnen :(
Vieles war nur so testweise gebaut um zu gucken wie das und das läuft.
Da ich aber langsam mal weiterkommen will mit dem Projekt hab ich nun endlich eine zu 90% feste Struktur festgelegt.

Das neue Xenorate 3
Die neue version wird auch wie der vorgänger mit Delphi 5 Standard entwickelt.
Von meiner vorherigen Programmstruktur bin ich ziemlich abgeweicht und die neue sieht jetzt so aus:

- Core (Hauptprogramm)

- Interfaces (Oberflächen)

- Frontends (Media library)

Core
Interfaces und Frontends werden über ein eigenes Nachrichten System gesteuert.
Das Hauptprogramm ansich entscheidet was/wann/wie/welche Nachrichten an welches Modul geschickt werden.
Es werden nur die nötigsten Daten geschickt, jedes Modul muss sich bei der Core registrieren und sagen welche Funktionen/Infos sie bieten und welche sie brauchen.

Die Core unterstützt in den wichtigsten fällen Unicode Strings.
Sie stellt Sprachen, Konfigurationseinstellungen und Playlisten zur verfügung.
Die Playlisten sind Integrierte-SQL Datenbanken.
Die Ablaufsteuerung, wie Medien abgespielt wird ebenfalls über die Core gesteuert.

Interfaces
Interfaces sind die Oberflächen welche man sich darin bewegt, Dateien in nem Dialog auswählt, Lautstärke regelt, Play, stop, pause, Playlisten visuell darstellt usw.
Es wird 3 Interfaces vorneweg geben:
Ein simples win32 interface, welche alle funktionen mit simplen controls gesteuert wird.
Eine simple Text-Console.
Ein komplexes dynamisches Skinsystem, Script basierend mit Graphics32.

Frontends
Frontends sind die sogenannten Media Librarys welches es ermöglichen Musik, Video, DVD, TV, Streaming etc. abzuspielen.
Es wird erstmal nur 1 Frontend geben:

Ein DirectShow Frontend welches meine neue komplexe DVD/Video/Audio Engine enthällt welche auf der DirectX Technologie basiert.
Diese Engine ist so konzipiert das sie sämtliche Codecs/Filter für Mediendateien selbst erkennt welches auf dem Rechner installiert sind und benutzt.
Falls beispielsweise nen Codec für nen Videofile nicht gefunden, dann gibt dieses auch sinnvolle Fehlermeldungen aus wie diese:
"Es wurde kein passender Video Dekoder für 'XvID Mpeg4' gefunden".
Es wird aus verschiedenen Video Renderer die Video Ausgabe gewählt, "Video Mixing Renderer 9", "Overlay Mixer + Video Renderer" und "OpenGL Video Renderer".
Die steuerung der Codec/Filter erkennung kann durch eine Filter Bevorzugsliste beeinflusst werden.
Es wird (fast) auf Automatische erkennung der Filter über DirectShow verzichtet, einzigste ausnahme: "Erkennung des Quellfilters" (FileSource) welches aber auch in naher zukunft auch selbst gemacht wird durch Header erkennung.
Es wird wechseln von Audio, Untertitel, Kapitel unterstützt wie auch in Xenorate 2 unterstützt.
Es erzwingt und unterstützt echten Mehr-Monitor support.

Ein weiteres Frontend wird eventuell noch folgend welches sich dann um Tracker musik Dateien kümmert.

Vielleicht wird es noch ein Frontend mit nutzung der Bass Audio Library geben, mal schauen.

Wenn die sache mit den Frontends korrekt läuft wie ich mir das vorstelle werd ich auch ein Frontend mit MPlayer Technologie machen.

Homepage
Es gab leider probleme mit der Webseite, das Forum wurde gehackt und ein Spam server lief eine Zeitlang darauf :(
Ebenso wurde eine weitere Sicherheitslücke in der Homepage ausgenutzt welches unerwünschte Werbebanner anzeigte.
Aus diesen gründen wurde nur eine Index seite hochgeladen welches nru die Links zu alten Xenorate 2 zeigt.
Wenn das Alpha Release fertig ist, werd ich auch eine neue feine Homepage basteln im XHTML stil ;)

Unterstützung
Ich suche dringenst unterstützung für programmierung von Modulen und hilfen in der weiterentwicklung der Core.
Wer erfahrung hat mit Win32/Audio/Video Programmierung kann sich gerne melden.

Wer viel ahnung von Platform unabhängigkeit Programmierung kann sich gerne bei mir melden, da ich dieses thema eigentlich von vornerein in betracht zog allerdings wegens mangelnder kenntnisse zurückgeschoben haben.

Es wird beim ersten Current release auch nen SDK dazugeben mit beispielsource für entwicklung von Interface/Frontend modulen.



So das wars mal so,
Danke fürs lesen,
und wer vorschläge hat, egal in welcher form: posten posten posten ;)

danke,
Finalspace


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jan 16, 2006 15:38 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Lange gabs nix zu hören von mir <- wie oft hab ich das schon gesagt :p

Stand der dinge:

- Struktur von Xenorate 3 steht
- Core hat 5% von den funktionen die ich haben will.
- Nen Simples interface mit ner ganz einfachen playlist steht (alles aber test da ich erst features der core testen will)
- Kommunikation zwischen Plugins steht
- Musik abspielen kann man wieder (mp1-mp3, wave, ogg, mpc, aac usw.)
- Video abspielen kann man theoretisch auch, hab mir nen testplugin gemacht, welches mir test infos generiert wie: Mehrere Videospuren, Audiotracks und Untertitel Tracks.

Screenshot von der jetzigen version:

Bild
Grössere ansicht: http://www.xenorate.com/final/x3/x3_fullshot.jpg

Struktur:

Xenorate 3 hat folgende struktur:

- Core
- Interface libs (die gesamte gui steckt hier drin)
- Media libs (die jeweiligen media engines stecken hier drin, bsp.: Bass, DirectShow, MPlayer etc.)

Ansich tut die core nur dafür sorgen das Interfaces am leben erhalten bleiben, Fenster nachrichten verarbeiten via Application.Handlemessage.
Falls aber ne nachricht aus dem Nachrichten Pool von einem Interface kommt, bsp: Datei abspielen, dann sorgt die core dafür das das jeweilige passende Media library rausgesucht wird, infos über streams abgefragt werden, Fehler abgefangen werden und dann schliesslich als erfolgreicht oder nicht zurück an das Interface gesendet werden.

Alle infos werden als Tags im XML Style in den messages übertragen, also als Unicode String.
Das funktioniert absolut hervorragend und kann dadurch mehrere infos auf einmal übertragen ;)

Da die core aber nur eine Nachricht pro zyklus abarbeiten kann muss muss jedes Interface plugin dafür sorgen das es immer die älteste Nachricht abholt. (Nachrichten pool)

Media libs brauchen kein nachrichten pool, da diese die Infos direkt als Parameter an die methode bekommen, dafür sorgt die core.

Documentation:

Ja, es wird eine doku geben... besser gesagt ich schreibe die doku gleichzeitig mit der entwicklung von Xenorate 3.
Ich werde schauen das ich regelmässig die aktuelle API Specification poste, damit man sieht das es vorran kommt und es sich lohnt mitzuhelfen !

OpenSource?:

Xenorate 3 wird auf jedemfall Freeware bleiben, also kostenlos zu haben für alle mit allen features.
Wie es mit OpenSource und so aussieht, ob X3 opensource wird steht erstmal in den sternen, da ich momentan erstmal angestrebt bin eine Version mit Delphi 5 fertigzustellen.

Platform unabhängigkeit:

Das thema hab ich vor nem halben jahr mal angefangen und habs sein gelassen, weil FP und Lazarus noch böse kinderkrankheiten hat.
Somit konnte ich X3 nicht so machen wie ich es mir vorstelle, noch dazu hat Lazarus kein Unicode support.

Geplante Plugins:

Medialibs:
- Audio plugin basierend auf BASS für mp1-mp3,wave,ogg,mpc,aac usw. playback
- Audio plugin basierend auf BeRo Technologie für alle möglichen Tracker formate
- Video plugin basierend auf DirectShow, mit Intelligenter Filter erkennung.
- Video plugin basierend auf MPlayer

Interfacelibs:
- Interface plugin mit simplen win32 interface (das wie im shot zu sehen ist)
- Interface plugin mit komplexer Script gesteuerten Graphics32 gestützten SkinEngine.
- Interface plugin für nen schön designtes Mediacenter.

Anregungen, Vorschläge usw. könnt ihr alles posten im vorgesehenen Thread hier: http://www.delphigl.com/forum/viewtopic.php?t=3016&start=15&postdays=0&postorder=asc&highlight=


Zuletzt geändert von Finalspace am Mo Jan 16, 2006 16:23, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jan 16, 2006 15:49 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Hier ist noch die erste version der API Specs:
http://www.xenorate.com/final/x3/x3api_0.01.txt


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Feb 14, 2006 15:52 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Es gibt momentan schwierigkeiten, eine unregelmässige zugriffsverletzung hat sich schon eingeschlichen und ich find auf den tod nicht raus
wo genau, und was passiert.
Mal passiert es direkt nachnem player start, nachdem was abgespielt wird oder ich muss erst nen eintrag 100-200 alle 40ms anspielen bis es abraucht.

Es gibt da halt nur 1 möglichkeit, ich werf die play thread geschichte raus und mach die neu.
Weil ich denke das kommt davon, das sich da irgendwo nen Pointer verschluckt und zuschnell auf ne DLL zugriffen wird.

Hoffe das ich das schnellstens fixen kann, weil so kann ich das nicht lassen :(


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Jun 20, 2006 02:11 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
*bum bum bum bum* Lebenszeichen

Es lebt, Xenorate 3 lebt noch :shock:

Ja, lange gabs nix zu hören/sehen vom Projekt und da viele gar nicht mehr wissen wie der stand der dinge ist:

Xenorate 3 ist weiterhin noch in der entwicklung und ich habe endlich wieder freude daran gefunden daran weiterzumachen.

Es hat sich zum vorherigem Stand so gut wie alles geändert.
Ursprünglich sollte es ein komplett Platform unabhängiges Projekt werden mit Plugins ähnlich wie bei VLC und Winamp.
Ein halbjähriger versuch eine struktur aufzubauen die der glich schlug total fehl.



Also entschied ich mich vor 2 monaten ein komplett neues Xenorate 3 zu machen das einfach nur Xenorate 2 ersetzten sollte.

- Schicke auf Layer aufbauende Dynamische SkinEngine, welches XML als Skin-Definitionsdatei und C Scripting als Aktionsmanagement nutzt welche durch erreignisse wie MouseDown/Move/Up/Hover/Leave/DblClick etc ausgelöst werden.
- Dynamische Forms und Subforms sowie Steuerelemente wie Panels, Buttons, Checkboxen, Progressbars, Seekbars, Labels, Listviews usw sind vorhanden.
- Skinbauer entscheiden selbst wie der aufbau der Dateistruktur sein soll, es wird freien Spielraum gelassen. Entweder alle Grafiken in ein grosses Bitmap oder viele kleine Grafik Dateien oder ne mischmasch aus beiden.
- Visualizer Steuerelemente für GUI (bietet möglichkeit direkt darin in OpenGL zu proggen mit C-Scripting)
- 100% Unicode support
- Übersichtlicher und benutzerfreundlicher (Konfigurationsdialog insebesondere)
- Besseres Debug Management
- Eigene Videoengine auf DirectShow basierend mit eigenem OpenGL Video Renderer (wahlweisse natürlich auf VMR und Standard VideoRenderer).
(Vorbei mit den lästigen Filterscripts da korrekte Filter erkennung)
(Möglichkeit direkt fehlende freie Codecs herunterzuladen bei Mediaerkennung)
- Audioengine wahlweisse FMOD oder BASS für mp1-mp3, ogg, aac, mpc, wave, midi, tracker formate etc.
- Support für Audio Multichannel 2.0 - 7.10
- Eventuelle Datenbank basierte Playlist auf SQLite ?
- Besseres Mehrplaylisten management
- Sprachedefinitionsdatei und Configdatei ebenso XML Unicode basierend.
- Viel viel besseres Liveupdate system
- Gescheites Threading management für Mediaplugins
- Und etliche weitere kleinere features ^^



Und zum Programmiertechnischen gibts auch was:

Es wird weiterhin mit Delphi 5 Standard programmiert unter Windows XP.
Klar, Platform unabhängig wirds dadurch nicht, aber die Versuche mit Lazarus/FreePascal sind ebenfalls gescheitert und ausserdem gibts kein gescheites Videosystem (ausser ffmpeg, welches aber in C geschrieben ist) welches ich nutzen könnte.
Es wird denk ich weiterhin noch auf älteren Windows Systeme laufen, geplant war es zwar nur ab Win2k aber da ich keinen grund sehe Windows NT/9x benutzer auszulassen wird es auch darauf laufen.

Für die SkinEngine benutzt ich das mittlerweile sehr gute VCL Paket "Graphics32" welches mir alles bietet was ich brauch: Layer, 32 Bit Bitmaps, Kernel Filter, Unicode Text Rendering mit AntiAliasing, Blending modis usw.

Als Scriptengine für SkinEngine und Visualizer Scripts kommt die Tiny C Scripting unit "BeroScript" von Benjamin Rossaux zum einsatz.

Für die Videoengine werd ich keine Fremd VCL mehr verwenden wie z.b. "DSPack".
Alles ausser die DirectX headers werden selbst geproggt. Filter die ich nutze wie z.b. für Untertitel werden direkt in die Videoengine integriert, somit dann auch kein Filter konflikt mehr entstehen kann.
Ich werde viel wert drauf legen auf Multistreaming Audio/Untertitel/Kapitel usw.
VideoRenderer werd ich ebenso meinen eigenen verwenden, sowie Wahlweise VMR7/9 und Overlay Mixer+Video Renderer anbieten.
Besonderheit an der eigenen Videoengine wird eine saubere Codec erkennung sein sowie Automatischer Download von fehlenden Codecs mit Ausgabe mit Sinnvollen Fehlermeldungen wie z.b. "Video decoder für das format H264 nicht gefunden, soll Xenorate versuchen einem passenden Video Decoder herunterladen ?"

Zur Audioengine gibts nich viel neues, FMOD oder BASS wahlweise.
Buildin Fadein/Fadeout wirds ebenso wieder geben ^^



Gibts neue bilder ?

Wenn ich ehrlich bin, nichts neues... sieht "bisher" genauso aus wie das alte Xenorate weil ich den alten Skin zum testen nehme.
Sobald ich eine fertige Alpha in den händen halten kann werd ich auch nen neuen Standard Skin machen (frischer wind *g*).
Ich werde sobald ich aber mal was habe, was neu ist direkt hier posten.
Insbesondere das OpenGL Visual Scripting System ;)



Status ?

Die SkinEngine ist sehr weit, die Basis Steuerelemente sind fast alle fertig, es fehlt lediglich noch die Listview (für playlist) und halt noch bissel feinschliff, aber ansonsten passt alles.
Der Kern von Xenorate 3 und der rest drum herum fehlt noch komplett, es muss noch das Pluginmanagement für die Medienplugins erstellt werden sowie das ganze Threading system, sowie die Playlist (eventuell Datenbankbasiert) dann wäre schon ne fertige Alpha version in kurzer zeit vorstellbar ^^
Falls ich merke das ich wo längere Zeit hänge werd ich kein Pluginsystem machen, und direkt alles in den Basecode packen.




So das wars dann mal von meiner Seite,
falls noch irgendwelche fragen sind,
postet sie direkt bei meinungen zum projekt rein ! Danke :P

Bis dann,
Torsten


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Mär 11, 2007 23:34 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Lang gabs nix zu hören von mir, hier also aktueller stand:


Die arbeit an Xenorate geht weiter, ich habe ein Hardcore Fixing an der 2er Version vollzogen und
damit nie wieder Versionsprobleme auftreten, hab ich mir eigenen SVN server aufgesetzt =)


Es ist ein haufen passiert und ich hab vieles verbessert/verändert =)
Eine kurze liste der wichtigsten sachen:

Video:

- Komplett fixing der Video-Engine (DSPack überarbeitet, DirectShow routinen rewrite)
- Support für Haali media splitter
- Support für ffdshow
- Verbesserter untertitel support (ASS support, externe Untertitel)
- Totalverbesserung der XGraph Script Engine (neue features, kleinere fixes, sehr mächtig geworden)
- XGraph Script für Matroska/AVI/OGM/MP4/TS erstellt
- XGraph Script für Trackerformate erstellt (MOD, XM, IT, etc.)
- XGraph Script für RealMedia Video erstellt (RM, RMVB)
- XGraph Script für S/VCD erstellt
- XGraph Script für DVD erstellt
- Filtersystem komplett überarbeitet, siehe screenie 1:
- Fallback für XGraph scripts hinzugefügt (benutzt dann normale auto erkennung wenn Script fehlschlägt)
- XGraph script, bei gleichem Dateityp wenn mehrere gefunden wurde, wird gefragt welches er nehmen soll (abschaltbar)
- 5:4 / 16:10 ratio hinzugefügt
- Korrekten support für Mehrsprachige und Untertitelte Dateien, auch Externe Untertitel ! (DirectVobSub, HaaliMediaSplitter)
- Videos ohne ton werden nun auch korrekt abgespielt
- Etliche fixes

Audio:

- BASS sound library auf neuste version upgedatet
- Builtin Support für AAC
- Builtin Support für AC3
- Builtin Support für WavPack
- Builtin Support für Flac
- Livestreaming verbessert (Caching status, AAC/AC3 support)
- MusicCD gefixed
- Etliche fixes

Global:

- Configuration verbessert, übersichtlicher gemacht, mehr ausgelagert
- Sprachdateien nun komplett auf XML UTF-8 umgebaut
- Configdatei nun komplett auf XML UTF-8 umgebaut
- Playlist binär format umgebaut für Unicode (Widestring) support, unterstützt aber noch das alte format weiterhin
- DSGraph datei nun komplett auf XML UTF-8 umgebaut
- News werden nun aus ner XML vom Xenorate geladen
- Erster Windows Vista support
- Dateitypen katagorisiert nun einstellbar
- Besserer support für m3u playlisten
- Etliche fixes

Sonstiges:

- Codecpack erstellt "Xenorate Codec Pack" wo Haali media Splitter, ffdshow, directvobsub, mpv decoder, etc. dabei ist. und perfect mit Xenorate zusammenarbeitet.
- Installationsscript verbesser
- LiveUpdate verbessert

Und hier mal paar screenies:

Video > Filter:
Bild

AVI wird versucht abzuspielen, er frägt nach mit welchem Script ers abspielen soll und ob er sich das Merken soll, sinnvoll für AVI dateien wo der Haali media splitter nicht zurecht mit kommt:
Bild

Das XGraph Script system:
Bild

Das neue Sprachdateien format in XML:
Code:
  1.  
  2. <XenorateLanguageFile Version="2.30.0.0">
  3.   <Status>
  4.     <Lang id="001">
  5.       <![CDATA[Wählen sie ein Verzeichnis]]>
  6.     </Lang>
  7.     <Lang id="002">
  8.       <![CDATA[Lese Verzeichnisstruktur...]]>
  9.     </Lang>
  10.     <Lang id="003">
  11.       <![CDATA[Füge Dateien hinzu...]]>
  12.     </Lang>
  13.     <Lang id="004">
  14.       <![CDATA[Bereit]]>
  15.     </Lang>
  16.     <Lang id="005">
  17.       <![CDATA[Lösche einträge...]]>
  18.     </Lang>
  19.     ...
  20.   </Status>
  21.   ...
  22. </XenorateLanguageFile>
  23.  


Eine letzte sache noch die ich noch los werden will, ich bin am überlegen momentan ob ich das Xenorate Project OpenSource machen soll.
Es hätte vorteile, aber bietet auch Nachteile mitsich, somit bin ich da noch nicht so schlüssig


Und falls wer lust hat dran mitzuarbeiten, bitte melden !, da ich nen SVN server habe dürfte das auch mit der Organisierung machbar sein.



und Schlussendlich, hier die aktuelle Version als Download =) (nicht offziel released, somit noch im testing stadium)

http://www.xenorate.com/shared/files/xenorate_install_beta.exe
http://www.xenorate.com/shared/files/xenorate_codecpack_install_beta.exe

Bitte alles was anfällt, hier posten:
http://delphigl.com/forum/viewtopic.php?t=3016


Danke mal fürs lesen und testen ;)

Final


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Mär 15, 2007 12:02 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
So hab ne neue version hochgeladen wo meiner meinung nach alle grossen bugs raus sind.

Falls jemand noch was auffällt was nicht trivial ist, bitte Posten im Meinungs thread !

Download URL ist gleiche wie ich im vorherigem beitrag.

Falls die version die stable tests überlebt welcher folgendermassen so aussieht:

- in 3 VMware's wirds unter 2k pro/XP pro und Vista getestet sowie
- einem nativen Vista

dann gibts nen offizieles Release =)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 24, 2007 12:00 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
So nun ist es offiziel, Xenorate 2.50 ist fertig.

Auf der offizielen Homepage http://www.xenorate.de,
kann man unter Downloads die aktuelle Version, sowie das Codecpack nun runterladen.
Alle Hits wurden auf 0 zurückgesetzt, sozusagen als neuanfang gedacht =)

Es gibt auch wieder ein neues Support Forum, sowie aktuallisierungen der Sprachdateien und paar Bugfixes auf der Homepage selbst.

Also wer noch nen guten Mediaplayer sucht, einfach runterladen und ausprobieren :wink:



Support cases alle bitte in hier posten http://www.delphigl.com/forum/viewtopic.php?t=3016, oder direkt ins Xenorate Forum posten.

Danke,
Final


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Xenorate 3 in OpenGL ?
BeitragVerfasst: Sa Feb 02, 2008 08:31 
Offline
DGL Member

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

Es gibt neuigkeiten rund um Xenorate ;)

Wie viele vielleicht schon wissen, ich arbeite an Xenorate 3 schon seit mittlerweile 2 Jahren und
hab bisher nur ne Halbfertige Skinengine basierend auf Graphics32 hingekriegt (Finished 75%)
Ansich ok und man kann auch recht viel mit Graphics32 machen... aber...

...irgendwie war die Programmierung über die Graphics32 layer bitmaps irgendwie scheisse,
zweitens frisst es nen haufen Memory...

und letzteres lässt es nicht Platform unabhängig haben,
weil es nur für Delphi und Kylix entwickelt wurde, sprich es rennt nicht auf FreePascal.

Nach anschauen des Sources von GR32, hab ich beschlossen ich werde die Grafik API wechseln.
Umprogrammierung für FPC ist definitiv zuviel arbeit :(


Da ne Oberfläche der erste schritt ist einen guten Player auf die beine zu stellen,
kam ich heute morgen auf ne hoffentlich geniale idee:::

--------------------------------------------------------------------

Ich werde Xenorate 3 komplett, auf OpenGL aufbauen,
welches mir ungemein erhebliche vorteile bringen würde,
aber auch die Frage, wie sich OpenGL verhält mit mehreren Rendercontexten und Shared Texturen
und ob ich probleme mit den 2^n Texturen bekomme, ob ich mehrere texturen machen soll oder lieber eine grosse für die gesamte GUI.


Wie sieht es Performance mässig aus wenn 3 oder mehr Fenster zu rendern (Alle 40ms, oder beim Invalidate) sind:
Bsp: Wir haben 5 Fenster, Mainform, Mediacontrols (Equalizer), Playlist, Configuration, Video Rendering)
Er müsste also jedes fenster alle 40ms neu rendern oder wenn das Invalidate ereignis auftritt wenn z.b. der user fenster über nen anderes schiebt.


Ich weiss das es inform von GUI und Text Rendering schon einiges gibt von DGL seite,
welches ich auch sehr begrüsse, aber ich wie immer alles selbst machen will... und so simpel wie möglich halten.
Ich will auch so gut wie gar keine 3rd Party Komponenten verwenden, bis auf ein paar ausnahmen.

Das einzige was Thirdparty werden wird das XML Parsing, sowie Unicode lib und die eigentlichen Abspiel Techniken:

Audio = FMOD, BASS
Video = DirectShow, FFMPEG

(Plugin architektur)

Der rest soll mit den Standard libs von FPC/Delphi zu erreichen werden.

SDL wird nicht verwendet werden, da es nicht mehrere Fenster unterstützt!



Achja, ich will max. für die GUI OpenGL 1.0 Spec benutzen,
also sprich die Spec die man hat wenn man den Standard Treiber von Windows installiert hat.

Das aus folgendem grund:

- Meine Entwickler VM läuft auf VMWare 6.0.2 Workstation... diese hat kein Hardware support für OpenGL :(
- Um grosse fehler zu vermeiden und um das ganze noch überschaubar zu halten.


Da bleibt aber eine frage offen, funktioniert normales glBlend() mit OGL 1.0 ?
Ich hab schon lange nix mehr OGL gemacht, somit kann ich mir die frage selbst grad nicht beantworten.


Das wars denk ich mal von OGL seite,
womit ich aber definitiv hilfe brauche weil ich mich nicht gut auskenne ist folgendes:

- Erstellung und Verwaltung von Fenstern in FPC/Delphi via Windows API und Unix X+XGL.

via Windows API bekomm ich es denk ich hin, aber bei der X+XGL API scheitert es dann.
Besonders wenn die beide parallel laufen sollen.


Somit wäre es echt super, wenn mir jemand links geben könntet zu brauchbaren FPC Samples für X + XGL Fenster Programmierung.



Danke schonmal allein fürs lesen ^^


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 12 Beiträge ] 
Foren-Übersicht » Sonstiges » Projekte


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 14 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.064s | 17 Queries | GZIP : On ]