Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module ›

CCK Media Field und GetID3

Eingetragen von PowerMan (274)
am 25.09.2008 - 18:03 Uhr in
  • Module
  • Drupal 5.x

Moin moin, Drupaler,

ich habe ein Problem, mit dem ich mich jetzt schon wieder 4 Tage rumärgere.
Ich benutze die Module MediaField und MediaFieldDisplay. Damit lassen sich pro Node auch meherer Audio-Dateien anhängen. Nur das die Player unmittelbar untereinander dargestellt werden. Ich möchte gern zwischen jedem Player noch einen Beschreibungzeile einfügen, oder den ID3-Tag des MP3s auslesen (würde auch gehen).

Ich habe auch schon das Modul GetID3 installiert. Aber irgendwie gibt es für dieses Drupalmodul keine Beschreibung. In eigenen Skripten habe ich GetID3 schon verwendet und weiss auch wies das funktioniert. Wie ich aber das gleichnamige Drupalmodul nute weiss ich nicht.

Vieleicht kann mir dabei jemand helfen.

‹ Probleme mit den Modulen FAQ und i18n Verständnisfrage zu i18n-Modul mit Drupal 6 ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Egal wie Du die Infos mit

Eingetragen von quiptime (4972)
am 25.09.2008 - 18:24 Uhr

Egal wie Du die Infos mit dem Modul GetID3 holst Du wirst wohl ein Nodetype-Template brauchen um diese Infos unter den Playern auszugeben. Und fuer die Infos sehe Dir mal den Modulcode an ob es da eine Funktion gibt die man ansprechen kann.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Okay, das mit dem

Eingetragen von PowerMan (274)
am 29.09.2008 - 10:19 Uhr

Okay, das mit dem Node-Template habe ich mir schon gedacht, ist auch kein Problem. Ich werde mir mal das Modul nach einer entsprechenden Funktion durchsuchen. Die Lösung des Problems poste ich dann hier auch gleich mal. Es gibt bestimmt noch ne menge Leute die das dann gern wissen würden.

--------
Active-Media-Production
Individual Web Development and Design

--------
Active-Media-Production
Individual Web Development and Design

  • Anmelden oder Registrieren um Kommentare zu schreiben

CCK und GetID3

Eingetragen von PowerMan (274)
am 29.09.2008 - 23:39 Uhr

So ich habe mir einmal die ModulCore des Moduls GetID3 angesehen.
Für alle diejenigen, welche aus dem CCK-Audio-Field gern die ID3-Daten eines Audio-Files auslesen möchten habe ich hier die Lösung:

Als erstes habe ich das CCK Modul "Audio Field" aktiviert. Dieses Modul ist in dem Paket MediaField für CCK enthalten. Dann noch das Modul GetID3 installiert. Achtung für die korrekte Funktion des Moduls GetID3 muss noch eine weitere PHP-Klasse in dieses Modul installiert werden. Die ist aber in der ReadMe beschrieben, darum gehe ich da nicht näher drauf ein.

So nun zum eigentlichen Auslesen der ID3-Tags.
Hiefür habe ich mir nun einen neuen Content-Typ manes Audio angelegt und das CCK-Feld Audio-Field hinzugefügt. Damit man nun auch die ID3-Tags auslesen kann benötigt man einen entsprechendes Node-Typ-Template (node-audio.tpl.php) oder das Modul Contemplate. Ich habe beides probiert. Das Modul Contemplate kann man auf jeden Fall zur ermittlung der Themen-Variablen des Node-Typs verwenden. Ob man nun die Ausgabe über dieses Modul verändert oder ein eigenes Node-Typ-Template anlegt ist dabei jedem selber überlassen.

Variablen-Anzeige in Contemplate:

$node->field_audio (array)
  $node->field_audio[0] (array)
    $node->field_audio[0]['fid'] => 68
    $node->field_audio[0]['sample_rate'] => (NULL)
    $node->field_audio[0]['bitrate'] => (NULL)
    $node->field_audio[0]['channel_mode'] => (NULL)
    $node->field_audio[0]['playtime'] => (NULL)
    $node->field_audio[0]['nid'] => 61
    $node->field_audio[0]['filename'] => audiobeispiel.mp3
    $node->field_audio[0]['filepath'] => files/audio/audiobeispiel.mp3
    $node->field_audio[0]['filemime'] => audio/mpeg
    $node->field_audio[0]['filesize'] => 307200

Da man die Möglichkeit hat mehrere Audio-Datein an einen Node zu hängen muss man am besten eine Foreach-Schleife verwenden. Mit der Funktion: audio_getid3_info(DATEINAME) können dann die ID3-werte ausgelesen werden. Alle Werte sind danach in einem Array enthalten.
Um nun auch rauszufinden welche Daten ich haben möchte und wie die entsprechenden Felder heissen, habe ich mir während der Erstellung eine Hilfsanzeige eingebaut. (Die ich später wieder entfernt habe) Hierbei wird das gesamte Array in Baumstruktur mit Werten angezeigt.

<pre><?php print_r ($mp3_info); ?></pre>

Der eigendliche Flashplayer wird von Drupal über folgenden Code bereitgestellt:

<?php print $item['view'] ?>

Der gesamte Quelltext für die Anzeige der Audioplayer sieht dann so aus:

<div class="field field-type-file-audio field-field-audio">
  <h4 class="field-label">Audio-Beispiele</h4>
  <div class="field-items">
    <?php foreach ((array)$node->field_audio as $item) { ?>

      <?php $mp3_info = audio_getid3_info($item['filepath']); ?>

      <div class="field-item">
        <div class="audio-name">Beispiel: <?php if (!empty($mp3_info['tags']['id3v1']['artist'][0])) print $mp3_info['tags']['id3v1']['artist'][0]." - ";  print $mp3_info['tags']['id3v1']['title'][0]; ?></div>
        <div class="audio-playtime">Playtime: <?php print $mp3_info['playtime']; ?>min</div>
        <div class="audio-view"><?php print $item['view'] ?></div>
      </div>
    <?php } ?>
  </div>

Es kann sein das ich beim reinkopieren ein

zu viel oder zu wenig kopiert habe.
Sollte jemand Fragen haben oder die Anleitung nicht vertändlich sein kann er mir jederzeit eine Nachricht schreiben.

--------
Active-Media-Production
Individual Web Development and Design

--------
Active-Media-Production
Individual Web Development and Design

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • SQL-Injection? User hat sich Zugriff aufs Admin-Konto geholt und Änderungen vorgenommen.
  • Mehrere freie Mitarbeiter:innen gesucht für Kooperation
  • Bitte um Einschätzung: Upgrade von Drupal 7 auf 9
  • Webform Submission Eingaben über Views ausgeben?
  • General error: 2006 MySQL server
  • [gelöst]Webform Meldung nach Submission
  • Migration über feeds von D6 auf D8
  • Anbindung externe Datenbank MongoDB
  • Webform - einzelne Komponenten übersetzen
  • Theme Classy sei installiert, ist aber nicht bei Themes
  • Webhoster Installation von D8 zu D9 Upgraden - Fragen...
  • Drupal Freelancer*in / Entwickler*in in Berlin gesucht
Weiter

Neue Kommentare

  • Ganz wichtig: Sichere Dateirechte als Schutz vor Schadcode
    vor 1 Stunde 30 Minuten
  • Ich würde hier noch keine Entwarnung geben
    vor 1 Stunde 57 Minuten
  • D6 - D9 Adrress Feld
    vor 16 Stunden 54 Minuten
  • Hallo,danke für die Hinweise
    vor 20 Stunden 44 Minuten
  • Verzeichnisse des Webspace komplett leeren
    vor 21 Stunden 56 Minuten
  • Je nach Komplexität der Site auch mehr Aufwand
    vor 23 Stunden 36 Minuten
  • max_allowed_packet
    vor 1 Tag 39 Minuten
  • Backdrop wird aktiv gepflegt
    vor 1 Tag 57 Minuten
  • Da ist vermutlich ein
    vor 1 Tag 2 Stunden
  • Zitat: Oder ist deine Website
    vor 1 Tag 3 Stunden

Statistik

Beiträge im Forum: 248373
Registrierte User: 19751

Neue User:

  • Aman_Musani
  • Dustinjex
  • Rickywap

» Alle User anzeigen

User nach Punkten sortiert:
wla9284
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3845
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 14 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association