Use formatos livres e abertos

Um dos problemas de compatibilidade que fez o Linux sofrer um pouco foi o uso de formatos fechados (ou proprietários). Um formato fechado faz com que apenas um programa, propriedade do dono, o decodifique. Esta prática limita a interoperabilidade entre programas diferentes e gera o que se conhece como Aprisionamento Tecnológico.

Se apenas o proprietário do programa pode ter um programa que decodifique o formato, ele é quem precisa tratar a interoperabilidade com outros programas e sistemas. Não é vantagem competitiva para ele que outros programas decodifiquem o formato, e também não é vantagem oferecer suporte para outros sistemas operacionais nichados. Formatos abertos eliminam esse problema e garantem suporte entre diferentes programas e plataformas.

Com o passar do tempo, os formatos abertos foram se popularizando e os problemas de compatibilidade com formatos proprietários foram diminuindo, em parte graças à popularização da web. Não há mais tanto problema de compatibilidade de arquivos entre Windows e Linux, mas ainda assim vou recomendar o uso de formatos abertos. O aprisionamento tecnológico ainda é um problema em softwares profissionais e de aplicações específicas, mas acredito que deixou de ser para o usuário comum.

A Wikipedia tem uma lista de formatos abertos. Vou discutir os mais comuns aqui.

Texto

Office

O exemplo mais clássico de aprisionamento tecnológico em formatos são os antigos formatos do Microsoft Office (.doc, .ppt, .xls, …). Esses formatos são compatíveis apenas com o Office da Microsoft e mais ou menos compatíveis com outras suítes de office por meio de engenharia reversa.

A partir do Office 2007, a Microsoft criou um novo formato aberto chamado OOXML (Office Open XML). É o formato em que a extensão termina com ’x’ (.docx, .xlsx, .pptx, …). Esse formato também é padronizado pela ISO (International Standards Organization), uma organização internacional que define padrões. Porém, apesar de aberto, ele ainda continua sendo um formato muito centrado no Microsoft Office e o desenvolvimento também é muito influenciado pela Microsoft, questionando se ele é realmente “livre” apesar de aberto.

O formato livre e aberto correspondente é o OpenDocument (extensões .odt (OpenDocument Text), .odp (OpenDocument Presentation), .ods (OpenDocument Spreadsheet), …) e é usado por padrão no LibreOffice, porém esse não é o “formato do LibreOffice”. Uma outra suíte que implementa o OpenDocument é o Calligra.

Recomendação: OpenDocument, seguido de OOXML.

Software: LibreOffice.

Ebook

A Amazon possui seu próprio formato de livros (.mobi) “meio aberto” que possui algumas extensões proprietárias. O formato aberto correspondente é o ePub (.epub).

Recomendação: ePub.

Compressão

O exemplo mais clássico de formato fechado dessa categoria é o RAR (.rar), usado pelo WinRAR. É um formato que faz tanto compactação (juntar vários arquivos em um) quanto compressão (reduzir o tamanho do arquivo compactado). Esse formato também passou por engenharia reversa para garantir compatibilidade com outros programas. No Windows, um software livre compatível com vários formatos de compactação e compressão é o PeaZip.

No Linux, essas duas funcionalidades costumam ser separadas. Os tipos de arquivos compactados geralmente são .tar.gz (.tar (de Tar) é a compactação e .gz (de Gzip) a compressão) – ambos formatos livres e abertos. Essa separação permite compactar sem compressão e comprimir outros tipos de arquivo (por exemplo, .pdf.gz).

Outros formatos livres que unem compactação e compressão são o 7-Zip (.7z) e o formato universal, Zip (.zip). Ainda assim, o ideal é separar as duas coisas e usar .tar.gz.

Recomendação: Tar (.tar) com ou sem Gzip (.gz) ou Zip (.zip) ou 7-zip (.7z).

Software: PeaZip (Windows). No Zorin um programa para esse fim já é incluído por padrão (chamado de “Gerenciador de arquivos compactados”).

Mídias audiovisuais

Esse tipo de formato tem um problema diferente. Os algoritmos de compressão audiovisual mais usados são patenteados dentro de uma patent pool. Cada licenciante precisa pagar royalties para os licenciadores das patentes. O maior licenciador de patentes é a Via-LA.

Aqui cabe algumas distinções entre o algoritmo de compressão e o container.

O algoritmo de compressão é o que faz um sinal áudiovisual (vídeo, áudio, imagem) ter um tamanho menor. O objetivo desse algoritmo é obter o menor tamanho de arquivo com o mínimo de perdas perceptíveis no sinal. Como exemplo, vamos supor que um formato de música sem compressão como os utilizados em CD (arquivos .wav) represente uma música num arquivo de 30MB. O objetivo da compressão é transformar esse dado em, por exemplo, 3MB com o mínimo possível de perdas perceptíveis. O mesmo vale para vídeos e imagens.

O container é o que contém os dados comprimidos. Precisamos de containers porque essas mídias precisam de múltiplos dados (vídeo, áudio, legenda, outros) no mesmo formato. Alguns containers são projetados para formatos patenteados, outros para formatos livres, outros para todos os formatos.

Exemplos de algoritmos de compressão:

Exemplos de container:

Recomendações:

Software (no Zorin OS): Handbrake (conversão de vídeos), SoundConverter (conversão de áudio), Switcheroo (conversão de imagens).

Sobre mim:

Monaĥo (Vinicius) é ativista vegano e de software livre.

Contato:

Mastodon