.png)
Em primeiro lugar, deixe-me dizer que este é na verdade um pedido de script, então se eu estiver postando no lugar errado, por favor me avise e solicitarei o encerramento disso e irei para lá - acabei de encontraraskubuntupara ser omais útilemenos paternalistados fóruns que visito, então queria tentar aqui primeiro.
Estou executando o Ubuntu LTS 16.04 Destop, se isso importa.
O que estou solicitando é umarquivo bash(não precisa ser bash, é mais provável que eu entenda como funciona para poder aprender com a experiência, se for) que passará por um único diretório específico cheio de arquivos de mídia (especificamente filmes; mp4
, mkv
, avi
, mpg
são as únicas extensões) e produzirá um arquivo de log chamado "0.log"
(para que seja mais fácil encontrá-lo no topo da lista) e fornecerá as seguintes informações em um formato fácil de ler:
- Nome do arquivo
- Extensão
- Duração do filme
- Dimensões do filme (largura x altura)
- Há algum erro com o arquivo
- se for possível, qual é o erro
Posso reunir todas essas informações usando a função ffmpeg, mas só consigo fazer uma de cada vez, colocando manualmente as informações em uma planilha, o que, como tenho certeza que você pode entender, está demorando um tempo infinito*.
*nãoestritamenteverdadeiro
ao digitar:
ffmpeg -i filename.ext
As informações necessárias aparecem na lista de bibliotecas utilizadas, por exemplo, uma saída poderia ser:
.......
other stuff that i don't need
.......
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 2.101 / 1. 2.101
libpostproc 53. 3.100 / 53. 3.100
[aac @ 0x142fc20] element type mismatch 3 != 0
Input #0, matroska,webm, from '13 (2010).mkv':
Metadata:
encoder : libebml v1.2.0 + libmatroska v1.1.0
creation_time : 2011-07-29 21:37:53
Duration: 01:37:12.19, start: 0.000000, bitrate: 1999 kb/s
Stream #0:0: Video: h264 (High), yuv420p, 1280x536 [SAR 1:1 DAR 160:67], 24 fps, 24 tbr, 1k tbn, 48 tbc (default)
Stream #0:1: Audio: aac (HE-AAC), 48000 Hz, 5.1, fltp (default)
Stream #0:2: Subtitle: subrip (default)
A primeira linha após a lista de libs é o exemplo de um possível erro com o arquivo, ela é omitida quando o arquivo é verificado *não há substituição "este arquivo está ok", simplesmente não está lá. Existem vários erros que podem ocorrer, então acho que você só precisa verificar entre a biblioteca final (neste caso, libpostproc; e Input #0; para ver se há alguma coisa lá ou não.
Você pode ver a Duração (neste caso 01:37:12.19) e as Dimensões (neste caso 1280x536).
Alguém pode fazer isso por mim ou me indicar um software existente que possa fazer isso. Eventualmente, a saída será colocada em uma planilha, mas eu mesmo posso lidar com a formatação e outras coisas com bastante facilidade, na verdade só preciso de dados brutos para trabalhar. Ou mostre-me como fazer sozinho. Sofro de danos cerebrais leves que mataram minha memória de curto prazo, por isso estou lutando para usar tutoriais on-line para tentar resolver isso.
Agradecendo antecipadamente,
Danny