Skip to content

Commit

Permalink
add test for Issue 334, PR 336 (#534)
Browse files Browse the repository at this point in the history
* fix issue #334
  • Loading branch information
bearney74 committed Apr 11, 2017
1 parent 4c674c8 commit 9ee3727
Show file tree
Hide file tree
Showing 2 changed files with 63 additions and 0 deletions.
3 changes: 3 additions & 0 deletions tests/download_media.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,9 @@ def download():
download_url("https://github.com/earney/moviepy_media/raw/master/tests/images/afterimage.png",
"media/afterimage.png")

download_url("https://github.com/earney/moviepy_media/blob/master/tests/videos/big_buck_bunny_0_30.webm?raw=true",
"media/big_buck_bunny_0_30.webm")

download_url("https://github.com/earney/moviepy_media/raw/master/tests/videos/big_buck_bunny_432_433.webm",
"media/big_buck_bunny_432_433.webm")

Expand Down
60 changes: 60 additions & 0 deletions tests/test_issues.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,66 @@ def test_issue_285():
merged_clip = concatenate_videoclips([clip_1, clip_2, clip_3])
assert merged_clip.duration == 30


def test_issue_334():
last_move = None
last_move1 = None

lis = [(0.0, 113, 167, 47), (0.32, 138, 159, 47), (0.44, 152, 144, 47), (0.48, 193, 148, 47), (0.6, 193, 148, 47), (0.76, 205, 138, 55), (0.88, 204, 121, 63), (0.92, 190, 31, 127), (1.2, 183, 59, 127), (1.4, 137, 22, 127), (1.52, 137, 22, 127), (1.72, 129, 67, 127), (1.88, 123, 69, 127), (2.04, 131, 123, 63), (2.24, 130, 148, 63), (2.48, 130, 148, 63), (2.8, 138, 180, 63), (3.0, 138, 180, 63), (3.2, 146, 192, 63), (3.28, 105, 91, 151), (3.44, 105, 91, 151), (3.72, 11, 48, 151), (3.96, 5, 78, 151), (4.32, 4, 134, 1), (4.6, 149, 184, 48), (4.8, 145, 188, 48), (5.0, 154, 217, 48), (5.08, 163, 199, 48), (5.2, 163, 199, 48), (5.32, 164, 187, 48), (5.48, 163, 200, 48), (5.76, 163, 200, 48), (5.96, 173, 199, 48), (6.0, 133, 172, 48), (6.04, 128, 165, 48), (6.28, 128, 165, 48), (6.4, 129, 180, 48), (6.52, 133, 166, 48), (6.64, 133, 166, 48), (6.88, 144, 183, 48), (7.0, 153, 174, 48), (7.16, 153, 174, 48), (7.24, 153, 174, 48), (7.28, 253, 65, 104), (7.64, 253, 65, 104), (7.8, 279, 116, 80), (8.0, 290, 105, 80), (8.24, 288, 124, 80), (8.44, 243, 102, 80), (8.56, 243, 102, 80), (8.8, 202, 107, 80), (8.84, 164, 27, 104), (9.0, 164, 27, 104), (9.12, 121, 9, 104), (9.28, 77, 33, 104), (9.32, 52, 23, 104), (9.48, 52, 23, 104), (9.64, 33, 46, 104), (9.8, 93, 49, 104), (9.92, 93, 49, 104), (10.16, 173, 19, 104), (10.2, 226, 173, 48), (10.36, 226, 173, 48), (10.48, 211, 172, 48), (10.64, 208, 162, 48), (10.92, 220, 171, 48)]

lis1 = [(0.0, 113, 167, 47), (0.32, 138, 159, 47), (0.44, 152, 144, 47), (0.48, 193, 148, 47), (0.6, 193, 148, 47), (0.76, 205, 138, 55), (0.88, 204, 121, 63), (0.92, 190, 31, 127), (1.2, 183, 59, 127), (1.4, 137, 22, 127), (1.52, 137, 22, 127), (1.72, 129, 67, 127), (1.88, 123, 69, 127), (2.04, 131, 123, 63), (2.24, 130, 148, 63), (2.48, 130, 148, 63), (2.8, 138, 180, 63), (3.0, 138, 180, 63), (3.2, 146, 192, 63), (3.28, 105, 91, 151), (3.44, 105, 91, 151), (3.72, 11, 48, 151), (3.96, 5, 78, 151), (4.32, 4, 134, 1), (4.6, 149, 184, 48), (4.8, 145, 188, 48), (5.0, 154, 217, 48), (5.08, 163, 199, 48), (5.2, 163, 199, 48), (5.32, 164, 187, 48), (5.48, 163, 200, 48), (5.76, 163, 200, 48), (5.96, 173, 199, 48), (6.0, 133, 172, 48), (6.04, 128, 165, 48), (6.28, 128, 165, 48), (6.4, 129, 180, 48), (6.52, 133, 166, 48), (6.64, 133, 166, 48), (6.88, 144, 183, 48), (7.0, 153, 174, 48), (7.16, 153, 174, 48), (7.24, 153, 174, 48), (7.28, 253, 65, 104), (7.64, 253, 65, 104), (7.8, 279, 116, 80), (8.0, 290, 105, 80), (8.24, 288, 124, 80), (8.44, 243, 102, 80), (8.56, 243, 102, 80), (8.8, 202, 107, 80), (8.84, 164, 27, 104), (9.0, 164, 27, 104), (9.12, 121, 9, 104), (9.28, 77, 33, 104), (9.32, 52, 23, 104), (9.48, 52, 23, 104), (9.64, 33, 46, 104), (9.8, 93, 49, 104), (9.92, 93, 49, 104), (10.16, 173, 19, 104), (10.2, 226, 173, 48), (10.36, 226, 173, 48), (10.48, 211, 172, 48), (10.64, 208, 162, 48), (10.92, 220, 171, 48)]


def posi(t):
global last_move
if len(lis) == 0:
return (last_move[1], last_move[2])
if t >= lis[0][0]:
last_move = item = lis.pop(0)
return (item[1], item[2])
else:
if len(lis) > 0:
dura = lis[0][0] - last_move[0]
now = t - last_move[0]
w = (lis[0][1] - last_move[1]) * (now / dura)
h = (lis[0][2] - last_move[2]) * (now / dura)
# print t, last_move[1] + w, last_move[2] + h
return (last_move[1] + w, last_move[2] + h)
return (last_move[1], last_move[2])

def size(t):
global last_move1
if len(lis1) == 0:
return (last_move1[3], last_move1[3] * 1.33)
if t >= lis1[0][0]:
last_move1 = item = lis1.pop(0)
return (item[3], item[3] * 1.33)
else:
if len(lis) > 0:
dura = lis1[0][0] - last_move1[0]
now = t - last_move1[0]
s = (lis1[0][3] - last_move1[3]) * (now / dura)
nsw = last_move1[3] + s
nsh = nsw * 1.33
# print t, nsw, nsh
return (nsw, nsh)
return (last_move1[3], last_move1[3] * 1.33)


avatar = VideoFileClip("media/big_buck_bunny_432_433.webm", has_mask=True)
avatar.audio=None
maskclip = ImageClip("media/afterimage.png", ismask=True, transparent=True)
avatar.set_mask(maskclip) #must set maskclip here..

avatar = concatenate([avatar]*11)

tt = VideoFileClip("media/big_buck_bunny_0_30.webm").subclip(0,11)
#setting mask here does not work.
#final = CompositeVideoClip([tt, avatar.set_position(posi).set_mask(maskclip).resize(size)])
final = CompositeVideoClip([tt, avatar.set_position(posi).resize(size)])
final.duration = tt.duration
final.write_videofile(os.path.join(TMP_DIR, 'issue_334.mp4'), fps=24)

def test_issue_354():
clip = ImageClip("media/python_logo.png")

Expand Down

0 comments on commit 9ee3727

Please sign in to comment.