`file` não mostra o tipo MIME adequado para arquivos .m2ts

`file` não mostra o tipo MIME adequado para arquivos .m2ts

Preciso definir o tipo MIME de vários arquivos de vídeo e estou com um problema.m2tsarquivos. Antes de descobrir isso, usei fileo utilitário com -iLchaves e analisei a saída com sed. Hoje descobri que file5.15 define o tipo mime de arquivos .m2ts como 'application/octet-stream'. Ok, atualizei o pacote e agora ele os chama apenas de 'binários'. Quando eu esperava vídeo/alguma coisa.

Lendo sobre utilitários que fazem trabalhos semelhantes, tentei xdg-mime query filetype. O problema xdg-mimeé que ele olha apenas para a extensão do arquivo. Ele define .m2ts como 'video/mp2t', mas mostra-o para qualquer arquivo de texto vazio com essa extensão.

Talvez fosse correto chamar os arquivos .m2ts de stream porque na verdade é um stream, mas então por que no banco de dados mime a extensão está vinculada a 'video/mp2t'?

$ grep m2ts /usr/share/mime/video/mp2t.xml
  <glob pattern="*.m2ts"/>

Responder1

Graças ao link fornecido por @Patrick entendi que filenão tem nada a ver shared-mime-infoe seu banco de dados está em /usr/share/misc/magic.mgc. Então procurei no Google por um ~/.magicarquivo com uma correção e encontreiaqui. As linhas estão faltando espaços, então eu adiciono aqui

4 byte 0x47
>5 beshort 0x4000
>>7 byte ^0xF
>>>196 byte 0x47
>>>>388 byte 0x47
>>>>>580 byte 0x47 M2TS MPEG transport stream, v2
!:mime video/MP2T

Responder2

.m2tsé usado para multiplexar áudio, vídeo e outros fluxos, com base em arquivos MPEG-2 transport stream container.

RFC 3555definiu muitos MIME subtypespara fluxo de transporte MPEG-2, incluindo video/mp2t. Então eu acho que é normal quando está limitado a video/mp2t.

informação relacionada