3.3 KiB
3.3 KiB
mmpCreator - Documentação Técnica
🛠️ Área de Desenvolvimento
O site está sendo desenvolvido em um ambiente virtual Python (venv
). Para executá-lo corretamente, ative o ambiente com o comando:
source venv/bin/activate
Isso garante que todas as dependências do projeto sejam utilizadas corretamente.
👁️ Serviço de Monitoramento (Watchdog)
Um serviço systemd foi criado para monitorar alterações na pasta src/samples
:
- Serviço:
/etc/systemd/system/mmpCreator-upload-server.service
- Nome do serviço:
mmpCreator-upload-server.service
- Frequência: A cada 5 segundos
Funcionalidade:
Sempre que houver mudanças na pasta de samples, o serviço irá:
- Detectar alterações via
watchdog
. - Executar um novo build do site.
- Atualizar automaticamente o conteúdo do site em tempo real.
Nota: O build atual está sendo feito apenas na parte de testes. Verificar e ajustar o caminho correto do build.
📤 Servidor de Upload de Samples
O servidor upload_server.py
é responsável por receber arquivos de áudio (samples) para a plataforma. Ele é construído com:
- Framework: Flask
- Monitoramento: Biblioteca
watchdog
Funcionamento:
- Após qualquer modificação nas pastas de samples:
- O script atualiza os arquivos
samples-manifest.json
emmp-manifest.json
. - Os caminhos dos arquivos são ajustados para garantir exibição e execução corretas.
- O script atualiza os arquivos
Acesso:
http://127.0.0.1:5000
⚠️ Importante: Avaliar a segurança do servidor antes de validar como ferramenta oficial do projeto. Atualmente está sendo usado apenas para testes.
✅ Funcionalidades Já Implementadas
- Criar projetos
- Carregar projetos (do PC ou do servidor)
- Salvar projetos (externamente)
- Editar projetos existentes (sem alterar o original)
- Utilizar metrônomo
- Criar e excluir patterns
- Alternar entre patterns em tempo real
- Controle de volume e pan por pattern e por instrumento
- Controle de volume e pan global
- Alterar quantidade e formato de compassos
- Alterar BPM
- Exibir duração da pattern via timer
📋 TODO (Próximos Passos)
🛠️ Funcionalidades
- Validar projetos MMP antes de aceitar uploads:
- Verificar se os samples são nativos
- Corrigir caminhos dos samples (evitar problemas de execução)
- Permitir envio de samples gravados com microfone:
- Executar e recortar antes de salvar no servidor
- Gravar músicas diretamente na plataforma, mesmo sem mixagem
- Ativar/desativar samples em patterns
- Remover botões inúteis no controle de patterns
- Melhorar documentação do código
- Permitir alteração dos nomes das patterns (novos e existentes projetos)
- Corrigir sistema de notas do projeto:
- Incluir rastros da plataforma MMPCreator
- Informações de autor e metadados
- Criar atalhos de teclado:
- Barra de espaço para play/pause
+
e-
para alternar entre patterns
- Permitir alteração de nome de samples (⚠️ pode gerar duplicatas)
- Verificar duplicidade de samples e projetos por nome
- Resetar valores de botões via scroll do mouse
- Ao salvar projeto:
- Permitir escolha entre download ou salvar no servidor
- Escolher nome do projeto