KILOVIEW-logo-500x500

Fundada em 2011, a Kiloview é uma fornecedora profissional de soluções de transmissão de vídeo baseada em IP, com produtos em toda a gama de codificação, decodificação, conversão, comutação e transmissão de vídeo baseada em IP, incluindo SDI/HDMI (HD ou 4K UHD) para IP via IP H.264/H.265/NDI sobre Ethernet, conexão Wi-Fi ou 4G-LTE/5G-LTE, etc.

Encoder Mochilink P1 e P2

O encoder de vídeo da série P Kiloview é um equipamento de codificação profissional de alta tecnologia, especialmente projetado para aplicações móveis.

Ele adota o KiloLink – algoritmo patenteado pela Kiloview para resolver o problema de conectividade. Ideal para transmissão ao vivo ao ar livre em cenários como eventos ao vivo, concertos, esportes, transmissão em campo e muito mais, a qualquer hora, em qualquer lugar.

A série P Kiloview apresenta latência ponta a ponta ultrabaixa (<1s), perfeita para produção de programa remoto ou interação de grupo.

O P1 suporta entrada SDI, enquanto o P2 suporta entrada HDMI.

Obrigado por se inscrever no
Blackmagic Week - Edição Rio de Janeiro - by Seegma

Uma oportunidade única de aprender com os especialistas da marca em uma imersão dentro do mercado audiovisual.

Garanta a sua vaga no nosso grupo exclusivo do WhatsApp!

/* ============================================================ BLOCO 4 — JavaScript ONDE COLAR: WPCode → Novo Snippet → "HTML/JavaScript" Localização: "Rodapé do site" (Before ) Condição: mostrar APENAS em /service-center-blackmagic/ ============================================================ */ (function () { 'use strict'; /* ============================================================ * CONFIGURAÇÃO -- ALTERE APENAS ESTE BLOCO * ============================================================ */ var CONFIG = { baseUrl: 'https://br.gpinnacle.com/wp-content/uploads/2026/05/exploded', fileName: 'frame_{n}', ext: 'jpg', totalFrames: 120, zeroPad: 3, scrollPerFrame: 14, annotations: [ { id: 'pnAnn1', enter: 0.08, leave: 0.28 }, { id: 'pnAnn2', enter: 0.30, leave: 0.50 }, { id: 'pnAnn3', enter: 0.52, leave: 0.72 }, { id: 'pnAnn4', enter: 0.74, leave: 0.90 }, ], ctaAt: 0.92, headlineFadeAt: 0.06, }; function boot() { if (typeof gsap === 'undefined' || typeof ScrollTrigger === 'undefined') { setTimeout(boot, 200); return; } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', init); } else { init(); } } boot(); function init() { var section = document.getElementById('pn-exploded'); if (!section) return; gsap.registerPlugin(ScrollTrigger); var canvas = document.getElementById('pnCanvas'); var ctx = canvas.getContext('2d'); var loader = document.getElementById('pnLoader'); var loaderFill = document.getElementById('pnLoaderFill'); var loaderLabel = document.getElementById('pnLoaderLabel'); var progressFill = document.getElementById('pnProgressFill'); var counterNum = document.getElementById('pnCounterNum'); var counterTotal = document.getElementById('pnCounterTotal'); var headline = document.getElementById('pnHeadline'); var cta = document.getElementById('pnCta'); var frames = []; var currentFrame = 0; var ticking = false; var totalFrames = CONFIG.totalFrames; var sectionHeight = totalFrames * CONFIG.scrollPerFrame + window.innerHeight; section.style.height = sectionHeight + 'px'; if (counterTotal) { counterTotal.textContent = '/ ' + padNum(totalFrames, CONFIG.zeroPad); } preloadFrames(function () { if (loader) loader.classList.add('pn-loader--done'); resizeCanvas(); drawFrame(0); setupGSAP(); }); function preloadFrames(onComplete) { var loaded = 0; var errors = 0; var total = totalFrames; for (var i = 1; i <= total; i++) { (function (idx) { var img = new Image(); img.src = buildUrl(idx); img.onload = function () { frames[idx - 1] = img; loaded++; updateLoader(loaded + errors, total); if (loaded + errors === total) onComplete(); }; img.onerror = function () { frames[idx - 1] = frames[idx - 2] || null; errors++; updateLoader(loaded + errors, total); if (loaded + errors === total) onComplete(); }; })(i); } } function updateLoader(done, total) { var pct = Math.round((done / total) * 100); if (loaderFill) loaderFill.style.width = pct + '%'; if (loaderLabel) loaderLabel.textContent = 'Carregando vista técnica \u2014 ' + pct + '%'; } function resizeCanvas() { canvas.width = canvas.offsetWidth; canvas.height = canvas.offsetHeight; drawFrame(currentFrame); } function drawFrame(idx) { var img = frames[idx]; if (!img) return; var cw = canvas.width; var ch = canvas.height; var iw = img.naturalWidth || img.width; var ih = img.naturalHeight || img.height; var scale = Math.min(cw / iw, ch / ih); var dw = iw * scale; var dh = ih * scale; var dx = (cw - dw) / 2; var dy = (ch - dh) / 2; ctx.clearRect(0, 0, cw, ch); ctx.drawImage(img, dx, dy, dw, dh); } var resizeTimer; window.addEventListener('resize', function () { clearTimeout(resizeTimer); resizeTimer = setTimeout(resizeCanvas, 150); }); function setupGSAP() { ScrollTrigger.create({ trigger : section, start : 'top top', end : 'bottom bottom', scrub : 1, onUpdate: function (self) { var progress = self.progress; var rawFrame = Math.round(progress * (totalFrames - 1)); var newFrame = Math.max(0, Math.min(totalFrames - 1, rawFrame)); if (newFrame !== currentFrame) { currentFrame = newFrame; if (!ticking) { ticking = true; requestAnimationFrame(function () { drawFrame(currentFrame); ticking = false; }); } } if (counterNum) { counterNum.textContent = padNum(currentFrame + 1, CONFIG.zeroPad); } if (progressFill) { progressFill.style.width = (progress * 100).toFixed(2) + '%'; } if (headline) { var hOpacity = progress < CONFIG.headlineFadeAt ? 1 : Math.max(0, 1 - (progress - CONFIG.headlineFadeAt) / 0.06); headline.style.opacity = hOpacity; headline.style.transform = 'translateX(-50%) translateY(' + (progress * -30) + 'px)'; headline.style.pointerEvents = hOpacity > 0.05 ? 'auto' : 'none'; } CONFIG.annotations.forEach(function (cfg) { var el = document.getElementById(cfg.id); if (!el) return; var visible = progress >= cfg.enter && progress < cfg.leave; var wasVisible = el._pnVisible; if (visible && !wasVisible) { el._pnVisible = true; var fromLeft = !el.classList.contains('pn-ann--right'); gsap.fromTo(en, { opacity: 0, x: fromLeft ? -20 : 20, pointerEvents: 'none' }, { opacity: 1, x: 0, pointerEvents: 'auto', duration: 0.45, ease: 'power2.out' }); } else if (!visible && wasVisible) { el._pnVisible = false; gsap.to(el, { opacity: 0, x: el.classList.contains('pn-ann--right') ? 20 : -20, pointerEvents: 'none', duration: 0.35, ease: 'power2.in' }); } }); if (cta) { var ctaVisible = progress >= CONFIG.ctaAt; var wasCtaVisible = cta._pnVisible; if (ctaVisible && !wasCtaVisible) { cta._pnVisible = true; gsap.fromTo(cta, { opacity: 0, y: 24, pointerEvents: 'none' }, { opacity: 1, y: 0, pointerEvents: 'auto', duration: 0.6, ease: 'power3.out' }); } else if (!ctaVisible && wasCtaVisible) { cta._pnVisible = false; gsap.to(cta, { opacity: 0, y: 24, pointerEvents: 'none', duration: 0.3, ease: 'power2.in' }); } } } }); } function buildUrl(n) { var num = CONFIG.zeroPad > 0 ? padNum(n, CONFIG.zeroPad) : String(n); var name = CONFIG.fileName.replace('{n]', num); return CONFIG.baseUrl + '/' + name + '.' + CONFIG.ext; } function padNum(n, pad) { if (!pad) return String(n); return String(n).padStart(pad, '0'); } } })();