Die Flexperten Herrlich & Ramuschkat

Serverseitiges recorden von Live-Streams des Flash Media Live Encoders (2)

Aufgrund der Neuerungen des Flash Media Servers Interactive Edition 3.5 hier der aktualisierte Artikel:

Wenn man den Flash Media Live Encoder 3.0 einsetzt um Livestreams direkt auf den Flash Media Server 3.5 Interactive Edition zu publishen, kann man innerhalb des Flash Media Live Encoders lediglich definieren, dass der Stream clientseitig aufgezeichnet werden soll. Ein serverseitiges aufzeichnen ist so erstmal nicht möglich.

Durch das folgende serverseitige ActionScript kann man ein serverseitiges recorden von Flash Media Live Encoder 3.0 Livestreams erzwingen, dieses funktioniert aber nur mit dem Flash Media Server 3.5 Interactive Edition.


// Enable FME Recording on FMS in 3 steps
Client.prototype.FCPublish = function(streamName) {
// streamName is the name of the stream entered in FME
// 1) Get the stream
s = Stream.get(streamName);
// 2) Record it
s.record();
// 3) tell FME that everything works fine
this.call("onFCPublish", null, {code: "NetStream.Publish.Start", description: streamName});
}

Wichtig ist jetzt vor allem die korrekte Definition des Streamnamens im Flash Media Live Encoder:

Streams encodiert mit On2: TestStream –> gespeichert wird TestStream.flv
Streams encodiert mit H.264: mp4:TestStream.f4v –> gespeichert wird TestStream.f4v

Prima ist, das das ganze auch funktioniert, wenn man mit dem Flash Media Live Encoder 3.0 gleich bis zu 3 in der Bandbreite unterschiedliche Streams erzeugt. Dafür muss man allerdings den Streamnamen mit entsprechend %-Parametern versehen.

Beispiel für 3 Streams encodiert mit H.264:

mp4:TestStream_%v_%f.f4v –> gespeichert werden TestStream_650_320×240.f4v,TestStream_350_320×240.f4v, TestStream_50_320×240.f4v�

No comments yet

Einen Kommentar schreiben