...
Supported platforms and browsers
Chrome | Firefox | Safari 11 | Edge | |
---|---|---|---|---|
Windows | + | + | + | |
Mac OS | + | + | + | |
Android | + | + | ||
iOS | - | - | + |
Supported codecs
- Video: H.264, VP8
- Audio: Opus, G.711
...
Code Block | ||||
---|---|---|---|---|
| ||||
connection.join({name: getRoomName()}).on(ROOM_EVENT.STATE, function(room){ ... }).on(ROOM_EVENT.JOINED, function(participant){ ... }).on(ROOM_EVENT.LEFT, function(participant){ //remove participant removeParticipant(participant); addMessage(participant.name(), "left"); }).on(ROOM_EVENT.PUBLISHED, function(participant){ ... }).on(ROOM_EVENT.FAILED, function(room, info){ ... }).on(ROOM_EVENT.MESSAGE, function(message){ ... }); |
How to record streams published by room participants
Video streams published by room participants can be recorded. To do this, 'record' parameter must be set to 'true' while publishing a stream:
Code Block | ||||
---|---|---|---|---|
| ||||
room.publish({
display: display,
constraints: constraints,
record: true,
receiveVideo: false,
receiveAudio: false
...
}); |
A stream from any participant is recorded to a separate file. The issue of record files futher processing is that publication of them does not begin at the same time. To allow streams merging, room streams are synchronized by the first stream published.
For example, if User1 participant started publishing stream at 00:00:10, and User2 participant did it at 00:00:55, then second participant will get 45 seconds of empty video (black screen and silence) at record beginning. So, stream record files User1.mp4 and User2.mp4 will be same in duration, and they can be merged. Besides, participants streams can be mixed while publishing.
Streams recording test
1. For test we use:
- your WCS server, for example test2.flashphoner.com;
- Conference web application
2. Enable stream recording in Conference application
3. Open Conference application. Enter user name Alice to "Login" field and click 'Join'. The streamd from user Alice will be published:
4. Copy room link from "Invite" field:
5. Go to room link in new browser window. Enter user name Bob to "Login" field and click 'Join'. The stream from Alice will be played, and stream from Bob will be published:
6. Click 'Leave' at user Bob window to leave the room. Click 'Leave' at user Alice window to finish the conference.
7. Stream record files are placed to /usr/local/FlashphonerWebCallServer/records directory:
Code Block | ||||
---|---|---|---|---|
| ||||
-rw-r--r-- 1 root root 1569566 Jun 29 07:51 stream-34296a60-7b36-11e8-bd9c-31aaed48935e-db8mp51bajcidn9qmcnda3967k.mp4
-rw-r--r-- 1 root root 516509 Jun 29 07:51 stream-5aeb2351-7b36-11e8-b398-b74e804508b2-g97j81cgrf8h1m7jl7184fa788.mp4 |
User Bobs' file is less then user Alices' one because Bobs' file has empty video in the beginning for futher synchronization. Download record files to PC and play them.
8. Video stream from Alice is published, Bob has not enter to the room yet:
9. Video stream from Bob is published: