Arri Alexa 35 — intervalo dinâmico (dynamic range), latitude e transformações.

Nits.Lab
31 min readMay 5, 2023

por João Castelo Branco

Com a contribuição de Bruno Massao, Rafael Lopes, Rodrigo Bodstein. Com o suporte de Mario Jannini (ARRI).

Assistência de câmera de Tiago Tagawa e maquinária e elétrica de Adriano Martins.

A nits.lab promoveu esse teste da Alexa 35 em parceria com a Arri e a locadora Marc Films.

Esse artigo tem como objetivo apresentar os resultados do teste do sinal da Arri Alexa 35. Estudamos o intervalo dinâmico, a latitude, o nível de ruído em cada índice de exposição, as texturas introduzidas pela Arri e as transformações do espaço de cor e curva gamma Arri LogC4 para SDR e HDR.

Introdução

Esse artigo tem como objetivo apresentar os resultados dos testes laboratoriais do sinal da Alexa 35. Os processos que usamos para avaliar o sinal das câmeras estão descritos no artigo “Metodologia de testes de intervalo dinâmico e de latitude”, no qual discutimos o método que criamos. Para o teste da Alexa 35 passamos a usar valores de código 12 bits como escala de trabalho e não mais a escala IRE. Somente após a análise dos dados convertemos novamente para IRE para facilitar o entendimento do leitor, mas, agora, com uma precisão de mais 2 casas decimais em relação aos testes anteriores. Também usamos um segundo protótipo do chart de ND e, como fonte de luz, utilizamos o Skypanel S60 em 5600k.

O teste foi rodado em MXF/Arriraw. A câmera utiliza um sistema de ISO único e as correções são feitas alterando o EI (Exposure Index), ou “índice de exposição” no menu da câmera. A câmera tem EI de sensibilidade equivalente a ISO 160 a 6400 (aumentando em intervalos de ⅓ de stop) e a partir de EI de ISO 2560 a câmera passa a dar opção de um modo de “Enhanced Sensitivity”, ou sensibilidade aprimorada.

Uma das principais perguntas ao testarmos uma câmera é o que acontece com o sinal em termos de intervalo dinâmico e latitude quando corremos escala com a câmera em cada um desses índices de exposição. Para respondermos a essa pergunta, com a Alexa35 optamos por analisar só os números cheios de ISO padrão, 200, 400, 800, 1600, 3200 e 6400. Acrescentamos uma análise do modo “Enhanced Sensitivity” em EI de ISO 3200 e 6400 e comparamos a melhoria do nível de ruído dos “EI” marcados como “ES” com os demais. Também incorporamos ao teste uma análise das texturas que a Arri trouxe como ferramenta na Alexa 35.

Por fim, há uma reflexão sobre a curva LogC4, introduzida junto com a câmera. Nos instigou o fato de a Arri indicar a exposição do cinza médio na curva em 28% IRE. Desde os primeiros estudos da documentação técnica da câmera passamos a nos perguntar o por quê e as implicações de colocar o tom médio em um nível mais baixo da curva. Assim, decidimos analisar as transformações do LogC4 pra curva 2.4 (SDR Rec 709) e para curva PQ (HDR).

Teste de intervalo dinâmico com o chart de NDs

Protótipo beta do chart de ND.

O chart funciona com o auxílio de uma waveform. Expomos de forma a colocar a janela que emite a maior quantidade de luz no limite de clipar o sinal nas altas luzes. A quantidade de degraus até o sinal se confundir com a base de ruído (noise floor) deveria ser o intervalo dinâmico da câmera. Foi feita uma exposição para cada EI (índice de exposição).

Na imagem da direita temos a exposição do chart no ISO 800 e do lado esquerdo temos a sua correspondente leitura na waveform.

Abaixo vemos as waveforms de cada Índice de exposição da câmera. Os valores sobre cada “degrau” na waveform são a diferença em stops a partir da exposição nominal, nosso “0”, que está sempre em 28% IRE, que é onde a ARRI indica expor o cartão cinza 18% de refletância. Os valores já contam com ajustes feitos para compensar os problemas óticos na interpretação do dado luminoso em cada “degrau”. Foi levado em consideração a resposta da câmera aos dados luminosos do chart e a simulação dos níveis da curva LogC4 pelo Davinci Resolve.

waveform de EI de ISO 800 com dados

É importante notar, como explicado no artigo “Metodologia de testes de intervalo dinâmico e de latitude”, que os dados mais importantes aqui são o ponto de clip (clipping point) e o intervalo que ocupa a base de ruído. A mudança da monitoração para valores de código 12 bits nesse teste (em relação ao uso de valores IRE cheios nos testes anteriores) permitiu que pudéssemos medir com precisão muito maior (de duas casas decimais) esses pontos, sobretudo a espessura da base de ruído. Os dados com os valores exatos de cada degrau foram validados com a ferramenta HDR do DaVinci Resolve, ela também nos ajudou a estabelecer o quanto exatamente cada diferença de nível significa em stops.

Na tabela abaixo vemos as colunas em cinza os valores simulados pelo DaVinci Resolve (em cinza escuro em valor de código 12 bits e em tom claro em IRE) ao lado dos valores fornecidos pela Arri. Em amarelo e laranja são os valores do chart validados pela simulação do DaVinci Resolve com ponto de partida o clipping point (de 100% IRE) e baixando de 1 em 1 stop. Assim, encontramos os níveis exatos para cada degrau do chart.

Os valores em cinza escuro e em laranjado estão expressos em valor de código 12 bits os em amarelo e cinza claro em porcentagem IRE e nas colunos em branco a exposição relativa ao ao cinza médio em stops. As colunas “simul”, são os valores simulados pelo DaVinci Resolve ao lado dos valores fornecidos pela Arri. Em amarelo e laranjado são os valores do chart validados pela simulação do DaVinci resolve. A esquerda da coluna preta os valores tem como ponto de partida a exposição regular do cinza 18%. A direita da coluna preta osvalores passam a ser contados a partir de 100% IRE e baixando de 1 em 1 stop.

EI ISO 200

~16 Stops

1 stops na base de ruído

intervalo de +7,3 a -7,7

base de ruído — entre 9,28% e 9,50% — espessura 0,22%

highlight clipping point — 74,22%

EI ISO 400

~16 Stops

~1 stops misturado à base de ruído

intervalo de +8,3 a -6,7

base de ruído — entre 9,28–9,64% IRE — espessura 0,37%

highlight clipping point — 80,64%

EI ISO 800

~17 Stops

~1 stop misturado à base de ruído

intervalo de +9,3 a -6,7

base de ruído — entre 9,28% — 9,84% — espessura 0,56%

highlight clipping point — 87,08%

EI ISO 1600

~17 Stops

+ 1 stop misturado à base de ruído

intervalo de +10,3 a -5,7

base de ruído — entre 9,28% e 10,21% — espessura 0,93%

highlight clipping point — 93,43%

EI ISO 3200

~17 Stops

~1 stop misturado à base de ruído

intervalo de +11,3 a -4,7

base de ruído — entre 9,28% — 10,62% — espessura 1,34%

highlight clipping point — 100%

EI ISO 3200 ES (sensibilidade aprimorada)

~17 Stops

todos descolados da base ruído

nível de ruído geral — chegamos a ver ⅓ de stop a mais no chart

nível de ruído geral quase tão bom quanto EI de ISO 1600

intervalo de +11 a -4,7 (é possível ver um -5 despontando)

base de ruído — entre 9,45% — 10,47% — espessura 1,03%

highlight clipping point — 100%

EI ISO 6400

~16 Stops

2 stop misturados à base de ruído

intervalo de +11 a -3,7

base de ruído — entre 9,03% e 11,01% — espessura 1,98%

highlight clipping point — 100% — highlight (já perde 1 stop na altas)

EI ISO 6400 ES (sensibilidade aprimorada)

~16 Stops

1 stop misturado à base de ruído

nível de ruído geral quase tão bom quanto EI de ISO 3200

intervalo de +11 a -3,7 ( é possível ver um -4 despontando)

base de ruído — entre 9,03% e 10,47% — espessura 1,44%

highlight clipping point — 100% (já perde 1 stop na altas)

Gráfico de intervalo dinâmico

Resumindo essas informações em um gráfico temos o seguinte:

As linhas mais finas representam intervalos de 1/3 de stop, as linhas de espessura média representam 2/3 de stop e a linhas regulares, as mais grossas, representam 1 stop cheio.

Teste de intervalo dinâmico correndo escala

Para esse teste usamos como fonte de luz um Skypanel S60 e um Orbiter. Usamos uma Arri/Zeiss Master Prime 50mm como objetiva. Demos prioridade para correr a escala pelo diafragma, em seguida, ao esgotar as possibilidades de abertura, partimos para o obturador e nas exposições mais escuras cortamos ainda 1 stop no dimer das fontes de luz (medidos pelo fotômetro e o pela waveform).

EI de ISO 200

Clipamos com pouco mais de 8 stops de exposção, contra +7,3 na medida com o chart validado no DaVinci Resolve, como vimos na sessão anterior do artigo.

Com -7 stops os niveis do cartão já encostam com a base de ruído — como vemos na waveform ao lado da “expo -7”, muito semelhante ao percebido no chart de ND, no qual marcamos em -7,7 stops o ponto no qual o sinal enterra.

EI de ISO 400

Em EI de ISO 400 também tivemos cerca de +1 stop a mais do que a medida no chart de NDs.

Aqui, com -7 stops os niveis do cartão já encostam com o noise floor. Também se repete o fenomeno de termos uma leitura semelhante a do chart de ND, em que marcamos -6,7 stops válidos.

EI de ISO 800

Em EI de ISO 800 seguimos a tendencia e tivemos cerca de +1 stop a mais do que a medida no chart de NDs.

Em EI de ISO 800, percebemos os níveis do cartão cinza enconstarem na base de ruído com -7 stops de exposição. No teste do chart de ND também tivemos uma leitura parecida nas baixas — com -6,7 stops válidos. Curiosamente também se repete o fenomeno do sinal encostar no noise floor em um ponto semelhante ao EI de ISO 400.

EI de ISO 1600

Em 1600 seguimos a tendencia e tivemos cerca de +1 stop a mais do que a medida no chart de NDs.

Em EI de ISO 1600, com -6 stops os niveis do cartão já encostam com o noise floor. No teste com o chart a leitura também foi semelhante, a mistura completa do sinal com o base de ruído se deu em EI 1600, com -5,7 stops válidos.

EI de ISO 3200

No +5 detectamos um problema de exposição que foi corrigido nas exposições seguintes.

Em 3200 tivemos cerca de +2/3 stop a mais do que a medida no chart de NDs.

Em EI de ISO 3200, com -5 stops os niveis do cartão já encostam com o noise floor. No teste com o chart de NDs contamos -4,7 stops vlidos na baixas.

EI de ISO 6400

Assim como em EI 3200, em 6400 tivemos cerca de +2/3 stop a mais do que a medida no chart de NDs.

Em EI de ISO 6400, com -4 stops os niveis do cartão já encostam com o noise floor. No chart de ND contamos -3,7 stops válidos nas baixas.

Sobre a diferença entre teste com o chart e o teste com stand-in

Nas altas luzes tivemos 1 stop a mais de margem entre o teste com chart e com a exposição num cenário real. Esse fenômeno já foi percebido em outros testes e atribuímos a perda de contraste com a passagem da luz pela objetiva. No teste com o chart nós compensamos essa perda, já aqui não faria sentido. Nos índices de exposição (EI) de ISO 3200 e 6400 a perda é de somente 2/3, isso se deve ao fato de que não havia mais a margem de 1 stop para o sinal clipar, assim ele clipa antes.

Nas baixas luzes a diferença com o teste de NDs foi de cerca de 1/3 de stop, o que consideramos como muito pequena, ao passo que estamos analisando a partir da representação visual dos níveis na waveform.

Ainda que esse teste seja interessante, porque demonstra o comportamento do sinal em uma situação real de filmagem, evitamos colocar uma tabela com indicação do intervalo dinâmico medido com esse método, porque essas medidas iriam mudar sensivelmente caso utilizássemos outra objetiva ou até mesmo outro cartão cinza. Recomendamos usar a tabela feita no teste laboratorial com o chart para contar o intervalo dinâmico da câmera. Contudo, ainda assim podemos ver a semelhança dos resultados, que aponta para a capacidade fenomenal da câmera em responder às altas luzes.

Latitude

O teste de latitude mede a capacidade do sinal em aguentar correções de nível. O nível considerado aceitável foi estabelecido durante o teste da Sony Venice 2 e seguimos usando um nível de ruído semelhante como parâmetro. Nas altas o critério é objetivo, pois contamos ponto onde o sinal clipa.

Latitude EI de ISO 200

Latitude nas altas

  • +6 — clipa branco (N 9.5/ Munsell Notation)
  • +7 — clipa os tons de pele branca
  • +8 —quase clipa o cartão cinza (falta >1/3 de stop)

Latitude nas baixas

  • -4 —nível de ruido aceitável
  • -7 — ruído da base atinge tons médios

Latitude EI de ISO 400

Latitude nas altas

  • +7 — clipa branco (N 9.5/ Munsell Notation)
  • +8 — clipa os tons de pele branca
  • +9 — quase clipa o cartão cinza (falta >1/3 de stop)

Latitude nas baixas

  • -3 — nível de ruido aceitável
  • -6 — ruído da base atinge tons médios

Latitude EI de ISO 800

Latitude nas altas

  • +8 — clipa branco (N 9.5/ Munsell Notation)
  • +9 — clipa os tons de pele branca
  • +10 — quase clipa o cartão cinza (falta >1/3 de stop)

Latitude nas baixas

  • -2 — nível de ruido aceitável
  • -5 — ruído da base atinge tons médios

Latitude EI de ISO 1600

Latitude nas altas

  • +9 — clipa branco (N 9.5/ Munsell Notation)
  • +10 — clipa os tons de pele branca
  • +11 — quase clipa o cartão cinza (falta >1/3 de stop)

Latitude nas baixas

  • -1 — nível de ruido aceitável
  • -4 — ruído da base atinge tons médios

Latitude EI de ISO 3200

Latitude nas altas

  • +10 — clipa branco (N 9.5/ Munsell Notation)
  • +11 — clipa os tons de pele branca
  • +12 — quase clipa o cartão cinza (falta >1/3 de stop)

Latitude nas baixas

  • A exposição regular é o limite do nível de ruido aceitável
  • -3 — ruído da base atinge tons médios

Latitude EI de ISO 6400

Latitude nas altas

  • +11 — clipa branco (N 9.5/ Munsell Notation)
  • +12 — clipa os tons de pele branca
  • +13 — quase clipa o cartão cinza (falta >1/3 de stop)

Latitude nas baixas

  • +1 — nível de ruido aceitável (a exposição regular produz resultado insatisfatório, contudo a superexposição em 1 stop corrigida na pós resolve o problema)
  • -2 — ruído da base atinge tons médios

Gráfico de latitude

Esses níveis de latitude podem ser resumido no seguinte gráfico:

Comparação de nível de ruído em cada ídices de exposição

No teste de latitude já convencionamos o limite do nível de ruído aceitável do EI de ISO 3200 (já baseado nos níveis de testes anteriores). Em 6400 já consideramos a exposição regular com um nível demasiadamente alto.

Podemos perceber aqui o comportamento da ferramenta de redução de ruído da Arri, que faz com os EI chamados de “enhanced sensitivity” (ES) sejam, de fato uma alternativa interessante. Notamos que tanto o 6400 ES quanto o 3200 ES são sensivelmente melhores que o 6400 e o 3200 sem o tratamento nativo de ruído.

esq. EI 3200, dir. EI 3200 ES — é possivem ver nitidamente que o degrau circulado fica mais limpo com o modo ES ativo a ponto de descolar o sinal da base de ruído
esq. EI 6400, dir. EI 6400 ES — notamos o mesmo fenômeno

Nas waveforms acima podemos comparar o nível de ruído de EI 3200 com 3200 ES e 6400 com 6400 ES. A espessura menor dos degraus e da base de ruído dos testes com o modo ES ativado demonstra que há, de fato, menos ruído. Impressiona o fato de ganhar um degrau (1 stop) de sinal descolado da base de ruído.

Contudo, percebemos também que os índices de exposição (EI) com o modo ES ativados não são tão limpos quanto o EI anterior. Ou seja, 6400 ES é melhor que o 6400, mas não tão bom quanto o 3200 e o 3200 ES é melhor que o 3200, mas não tão bom quanto o 1600.

A impressão que temos visivelmente nas imagens da nossa stand-in pode ser verificada de maneira mais exata se comparamos a espessura da base de ruído de cada índice de exposição.

Texturas

Na Alexa 35 a Arri implementou uma série de texturas, que, na prática, parecem as emulações de grão, presentes nos principais softwares de finalização de imagem. Diferente destas ferramentas, as texturas da Arri são aplicadas à imagem ainda na câmera. Elas não são metadados que irão se incorporar ou não na pós-produção, são texturas que ficam “queimadas” na imagem desde que o rec é ligado. Uma explicação mais detalhada pode ser encontrada no white paper da Arri sobre as texturas.

Segundo a Arri, sempre há alguma textura aplicada à imagem, sendo que a padrão seria a que eles chamam de “K445”. Seguem os exemplos com as texturas que já vem instaladas na câmera:

Para aqueles que gostam e sentem falta do grão da película de cinema essas texturas podem agradar. Além disso, nos fluxos de trabalhos de pós-produção atuais, é comum o uso de emulação de grão. Acrescentar o grão à imagem pode ser muito útil para normalizar um nível único de ruído, que dê unidade ao filme, com uma textura que é tida como mais agradável do que o ruído digital.

Com as texturas, esse tipo de opção pode ser feito pelo fotógrafo no momento da filmagem. Mas fica como questão a real vantagem de queimar na imagem um atributo que pode ser incorporado com precisão por ferramentas já tão populares na pós-produção.

Sobre as transformações do LogC4 para espaço de display

Durante os testes o nível baixo de exposição recomendado pela para expor o LogC4 em 28% IRE chamou muito a atenção. Primeiro porque é sem precedente uma curva gamma intermediária (log) com valores em si tão baixos para a exposição do cinza médio. Mas também porque fizemos a transformação para curva 2.4 (em um display Rec 709) e para PQ (em um display calibrado em 2020 limitado em P3) e nos dois casos o resultado nos pareceu um pouco abaixo do que esperado para uma transformação como estamos acostumados com outras câmeras, incluindo as gerações anteriores de câmera da Arri.

Exposição regular, como prposto pela ARRI. Imagem em LogC4.

Transformação Para SDR

Imagens em gamma 2.4 em Rec 709
Imagens em gamma 2.4 em Rec 709
Imagen sem LogC4
Imagens em gamma 2.4 em Rec 709

Transformação Para HDR

Vale notar que nos exemplos abaixo, as imagens com transformações vão de LogC4 para curva PQ em espaço de cor Rec 2020, o que faz com que as imagens irão parecer lavadas ao serem visualidas em uma tela de computador. Também é importante perceber que os valores não estão mais na escala IRE, mas em nits, que uma escala que marca a quantidad e luz emitida pelo display. É uma medida mais adequada para a monitoração da curva PQ, que tem valores exatos de luminãcia para cada valor de código tonal.

Imagens em PQ Rec 2020
Imagem em PQ Rec 2020
Imagem em LogC4
Imagens em PQ Rec 2020

Nota sobre as transformações e os resultados esperados

Quando usamos os processos mais comuns de transformação de espaço de cor e curva gamma — o LUT do fabricante, o Color Space Transform (CST) do DaVinci Resolve ou o ACES — os valores IRE após a transformação para Rec 709 — curva 2.4 — ficaram abaixo dos 40% IRE. Nas transformações para HDR, curva PQ, as transformações ficaram abaixo dos 15 nits. Esses níveis, em especial no HDR, nos pareceu ligeiramente mais escuros do que esperávamos.

Como forma de checar esses valores, removemos o “forward OOTF” do Color Space Transform, que serve para compensar perceptualmente a imagem para o display, e os valores estavam corretos.

Notamos que, com os processos de transformação padrão para espaço de display os níveis ficam mais próximos do esperado com cerca de mais 0,5 stop de exposição em SDR. Assim, ajustando o cartão cinza em 31% IRE, temos resultados mais próximos de 45% IRE em Rec 709.

Já nas transformações padrão para HDR (curva PQ em Rec 2020), percebemos os níveis ficam mais próximos do esperado com cerca de mais 1 stop de exposição. Para obter esse resultado temos que expor o cartão cinza a 34% IRE. Assim conseguimos um cinza médio mais próximo dos 28 nits num display calibrado em HDR.

Conclusão e algumas notas sobre as tabelas, as referências e as implicações técnicas do comportamento da curva LogC4

Importante dizer que a Arri publicou em Novembro de 2022 um documento com as especificações técnicas do LogC4 os valores são muito semelhantes aos que encontramos aqui. O ponto em que o sinal enterra foi exatamente o mesmo que encontramos, 380 em valor de código 12bits ou 9,28% IRE. Esse é o ponto exato onde identificamos como o limite inferior da base de ruído. No entanto, se olharmos a tabela da Arri na converção em stops (a cada 1/3 de stop) o valor mais baixo da tabela é o de -6 1/3 stops, em 9,99% IRE . Na tabela onde a referência de conversão é a cada 1% IRE, temos o valor de 10% como -6,3 stops, e logo em seguida, na primeira casa o valor da base ruído a 9,28% IRE, descrito apenas como “Black” (sem identificar o quanto em stops cabe nesse intervao).

O que notamos é que a curva LogC4 é extremamente achatada quando se aproxima da base:

ARRI LogC4 Curve — valores de código Float e 12-bit por exposição relativa ao cinza 18% em stops (fig 2 do documento da ARRI).

Enquanto na parte superior da curva, acima do cinza médio a progressão é bem linear, com a diferença entre stops de cerca de 6,5% IRE, esse intervalo diminui rapidamente conforme baixamos do tom médio . Entre -3 e -4 estamos com uma diferença de 2,32%; entre -4 e -5 de 1,42%; entre -5 e -6 já estamos em 0,81%. Olhando a tabela acima podemos supor que a diferença entre -6 e -8 stops é mínima em valores IRE. Tanto no teste com stand-in, quanto no teste com o chart de NDs chegamos ao número de cerca de 2 stops entre 9,28% e 10% IRE.

Na simulação do DaVinci Resolve, que é o dado mais preciso que temos (que não tem a inferferencia ótica e nem o risco de erros de exposição), o sinal para de modular em exatos -8,30 stops, ao alcançar 9,28% IRE (389 em valor de código 12bits).

Isso reforça a ideia defendida pela Arri de que não se deve usar codecs inferiores a 12 bits para manipular e arquivar materiais filmados em LogC4, caso contrário a diferença tonal na baixas seriam demasiadamente pequenas.

Há um benfício óbvio em fotografar em EI de ISO 200 em relação a quantidade geral de ruído, é fato que temos um sinal mais limpo expondo nesse EI. Contudo, mesmo com o Arriraw rodando com 13 bits, em termos de informação aproveitável nas baixas. Talvez o benefício de termos informção abaixo de 10% IRE não seja uma grande vantagem, uma vez que em termos de quantidade de informação temos muito pouca diferença tonal e em troca perdemos um boa quantidade informação nas altas luzes.

O contrario também poderíamos ponderar em relação ao EI de ISO 6400. Às custas de termos apenas 3,7 stops abaixo do cinza médio, esse índice de exposição terá os mesmos 11,3 stops de alcance das altas do que o EI de ISO 3200, porque o sinal irá igualmente clipar ao alcançar esses 11,3 em 100% IRE. Em relação ao EI de ISO 200 aqui temos ainda a desvantagem da quantidade maior de ruído.

A antiga curva LogC da Arri nos dava +/- 7 stops para cada lado, o que era muito interessante para transformações para SDR, que entrega menos de 4 stops para cada lado (altas e baixas) após a transformação para espaço de display (gamma 2.4 em Rec 709).

Com as escolhas e possibilidades técnicas da Alexa 35, de captura da imagem a 18 bits linear, processadas com o Arriraw de 13 bits e com a curva LogC4, a Arri conseguiu garantir um intervalo dinâmico impressionante e uma quantidade sem precedente de informação nas altas luzes: +9,3 stops em EI de ISO 800, +10,3 em 1600 e +11,3 em ISO 3200.

Esse caminho trilhado pela Arri parece muito interessante pensando no desenvolvimento da tecnologia HDR. A curva PQ dará cerca de 7 stops de intervalo dinâmico para as baixas até alcançar o preto puro num display ideal. Já nas altas alcaçamos os 1000 nits com cerca de +5 stops. Mas esse é o ponto da tecnologia HDR em 2023 nas melhores telas encontradas no mercado consumidor. Em breve, telas alcançarão os 4000 nits, então poderemos chegar aos +8 stops nas altas luzes. Quando chegarmos lá, a Alexa 35 e as imagens produzidas por ela, ainda serão uma possibilidade técnica contemporânea.

--

--

Nits.Lab

Nossa missão é pensar a produção audiovisual de maneira eficiente, equilibrando soluções técnicas e criativas. contato@nitslab.com.br