Os intervalos de busca dependem de quantas vezes o fluxo de transporte envia informações de sincronização. Isso realmente depende de como foi criado - o MPEG TS permite definir esse intervalo individualmente e, no seu caso, provavelmente está faltando apenas. Não tenho certeza se é fácil consertar um arquivo TS existente, então prefiro converter o Transport Stream em um container mais orientado ao usuário como:
- MKV
- MP4
- MOV
Note que o AVI não é uma opção, já que seu suporte para o h.264 é ... bem, não é bom.
Sua primeira opção é tentar copiar os fluxos de bits brutos de áudio e vídeo. Com o FFmpeg , isto é tão simples como:
ffmpeg -i input.ts -c:v copy -c:a libfaac out.mp4
Você pode instalar o FFmpeg no Windows fazendo o download de uma compilação , no OS X através de Homebrew com brew install ffmpeg
e no Linux por compilando a partir da fonte .
Se você quiser reduzir o tamanho do vídeo, pode tentar definir um fator de taxa constante ( algo como "qualidade constante" ) e recodificá-lo usando x264, o codificador h.264 mais popular:
ffmpeg -i input.ts -c:v libx264 -crf 24 -c:a libfaac out.mp4
Defina CRF para qualquer coisa entre 19 e 25, ou até mais. Quanto mais pior a qualidade, menor o tamanho do arquivo.