Live stream using RTMP for React Native App Live Stream
Client : https://github.com/sieuhuflit/react-native-live-stream-rtmp-example
Streamer | Viewer |
---|---|
Using node-media-server. Client using Node media client
npm install
You must install ffmpeg to using
brew install ffmpeg
- Edit in config/sit.json file
{
"API": {
"PORT": 3333,
"NAME": "localhost"
},
"DB_STRING": "mongodb://127.0.0.1:27017/livestream?authSource=admin"
}
mongo
use admin
db.createUser({user:"admin",pwd:"123456",roles:[{role:"userAdminAnyDatabase",db:"admin"}]})
- Edit in config/sit.json file and edit the YOUR_PASSWORD field
...
mongoose.connect(
config.get('DB_STRING'),
{ useNewUrlParser: true, user: 'admin', pass: 'YOUR_PASSWORD' },
...
);
...
- Open terminal and type
pm2 start pm2.config.js --env sit
Add these line to node_modules/node_media_server/node_trans_session.js
Import this on top
const context = require('./node_core_ctx');
Then add
context.nodeEvent.emit(
'getFilePath',
this.conf.streamPath,
ouPath,
mp4FileName
);
Under this line
Logger.log(
"[Transmuxing MP4] " +
this.conf.streamPath +
" to " +
ouPath +
"/" +
mp4FileName
);