O que é as especificações para Motion JPEG?

votos
26

Estive pesquisando como um louco e não pode encontrar todas as especificações de formato de arquivo para mjpeg.

Qual deve ser o cabeçalho parece? Eu só acrescentar uma série de jpegs após o cabeçalho?

Eu sei que é o normalmente no recipiente .avi, isso tem um formato padronizado para codecs que possam estar nele?

O objetivo é torná-lo em ActionScript 3, mas outros idiomas seria bom porto a partir. Eu tentei olhar para ffmpeg e mplayer mas c não é o meu forte lado (ainda).

Todas as sugestões serão apreciadas!

Publicado 19/05/2009 em 22:39
fonte usuário
Em outras línguas...                            


8 respostas

votos
11

Não há um padrão oficial .

Na prática, na sua forma mais simples, um mjpeg é apenas uma concatenação de arquivos JPEG, um após o outro no mesmo arquivo.

ffmpeg suporta esta usando o -f mjpegou -vcodec mjpeginterruptores.

Decodificadores JPEG que decodificam várias imagens devem lembrar e usar as mesmas tabelas JPEG para as imagens subseqüentes, se essas imagens não fornecem substituições. O padrão jpeg descreve isso como 'fluxos jpeg abreviada,' e libjpeg suporta isso.

Assim, um mjpeg pode conter uma imagem jpeg completo, e depois blocos SOI..EOI posteriores que não especificam esses cabeçalhos que são duplicados para o quadro anterior.

Respondeu 18/12/2009 em 23:46
fonte usuário

votos
9

Aparentemente, não existe um único specifiaction. De wikipedia :

críticas

Ao contrário dos formatos de vídeo especificados em normas internacionais, como MPEG-2 e o formato especificado no padrão JPEG ainda imagem de codificação, não há nenhum documento que define um único formato exato que é universalmente reconhecido como uma especificação completa do “Motion JPEG” para usar em todos os contextos. Isto levanta preocupações de compatibilidade sobre saídas de arquivo de diferentes fabricantes.

Respondeu 19/05/2009 em 22:56
fonte usuário

votos
3

O IETF tem o padrão definido como RFC 2435 . Eu não sei o que codecs vai apoiar isso, mas esta parece ser a especificação de dados.

Respondeu 19/05/2009 em 22:44
fonte usuário

votos
2

MJPEG sobre HTTP, pelo menos, tem uma implementação bastante normal. Ele é retornado como uma resposta HTTP multi-parte.

O artigo da Wikipedia discute o mecanismo exato:

https://en.wikipedia.org/wiki/Motion_JPEG#M-JPEG_over_HTTP

Respondeu 18/12/2009 em 23:40
fonte usuário

votos
1

Não existe uma única especificação oficial. Mas algumas empresas fizeram a sua própria especificação:

QuickTime File Format Specification ( https://developer.apple.com/library/content/documentation/QuickTime/QTFF/QTFFPreface/qtffPreface.html )

Movimento Formato JPEG, QuickTime M-JPEG Especificação ( http://staticky.com/dl/ftp.apple.com/developer/Development_Kits/QuickTime/Programming_Stuff/Documentation/QuickTime-JPEGSpec.pdf )

Microsoft OpenDML AVI Extensions File Format ( http://www.morgan-multimedia.com/download/odmlff2.pdf )

Respondeu 04/04/2012 em 05:12
fonte usuário

votos
0

Você pode encontrar este documento em outros lugares na rede que eu não sei qual é uma fonte autorizada: http://www.cajunbot.com/wiki/images/7/71/USB_Video_Payload_MJPEG_1.1.pdf

Respondeu 18/07/2015 em 01:53
fonte usuário

votos
0

Depois de muitos dias de pesquisa na Internet, eu não poderia encontrar a documentação completa, quer, nem um exemplo de binário do protocolo de arquivo.

Para o recurso mais informativo que eu encontrei até agora, ver http://www.digitalpreservation.gov/formats/fdd/fdd000127.shtml (Motion JPEG 2000 File Format - tem muitos "referências úteis URLs" no final, incluindo "Visão de movimento JPEG2000" , que, pelo menos de alguma forma para responder a pergunta).

Você vai encontrar abundantes da Apple MOV PDF, que abrange, aparentemente, Motion JPEG, mas levaria semanas para decifrar. Eu só posso sugerir aos outros que o URL acima é um bom ponto de partida para futuras pesquisas.

Respondeu 18/11/2013 em 19:35
fonte usuário

votos
0

No movimento JPEG cada quadro de vídeo entrelaçado ou campo de uma sequência de vídeo digital é comprimido separadamente como uma imagem JPEG. Então especificação de cada quadro (como fator de qualidade) armazenados em É Header. em outras palavras o seu problema reduzidos a isto: "Como ler o cabeçalho de um quadro em um vídeo?"

Talvez você possa usar de Phil Sallee JPEG Toolbax. Note-se que ele tem alguma função para ler / escrever uma imagem do JPEG e alguns para exibir DCT Matrizes, Fator de Qualidade, Huffman Tabelas de codificação, etc.

Se você encontrar como usar essa função em vídeo e / ou como ler a especificação de um vídeo MJPEG por favor, compartilhe conosco

Respondeu 11/06/2013 em 10:07
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more