user20087: I have bee experimenting with ffmpeg on video transitions , Now am stuck in this transition , I have no where to go ,
I have two videos like this,

at the end of first video i have to split the first video into two from center and reveal the second video like the following, 

any help would be appreciated

user-1: Some variant of:
ffmpeg -i FIRST -i SECOND -lavfi "blend=all_expr='if(lte((W/2-sqrt((X-W/2)*(X-W/2)))+N*SW,W/2),A,B)'" OUTPUT

user1871: This needs a slightly elaborate filtergraph to do as described.
-filter_complex
    "[0]split[b1][b2];
     [b1]crop=iw/2:ih:0:0[b1];
     [b2]crop=iw/2:ih:iw/2:0[b2];
     [1][b1]overlay=x='0-(W/2)*(t-DUR0)/D':enable=gte(t,DUR0)[ob1];
     [ob1][b2]overlay=x='W/2+(W/2)*(t-DUR0)/D':enable=gte(t,DUR0)[fv]
    "

where 0 is video '1' and 1 is video '2'. DUR0 should be replaced with duration of video '1' and D with duration of the effect.  

A curtain effect, like what Paul described, can be done like this:
blend=all_expr='if(lte((W/2-abs(X-SW*W/2))/(SW*W/2),(T-S)/D),B,A)'

where S is start time in seconds. (You may want/need to adjust the timestamps of the top video 'A' beforehand using setpts) and D is duration of effect. These two variables should be replaced with the required numeral values.
I can't test either of these for a few days.

20087: <p>I have bee experimenting with ffmpeg on video transitions , Now am stuck in this transition , I have no where to go ,</p>

<p>I have two videos like this,</p>

<p><a href="https://i.stack.imgur.com/QbCsy.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/QbCsy.png" alt="enter image description here"></a></p>

<p>at the end of first video i have to split the first video into two from center and reveal the second video like the following, </p>

<p><a href="https://i.stack.imgur.com/wmG7t.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/wmG7t.png" alt="enter image description here"></a>
any help would be appreciated</p>
 -1: <p>Some variant of:</p>

<p><code>ffmpeg -i FIRST -i SECOND -lavfi "blend=all_expr='if(lte((W/2-sqrt((X-W/2)*(X-W/2)))+N*SW,W/2),A,B)'" OUTPUT</code></p>
 1871: <p>This needs a slightly elaborate filtergraph to do as described.</p>

<pre><code>-filter_complex
    "[0]split[b1][b2];
     [b1]crop=iw/2:ih:0:0[b1];
     [b2]crop=iw/2:ih:iw/2:0[b2];
     [1][b1]overlay=x='0-(W/2)*(t-DUR0)/D':enable=gte(t,DUR0)[ob1];
     [ob1][b2]overlay=x='W/2+(W/2)*(t-DUR0)/D':enable=gte(t,DUR0)[fv]
    "
</code></pre>

<p>where <code>0</code> is video '1' and <code>1</code> is video '2'. <code>DUR0</code> should be replaced with duration of video '1' and <code>D</code> with duration of the effect.  </p>

<hr>

<p>A curtain effect, like what Paul described, can be done like this:</p>

<pre><code>blend=all_expr='if(lte((W/2-abs(X-SW*W/2))/(SW*W/2),(T-S)/D),B,A)'
</code></pre>

<p>where <code>S</code> is start time in seconds. (You may want/need to adjust the timestamps of the top video 'A' beforehand using <code>setpts</code>) and <code>D</code> is duration of effect. These two variables should be replaced with the required numeral values.</p>

<p>I can't test either of these for a few days.</p>
