!! Neu: Zanmantou 3 released !!

Javascript API

Wichtig : Dieses Tutorial bezieht sich auf die JavascriptMicroAPI, die in den Zanmantou Versionen ab 1.1.2 verf�gbar ist. Im Gegensatz zur BETA Version der Vorg�ngerversionen wurde diese komplett erweitert und basiert auf anderen Flash<>Javascript Interface Methoden (ExternalInterface).
Daher ist die Funktionsf�higkeit nur in den folgenden Browsern mit dem Adobe Flash Plugin ab der Version 8 oder h�her gegeben:

  • Internet Explorer 5.0 and higher (Windows)
  • Netscape 8.0 and higher (Windows, Mac)
  • Mozilla 1.7.5 and higher (Windows, Mac)
  • Firefox 1.0 and higher (Windows, Mac)
  • Safari 1.3 and higher (Mac)

(Angaben stammen von Adobe)

An den Javascript Methodennamen/Aufrufen hat sich aber im Gegensatz zur BETA API nichts ver�ndert.

Bisher wurden folgende Methoden implementiert :

  • start()
  • stop()
  • next()
  • last()
  • jumpAndPlay()
  • addTrack()
  • removeTrack()
  • getID3()
  • getTrackLength()
  • getTrackPosition()
  • setVolume()*
  • setTransform()
  • setBalance()*
  • getVolume()*
  • getBalance()*
  • getTransform()*
  • getTransformObject()*
  • getBytesLoaded()*
  • getBytesTotal()*
  • getTracklist()*
  • setTracklist()*


Setup

Um die Javascript Steuerung verwenden zu können, ist es notwendig zum einen die JMAPI einzubinden.
Zum anderen ist eine Initialisierung erforderlich, mit der eine Instanz des Players erstellt wird.
Dabei ist darauf zu achten, die richtige URL zur API anzugeben, sowie die entsprechende PlayerID zu verwenden.

Javascript – <head> Bereich

  • <script type=”text/javascript” src=”JavascriptMicroAPI.js”></script>
  • <script type=”text/javascript”>
  • window.onload = init;
  • function init(){
  • // Wichtig : die richtige Player ID eintragen
  • document.zanmantou1 = new Zanmantou(“player1″);
  • }
  • </script>

Demoplayer

Standart Steuerelemente

Mit Hilfe der folgenden Funktionen, k�nnen die Basisfunktionen des Players gesteurert werden,
hierbei ist auf den richtigen Variablennamen zu achten, indem die Instanz des Players bei der Initialisierung gespeichert wurde.
(In diesem Fall : document.zanmantou1)

Javascript – Steuerungsfunktionen

  • document.zanmantou1.start();
  • document.zanmantou1.stop();
  • document.zanmantou1.halt();
  • document.zanmantou1.last();
  • document.zanmantou1.next();

Erweiterte Start-Funktion

Als optionaler Parameter besteht bei der start() Funktion die M�glichkeit, den jeweiligen Track
an einer bestimmten Stelle beginnend abspielen zu lassen. Dazu einfach als Parameter die Startstelle
in Sekunden �bergeben : start(5) entspricht einem Start 5 Sekunden nach Begin des Tracks.

5sec –

Javascript – start()

  • document.zanmantou1.start(5);

Direkte “anspringen” von Tracks

Ebenso ist es m�glich mit Hilfe von Javascript einen Track direkt anzusprigen. Hierzu dient die Funktion jumpAndPlay().
Als Parameter wird einfach der Trackindex angegeben des jeweiligen Tracks, welcher abgespielt werden soll, beginnend bei 0.
D.h. der erste Track in der config.xml hat den Trackindex 0.

Javascript – jumpAndPlay()

  • // startet den 1ten Track
  • document.zanmantou1.jumpAndPlay(0);
  • // startet den 2ten Track
  • document.zanmantou1.jumpAndPlay(1);

SoundTransform – Mono

Mit Zanmantou ist es ebenfalls m�glich die SoundTranformSettings zu beeinflussen. Im folgendem Beispiel, erfolgt die Widergabe
nurnoch als Mono, also auf dem linken Kanal. Hierzu steht die Methode setTranform(ll, lr, rr, rl) zur Verf�gung.
Die Methode erwartet 4 Parameter : ll, lr, rr, rl. Die Verwendung dieser ist bei Adobe nachzulesen.

Javascript – setTransform() MONO

  • // mono sound
  • document.zanmantou1.setTransform(100, 100, 0, 0);

Individueller SoundTranform

Und hier eine kleine Demonstration zum ausprobieren. Wichtig ist generell, dass nur Werte zwischen 0 und 100 verwendet werden.
Bei Werten >> 100 wird der Output der Soundkarte �bersteuert

LL :

LR :

RR :

RL :

Tracklist dynmaisch �ndern

Mit Hilfe der Methoden addTrack(songname, url, index) und removeTrack(index). Die Methode addTrack() erwartet 3 Parameter :
Der erste gibt die den Songnamen an, der 2te die URL zum Song, der 3te die Position, an die der Track eingef�gt werden muss.
Die Methode removeTrack() erwartet als Parameter nur den Trackindex des Tracks, der entfernt werden soll.

Javascript – add/remove Track

  • // f�gt an den Anfang den Track “voodoon” mit der url “demo.mp3″
  • document.zanmantou1.addTrack(“voodoon”, “demo.mp3″, 0);
  • // entfernt den Track am Index 2 (Track 3)
  • document.zanmantou1.removeTrack(2);

ID3 Tag Abfragen

Wenn mehr Informationen �ber einen Track gebraucht werden, ist es m�glich mit Hilfe der methode getID3() ID3-Tag-Informationen des Tracks abzurufen, sofern dieser geladen ist,

  • // Titel holen
  • var titel = document.zanmantou1.getID3(“TIT2″);

Als Parameter wird die jeweils gew�nschte Tag �bergeben, hier die �berischt aller verf�gbarer Parameter :

TFLT : File type
TIME : Time
TIT1 : Content group description
TIT2 : Title/song name/content description
TIT3 : Subtitle/description refinement
TKEY : Initial key
TLAN : Languages
TLEN : Length
TMED : Media type
TOAL : Original album/movie/show title
TOFN : Original filename
TOLY : Original lyricists/text writers
TOPE : Original artists/performers
TORY : Original release year
TOWN : File owner/licensee
TPE1 : Lead performers/soloists
TPE2 : Band/orchestra/accompaniment
TPE3 : Conductor/performer refinement
TPE4 : Interpreted, remixed, or otherwise modified by
TPOS : Part of a set
TPUB : Publisher
TRCK : Track number/position in set
TRDA : Recording dates
TRSN : Internet radio station name
TRSO : Internet radio station owner
TSIZ : Size
TSRC : ISRC (international standard recording code)
TSSE : Software/hardware and settings used for encoding
TYER : Year
WXXX : URL link frame

Trackl�nge

Ebenso kann die Trackl�nge abgfragt werden mit der Methode getTrackLength().
Wichtig : der Wert wird als String zur�ckgegeben !

  • var length = document.zanmantou1.getTrackLength();

Trackposition

Die aktuelle Abspielposition kann mit der Methode getTrackPosition() ermittelt werden.
Wichtig : der Wert wird als String in Millisekunden zur�ckgegeben !

  • var posittion = document.zanmantou1.getTrackPosition();

TrackFilename

Der Dateiname des aktuellen Tracks, so wie in der Config angegeben, kann mit der Methode getTrackFilename() ermittelt werden.

  • var posittion = document.zanmantou1.getTrackFilename();

Trackname

Der Name des aktuellen Tracks aus der Tracklist kann mit der Methode getTrackName() ermittelt werden.

  • var posittion = document.zanmantou1.getTrackName();

Trackindex

Die aktuelle Position in der Tracklist kann mit der Methode getTrackPosition() ermittelt werden.
Wichtig : 1ter Track entspricht Position 0 !

  • var posittion = document.zanmantou1.getTrackIndex();

 

2 Kommentare | Kommentar schreiben |

Einen Kommentar schreiben

Name (erforderlich)

eMail (erforderlich) (wird nicht veröffentlicht)

Webseite

 

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Zanmantou über javascript steuern - jswelt - Forum (Javascript, PHP, MySQL, AJAX, Webdesign)

Am 25. Juli 2008 um 15:26 Uhr |

 

[...] im Gegensatz zur Javascript steuerung. Zu eben dieser gibt es ein tut auf der Herstellerseite : Zanmantou » Javascript API Allerdings komm ich einfach nicht drauf was ich falsch gemacht habe. Hoffe ihr könnt mir [...]

 

 

Chris

Am 14. Mai 2010 um 15:38 Uhr |

 

IE mag das JS API nicht. Zumindest Version 8 schmeisst bei mir auf dieser Demoseite folgenden Fehler in den Raum:

Meldung: ‘this.zanmantou’ ist Null oder kein Objekt
Zeile: 74
Zeichen: 2
Code: 0
URI: http://zanmantou.a3non.org/JavascriptMicroAPI.js

Einzige funktionierende Abhilfe die ich bisher bei meinen Tests gefunden habe ist dem object Tag eine id zu verpassen. Wenn man dieses Attribut einbaut fällt aber Mozilla auf die Nase und beschwert sich mit:

Fehler: this.zanmantou.JMAPI_stop is not a function

oder ähnlichem, je nach verwendeter Funktion. Einzige praktikable Lösung bleibt dann ein Conditional Comment ala

...