Skip to content

Instantly share code, notes, and snippets.

@rufuspollock
Created May 18, 2014 16:38
Show Gist options
  • Select an option

  • Save rufuspollock/99dc7d85120872f9e1ce to your computer and use it in GitHub Desktop.

Select an option

Save rufuspollock/99dc7d85120872f9e1ce to your computer and use it in GitHub Desktop.
Convert screencast (recordmydesktop) to gif
import os
import shutil
def convert():
tmp = '/tmp/togif'
if os.path.exists(tmp):
print('Temp path %s already exists' % tmp)
return
os.makedirs(tmp)
infp = 'out.ogv'
outfp = 'dpm-install'
outfpogv = outfp + '.ogv'
tmpgif = os.path.join(tmp, 'tmp.gif')
outgif = outfp + '.gif'
cmds = [
'ffmpeg -ss 00:00:00 -t 00:00:10 -i %s %s' % (infp, outfpogv),
'vlc %s --video-filter=scene --vout=dummy --scene-ratio=5 --scene-path=%s vlc://quit' % (outfpogv, tmp),
'convert %s/*.png %s' % (tmp, tmpgif),
# 'gifsicle -O %s -o %s' % (tmpgif, outgif),
'convert %s -fuzz 10%% -layers Optimize %s' % (tmpgif, outgif),
]
for cmd in cmds:
os.system(cmd)
# shutil.rmtree(tmp)
convert()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment