Conversor MKV para AVI
Publicado por Matheus (última atualização em 14/07/2010)
[ Hits: 14.408 ]
Homepage: matheusrosa.com.br
Pequeno script para conversão de arquivos Matroska (*.mkv) para Audio Video Interleave (*.avi). É necessário que se tenha o mencoder instalado.
#!/usr/bin/python
# -*- coding: utf-8 -*-
# Autor: Matheus Rosa <matheus.sys@gmail.com>
# Data: 11/07/2010
# Descrição: Este script faz a conversão de arquivos MKV para AVI
# utilizando a ferramenta MEncoder
import sys
import os
def mostraInfo(info):
'''Mostra as informações básicas do arquivo
'''
print '=' * 100
print 'Arquivo MKV: ' + info['nomeArquivo']
print 'Tamanho: ' + info['tamanho']
print '=' * 100
def motraAjuda():
'''Mostra o uso do script
'''
print 'Conversor de MKV para AVI por Matheus Rosa'
print 'Uso: ' + sys.argv[0] + ' arquivo mkv'
def tamanhoLegivel(tamanho):
'''Retorna o tamanho legível para humanos
formatado
'''
sufixos = {1024: ['KiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB']}
if tamanho < 0:
return 'não foi possível obter o tamanho'
for sufixo in sufixos[1024]:
tamanho /= 1024
if tamanho < 1024:
return '{0:.1f} {1}'.format(tamanho, sufixo)
def main():
if len(sys.argv) < 2:
mostraAjuda()
arquivo = sys.argv[1]
if os.path.exists(arquivo):
extensao = arquivo[-3:]
tamanho = os.path.getsize(arquivo)
if extensao == 'mkv':
info = {'nomeArquivo':arquivo,'tamanho':tamanhoLegivel(tamanho)}
mostraInfo(info)
print 'Iniciando conversão...'
os.system('mencoder ' + arquivo + ' -oac copy -ovc copy -o '+ arquivo[:-4] + '.avi')
print 'Conversão concluída!'
else:
print 'Arquivo inválido. É necessário um arquvo MKV para continuar.'
else:
print 'Arquivo não existe'
if __name__ == '__main__':
main()
Exemplo de armazenamento de registros em arquivo
Pyconv - Conversor de codificação de caracteres
Cinnamon seria a aposta acertada frente às outras interfaces gráficas mais populares?
KDE Plasma - porque pode ser a melhor opção de interface gráfica
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Vou destruir sua infância:) (8)
Interface gráfica com problema (2)
Instalar Linux em notebook Sony Vaio VPCEG13EB (13)









