transitive-bullshit / ffmpeg-gl-transition

FFmpeg filter for applying GLSL transitions between video streams.
650 stars 126 forks source link

videos not concatinating with transition applied #11

Closed anuj9196 closed 6 years ago

anuj9196 commented 6 years ago

I need to concatenate two or more videos without clipping them (with full length) and apply transition while changing the video.

I'm trying your example script on my server as

env DISPLAY=:0 ffmpeg -i s1.mp4 -i s2.mp4 -filter_compl
ex "gltransition=duration=4:offset=1.5:source=crosswarp.glsl" -y out1.mp4

Each video is of duration 30 seconds, thus the desired output should be of 60 seconds. But it generates the video of 31 seconds and the transition is applied just after 1.5 seconds of the first video.

I also tried the example from concate.sh file with 3 files having the duration of 10 seconds, 20 seconds and 5 seconds each respectively. But the video produced is of 9 seconds long with one transition applied on first video switching while there is no transition from 2nd to 3rd video switching.

How to concatenate videos with their full length and apply transition while switching/concatenating of videos?

transitive-bullshit commented 6 years ago

please read the documentation about what the parameters do. it won't "just work". this is a low-level lib, and it's expected that you understand how ffmpeg filters work before diving into it.

concat.sh, for example, concatenates three 4-second long videos together, where the time offsets are hard-coded in the script. if you have different video lengths, you'll need to change the corresponding parameters.