HowTo

openWebX Logo

Verfasst von Jens Reinemuth am 7. Februar 2010 - 10:21
openWebX Logo

Best practice: Mit php Verzeichnisse rekursiv auslesen

Verfasst von Jens Reinemuth am 6. Februar 2010 - 13:57

Wenn man schnell und einfach Verzeichnisse mit php rekursiv auslesen möchte, hat sich das Verwenden der folgenden Funktion als die mit Abstand performanteste Lösung herausgestellt.

Momentan benutze ich sie in meiner eigenen kleinen API openWebX um meine Bilderverzeichnisse in Gallerien zu verwandeln. Die Laufzeit für ~140 Verzeichnisse mit insgesamt ~4900 Bildern beträgt knappe 2,2Sekunden auf meinem Developerrechner, inkl. dem Speichern der Infos in die Datenbank.

Vielleicht findet der ein oder andere sie nützlich:

function fileProfileDir( $dir ) {
  static $info = array();
  if( is_dir( $dir = rtrim( $dir, "/\\" ) ) ) {
    foreach( scandir( $dir) as $item ) {
      if( $item != "." && $item != ".." ) {
        $info['all'][] = $absPath = $dir . DIRECTORY_SEPARATOR . $item;
        $stat = stat( $absPath );		
	switch( $stat['mode'] & 0170000 ) {
	  case 0100000: 
            $info['files'][]       = $absPath; 
            break;
          case 0040000: 
            $info['directories'][] = $absPath; 
            fileProfileDir( $absPath ); 
            break;
          case 0120000: 
            $info['links'][]       = $absPath; 
            break;
          case 0140000: 
            $info['sockets'][]     = $absPath; 
            break;
          case 0010000: 
            $info['pipes'][]       = $absPath; 
            break;
        }
      }
    }
  }
  clearstatcache();       
  return $info;
}
Eigene Bewertung: Keines Durchschnitt: 4.7 (3 Bewertungen)

MKV-Container umkonvertieren zu DVD

Verfasst von Jens Reinemuth am 1. Januar 2010 - 13:50

Nachdem ich viel gegooglet habe und die unterschiedlichsten HowTos erfolglos durchgetestet habe: Warum in die Ferne schweifen...

ffmpeg kennt in den neuesten Versionen das mkv-Format als Input. Damit ist alles sehr einfach:


$ ffmpeg -i MeineDatei.mkv -target dvd MeineDatei.mpg
$ mkdir DVD
$ dvdauthor --title -f MeineDatei.mpg -o DVD
$ dvdauthor -T -o DVD
$ growisofs -dvd-compat -dvd-video -Z /dev/dvd ./DVD/*

Frohes neues Jahr!

Jens

Eigene Bewertung: Keines Durchschnitt: 5 (1 Bewertung)

Der Mediacenter-PC wird zum Server...

Verfasst von Jens Reinemuth am 31. Oktober 2009 - 8:23
Ich hatte vor einigen Monaten meinen kleinen Mediacenter-PC mehr schlecht als recht aufgebaut. Hier mal die Daten (und Anmerkungen)
- Intel Atom 330
- 1GB Ram
- 160GB SATA-II 
  heute oder morgen kommt die neue Platte, 1,5TB für unter 100€...
- Intel GMA945 Grafikkarte 
  WAS für ein Gefrickel unter Linux! Erst die Treibersourcen manuell 
  mit mehreren zusammengesuchten Patches dazu bewegen, nicht jedesmal 
  in den NTSC-Modus zu wechseln, dann X-Server starten, killen, neu
  starten, damit das Bild oben rechts nicht mehr flackert...
Nach dem Umzug mangelt es uns an einer Abstellkammer für die beiden recht betagten Server (1x WEB, 1x Rest ;-)), also werde ich den MediacenterPC einfach ein paar zusätzliche Aufgaben verpassen.
Noch keine Bewertungen vorhanden

Mehrere AVI-Dateien zu einer Datei zusammenfassen

Verfasst von Jens Reinemuth am 19. Oktober 2009 - 18:10

Bis vor Kurzem habe ich immer avimerge benutzt, um mehrere AVI-Dateien zusammenzufassen, leider gab es in letzter Zeit immer häufiger hässliche "Verschiebungen" des Tons ab der 2. Datei, sprich der Ton und das Bild waren asynchron.

Das mplayer-Paket unter gentoo installiert auch das Tool mencoder, welches diese Aufgabe immer noch perfekt erledigt:

mencoder -oac copy -ovc copy file1.avi file2.avi -o complete.avi
Eigene Bewertung: Keines Durchschnitt: 4 (2 Bewertungen)

gentoo Linux auf einem Acer Aspire One A150X

Verfasst von Jens Reinemuth am 26. September 2009 - 17:11

1. Die Gründe

Nach langem Hin und Her habe ich mich doch entschlossen, mir ein NetBook zu kaufen. Gründe hierfür sind eigentlich gegeben: Ich habe einen PC mit nem schönen großen Monitor und somit bin ich Zuhause versorgt.

Eigene Bewertung: Keines Durchschnitt: 5 (1 Bewertung)
Inhalt abgleichen