Created
September 25, 2012 01:36
-
-
Save thiagofa/3779483 to your computer and use it in GitHub Desktop.
Script em Python para converter screencasts (MOV para MP4) dos cursos online e incluir logo da AlgaWorks
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import os | |
from os.path import * | |
import fnmatch | |
import sys | |
import commands | |
def is_success(result): | |
return result[0] == 0 | |
def get_message(result): | |
return result[1] | |
def mov_to_mp4(origin_file, dest_file): | |
print 'Converting to MP4...' | |
command_line = 'ffmpeg -y -i ' + origin_file + ' -vcodec libx264 -acodec aac ' + \ | |
'-strict experimental -ar 44100 -ab 64k -ac 1 -threads 4 -f mp4 -vf "movie=logo_aw.png [logo]; ' + \ | |
'[in][logo] overlay=W-w-10:H-h-10 [out]" ' + dest_file | |
result = commands.getstatusoutput(command_line) | |
if is_success(result): | |
print 'Converted to MP4!' | |
else: | |
print 'Error converting to MP4:\n' + get_message(result) | |
return is_success(result) | |
def move_moov_atom_to_beginning(origin_file, dest_file): | |
print 'Moving MOOB atom to beginning...' | |
command_line = 'qtfaststart ' + origin_file + ' ' + dest_file | |
result = commands.getstatusoutput(command_line) | |
if is_success(result): | |
print 'MOOB atom moved!' | |
else: | |
print 'Error moving MOOV atom:\n' + get_message(result) | |
return is_success(result) | |
dir_list = os.listdir(os.getcwd() + '/original') | |
for fname in dir_list: | |
if fnmatch.fnmatch(fname, '*.mov'): | |
origin_file = abspath(os.getcwd() + '/original/' + fname) | |
work_file = os.getcwd() + '/work/' + splitext(fname)[0] + '.mp4' | |
final_file = os.getcwd() + '/final/' + splitext(fname)[0] + '.mp4' | |
print '##################################################' | |
print 'Processing file ' + basename(fname) + '...' | |
print '##################################################' | |
result = mov_to_mp4(origin_file, work_file) | |
if result: | |
result = move_moov_atom_to_beginning(work_file, final_file) | |
if not result: | |
print '**************** ERROR ****************' | |
print '-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Instruções de uso
Crie os seguintes diretórios no mesmo lugar que colocar este script em Python: "final", "original" e "work".
No diretório "original", coloque todos os arquivos MOV. Execute o script e eles serão convertidos para MP4 e colocados na pasta "final". O diretório "work" é temporário.
É necessário instalar o FFmpeg e qtfaststart.
O script converte todos os arquivos MOV da pasta "original" para MP4 e coloca na pasta "final". Além de converter os vídeos, inclui uma logomarca da AlgaWorks no canto inferior direito e move o MOOB atom para o início do arquivo (necessário para streaming).
Uso do ScreenFlow
Se estiver gravando vídeo aulas para a AlgaWorks usando o ScreenFlow, ao exportar a gravação, defina a dimensão do vídeo em 100% e altere o Frame Rate para 15 fps. Não precisa alterar mais nenhuma configuração para exportação dos vídeos.