projeto em Rust Skill Tree

Sincronizar legendas com Rust

Crie uma ferramenta Rust que desloque todas as legendas com cálculos temporais verificados, preserve o texto Unicode completo e sobreposições válidas e gere WebVTT reproduzível sem sobrescrever trabalhos anteriores.

ProjetoRust

💡 Este tutorial foi traduzido do inglês com assistência de IA. Para ver o original, você pode mudar para a versão em inglês

Introdução

“Sincronizar legendas com Rust” é um projeto prático para estudantes de Rust que querem transformar um arquivo real sem perder seu conteúdo. O título de abertura de um curta mudou, então todas as legendas precisam do mesmo deslocamento temporal. Você criará uma ferramenta que exporta uma faixa WebVTT reproduzível e preserva as legendas originais, o vídeo e os resultados anteriores.

Dois laboratórios guiados avançam dos cálculos de tempo com verificação de estouro para a validação do arquivo completo e a criação protegida da saída. Um desafio combina as mesmas técnicas para outro filme e a direção oposta de deslocamento. Cada laboratório começa de forma independente com seu próprio projeto e arquivos preparados.

O que você aprenderá

Ao concluir o curso, você poderá:

  • converter campos de timestamp validados em milissegundos inteiros com verificação de estouro nas multiplicações e adições;
  • deslocar os dois limites de cada legenda pelo mesmo valor com sinal, preservando duração, ordem no arquivo, texto Unicode e multilinha completo, sobreposições válidas e horários de início iguais;
  • tratar entradas malformadas ou não suportadas, tempos negativos após o deslocamento e estouro de inteiros por meio de erros Result com contexto;
  • validar e transformar toda a coleção antes de criar uma nova saída, rejeitar caminhos de saída existentes e preservar o trabalho anterior ao tentar novamente;
  • carregar o arquivo realmente exportado em Preview, conferir os pontos visuais públicos de alinhamento, reproduzir o vídeo com sua faixa de legendas real e baixar os arquivos carregados.

Para quem é este curso

Este curso é indicado para quem está pronto para combinar tipos de dados e operações com arquivos de Rust já conhecidos em uma pequena ferramenta de transformação com erros recuperáveis.

Pré-requisitos: Uso básico do terminal e conhecimento de structs, enums, Vec, Result, strings, leitura e escrita de arquivos, testes básicos e laços em Rust. Build Your First Rust CLI é recomendado, mas opcional; não é necessário conhecer clap.

Ambiente de aprendizagem: A LabEx fornece Terminal e Preview, um projeto Rust preparado e curtas sintéticos originais sem som, com cartões de cena visíveis e momentos de observação públicos. O parser, o formatador, a interface de comandos e o reprodutor de arquivos reais são fornecidos. Os rótulos da interface e a saída dos comandos permanecem em inglês.

Perguntas frequentes

Vou escrever um parser completo de legendas ou transcrever vídeos?

Não. O curso usa um subconjunto definido de WebVTT de texto simples. Você implementa a conversão de tempo, o deslocamento de uma legenda e da coleção completa e a proteção da exportação. Suporte completo a WebVTT, transcrição, tradução e codificação de áudio ou vídeo ficam fora do curso.

Uma execução corrigida pode sobrescrever um resultado anterior?

Não. Caminhos de saída existentes são rejeitados. Você aprende a preservar um resultado anterior em um diretório de backup novo e único antes de recriar o nome exigido. Legendas inválidas mais adiante no arquivo são rejeitadas antes da criação da saída, sem deixar uma exportação parcial.

Quanto tempo devo reservar?

O autor estima 140 minutos, incluindo leitura, verificações visuais e recuperação de erros comuns. Essa estimativa ainda não foi validada em um percurso completo com iniciantes.

Professor

labby
Labby
Labby is the LabEx teacher.

Recomendado para Você

no data