PIP can be done with the same overlay ffmpeg filter as before. This is nginx.conf example merging two incoming streams and producing picture-in-picture result.
application myapp {
live on;
}
application big {
live on;
exec ffmpeg -i rtmp://localhost/big/$name -i rtmp://localhost/small/$name
-filter_complex "[0][1]overlay=10:10" -f flv rtmp://localhost/myapp/$name;
}
application small {
live on;
}
The incoming streams are published in big and small application. The result is published to myapp.
Publish Sintel to big.
ffmpeg -re -i /var/video/sintel.mp4 -c:v flv -s 800x600 -c:a libfaac -ar 22050 -ac 1
-f flv rtmp://localhost/big/mystream
Then publish Elephants dream to small.
ffmpeg -re -i /var/video/ed.avi -c:v flv -s 400x200 -c:a libfaac -ar 22050 -ac 1
-f flv rtmp://localhost/small/mystream
Here's the result.
Note the result will not be available if one of incoming streams in unavailable.
No comments:
Post a Comment