Hello
Keeping user experience in mind - the best dimensions to upload your Instagram video to your feed is 1080 pixels x 1350 pixels.
As you can see, Intsagram says that best aspect ratio is
4:5
Therefore if you stream from Canvas you have to ensure source resolution in this aspect ratio.
This means the resolution of published stream must be 1080 x 1350 or other 4:5 content.
You can't just stream 1280x720 and then /push/startup as 720x1280 because its aspect ratio is 16:9 or 9:16 and does not fit instagram requirements. Moreover it will cause server-side transcoding to 2276x1280 to preserve aspect ratio 16:9.
Therefore you have two options
1. Publish 4:5 aspect ratio and do not set resolution on /push/startup to avoid any transcoding
or
2. Crop your picture from 16:9 to 4:5 in the Mixer
docs.flashphoner.com
Please note. Mixer is CPU intensive server-side application. It would require at least 2 physical CPU core for mixing and cropping operations only.
>Can we publish the two different canvas stream to different flashphoner instance ?
You can try to open two Websocket sessions using Flashphoner.createSession();
Code:
var session1 = Flashphoner.createSession({urlServer:server1});
session1.createStream().publish();
var session2 = Flashphoner.createSession({urlServer:server2});
session2.createStream().publish();
If it does not work, you can publish both streams to server1 then re-stream second stream to server2 using the REST API.