Remastered Gems


The Highest Quality Restoration

Remastered Gems specialises in high-fidelity restoration and remastering of legacy television and film.


QUALITY COMPARISON

Using technology it developed and rigorously tested, the Remastered Gems method outperforms all available consumer tools.
The demonstration below presents a side-by-side comparison of Remastered Gems and other leading consumer upscaling models.

4k (ground truth)4k (ground truth)
downscaled (1024x576)downscaled (1024x576)
remastered gemsremastered gems
topaz rx xltopaz rx xl
topaz starlight 1topaz starlight 1
topaz starlight 2topaz starlight 2
(function(){var WID='gg-widget-f7b5aa47be23-grid',MN=0.5,MX=100,DZ=7,ZM=150;function I(){var W=document.getElementById(WID+'-wrapper'),R=document.getElementById(WID);if(!R){return false}if(R.dataset.gcInit==='true')return true;R.dataset.gcInit='true';var zBtns=W?W.querySelectorAll('.gc-zoom-btn'):[];var uZ=1,pX=0,pY=0,pn=false,sX=0,sY=0,sPX=0,sPY=0,zId=null;function gCI(c){var im=c.querySelector('img'),cW=c.offsetWidth,cH=c.offsetHeight,nW=im&&im.naturalWidth?im.naturalWidth:cW,nH=im&&im.naturalHeight?im.naturalHeight:cH,cS=Math.max(cW/nW,cH/nH);return{cW:cW,cH:cH,nW:nW,nH:nH,cS:cS,im:im}}function uZB(){zBtns.forEach(function(btn){var z=Number(btn.getAttribute('data-zoom'));btn.classList.toggle('active',Math.abs(uZ-z)<0.01)})}function aP(){var cs=R.querySelectorAll('.gc-cell');cs.forEach(function(c){var i=gCI(c),aS=i.cS*uZ,dW=i.nW*aS,dH=i.nH*aS,cx=(i.cW-dW)/2,cy=(i.cH-dH)/2,tx=cx+pX,ty=cy+pY;if(i.im)i.im.style.transform='translate('+tx+'px,'+ty+'px) scale('+aS+')'});R.classList.toggle('gc-can-pan',uZ>1.001);uZB()}function cP(){var c=R.querySelector('.gc-cell');if(!c)return;var i=gCI(c),aS=i.cS*uZ,dW=i.nW*aS,dH=i.nH*aS,rX=Math.max(0,(dW-i.cW)/2),rY=Math.max(0,(dH-i.cH)/2);pX=Math.max(-rX,Math.min(rX,pX));pY=Math.max(-rY,Math.min(rY,pY))}function fC(e){if(e.composedPath){var p=e.composedPath();for(var j=0;p.length>j;j++){if(p[j]&&p[j].classList&&p[j].classList.contains('gc-cell'))return p[j]}}if(e.target&&e.target.closest){var c=e.target.closest('.gc-cell');if(c)return c}var el=document.elementFromPoint(e.clientX,e.clientY);if(el&&el.closest){var c2=el.closest('.gc-cell');if(c2)return c2}return R.querySelector('.gc-cell')}function eIO(t){return t<0.5?2*t*t:1-Math.pow(-2*t+2,2)/2}function aZ(tZ,tPX,tPY){if(zId){cancelAnimationFrame(zId);zId=null}var stZ=uZ,stPX=pX,stPY=pY,stT=performance.now();function aS(now){var t=(now-stT)/ZM;if(t>=1){t=1;zId=null}var ea=eIO(t);uZ=stZ+(tZ-stZ)*ea;pX=stPX+(tPX-stPX)*ea;pY=stPY+(tPY-stPY)*ea;aP();if(t<1)zId=requestAnimationFrame(aS)}zId=requestAnimationFrame(aS)}zBtns.forEach(function(btn){btn.addEventListener('click',function(){var z=Number(btn.getAttribute('data-zoom'));var c=R.querySelector('.gc-cell');if(!c){aZ(z,0,0);return}var i=gCI(c),mx=i.cW/2,my=i.cH/2,oS=i.cS*uZ,nS=i.cS*z,odW=i.nW*oS,odH=i.nH*oS,ndW=i.nW*nS,ndH=i.nH*nS,ocX=(i.cW-odW)/2,ocY=(i.cH-odH)/2,ncX=(i.cW-ndW)/2,ncY=(i.cH-ndH)/2,oTx=ocX+pX,oTy=ocY+pY,imX=(mx-oTx)/oS,imY=(my-oTy)/oS,nTx=mx-imX*nS,nTy=my-imY*nS,tPX=nTx-ncX,tPY=nTy-ncY,rX=Math.max(0,(ndW-i.cW)/2),rY=Math.max(0,(ndH-i.cH)/2);tPX=Math.max(-rX,Math.min(rX,tPX));tPY=Math.max(-rY,Math.min(rY,tPY));aZ(z,tPX,tPY)})});R.addEventListener('wheel',function(e){e.preventDefault();var c=fC(e);if(!c)return;var i=gCI(c),rc=c.getBoundingClientRect(),mx=e.clientX-rc.left,my=e.clientY-rc.top,oZ=uZ,d=-e.deltaY,nZ=oZ*Math.exp(d*0.0015);nZ=Math.max(MN,Math.min(MX,nZ));var oS=i.cS*oZ,nS=i.cS*nZ,odW=i.nW*oS,odH=i.nH*oS,ndW=i.nW*nS,ndH=i.nH*nS,ocX=(i.cW-odW)/2,ocY=(i.cH-odH)/2,ncX=(i.cW-ndW)/2,ncY=(i.cH-ndH)/2,oTx=ocX+pX,oTy=ocY+pY,imX=(mx-oTx)/oS,imY=(my-oTy)/oS,nTx=mx-imX*nS,nTy=my-imY*nS;pX=nTx-ncX;pY=nTy-ncY;uZ=nZ;cP();aP()},{passive:false});R.addEventListener('pointerdown',function(e){var dom=e.target.closest&&e.target.closest('.gc-label');if(dom)return;var canP=uZ>1.001;if(e.button===1||e.button===2||(e.button===0&&canP)){pn=true;sX=e.clientX;sY=e.clientY;sPX=pX;sPY=pY;R.classList.add('gc-panning');R.setPointerCapture(e.pointerId);e.preventDefault()}});R.addEventListener('pointermove',function(e){if(!pn)return;pX=sPX+(e.clientX-sX);pY=sPY+(e.clientY-sY);cP();aP();e.preventDefault()});function eP(){pn=false;R.classList.remove('gc-panning')}R.addEventListener('pointerup',eP);R.addEventListener('pointercancel',eP);R.addEventListener('contextmenu',function(e){e.preventDefault()});R.addEventListener('dblclick',function(e){var c=fC(e);if(!c)return;var i=gCI(c),rc=c.getBoundingClientRect(),mx=e.clientX-rc.left,my=e.clientY-rc.top,tZ,tPX,tPY;if(uZ>1.001){tZ=1;tPX=0;tPY=0}else{tZ=DZ;var oS=i.cS*uZ,nS=i.cS*tZ,odW=i.nW*oS,odH=i.nH*oS,ndW=i.nW*nS,ndH=i.nH*nS,ocX=(i.cW-odW)/2,ocY=(i.cH-odH)/2,ncX=(i.cW-ndW)/2,ncY=(i.cH-ndH)/2,oTx=ocX+pX,oTy=ocY+pY,imX=(mx-oTx)/oS,imY=(my-oTy)/oS,nTx=mx-imX*nS,nTy=my-imY*nS;tPX=nTx-ncX;tPY=nTy-ncY;var rX=Math.max(0,(ndW-i.cW)/2),rY=Math.max(0,(ndH-i.cH)/2);tPX=Math.max(-rX,Math.min(rX,tPX));tPY=Math.max(-rY,Math.min(rY,tPY))}aZ(tZ,tPX,tPY)});window.addEventListener('resize',function(){cP();aP()});if(typeof ResizeObserver!=='undefined'){var rO=new ResizeObserver(function(){cP();aP()});rO.observe(R)}var ims=R.querySelectorAll('.gc-cell img'),lC=0,tI=ims.length;function oAL(){requestAnimationFrame(function(){requestAnimationFrame(function(){aP();R.classList.add('gc-ready')})})}ims.forEach(function(im){if(im.complete&&im.naturalWidth>0){lC++;if(lC===tI)oAL()}else{im.addEventListener('load',function(){lC++;if(lC===tI)oAL()});im.addEventListener('error',function(){lC++;if(lC===tI)oAL()})}});if(tI===0)R.classList.add('gc-ready');var initPos={zoom:14.38,panX:0.5041,panY:0.3465};if(initPos&&(initPos.zoom!==1||initPos.panX!==0||initPos.panY!==0)){setTimeout(function(){R.dispatchEvent(new CustomEvent('gc-setview',{detail:initPos}))},100)}R.addEventListener('gc-reset',function(){uZ=1;pX=0;pY=0;aP()});R.addEventListener('gc-setview',function(e){var d=e.detail;if(d&&d.zoom){var tZ=d.zoom,nPX=d.panX||0,nPY=d.panY||0;var c=R.querySelector('.gc-cell');if(c){var i=gCI(c),aS=i.cS*tZ,sW=i.nW*aS,sH=i.nH*aS,mPX=Math.max(0,(sW-i.cW)/2),mPY=Math.max(0,(sH-i.cH)/2),tPX=nPX*mPX,tPY=nPY*mPY;aZ(tZ,tPX,tPY)}else{aZ(tZ,0,0)}}});return true}function B(){if(I())return;var tr=0,mT=60;function rT(){tr++;if(I())return;if(mT>tr)requestAnimationFrame(rT)}requestAnimationFrame(rT)}if(document.readyState==='loading'){document.addEventListener('DOMContentLoaded',B)}else{B()}})();
(function(){var w=document.getElementById('gg-widget-f7b5aa47be23'),items=[{urls:["https://ik.imagekit.io/il30c3ahm/4K(groundtruth)000940804.png?updatedAt=1770125312144", "https://ik.imagekit.io/il30c3ahm/1024x576_000940804.png?updatedAt=1770125312832", "https://ik.imagekit.io/il30c3ahm/RG_adjusted000940804.png?updatedAt=1770125314851", "https://ik.imagekit.io/il30c3ahm/rx_xl000940804.png?updatedAt=1770125314938", "https://ik.imagekit.io/il30c3ahm/starlight1_000940804.png?updatedAt=1770125313016", "https://ik.imagekit.io/il30c3ahm/starlight2_000940804.png?updatedAt=1770125313281"],labels:["4k (ground truth)", "downscaled (1024x576)", "remastered gems", "topaz rx xl", "topaz starlight 1", "topaz starlight 2"]}, {urls:["https://ik.imagekit.io/il30c3ahm/4K(groundtruth)000940801.png", "https://ik.imagekit.io/il30c3ahm/1024x576_000940801.png", "https://ik.imagekit.io/il30c3ahm/RG_raw000940801.png", "https://ik.imagekit.io/il30c3ahm/rx_xl000940801.png", "https://ik.imagekit.io/il30c3ahm/starlight1_000940801.png", "https://ik.imagekit.io/il30c3ahm/starlight2_000940801.png"],labels:["4k (ground truth)", "downscaled (1024x576)", "remastered gems", "topaz rx xl", "topaz starlight 1", "topaz starlight 2"]}, {urls:["https://ik.imagekit.io/il30c3ahm/4K(groundtruth)00094080e.png", "https://ik.imagekit.io/il30c3ahm/1024x576_00094080e.png", "https://ik.imagekit.io/il30c3ahm/RG_raw00094080e.png", "https://ik.imagekit.io/il30c3ahm/rx_xl00094080e.png", "https://ik.imagekit.io/il30c3ahm/starlight1_00094080e.png", "https://ik.imagekit.io/il30c3ahm/starlight2_00094080e.png"],labels:["4k (ground truth)", "downscaled (1024x576)", "remastered gems", "topaz rx xl", "topaz starlight 1", "topaz starlight 2"]}],idx=0,gc=w.querySelector('.gc-widget'),cells=gc?gc.querySelectorAll('.gc-cell'):null,th=w.querySelectorAll('.gg-thumb'),thumbsC=w.querySelector('.gg-thumbs'),initPos={zoom:14.38,panX:0.5041,panY:0.3465},firstLoad=true,initApplied=false;function hasCustomPos(){return initPos&&(initPos.zoom!==1||initPos.panX!==0||initPos.panY!==0)}function rG(){if(gc)gc.dispatchEvent(new CustomEvent('gc-reset'))}function applyInit(){if(initApplied||!firstLoad||idx!==0)return;if(!hasCustomPos())return;if(!gc.classList.contains('gc-ready')){setTimeout(applyInit,50);return}gc.dispatchEvent(new CustomEvent('gc-setview',{detail:initPos}));initApplied=true;firstLoad=false}function sh(i,isInit){idx=(i+items.length)%items.length;var it=items[idx];if(!cells)return;cells.forEach(function(cell,ci){var img=cell.querySelector('img'),lbl=cell.querySelector('.gc-label');if(it.urls&&it.urls[ci]!==undefined){if(img)img.src=it.urls[ci];if(lbl&&it.labels&&it.labels[ci]!==undefined)lbl.textContent=it.labels[ci]}});th.forEach(function(t,j){t.classList.toggle('active',j===idx)});if(isInit&&hasCustomPos()){applyInit()}else if(!isInit){rG();firstLoad=false}}th.forEach(function(t,i){t.onclick=function(){sh(i,false)}});sh(0,true);var scrollAmt=200,scrollDur=300;function smoothScroll(el,delta){var start=el.scrollLeft,startT=performance.now();function step(now){var t=Math.min(1,(now-startT)/scrollDur),ease=t<0.5?2*t*t:1-Math.pow(-2*t+2,2)/2;el.scrollLeft=start+delta*ease;if(t<1)requestAnimationFrame(step)}requestAnimationFrame(step)}w.querySelector('.gg-scroll-prev').onclick=function(){smoothScroll(thumbsC,-scrollAmt)};w.querySelector('.gg-scroll-next').onclick=function(){smoothScroll(thumbsC,scrollAmt)}})();

About

Remastered Gems specialises in high-fidelity restoration and remastering of legacy television and film,
using its own developed and rigorously tested technology that outperforms all consumer tools.

Contact

For professional enquiries:
📧 [email protected]

(function(){ var headerH = parseInt(getComputedStyle(document.documentElement).getPropertyValue('--header-h')) || 108; var subnavH = document.getElementById('dw-subnav-wrapper').offsetHeight || 52; var offset = headerH + subnavH + 20; document.querySelectorAll('.dw-tab-btn').forEach(function(btn){ btn.addEventListener('click', function(){ var targetId = this.getAttribute('data-target'); var target = document.getElementById(targetId); if(target){ var top = target.getBoundingClientRect().top + window.pageYOffset - offset; window.scrollTo({top: top, behavior: 'smooth'}); } document.querySelectorAll('.dw-tab-btn').forEach(function(b){ b.classList.remove('active'); }); this.classList.add('active'); }); }); })();

Doctor Who S1 Trailer


Video thumbnail

Improvements & Flaws

BeforeAfterBeforeAfter
(function(){function I(id){var W=document.getElementById(id+'-wrapper'),R=document.getElementById(id);if(!R)return;var B=R.querySelector('.ba-before'),A=R.querySelector('.ba-after'),rng=R.querySelector('.ba-range'),H=R.querySelector('.ba-handle'),zB=W?W.querySelectorAll('.ba-zoom-btn'):[];var nW=800,nH=450,bS=1,sp=90,s=1,tx=0,ty=0,m=null,sX=0,sY=0,sTx=0,sTy=0,zId=null,rc=null,rcT=0;function gRC(f){var n=performance.now();if(!f&&rc&&16>(n-rcT))return rc;rc=R.getBoundingClientRect();rcT=n;return rc}function inv(){rc=null}var lS={s:null,tx:null,ty:null,hx:null,sp:null};function chk(a,txS,tyS,hx,spS){if(lS.s===a&&lS.tx===txS&&lS.ty===tyS&&lS.hx===hx&&lS.sp===spS)return false;lS.s=a;lS.tx=txS;lS.ty=tyS;lS.hx=hx;lS.sp=spS;return true}var rId=null,pS=null,pTx=null,pTy=null;function sched(){if(rId)return;rId=requestAnimationFrame(function(){rId=null;if(pS!==null){s=pS;pS=null}if(pTx!==null){tx=pTx;pTx=null}if(pTy!==null){ty=pTy;pTy=null}cP();aT()})}function qU(ns,ntx,nty){if(ns!==undefined)pS=ns;if(ntx!==undefined)pTx=ntx;if(nty!==undefined)pTy=nty;sched()}function sNR(){if(!B||!A||!B.naturalWidth||!A.naturalWidth)return;var mW=Math.max(B.naturalWidth,A.naturalWidth),mH=Math.max(B.naturalHeight,A.naturalHeight);nW=mW;nH=mH;R.style.setProperty('--native-w',mW);R.style.setProperty('--native-h',mH);rBS();ctr()}function rBS(){inv();var r=gRC(true);if(r.width===0)return;bS=Math.max(r.width/nW,r.height/nH);aT()}function ctr(){var r=gRC();if(r.width===0)return;var tS=bS*s,scW=nW*tS,scH=nH*tS;tx=(r.width-scW)/2;ty=(r.height-scH)/2;aT()}var iL=0,sD=false;function oIL(){iL++;if(iL>=2&&!sD){sD=true;sNR()}}function cI(img){if(img.complete&&img.naturalWidth>0)oIL();else if(img.complete){if(img.decode)img.decode().then(oIL).catch(function(){requestAnimationFrame(oIL)});else requestAnimationFrame(oIL)}else img.addEventListener('load',oIL)}cI(B);cI(A);setTimeout(function(){if(!sD&&B.naturalWidth>0&&A.naturalWidth>0){sD=true;sNR()}},100);function uS(r){var wW=r.width,tS=bS*s,sX=wW*(sp/100),iX=(sX-tx)/tS,iS=(iX/nW)*100;if(rng)rng.value=String(Math.round(sp));return Math.max(0,Math.min(100,iS))}function uZB(){zB.forEach(function(b){var z=Number(b.getAttribute('data-zoom'));b.classList.toggle('active',Math.abs(s-z)<0.01)})}function aT(){var r=gRC(),tS=bS*s,sv=uS(r),txS=tx+'px',tyS=ty+'px',hxS=sp+'%',spS=sv+'%';if(chk(tS,txS,tyS,hxS,spS)){R.style.setProperty('--s',String(tS));R.style.setProperty('--tx',txS);R.style.setProperty('--ty',tyS);R.style.setProperty('--handle-x',hxS);R.style.setProperty('--split',spS)}uZB()}function cP(){var r=gRC(),cW=r.width,cH=r.height,tS=bS*s,scW=nW*tS,scH=nH*tS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tx=Math.min(0,Math.max(mnTx,tx));ty=Math.min(0,Math.max(mnTy,ty))}function eIO(t){return 0.5>t?2*t*t:1-Math.pow(-2*t+2,2)/2}function aZ(tgS,tgTx,tgTy){if(zId){cancelAnimationFrame(zId);zId=null}var stS=s,stTx=tx,stTy=ty,stT=performance.now();function step(now){var t=(now-stT)/150;if(t>=1){t=1;zId=null}var ea=eIO(t);s=stS+(tgS-stS)*ea;tx=stTx+(tgTx-stTx)*ea;ty=stTy+(tgTy-stTy)*ea;aT();if(1>t)zId=requestAnimationFrame(step)}zId=requestAnimationFrame(step)}zB.forEach(function(b){b.addEventListener('click',function(){inv();var z=Number(b.getAttribute('data-zoom')),r=gRC(true),mx=r.width/2,my=r.height/2,tS=bS*s,ntS=bS*z,wX=(mx-tx)/tS,wY=(my-ty)/tS,tgTx=mx-wX*ntS,tgTy=my-wY*ntS,cW=r.width,cH=r.height,scW=nW*ntS,scH=nH*ntS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tgTx=Math.min(0,Math.max(mnTx,tgTx));tgTy=Math.min(0,Math.max(mnTy,tgTy));aZ(z,tgTx,tgTy)})});function pTS(cX){var r=gRC(),x=cX-r.left;sp=Math.max(0,Math.min(100,(x/r.width)*100));aT()}if(H)H.addEventListener('pointerdown',function(e){if(e.button!==0)return;m='split';R.setPointerCapture(e.pointerId);pTS(e.clientX);e.preventDefault()});R.addEventListener('pointerdown',function(e){var oH=e.target.closest&&e.target.closest('.ba-handle');if(oH)return;var rC=(e.button===2),mC=(e.button===1),lC=(e.button===0);if(rC||mC||lC){m='pan';sX=e.clientX;sY=e.clientY;sTx=tx;sTy=ty;R.classList.add('ba-panning');R.setPointerCapture(e.pointerId);e.preventDefault()}});R.addEventListener('pointermove',function(e){if(!m)return;if(m==='split'){pTS(e.clientX);e.preventDefault();return}if(m==='pan'){tx=sTx+(e.clientX-sX);ty=sTy+(e.clientY-sY);cP();aT();e.preventDefault()}});function eP(){m=null;R.classList.remove('ba-panning')}R.addEventListener('pointerup',eP);R.addEventListener('pointercancel',eP);R.addEventListener('contextmenu',function(e){e.preventDefault()});if(rng){rng.addEventListener('input',function(e){sp=Number(e.target.value);aT()});rng.addEventListener('change',function(e){sp=Number(e.target.value);aT()})}R.addEventListener('wheel',function(e){if(s<=1.0001&&e.deltaY>0)return;e.preventDefault();inv();var r=gRC(true),mx=e.clientX-r.left,my=e.clientY-r.top,nS=s*Math.exp(-e.deltaY*0.0015);nS=Math.max(1,Math.min(100,nS));var tS=bS*s,ntS=bS*nS,wX=(mx-tx)/tS,wY=(my-ty)/tS,ntx=mx-wX*ntS,nty=my-wY*ntS;qU(nS,ntx,nty)},{passive:false});R.addEventListener('dblclick',function(e){if(zId){cancelAnimationFrame(zId);zId=null}inv();var r=gRC(true),mx=e.clientX-r.left,my=e.clientY-r.top,tgS,tgTx,tgTy;if(s>1.0001){tgS=1;var scW1=nW*bS,scH1=nH*bS;tgTx=(r.width-scW1)/2;tgTy=(r.height-scH1)/2}else{tgS=1/bS;var tS=bS*s,ntS=bS*tgS,wX=(mx-tx)/tS,wY=(my-ty)/tS;tgTx=mx-wX*ntS;tgTy=my-wY*ntS;var cW=r.width,cH=r.height,scW=nW*ntS,scH=nH*ntS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tgTx=Math.min(0,Math.max(mnTx,tgTx));tgTy=Math.min(0,Math.max(mnTy,tgTy))}aZ(tgS,tgTx,tgTy)});window.addEventListener('resize',function(){inv();rBS();cP();aT()});R.addEventListener('ba-reset',function(){sp=90;s=1;inv();ctr()});R.addEventListener('ba-recalc',function(){var nwV=R.style.getPropertyValue('--native-w'),nhV=R.style.getPropertyValue('--native-h');if(nwV&&nhV){nW=parseFloat(nwV);nH=parseFloat(nhV);inv();rBS();ctr()}});R.addEventListener('ba-setview',function(e){var d=e.detail;if(d&&d.zoom){var tZ=d.zoom,nPX=d.panX||0,nPY=d.panY||0;inv();var r=gRC(true),nS=bS*tZ,scW=nW*nS,scH=nH*nS,cx=(r.width-scW)/2,cy=(r.height-scH)/2,rX=Math.max(0,(scW-r.width)/2),rY=Math.max(0,(scH-r.height)/2),tgTx=cx+nPX*rX,tgTy=cy+nPY*rY;aZ(tZ,tgTx,tgTy)}});R.classList.add('ba-ready');var initPos={zoom:4.6,panX:0.7787,panY:1.0},initApplied=false;function applyInit(){if(initApplied)return;if(!initPos||(initPos.zoom===1&&initPos.panX===0&&initPos.panY===0))return;if(!sD){setTimeout(applyInit,50);return}initApplied=true;R.dispatchEvent(new CustomEvent('ba-setview',{detail:initPos}))}if(initPos&&(initPos.zoom!==1||initPos.panX!==0||initPos.panY!==0))setTimeout(applyInit,100);aT()}if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',function(){I('ba-widget-85417266389a')});else I('ba-widget-85417266389a')})();

DEHALO

Old SD footage has an artefact: an ugly black line around the edges of anything with any level of contrast. Remastered Gems can remove most of these lines as if they were never there.

COLOUR

Old footage often has washed-out colour that simple white balance can’t restore. Remastered Gems doesn’t aim to “re-grade” the image; it focuses on recovering lost colour while preserving the frame’s original tint and tone.Fans will be able to weigh in on colour preferences during production. Depending on the consensus, scenes may have no colour grading, subtle tweaks, or a full adjustment.

BeforeAfterBeforeAfter
(function(){function I(id){var W=document.getElementById(id+'-wrapper'),R=document.getElementById(id);if(!R)return;var B=R.querySelector('.ba-before'),A=R.querySelector('.ba-after'),rng=R.querySelector('.ba-range'),H=R.querySelector('.ba-handle'),zB=W?W.querySelectorAll('.ba-zoom-btn'):[];var nW=800,nH=450,bS=1,sp=90,s=1,tx=0,ty=0,m=null,sX=0,sY=0,sTx=0,sTy=0,zId=null,rc=null,rcT=0;function gRC(f){var n=performance.now();if(!f&&rc&&16>(n-rcT))return rc;rc=R.getBoundingClientRect();rcT=n;return rc}function inv(){rc=null}var lS={s:null,tx:null,ty:null,hx:null,sp:null};function chk(a,txS,tyS,hx,spS){if(lS.s===a&&lS.tx===txS&&lS.ty===tyS&&lS.hx===hx&&lS.sp===spS)return false;lS.s=a;lS.tx=txS;lS.ty=tyS;lS.hx=hx;lS.sp=spS;return true}var rId=null,pS=null,pTx=null,pTy=null;function sched(){if(rId)return;rId=requestAnimationFrame(function(){rId=null;if(pS!==null){s=pS;pS=null}if(pTx!==null){tx=pTx;pTx=null}if(pTy!==null){ty=pTy;pTy=null}cP();aT()})}function qU(ns,ntx,nty){if(ns!==undefined)pS=ns;if(ntx!==undefined)pTx=ntx;if(nty!==undefined)pTy=nty;sched()}function sNR(){if(!B||!A||!B.naturalWidth||!A.naturalWidth)return;var mW=Math.max(B.naturalWidth,A.naturalWidth),mH=Math.max(B.naturalHeight,A.naturalHeight);nW=mW;nH=mH;R.style.setProperty('--native-w',mW);R.style.setProperty('--native-h',mH);rBS();ctr()}function rBS(){inv();var r=gRC(true);if(r.width===0)return;bS=Math.max(r.width/nW,r.height/nH);aT()}function ctr(){var r=gRC();if(r.width===0)return;var tS=bS*s,scW=nW*tS,scH=nH*tS;tx=(r.width-scW)/2;ty=(r.height-scH)/2;aT()}var iL=0,sD=false;function oIL(){iL++;if(iL>=2&&!sD){sD=true;sNR()}}function cI(img){if(img.complete&&img.naturalWidth>0)oIL();else if(img.complete){if(img.decode)img.decode().then(oIL).catch(function(){requestAnimationFrame(oIL)});else requestAnimationFrame(oIL)}else img.addEventListener('load',oIL)}cI(B);cI(A);setTimeout(function(){if(!sD&&B.naturalWidth>0&&A.naturalWidth>0){sD=true;sNR()}},100);function uS(r){var wW=r.width,tS=bS*s,sX=wW*(sp/100),iX=(sX-tx)/tS,iS=(iX/nW)*100;if(rng)rng.value=String(Math.round(sp));return Math.max(0,Math.min(100,iS))}function uZB(){zB.forEach(function(b){var z=Number(b.getAttribute('data-zoom'));b.classList.toggle('active',Math.abs(s-z)<0.01)})}function aT(){var r=gRC(),tS=bS*s,sv=uS(r),txS=tx+'px',tyS=ty+'px',hxS=sp+'%',spS=sv+'%';if(chk(tS,txS,tyS,hxS,spS)){R.style.setProperty('--s',String(tS));R.style.setProperty('--tx',txS);R.style.setProperty('--ty',tyS);R.style.setProperty('--handle-x',hxS);R.style.setProperty('--split',spS)}uZB()}function cP(){var r=gRC(),cW=r.width,cH=r.height,tS=bS*s,scW=nW*tS,scH=nH*tS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tx=Math.min(0,Math.max(mnTx,tx));ty=Math.min(0,Math.max(mnTy,ty))}function eIO(t){return 0.5>t?2*t*t:1-Math.pow(-2*t+2,2)/2}function aZ(tgS,tgTx,tgTy){if(zId){cancelAnimationFrame(zId);zId=null}var stS=s,stTx=tx,stTy=ty,stT=performance.now();function step(now){var t=(now-stT)/150;if(t>=1){t=1;zId=null}var ea=eIO(t);s=stS+(tgS-stS)*ea;tx=stTx+(tgTx-stTx)*ea;ty=stTy+(tgTy-stTy)*ea;aT();if(1>t)zId=requestAnimationFrame(step)}zId=requestAnimationFrame(step)}zB.forEach(function(b){b.addEventListener('click',function(){inv();var z=Number(b.getAttribute('data-zoom')),r=gRC(true),mx=r.width/2,my=r.height/2,tS=bS*s,ntS=bS*z,wX=(mx-tx)/tS,wY=(my-ty)/tS,tgTx=mx-wX*ntS,tgTy=my-wY*ntS,cW=r.width,cH=r.height,scW=nW*ntS,scH=nH*ntS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tgTx=Math.min(0,Math.max(mnTx,tgTx));tgTy=Math.min(0,Math.max(mnTy,tgTy));aZ(z,tgTx,tgTy)})});function pTS(cX){var r=gRC(),x=cX-r.left;sp=Math.max(0,Math.min(100,(x/r.width)*100));aT()}if(H)H.addEventListener('pointerdown',function(e){if(e.button!==0)return;m='split';R.setPointerCapture(e.pointerId);pTS(e.clientX);e.preventDefault()});R.addEventListener('pointerdown',function(e){var oH=e.target.closest&&e.target.closest('.ba-handle');if(oH)return;var rC=(e.button===2),mC=(e.button===1),lC=(e.button===0);if(rC||mC||lC){m='pan';sX=e.clientX;sY=e.clientY;sTx=tx;sTy=ty;R.classList.add('ba-panning');R.setPointerCapture(e.pointerId);e.preventDefault()}});R.addEventListener('pointermove',function(e){if(!m)return;if(m==='split'){pTS(e.clientX);e.preventDefault();return}if(m==='pan'){tx=sTx+(e.clientX-sX);ty=sTy+(e.clientY-sY);cP();aT();e.preventDefault()}});function eP(){m=null;R.classList.remove('ba-panning')}R.addEventListener('pointerup',eP);R.addEventListener('pointercancel',eP);R.addEventListener('contextmenu',function(e){e.preventDefault()});if(rng){rng.addEventListener('input',function(e){sp=Number(e.target.value);aT()});rng.addEventListener('change',function(e){sp=Number(e.target.value);aT()})}R.addEventListener('wheel',function(e){if(s<=1.0001&&e.deltaY>0)return;e.preventDefault();inv();var r=gRC(true),mx=e.clientX-r.left,my=e.clientY-r.top,nS=s*Math.exp(-e.deltaY*0.0015);nS=Math.max(1,Math.min(100,nS));var tS=bS*s,ntS=bS*nS,wX=(mx-tx)/tS,wY=(my-ty)/tS,ntx=mx-wX*ntS,nty=my-wY*ntS;qU(nS,ntx,nty)},{passive:false});R.addEventListener('dblclick',function(e){if(zId){cancelAnimationFrame(zId);zId=null}inv();var r=gRC(true),mx=e.clientX-r.left,my=e.clientY-r.top,tgS,tgTx,tgTy;if(s>1.0001){tgS=1;var scW1=nW*bS,scH1=nH*bS;tgTx=(r.width-scW1)/2;tgTy=(r.height-scH1)/2}else{tgS=1/bS;var tS=bS*s,ntS=bS*tgS,wX=(mx-tx)/tS,wY=(my-ty)/tS;tgTx=mx-wX*ntS;tgTy=my-wY*ntS;var cW=r.width,cH=r.height,scW=nW*ntS,scH=nH*ntS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tgTx=Math.min(0,Math.max(mnTx,tgTx));tgTy=Math.min(0,Math.max(mnTy,tgTy))}aZ(tgS,tgTx,tgTy)});window.addEventListener('resize',function(){inv();rBS();cP();aT()});R.addEventListener('ba-reset',function(){sp=90;s=1;inv();ctr()});R.addEventListener('ba-recalc',function(){var nwV=R.style.getPropertyValue('--native-w'),nhV=R.style.getPropertyValue('--native-h');if(nwV&&nhV){nW=parseFloat(nwV);nH=parseFloat(nhV);inv();rBS();ctr()}});R.addEventListener('ba-setview',function(e){var d=e.detail;if(d&&d.zoom){var tZ=d.zoom,nPX=d.panX||0,nPY=d.panY||0;inv();var r=gRC(true),nS=bS*tZ,scW=nW*nS,scH=nH*nS,cx=(r.width-scW)/2,cy=(r.height-scH)/2,rX=Math.max(0,(scW-r.width)/2),rY=Math.max(0,(scH-r.height)/2),tgTx=cx+nPX*rX,tgTy=cy+nPY*rY;aZ(tZ,tgTx,tgTy)}});R.classList.add('ba-ready');var initPos={zoom:1.09,panX:0.8907,panY:0.7831},initApplied=false;function applyInit(){if(initApplied)return;if(!initPos||(initPos.zoom===1&&initPos.panX===0&&initPos.panY===0))return;if(!sD){setTimeout(applyInit,50);return}initApplied=true;R.dispatchEvent(new CustomEvent('ba-setview',{detail:initPos}))}if(initPos&&(initPos.zoom!==1||initPos.panX!==0||initPos.panY!==0))setTimeout(applyInit,100);aT()}if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',function(){I('ba-widget-926c1f762450')});else I('ba-widget-926c1f762450')})();
BeforeAfterBeforeAfter
(function(){function I(id){var W=document.getElementById(id+'-wrapper'),R=document.getElementById(id);if(!R)return;var B=R.querySelector('.ba-before'),A=R.querySelector('.ba-after'),rng=R.querySelector('.ba-range'),H=R.querySelector('.ba-handle'),zB=W?W.querySelectorAll('.ba-zoom-btn'):[];var nW=800,nH=450,bS=1,sp=90,s=1,tx=0,ty=0,m=null,sX=0,sY=0,sTx=0,sTy=0,zId=null,rc=null,rcT=0;function gRC(f){var n=performance.now();if(!f&&rc&&16>(n-rcT))return rc;rc=R.getBoundingClientRect();rcT=n;return rc}function inv(){rc=null}var lS={s:null,tx:null,ty:null,hx:null,sp:null};function chk(a,txS,tyS,hx,spS){if(lS.s===a&&lS.tx===txS&&lS.ty===tyS&&lS.hx===hx&&lS.sp===spS)return false;lS.s=a;lS.tx=txS;lS.ty=tyS;lS.hx=hx;lS.sp=spS;return true}var rId=null,pS=null,pTx=null,pTy=null;function sched(){if(rId)return;rId=requestAnimationFrame(function(){rId=null;if(pS!==null){s=pS;pS=null}if(pTx!==null){tx=pTx;pTx=null}if(pTy!==null){ty=pTy;pTy=null}cP();aT()})}function qU(ns,ntx,nty){if(ns!==undefined)pS=ns;if(ntx!==undefined)pTx=ntx;if(nty!==undefined)pTy=nty;sched()}function sNR(){if(!B||!A||!B.naturalWidth||!A.naturalWidth)return;var mW=Math.max(B.naturalWidth,A.naturalWidth),mH=Math.max(B.naturalHeight,A.naturalHeight);nW=mW;nH=mH;R.style.setProperty('--native-w',mW);R.style.setProperty('--native-h',mH);rBS();ctr()}function rBS(){inv();var r=gRC(true);if(r.width===0)return;bS=Math.max(r.width/nW,r.height/nH);aT()}function ctr(){var r=gRC();if(r.width===0)return;var tS=bS*s,scW=nW*tS,scH=nH*tS;tx=(r.width-scW)/2;ty=(r.height-scH)/2;aT()}var iL=0,sD=false;function oIL(){iL++;if(iL>=2&&!sD){sD=true;sNR()}}function cI(img){if(img.complete&&img.naturalWidth>0)oIL();else if(img.complete){if(img.decode)img.decode().then(oIL).catch(function(){requestAnimationFrame(oIL)});else requestAnimationFrame(oIL)}else img.addEventListener('load',oIL)}cI(B);cI(A);setTimeout(function(){if(!sD&&B.naturalWidth>0&&A.naturalWidth>0){sD=true;sNR()}},100);function uS(r){var wW=r.width,tS=bS*s,sX=wW*(sp/100),iX=(sX-tx)/tS,iS=(iX/nW)*100;if(rng)rng.value=String(Math.round(sp));return Math.max(0,Math.min(100,iS))}function uZB(){zB.forEach(function(b){var z=Number(b.getAttribute('data-zoom'));b.classList.toggle('active',Math.abs(s-z)<0.01)})}function aT(){var r=gRC(),tS=bS*s,sv=uS(r),txS=tx+'px',tyS=ty+'px',hxS=sp+'%',spS=sv+'%';if(chk(tS,txS,tyS,hxS,spS)){R.style.setProperty('--s',String(tS));R.style.setProperty('--tx',txS);R.style.setProperty('--ty',tyS);R.style.setProperty('--handle-x',hxS);R.style.setProperty('--split',spS)}uZB()}function cP(){var r=gRC(),cW=r.width,cH=r.height,tS=bS*s,scW=nW*tS,scH=nH*tS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tx=Math.min(0,Math.max(mnTx,tx));ty=Math.min(0,Math.max(mnTy,ty))}function eIO(t){return 0.5>t?2*t*t:1-Math.pow(-2*t+2,2)/2}function aZ(tgS,tgTx,tgTy){if(zId){cancelAnimationFrame(zId);zId=null}var stS=s,stTx=tx,stTy=ty,stT=performance.now();function step(now){var t=(now-stT)/150;if(t>=1){t=1;zId=null}var ea=eIO(t);s=stS+(tgS-stS)*ea;tx=stTx+(tgTx-stTx)*ea;ty=stTy+(tgTy-stTy)*ea;aT();if(1>t)zId=requestAnimationFrame(step)}zId=requestAnimationFrame(step)}zB.forEach(function(b){b.addEventListener('click',function(){inv();var z=Number(b.getAttribute('data-zoom')),r=gRC(true),mx=r.width/2,my=r.height/2,tS=bS*s,ntS=bS*z,wX=(mx-tx)/tS,wY=(my-ty)/tS,tgTx=mx-wX*ntS,tgTy=my-wY*ntS,cW=r.width,cH=r.height,scW=nW*ntS,scH=nH*ntS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tgTx=Math.min(0,Math.max(mnTx,tgTx));tgTy=Math.min(0,Math.max(mnTy,tgTy));aZ(z,tgTx,tgTy)})});function pTS(cX){var r=gRC(),x=cX-r.left;sp=Math.max(0,Math.min(100,(x/r.width)*100));aT()}if(H)H.addEventListener('pointerdown',function(e){if(e.button!==0)return;m='split';R.setPointerCapture(e.pointerId);pTS(e.clientX);e.preventDefault()});R.addEventListener('pointerdown',function(e){var oH=e.target.closest&&e.target.closest('.ba-handle');if(oH)return;var rC=(e.button===2),mC=(e.button===1),lC=(e.button===0);if(rC||mC||lC){m='pan';sX=e.clientX;sY=e.clientY;sTx=tx;sTy=ty;R.classList.add('ba-panning');R.setPointerCapture(e.pointerId);e.preventDefault()}});R.addEventListener('pointermove',function(e){if(!m)return;if(m==='split'){pTS(e.clientX);e.preventDefault();return}if(m==='pan'){tx=sTx+(e.clientX-sX);ty=sTy+(e.clientY-sY);cP();aT();e.preventDefault()}});function eP(){m=null;R.classList.remove('ba-panning')}R.addEventListener('pointerup',eP);R.addEventListener('pointercancel',eP);R.addEventListener('contextmenu',function(e){e.preventDefault()});if(rng){rng.addEventListener('input',function(e){sp=Number(e.target.value);aT()});rng.addEventListener('change',function(e){sp=Number(e.target.value);aT()})}R.addEventListener('wheel',function(e){if(s<=1.0001&&e.deltaY>0)return;e.preventDefault();inv();var r=gRC(true),mx=e.clientX-r.left,my=e.clientY-r.top,nS=s*Math.exp(-e.deltaY*0.0015);nS=Math.max(1,Math.min(100,nS));var tS=bS*s,ntS=bS*nS,wX=(mx-tx)/tS,wY=(my-ty)/tS,ntx=mx-wX*ntS,nty=my-wY*ntS;qU(nS,ntx,nty)},{passive:false});R.addEventListener('dblclick',function(e){if(zId){cancelAnimationFrame(zId);zId=null}inv();var r=gRC(true),mx=e.clientX-r.left,my=e.clientY-r.top,tgS,tgTx,tgTy;if(s>1.0001){tgS=1;var scW1=nW*bS,scH1=nH*bS;tgTx=(r.width-scW1)/2;tgTy=(r.height-scH1)/2}else{tgS=1/bS;var tS=bS*s,ntS=bS*tgS,wX=(mx-tx)/tS,wY=(my-ty)/tS;tgTx=mx-wX*ntS;tgTy=my-wY*ntS;var cW=r.width,cH=r.height,scW=nW*ntS,scH=nH*ntS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tgTx=Math.min(0,Math.max(mnTx,tgTx));tgTy=Math.min(0,Math.max(mnTy,tgTy))}aZ(tgS,tgTx,tgTy)});window.addEventListener('resize',function(){inv();rBS();cP();aT()});R.addEventListener('ba-reset',function(){sp=90;s=1;inv();ctr()});R.addEventListener('ba-recalc',function(){var nwV=R.style.getPropertyValue('--native-w'),nhV=R.style.getPropertyValue('--native-h');if(nwV&&nhV){nW=parseFloat(nwV);nH=parseFloat(nhV);inv();rBS();ctr()}});R.addEventListener('ba-setview',function(e){var d=e.detail;if(d&&d.zoom){var tZ=d.zoom,nPX=d.panX||0,nPY=d.panY||0;inv();var r=gRC(true),nS=bS*tZ,scW=nW*nS,scH=nH*nS,cx=(r.width-scW)/2,cy=(r.height-scH)/2,rX=Math.max(0,(scW-r.width)/2),rY=Math.max(0,(scH-r.height)/2),tgTx=cx+nPX*rX,tgTy=cy+nPY*rY;aZ(tZ,tgTx,tgTy)}});R.classList.add('ba-ready');var initPos={zoom:7.21,panX:0.4058,panY:-0.0911},initApplied=false;function applyInit(){if(initApplied)return;if(!initPos||(initPos.zoom===1&&initPos.panX===0&&initPos.panY===0))return;if(!sD){setTimeout(applyInit,50);return}initApplied=true;R.dispatchEvent(new CustomEvent('ba-setview',{detail:initPos}))}if(initPos&&(initPos.zoom!==1||initPos.panX!==0||initPos.panY!==0))setTimeout(applyInit,100);aT()}if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',function(){I('ba-widget-76446ba16862')});else I('ba-widget-76446ba16862')})();

TEXT

Low-res footage can make text almost impossible to read. Remastered Gems high accuracy method shows how near-unreadable text becomes clean and readable.

CGI

Remastered Gems restoration produces cleaner CGI that was rendered at a lower resolution.

BeforeAfterBeforeAfter
(function(){function I(id){var W=document.getElementById(id+'-wrapper'),R=document.getElementById(id);if(!R)return;var B=R.querySelector('.ba-before'),A=R.querySelector('.ba-after'),rng=R.querySelector('.ba-range'),H=R.querySelector('.ba-handle'),zB=W?W.querySelectorAll('.ba-zoom-btn'):[];var nW=800,nH=450,bS=1,sp=90,s=1,tx=0,ty=0,m=null,sX=0,sY=0,sTx=0,sTy=0,zId=null,rc=null,rcT=0;function gRC(f){var n=performance.now();if(!f&&rc&&16>(n-rcT))return rc;rc=R.getBoundingClientRect();rcT=n;return rc}function inv(){rc=null}var lS={s:null,tx:null,ty:null,hx:null,sp:null};function chk(a,txS,tyS,hx,spS){if(lS.s===a&&lS.tx===txS&&lS.ty===tyS&&lS.hx===hx&&lS.sp===spS)return false;lS.s=a;lS.tx=txS;lS.ty=tyS;lS.hx=hx;lS.sp=spS;return true}var rId=null,pS=null,pTx=null,pTy=null;function sched(){if(rId)return;rId=requestAnimationFrame(function(){rId=null;if(pS!==null){s=pS;pS=null}if(pTx!==null){tx=pTx;pTx=null}if(pTy!==null){ty=pTy;pTy=null}cP();aT()})}function qU(ns,ntx,nty){if(ns!==undefined)pS=ns;if(ntx!==undefined)pTx=ntx;if(nty!==undefined)pTy=nty;sched()}function sNR(){if(!B||!A||!B.naturalWidth||!A.naturalWidth)return;var mW=Math.max(B.naturalWidth,A.naturalWidth),mH=Math.max(B.naturalHeight,A.naturalHeight);nW=mW;nH=mH;R.style.setProperty('--native-w',mW);R.style.setProperty('--native-h',mH);rBS();ctr()}function rBS(){inv();var r=gRC(true);if(r.width===0)return;bS=Math.max(r.width/nW,r.height/nH);aT()}function ctr(){var r=gRC();if(r.width===0)return;var tS=bS*s,scW=nW*tS,scH=nH*tS;tx=(r.width-scW)/2;ty=(r.height-scH)/2;aT()}var iL=0,sD=false;function oIL(){iL++;if(iL>=2&&!sD){sD=true;sNR()}}function cI(img){if(img.complete&&img.naturalWidth>0)oIL();else if(img.complete){if(img.decode)img.decode().then(oIL).catch(function(){requestAnimationFrame(oIL)});else requestAnimationFrame(oIL)}else img.addEventListener('load',oIL)}cI(B);cI(A);setTimeout(function(){if(!sD&&B.naturalWidth>0&&A.naturalWidth>0){sD=true;sNR()}},100);function uS(r){var wW=r.width,tS=bS*s,sX=wW*(sp/100),iX=(sX-tx)/tS,iS=(iX/nW)*100;if(rng)rng.value=String(Math.round(sp));return Math.max(0,Math.min(100,iS))}function uZB(){zB.forEach(function(b){var z=Number(b.getAttribute('data-zoom'));b.classList.toggle('active',Math.abs(s-z)<0.01)})}function aT(){var r=gRC(),tS=bS*s,sv=uS(r),txS=tx+'px',tyS=ty+'px',hxS=sp+'%',spS=sv+'%';if(chk(tS,txS,tyS,hxS,spS)){R.style.setProperty('--s',String(tS));R.style.setProperty('--tx',txS);R.style.setProperty('--ty',tyS);R.style.setProperty('--handle-x',hxS);R.style.setProperty('--split',spS)}uZB()}function cP(){var r=gRC(),cW=r.width,cH=r.height,tS=bS*s,scW=nW*tS,scH=nH*tS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tx=Math.min(0,Math.max(mnTx,tx));ty=Math.min(0,Math.max(mnTy,ty))}function eIO(t){return 0.5>t?2*t*t:1-Math.pow(-2*t+2,2)/2}function aZ(tgS,tgTx,tgTy){if(zId){cancelAnimationFrame(zId);zId=null}var stS=s,stTx=tx,stTy=ty,stT=performance.now();function step(now){var t=(now-stT)/150;if(t>=1){t=1;zId=null}var ea=eIO(t);s=stS+(tgS-stS)*ea;tx=stTx+(tgTx-stTx)*ea;ty=stTy+(tgTy-stTy)*ea;aT();if(1>t)zId=requestAnimationFrame(step)}zId=requestAnimationFrame(step)}zB.forEach(function(b){b.addEventListener('click',function(){inv();var z=Number(b.getAttribute('data-zoom')),r=gRC(true),mx=r.width/2,my=r.height/2,tS=bS*s,ntS=bS*z,wX=(mx-tx)/tS,wY=(my-ty)/tS,tgTx=mx-wX*ntS,tgTy=my-wY*ntS,cW=r.width,cH=r.height,scW=nW*ntS,scH=nH*ntS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tgTx=Math.min(0,Math.max(mnTx,tgTx));tgTy=Math.min(0,Math.max(mnTy,tgTy));aZ(z,tgTx,tgTy)})});function pTS(cX){var r=gRC(),x=cX-r.left;sp=Math.max(0,Math.min(100,(x/r.width)*100));aT()}if(H)H.addEventListener('pointerdown',function(e){if(e.button!==0)return;m='split';R.setPointerCapture(e.pointerId);pTS(e.clientX);e.preventDefault()});R.addEventListener('pointerdown',function(e){var oH=e.target.closest&&e.target.closest('.ba-handle');if(oH)return;var rC=(e.button===2),mC=(e.button===1),lC=(e.button===0);if(rC||mC||lC){m='pan';sX=e.clientX;sY=e.clientY;sTx=tx;sTy=ty;R.classList.add('ba-panning');R.setPointerCapture(e.pointerId);e.preventDefault()}});R.addEventListener('pointermove',function(e){if(!m)return;if(m==='split'){pTS(e.clientX);e.preventDefault();return}if(m==='pan'){tx=sTx+(e.clientX-sX);ty=sTy+(e.clientY-sY);cP();aT();e.preventDefault()}});function eP(){m=null;R.classList.remove('ba-panning')}R.addEventListener('pointerup',eP);R.addEventListener('pointercancel',eP);R.addEventListener('contextmenu',function(e){e.preventDefault()});if(rng){rng.addEventListener('input',function(e){sp=Number(e.target.value);aT()});rng.addEventListener('change',function(e){sp=Number(e.target.value);aT()})}R.addEventListener('wheel',function(e){if(s<=1.0001&&e.deltaY>0)return;e.preventDefault();inv();var r=gRC(true),mx=e.clientX-r.left,my=e.clientY-r.top,nS=s*Math.exp(-e.deltaY*0.0015);nS=Math.max(1,Math.min(100,nS));var tS=bS*s,ntS=bS*nS,wX=(mx-tx)/tS,wY=(my-ty)/tS,ntx=mx-wX*ntS,nty=my-wY*ntS;qU(nS,ntx,nty)},{passive:false});R.addEventListener('dblclick',function(e){if(zId){cancelAnimationFrame(zId);zId=null}inv();var r=gRC(true),mx=e.clientX-r.left,my=e.clientY-r.top,tgS,tgTx,tgTy;if(s>1.0001){tgS=1;var scW1=nW*bS,scH1=nH*bS;tgTx=(r.width-scW1)/2;tgTy=(r.height-scH1)/2}else{tgS=1/bS;var tS=bS*s,ntS=bS*tgS,wX=(mx-tx)/tS,wY=(my-ty)/tS;tgTx=mx-wX*ntS;tgTy=my-wY*ntS;var cW=r.width,cH=r.height,scW=nW*ntS,scH=nH*ntS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tgTx=Math.min(0,Math.max(mnTx,tgTx));tgTy=Math.min(0,Math.max(mnTy,tgTy))}aZ(tgS,tgTx,tgTy)});window.addEventListener('resize',function(){inv();rBS();cP();aT()});R.addEventListener('ba-reset',function(){sp=90;s=1;inv();ctr()});R.addEventListener('ba-recalc',function(){var nwV=R.style.getPropertyValue('--native-w'),nhV=R.style.getPropertyValue('--native-h');if(nwV&&nhV){nW=parseFloat(nwV);nH=parseFloat(nhV);inv();rBS();ctr()}});R.addEventListener('ba-setview',function(e){var d=e.detail;if(d&&d.zoom){var tZ=d.zoom,nPX=d.panX||0,nPY=d.panY||0;inv();var r=gRC(true),nS=bS*tZ,scW=nW*nS,scH=nH*nS,cx=(r.width-scW)/2,cy=(r.height-scH)/2,rX=Math.max(0,(scW-r.width)/2),rY=Math.max(0,(scH-r.height)/2),tgTx=cx+nPX*rX,tgTy=cy+nPY*rY;aZ(tZ,tgTx,tgTy)}});R.classList.add('ba-ready');var initPos={zoom:4.2,panX:-0.2571,panY:-0.035},initApplied=false;function applyInit(){if(initApplied)return;if(!initPos||(initPos.zoom===1&&initPos.panX===0&&initPos.panY===0))return;if(!sD){setTimeout(applyInit,50);return}initApplied=true;R.dispatchEvent(new CustomEvent('ba-setview',{detail:initPos}))}if(initPos&&(initPos.zoom!==1||initPos.panX!==0||initPos.panY!==0))setTimeout(applyInit,100);aT()}if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',function(){I('ba-widget-5da0888640ed')});else I('ba-widget-5da0888640ed')})();

SKIN TEXTURE

Remastered Gems aims for an authentic upscale of the original source footage and cannot alter the type of camera that was used.
Tape and film are fundamentally different mediums. Tape captures skin texture in ways that modern cinema cameras and film simply don't.
When the Remastered Gems method is applied to both downscaled cinema camera footage and tape, the cinema footage retains natural skin texture, while the tape footage can appear waxy. This tells us the waxiness is a property of the source medium, not a flaw in the restoration method, nor a technical limitation.Critiques of ‘waxy’ faces may actually be critiques of the source medium. The only way to change medium-specific qualities would be a total AI-generated style transfer, (which would no doubt be pinned as AI slop).

BeforeAfterBeforeAfter
(function(){function I(id){var W=document.getElementById(id+'-wrapper'),R=document.getElementById(id);if(!R)return;var B=R.querySelector('.ba-before'),A=R.querySelector('.ba-after'),rng=R.querySelector('.ba-range'),H=R.querySelector('.ba-handle'),zB=W?W.querySelectorAll('.ba-zoom-btn'):[];var nW=800,nH=450,bS=1,sp=90,s=1,tx=0,ty=0,m=null,sX=0,sY=0,sTx=0,sTy=0,zId=null,rc=null,rcT=0;function gRC(f){var n=performance.now();if(!f&&rc&&16>(n-rcT))return rc;rc=R.getBoundingClientRect();rcT=n;return rc}function inv(){rc=null}var lS={s:null,tx:null,ty:null,hx:null,sp:null};function chk(a,txS,tyS,hx,spS){if(lS.s===a&&lS.tx===txS&&lS.ty===tyS&&lS.hx===hx&&lS.sp===spS)return false;lS.s=a;lS.tx=txS;lS.ty=tyS;lS.hx=hx;lS.sp=spS;return true}var rId=null,pS=null,pTx=null,pTy=null;function sched(){if(rId)return;rId=requestAnimationFrame(function(){rId=null;if(pS!==null){s=pS;pS=null}if(pTx!==null){tx=pTx;pTx=null}if(pTy!==null){ty=pTy;pTy=null}cP();aT()})}function qU(ns,ntx,nty){if(ns!==undefined)pS=ns;if(ntx!==undefined)pTx=ntx;if(nty!==undefined)pTy=nty;sched()}function sNR(){if(!B||!A||!B.naturalWidth||!A.naturalWidth)return;var mW=Math.max(B.naturalWidth,A.naturalWidth),mH=Math.max(B.naturalHeight,A.naturalHeight);nW=mW;nH=mH;R.style.setProperty('--native-w',mW);R.style.setProperty('--native-h',mH);rBS();ctr()}function rBS(){inv();var r=gRC(true);if(r.width===0)return;bS=Math.max(r.width/nW,r.height/nH);aT()}function ctr(){var r=gRC();if(r.width===0)return;var tS=bS*s,scW=nW*tS,scH=nH*tS;tx=(r.width-scW)/2;ty=(r.height-scH)/2;aT()}var iL=0,sD=false;function oIL(){iL++;if(iL>=2&&!sD){sD=true;sNR()}}function cI(img){if(img.complete&&img.naturalWidth>0)oIL();else if(img.complete){if(img.decode)img.decode().then(oIL).catch(function(){requestAnimationFrame(oIL)});else requestAnimationFrame(oIL)}else img.addEventListener('load',oIL)}cI(B);cI(A);setTimeout(function(){if(!sD&&B.naturalWidth>0&&A.naturalWidth>0){sD=true;sNR()}},100);function uS(r){var wW=r.width,tS=bS*s,sX=wW*(sp/100),iX=(sX-tx)/tS,iS=(iX/nW)*100;if(rng)rng.value=String(Math.round(sp));return Math.max(0,Math.min(100,iS))}function uZB(){zB.forEach(function(b){var z=Number(b.getAttribute('data-zoom'));b.classList.toggle('active',Math.abs(s-z)<0.01)})}function aT(){var r=gRC(),tS=bS*s,sv=uS(r),txS=tx+'px',tyS=ty+'px',hxS=sp+'%',spS=sv+'%';if(chk(tS,txS,tyS,hxS,spS)){R.style.setProperty('--s',String(tS));R.style.setProperty('--tx',txS);R.style.setProperty('--ty',tyS);R.style.setProperty('--handle-x',hxS);R.style.setProperty('--split',spS)}uZB()}function cP(){var r=gRC(),cW=r.width,cH=r.height,tS=bS*s,scW=nW*tS,scH=nH*tS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tx=Math.min(0,Math.max(mnTx,tx));ty=Math.min(0,Math.max(mnTy,ty))}function eIO(t){return 0.5>t?2*t*t:1-Math.pow(-2*t+2,2)/2}function aZ(tgS,tgTx,tgTy){if(zId){cancelAnimationFrame(zId);zId=null}var stS=s,stTx=tx,stTy=ty,stT=performance.now();function step(now){var t=(now-stT)/150;if(t>=1){t=1;zId=null}var ea=eIO(t);s=stS+(tgS-stS)*ea;tx=stTx+(tgTx-stTx)*ea;ty=stTy+(tgTy-stTy)*ea;aT();if(1>t)zId=requestAnimationFrame(step)}zId=requestAnimationFrame(step)}zB.forEach(function(b){b.addEventListener('click',function(){inv();var z=Number(b.getAttribute('data-zoom')),r=gRC(true),mx=r.width/2,my=r.height/2,tS=bS*s,ntS=bS*z,wX=(mx-tx)/tS,wY=(my-ty)/tS,tgTx=mx-wX*ntS,tgTy=my-wY*ntS,cW=r.width,cH=r.height,scW=nW*ntS,scH=nH*ntS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tgTx=Math.min(0,Math.max(mnTx,tgTx));tgTy=Math.min(0,Math.max(mnTy,tgTy));aZ(z,tgTx,tgTy)})});function pTS(cX){var r=gRC(),x=cX-r.left;sp=Math.max(0,Math.min(100,(x/r.width)*100));aT()}if(H)H.addEventListener('pointerdown',function(e){if(e.button!==0)return;m='split';R.setPointerCapture(e.pointerId);pTS(e.clientX);e.preventDefault()});R.addEventListener('pointerdown',function(e){var oH=e.target.closest&&e.target.closest('.ba-handle');if(oH)return;var rC=(e.button===2),mC=(e.button===1),lC=(e.button===0);if(rC||mC||lC){m='pan';sX=e.clientX;sY=e.clientY;sTx=tx;sTy=ty;R.classList.add('ba-panning');R.setPointerCapture(e.pointerId);e.preventDefault()}});R.addEventListener('pointermove',function(e){if(!m)return;if(m==='split'){pTS(e.clientX);e.preventDefault();return}if(m==='pan'){tx=sTx+(e.clientX-sX);ty=sTy+(e.clientY-sY);cP();aT();e.preventDefault()}});function eP(){m=null;R.classList.remove('ba-panning')}R.addEventListener('pointerup',eP);R.addEventListener('pointercancel',eP);R.addEventListener('contextmenu',function(e){e.preventDefault()});if(rng){rng.addEventListener('input',function(e){sp=Number(e.target.value);aT()});rng.addEventListener('change',function(e){sp=Number(e.target.value);aT()})}R.addEventListener('wheel',function(e){if(s<=1.0001&&e.deltaY>0)return;e.preventDefault();inv();var r=gRC(true),mx=e.clientX-r.left,my=e.clientY-r.top,nS=s*Math.exp(-e.deltaY*0.0015);nS=Math.max(1,Math.min(100,nS));var tS=bS*s,ntS=bS*nS,wX=(mx-tx)/tS,wY=(my-ty)/tS,ntx=mx-wX*ntS,nty=my-wY*ntS;qU(nS,ntx,nty)},{passive:false});R.addEventListener('dblclick',function(e){if(zId){cancelAnimationFrame(zId);zId=null}inv();var r=gRC(true),mx=e.clientX-r.left,my=e.clientY-r.top,tgS,tgTx,tgTy;if(s>1.0001){tgS=1;var scW1=nW*bS,scH1=nH*bS;tgTx=(r.width-scW1)/2;tgTy=(r.height-scH1)/2}else{tgS=1/bS;var tS=bS*s,ntS=bS*tgS,wX=(mx-tx)/tS,wY=(my-ty)/tS;tgTx=mx-wX*ntS;tgTy=my-wY*ntS;var cW=r.width,cH=r.height,scW=nW*ntS,scH=nH*ntS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tgTx=Math.min(0,Math.max(mnTx,tgTx));tgTy=Math.min(0,Math.max(mnTy,tgTy))}aZ(tgS,tgTx,tgTy)});window.addEventListener('resize',function(){inv();rBS();cP();aT()});R.addEventListener('ba-reset',function(){sp=90;s=1;inv();ctr()});R.addEventListener('ba-recalc',function(){var nwV=R.style.getPropertyValue('--native-w'),nhV=R.style.getPropertyValue('--native-h');if(nwV&&nhV){nW=parseFloat(nwV);nH=parseFloat(nhV);inv();rBS();ctr()}});R.addEventListener('ba-setview',function(e){var d=e.detail;if(d&&d.zoom){var tZ=d.zoom,nPX=d.panX||0,nPY=d.panY||0;inv();var r=gRC(true),nS=bS*tZ,scW=nW*nS,scH=nH*nS,cx=(r.width-scW)/2,cy=(r.height-scH)/2,rX=Math.max(0,(scW-r.width)/2),rY=Math.max(0,(scH-r.height)/2),tgTx=cx+nPX*rX,tgTy=cy+nPY*rY;aZ(tZ,tgTx,tgTy)}});R.classList.add('ba-ready');var initPos={zoom:1.09,panX:0.5359,panY:1.0},initApplied=false;function applyInit(){if(initApplied)return;if(!initPos||(initPos.zoom===1&&initPos.panX===0&&initPos.panY===0))return;if(!sD){setTimeout(applyInit,50);return}initApplied=true;R.dispatchEvent(new CustomEvent('ba-setview',{detail:initPos}))}if(initPos&&(initPos.zoom!==1||initPos.panX!==0||initPos.panY!==0))setTimeout(applyInit,100);aT()}if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',function(){I('ba-widget-587e9b2543bb')});else I('ba-widget-587e9b2543bb')})();
BeforeAfterBeforeAfter
(function(){function I(id){var W=document.getElementById(id+'-wrapper'),R=document.getElementById(id);if(!R)return;var B=R.querySelector('.ba-before'),A=R.querySelector('.ba-after'),rng=R.querySelector('.ba-range'),H=R.querySelector('.ba-handle'),zB=W?W.querySelectorAll('.ba-zoom-btn'):[];var nW=800,nH=450,bS=1,sp=90,s=1,tx=0,ty=0,m=null,sX=0,sY=0,sTx=0,sTy=0,zId=null,rc=null,rcT=0;function gRC(f){var n=performance.now();if(!f&&rc&&16>(n-rcT))return rc;rc=R.getBoundingClientRect();rcT=n;return rc}function inv(){rc=null}var lS={s:null,tx:null,ty:null,hx:null,sp:null};function chk(a,txS,tyS,hx,spS){if(lS.s===a&&lS.tx===txS&&lS.ty===tyS&&lS.hx===hx&&lS.sp===spS)return false;lS.s=a;lS.tx=txS;lS.ty=tyS;lS.hx=hx;lS.sp=spS;return true}var rId=null,pS=null,pTx=null,pTy=null;function sched(){if(rId)return;rId=requestAnimationFrame(function(){rId=null;if(pS!==null){s=pS;pS=null}if(pTx!==null){tx=pTx;pTx=null}if(pTy!==null){ty=pTy;pTy=null}cP();aT()})}function qU(ns,ntx,nty){if(ns!==undefined)pS=ns;if(ntx!==undefined)pTx=ntx;if(nty!==undefined)pTy=nty;sched()}function sNR(){if(!B||!A||!B.naturalWidth||!A.naturalWidth)return;var mW=Math.max(B.naturalWidth,A.naturalWidth),mH=Math.max(B.naturalHeight,A.naturalHeight);nW=mW;nH=mH;R.style.setProperty('--native-w',mW);R.style.setProperty('--native-h',mH);rBS();ctr()}function rBS(){inv();var r=gRC(true);if(r.width===0)return;bS=Math.max(r.width/nW,r.height/nH);aT()}function ctr(){var r=gRC();if(r.width===0)return;var tS=bS*s,scW=nW*tS,scH=nH*tS;tx=(r.width-scW)/2;ty=(r.height-scH)/2;aT()}var iL=0,sD=false;function oIL(){iL++;if(iL>=2&&!sD){sD=true;sNR()}}function cI(img){if(img.complete&&img.naturalWidth>0)oIL();else if(img.complete){if(img.decode)img.decode().then(oIL).catch(function(){requestAnimationFrame(oIL)});else requestAnimationFrame(oIL)}else img.addEventListener('load',oIL)}cI(B);cI(A);setTimeout(function(){if(!sD&&B.naturalWidth>0&&A.naturalWidth>0){sD=true;sNR()}},100);function uS(r){var wW=r.width,tS=bS*s,sX=wW*(sp/100),iX=(sX-tx)/tS,iS=(iX/nW)*100;if(rng)rng.value=String(Math.round(sp));return Math.max(0,Math.min(100,iS))}function uZB(){zB.forEach(function(b){var z=Number(b.getAttribute('data-zoom'));b.classList.toggle('active',Math.abs(s-z)<0.01)})}function aT(){var r=gRC(),tS=bS*s,sv=uS(r),txS=tx+'px',tyS=ty+'px',hxS=sp+'%',spS=sv+'%';if(chk(tS,txS,tyS,hxS,spS)){R.style.setProperty('--s',String(tS));R.style.setProperty('--tx',txS);R.style.setProperty('--ty',tyS);R.style.setProperty('--handle-x',hxS);R.style.setProperty('--split',spS)}uZB()}function cP(){var r=gRC(),cW=r.width,cH=r.height,tS=bS*s,scW=nW*tS,scH=nH*tS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tx=Math.min(0,Math.max(mnTx,tx));ty=Math.min(0,Math.max(mnTy,ty))}function eIO(t){return 0.5>t?2*t*t:1-Math.pow(-2*t+2,2)/2}function aZ(tgS,tgTx,tgTy){if(zId){cancelAnimationFrame(zId);zId=null}var stS=s,stTx=tx,stTy=ty,stT=performance.now();function step(now){var t=(now-stT)/150;if(t>=1){t=1;zId=null}var ea=eIO(t);s=stS+(tgS-stS)*ea;tx=stTx+(tgTx-stTx)*ea;ty=stTy+(tgTy-stTy)*ea;aT();if(1>t)zId=requestAnimationFrame(step)}zId=requestAnimationFrame(step)}zB.forEach(function(b){b.addEventListener('click',function(){inv();var z=Number(b.getAttribute('data-zoom')),r=gRC(true),mx=r.width/2,my=r.height/2,tS=bS*s,ntS=bS*z,wX=(mx-tx)/tS,wY=(my-ty)/tS,tgTx=mx-wX*ntS,tgTy=my-wY*ntS,cW=r.width,cH=r.height,scW=nW*ntS,scH=nH*ntS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tgTx=Math.min(0,Math.max(mnTx,tgTx));tgTy=Math.min(0,Math.max(mnTy,tgTy));aZ(z,tgTx,tgTy)})});function pTS(cX){var r=gRC(),x=cX-r.left;sp=Math.max(0,Math.min(100,(x/r.width)*100));aT()}if(H)H.addEventListener('pointerdown',function(e){if(e.button!==0)return;m='split';R.setPointerCapture(e.pointerId);pTS(e.clientX);e.preventDefault()});R.addEventListener('pointerdown',function(e){var oH=e.target.closest&&e.target.closest('.ba-handle');if(oH)return;var rC=(e.button===2),mC=(e.button===1),lC=(e.button===0);if(rC||mC||lC){m='pan';sX=e.clientX;sY=e.clientY;sTx=tx;sTy=ty;R.classList.add('ba-panning');R.setPointerCapture(e.pointerId);e.preventDefault()}});R.addEventListener('pointermove',function(e){if(!m)return;if(m==='split'){pTS(e.clientX);e.preventDefault();return}if(m==='pan'){tx=sTx+(e.clientX-sX);ty=sTy+(e.clientY-sY);cP();aT();e.preventDefault()}});function eP(){m=null;R.classList.remove('ba-panning')}R.addEventListener('pointerup',eP);R.addEventListener('pointercancel',eP);R.addEventListener('contextmenu',function(e){e.preventDefault()});if(rng){rng.addEventListener('input',function(e){sp=Number(e.target.value);aT()});rng.addEventListener('change',function(e){sp=Number(e.target.value);aT()})}R.addEventListener('wheel',function(e){if(s<=1.0001&&e.deltaY>0)return;e.preventDefault();inv();var r=gRC(true),mx=e.clientX-r.left,my=e.clientY-r.top,nS=s*Math.exp(-e.deltaY*0.0015);nS=Math.max(1,Math.min(100,nS));var tS=bS*s,ntS=bS*nS,wX=(mx-tx)/tS,wY=(my-ty)/tS,ntx=mx-wX*ntS,nty=my-wY*ntS;qU(nS,ntx,nty)},{passive:false});R.addEventListener('dblclick',function(e){if(zId){cancelAnimationFrame(zId);zId=null}inv();var r=gRC(true),mx=e.clientX-r.left,my=e.clientY-r.top,tgS,tgTx,tgTy;if(s>1.0001){tgS=1;var scW1=nW*bS,scH1=nH*bS;tgTx=(r.width-scW1)/2;tgTy=(r.height-scH1)/2}else{tgS=1/bS;var tS=bS*s,ntS=bS*tgS,wX=(mx-tx)/tS,wY=(my-ty)/tS;tgTx=mx-wX*ntS;tgTy=my-wY*ntS;var cW=r.width,cH=r.height,scW=nW*ntS,scH=nH*ntS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tgTx=Math.min(0,Math.max(mnTx,tgTx));tgTy=Math.min(0,Math.max(mnTy,tgTy))}aZ(tgS,tgTx,tgTy)});window.addEventListener('resize',function(){inv();rBS();cP();aT()});R.addEventListener('ba-reset',function(){sp=90;s=1;inv();ctr()});R.addEventListener('ba-recalc',function(){var nwV=R.style.getPropertyValue('--native-w'),nhV=R.style.getPropertyValue('--native-h');if(nwV&&nhV){nW=parseFloat(nwV);nH=parseFloat(nhV);inv();rBS();ctr()}});R.addEventListener('ba-setview',function(e){var d=e.detail;if(d&&d.zoom){var tZ=d.zoom,nPX=d.panX||0,nPY=d.panY||0;inv();var r=gRC(true),nS=bS*tZ,scW=nW*nS,scH=nH*nS,cx=(r.width-scW)/2,cy=(r.height-scH)/2,rX=Math.max(0,(scW-r.width)/2),rY=Math.max(0,(scH-r.height)/2),tgTx=cx+nPX*rX,tgTy=cy+nPY*rY;aZ(tZ,tgTx,tgTy)}});R.classList.add('ba-ready');var initPos={zoom:2.05,panX:-0.3514,panY:0.215},initApplied=false;function applyInit(){if(initApplied)return;if(!initPos||(initPos.zoom===1&&initPos.panX===0&&initPos.panY===0))return;if(!sD){setTimeout(applyInit,50);return}initApplied=true;R.dispatchEvent(new CustomEvent('ba-setview',{detail:initPos}))}if(initPos&&(initPos.zoom!==1||initPos.panX!==0||initPos.panY!==0))setTimeout(applyInit,100);aT()}if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',function(){I('ba-widget-b9cbdc2e4692')});else I('ba-widget-b9cbdc2e4692')})();

QUALITY COMPARISON

Compare uncompressed stills to see every improvement clearly.

BeforeAfterBeforeAfter
!function(){function I(id){var W=document.getElementById(id+'-wrapper'),R=document.getElementById(id);if(!R)return;var B=R.querySelector('.ba-before'),A=R.querySelector('.ba-after'),rng=R.querySelector('.ba-range'),H=R.querySelector('.ba-handle'),zB=W?W.querySelectorAll('.ba-zoom-btn'):[];var nW=800,nH=450,bS=1,sp=90,s=1,tx=0,ty=0,m=null,sX=0,sY=0,sTx=0,sTy=0,zId=null,rc=null,rcT=0;function gRC(f){var n=performance.now();if(!f&&rc&&16>(n-rcT))return rc;rc=R.getBoundingClientRect();rcT=n;return rc}function inv(){rc=null}var lS={s:null,tx:null,ty:null,hx:null,sp:null};function chk(a,txS,tyS,hx,spS){if(lS.s===a&&lS.tx===txS&&lS.ty===tyS&&lS.hx===hx&&lS.sp===spS)return!1;lS.s=a;lS.tx=txS;lS.ty=tyS;lS.hx=hx;lS.sp=spS;return!0}var rId=null,pS=null,pTx=null,pTy=null;function sched(){if(rId)return;rId=requestAnimationFrame(function(){rId=null;if(pS!==null){s=pS;pS=null}if(pTx!==null){tx=pTx;pTx=null}if(pTy!==null){ty=pTy;pTy=null}cP();aT()})}function qU(ns,ntx,nty){if(ns!==undefined)pS=ns;if(ntx!==undefined)pTx=ntx;if(nty!==undefined)pTy=nty;sched()}function sNR(){if(!B||!A||!B.naturalWidth||!A.naturalWidth)return;var mW=Math.max(B.naturalWidth,A.naturalWidth),mH=Math.max(B.naturalHeight,A.naturalHeight);nW=mW;nH=mH;R.style.setProperty('--native-w',mW);R.style.setProperty('--native-h',mH);R.style.aspectRatio='1 / '+(mH/mW);rBS()}function rBS(){inv();var r=gRC(!0);if(r.width===0)return;bS=r.width/nW;aT()}var iL=0,sD=!1;function oIL(){iL++;if(iL>=2&&!sD){sD=!0;sNR()}}function cI(img){if(img.complete&&img.naturalWidth>0)oIL();else if(img.complete){if(img.decode)img.decode().then(oIL).catch(function(){requestAnimationFrame(oIL)});else requestAnimationFrame(oIL)}else img.addEventListener('load',oIL)}cI(B);cI(A);setTimeout(function(){if(!sD&&B.naturalWidth>0&&A.naturalWidth>0){sD=!0;sNR()}},100);function uS(r){var wW=r.width,tS=bS*s,sX=wW*(sp/100),iX=(sX-tx)/tS,iS=(iX/nW)*100;if(rng)rng.value=String(Math.round(sp));return Math.max(0,Math.min(100,iS))}function uZB(){zB.forEach(function(b){var z=Number(b.getAttribute('data-zoom'));b.classList.toggle('active',Math.abs(s-z)<.01)})}function aT(){var r=gRC(),tS=bS*s,sv=uS(r),canP=s>1.0001,txS=tx+'px',tyS=ty+'px',hxS=sp+'%',spS=sv+'%';if(chk(tS,txS,tyS,hxS,spS)){R.style.setProperty('--s',String(tS));R.style.setProperty('--tx',txS);R.style.setProperty('--ty',tyS);R.style.setProperty('--handle-x',hxS);R.style.setProperty('--split',spS)}uZB();canP?R.classList.contains('ba-can-pan')||R.classList.add('ba-can-pan'):R.classList.contains('ba-can-pan')&&R.classList.remove('ba-can-pan')}function cP(){var r=gRC(),cW=r.width,cH=r.height,tS=bS*s,scW=nW*tS,scH=nH*tS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tx=Math.min(0,Math.max(mnTx,tx));ty=Math.min(0,Math.max(mnTy,ty))}function eIO(t){return.5>t?2*t*t:1-Math.pow(-2*t+2,2)/2}function aZ(tgS,tgTx,tgTy){if(zId){cancelAnimationFrame(zId);zId=null}var stS=s,stTx=tx,stTy=ty,stT=performance.now();function step(now){var t=(now-stT)/150;if(t>=1){t=1;zId=null}var ea=eIO(t);s=stS+(tgS-stS)*ea;tx=stTx+(tgTx-stTx)*ea;ty=stTy+(tgTy-stTy)*ea;aT();if(1>t)zId=requestAnimationFrame(step)}zId=requestAnimationFrame(step)}zB.forEach(function(b){b.addEventListener('click',function(){inv();var z=Number(b.getAttribute('data-zoom')),r=gRC(!0),mx=r.width/2,my=r.height/2,tS=bS*s,ntS=bS*z,wX=(mx-tx)/tS,wY=(my-ty)/tS,tgTx=mx-wX*ntS,tgTy=my-wY*ntS,cW=r.width,cH=r.height,scW=nW*ntS,scH=nH*ntS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tgTx=Math.min(0,Math.max(mnTx,tgTx));tgTy=Math.min(0,Math.max(mnTy,tgTy));aZ(z,tgTx,tgTy)})});function pTS(cX){var r=gRC(),x=cX-r.left;sp=Math.max(0,Math.min(100,(x/r.width)*100));aT()}if(H)H.addEventListener('pointerdown',function(e){if(e.button!==0)return;m='split';R.setPointerCapture(e.pointerId);pTS(e.clientX);e.preventDefault()});R.addEventListener('pointerdown',function(e){var oH=e.target.closest&&e.target.closest('.ba-handle');if(oH)return;var rC=e.button===2,mC=e.button===1,lC=e.button===0,canP=s>1.0001;if(rC||mC||(lC&&canP)){m='pan';sX=e.clientX;sY=e.clientY;sTx=tx;sTy=ty;R.classList.add('ba-panning');R.setPointerCapture(e.pointerId);e.preventDefault()}});R.addEventListener('pointermove',function(e){if(!m)return;if(m==='split'){pTS(e.clientX);e.preventDefault();return}if(m==='pan'){tx=sTx+(e.clientX-sX);ty=sTy+(e.clientY-sY);cP();aT();e.preventDefault()}});function eP(){m=null;R.classList.remove('ba-panning')}R.addEventListener('pointerup',eP);R.addEventListener('pointercancel',eP);R.addEventListener('contextmenu',function(e){e.preventDefault()});if(rng){rng.addEventListener('input',function(e){sp=Number(e.target.value);aT()});rng.addEventListener('change',function(e){sp=Number(e.target.value);aT()})}R.addEventListener('wheel',function(e){if(s<=1.0001&&e.deltaY>0)return;e.preventDefault();inv();var r=gRC(!0),x=e.clientX-r.left,y=e.clientY-r.top,nS=s*Math.exp(-e.deltaY*.0015);nS=Math.max(1,Math.min(100,nS));var tS=bS*s,ntS=bS*nS,wX=(x-tx)/tS,wY=(y-ty)/tS,ntx=x-wX*ntS,nty=y-wY*ntS;qU(nS,ntx,nty)},{passive:!1});R.addEventListener('dblclick',function(e){if(zId){cancelAnimationFrame(zId);zId=null}inv();var r=gRC(!0),mx=e.clientX-r.left,my=e.clientY-r.top,tgS,tgTx,tgTy;if(s>1.0001){tgS=1;tgTx=0;tgTy=0}else{tgS=7;var tS=bS*s,ntS=bS*tgS,wX=(mx-tx)/tS,wY=(my-ty)/tS;tgTx=mx-wX*ntS;tgTy=my-wY*ntS;var cW=r.width,cH=r.height,scW=nW*ntS,scH=nH*ntS,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tgTx=Math.min(0,Math.max(mnTx,tgTx));tgTy=Math.min(0,Math.max(mnTy,tgTy))}aZ(tgS,tgTx,tgTy)});window.addEventListener('resize',function(){inv();rBS();cP();aT()});R.addEventListener('ba-reset',function(){sp=90;s=1;tx=0;ty=0;inv();aT()});R.addEventListener('ba-recalc',function(){var nwV=R.style.getPropertyValue('--native-w'),nhV=R.style.getPropertyValue('--native-h');if(nwV&&nhV){nW=parseFloat(nwV);nH=parseFloat(nhV);inv();rBS();cP();aT()}});R.addEventListener('ba-setview',function(e){var d=e.detail;if(d&&d.zoom){var tZ=d.zoom,nPX=d.panX||0,nPY=d.panY||0;inv();var r=gRC(!0),cW=r.width,cH=r.height,ntS=bS*tZ,scW=nW*ntS,scH=nH*ntS,mPX=Math.max(0,scW-cW),mPY=Math.max(0,scH-cH),tgTx=-nPX*mPX,tgTy=-nPY*mPY,mnTx=Math.min(0,cW-scW),mnTy=Math.min(0,cH-scH);tgTx=Math.min(0,Math.max(mnTx,tgTx));tgTy=Math.min(0,Math.max(mnTy,tgTy));aZ(tZ,tgTx,tgTy)}});R.classList.add('ba-ready');aT()}document.readyState==='loading'?document.addEventListener('DOMContentLoaded',function(){I('gp-widget-6ff47a077f6f-slider')}):I('gp-widget-6ff47a077f6f-slider')}();
!function(){var w=document.getElementById('gp-widget-6ff47a077f6f'),P=[["drrosetown_OG00102334","drrosetown_RG00102334"],["Tardis_OG00101857","Tardis_RG00101857"],["ROSE_OG00103837","ROSE_RG00103837"],["rope_OG00102933","rope_RG00102933"],["roof_OG00102864","roof_RG00102864"],["Cassandra_OG00103711","Cassandra_RG00103711"],["Cyberman_OG00103576","Cyberman_RG00103576"],["Dalek_ship_1_OG00104247","Dalek_ship_1_RG00104247"],["Daleks_OG00104666","Daleks_RG00104666"],["Emporer_OG00104117","Emporer_RG00104117"],["Jagrafess_OG00103940","Jagrafess_RG00103940"],["entirehumanrace_OG00104561","entirehumanrace_RG00104561"],["nestine_OG00103827","nestine_RG00103827"],["reaper_2_OG00104450","reaper_2_RG00104450"],["Slitheenoriginal00103078","Slitheen_RG"],["END_1_OG00104955","END_1_RG00104955"]],U="https://ik.imagekit.io/il30c3ahm/",S="?tr=f-jpg,q-90",idx=0,sl=w.querySelector('.ba-widget'),bI=sl?sl.querySelector('.ba-before'):null,aI=sl?sl.querySelector('.ba-after'):null,th=w.querySelectorAll('.gp-thumb'),thumbsC=w.querySelector('.gp-thumbs');function uNR(){if(!bI||!aI||!sl||!bI.naturalWidth||!aI.naturalWidth)return;var mW=Math.max(bI.naturalWidth,aI.naturalWidth),mH=Math.max(bI.naturalHeight,aI.naturalHeight);nW=mW;nH=mH;sl.style.setProperty('--native-w',mW);sl.style.setProperty('--native-h',mH);sl.style.aspectRatio='1 / '+Math.min(1,mH/mW);sl.dispatchEvent(new CustomEvent('ba-recalc'))}function rS(){if(sl)sl.dispatchEvent(new CustomEvent('ba-reset'))}var pL=0;function oIL(){pL++;if(pL>=2){pL=0;uNR()}}function sh(i){idx=(i+P.length)%P.length;var p=P[idx];pL=0;if(bI){bI.onload=oIL;bI.src=U+p[1]+".png"+S;if(bI.complete&&bI.naturalWidth>0)oIL()}if(aI){aI.onload=oIL;aI.src=U+p[0]+".png"+S;if(aI.complete&&aI.naturalWidth>0)oIL()}th.forEach(function(t,j){t.classList.toggle('active',j===idx)});rS()}th.forEach(function(t,i){t.onclick=function(){sh(i)}});sh(0);var scrollAmt=200,scrollDur=300;function smoothScroll(el,delta){var start=el.scrollLeft,startT=performance.now();function step(now){var t=Math.min(1,(now-startT)/scrollDur),ease=t<.5?2*t*t:1-Math.pow(-2*t+2,2)/2;el.scrollLeft=start+delta*ease;if(t<1)requestAnimationFrame(step)}requestAnimationFrame(step)}w.querySelector('.gp-scroll-prev').onclick=function(){smoothScroll(thumbsC,-scrollAmt)};w.querySelector('.gp-scroll-next').onclick=function(){smoothScroll(thumbsC,scrollAmt)}}();

ALTERNATIVE SOLUTIONS

Remastered Gems outperforms all available alternative solutions in terms of fidelity and accuracy.

originaloriginal
remastered gemsremastered gems
topaz proteustopaz proteus
topaz rx xltopaz rx xl
topaz starlight 1topaz starlight 1
topaz starlight 2topaz starlight 2
(function(){var WID='gc-widget-6e65a79e3f33',MN=0.5,MX=100,DZ=7,ZM=150;function I(){var W=document.getElementById(WID+'-wrapper'),R=document.getElementById(WID);if(!R){return false}if(R.dataset.gcInit==='true')return true;R.dataset.gcInit='true';var zBtns=W?W.querySelectorAll('.gc-zoom-btn'):[];var uZ=1,pX=0,pY=0,pn=false,sX=0,sY=0,sPX=0,sPY=0,zId=null;function gCI(c){var im=c.querySelector('img'),cW=c.offsetWidth,cH=c.offsetHeight,nW=im&&im.naturalWidth?im.naturalWidth:cW,nH=im&&im.naturalHeight?im.naturalHeight:cH,cS=Math.max(cW/nW,cH/nH);return{cW:cW,cH:cH,nW:nW,nH:nH,cS:cS,im:im}}function uZB(){zBtns.forEach(function(btn){var z=Number(btn.getAttribute('data-zoom'));btn.classList.toggle('active',Math.abs(uZ-z)<0.01)})}function aP(){var cs=R.querySelectorAll('.gc-cell');cs.forEach(function(c){var i=gCI(c),aS=i.cS*uZ,dW=i.nW*aS,dH=i.nH*aS,cx=(i.cW-dW)/2,cy=(i.cH-dH)/2,tx=cx+pX,ty=cy+pY;if(i.im)i.im.style.transform='translate('+tx+'px,'+ty+'px) scale('+aS+')'});R.classList.toggle('gc-can-pan',uZ>1.001);uZB()}function cP(){var c=R.querySelector('.gc-cell');if(!c)return;var i=gCI(c),aS=i.cS*uZ,dW=i.nW*aS,dH=i.nH*aS,rX=Math.max(0,(dW-i.cW)/2),rY=Math.max(0,(dH-i.cH)/2);pX=Math.max(-rX,Math.min(rX,pX));pY=Math.max(-rY,Math.min(rY,pY))}function fC(e){if(e.composedPath){var p=e.composedPath();for(var j=0;p.length>j;j++){if(p[j]&&p[j].classList&&p[j].classList.contains('gc-cell'))return p[j]}}if(e.target&&e.target.closest){var c=e.target.closest('.gc-cell');if(c)return c}var el=document.elementFromPoint(e.clientX,e.clientY);if(el&&el.closest){var c2=el.closest('.gc-cell');if(c2)return c2}return R.querySelector('.gc-cell')}function eIO(t){return t<0.5?2*t*t:1-Math.pow(-2*t+2,2)/2}function aZ(tZ,tPX,tPY){if(zId){cancelAnimationFrame(zId);zId=null}var stZ=uZ,stPX=pX,stPY=pY,stT=performance.now();function aS(now){var t=(now-stT)/ZM;if(t>=1){t=1;zId=null}var ea=eIO(t);uZ=stZ+(tZ-stZ)*ea;pX=stPX+(tPX-stPX)*ea;pY=stPY+(tPY-stPY)*ea;aP();if(t<1)zId=requestAnimationFrame(aS)}zId=requestAnimationFrame(aS)}zBtns.forEach(function(btn){btn.addEventListener('click',function(){var z=Number(btn.getAttribute('data-zoom'));var c=R.querySelector('.gc-cell');if(!c){aZ(z,0,0);return}var i=gCI(c),mx=i.cW/2,my=i.cH/2,oS=i.cS*uZ,nS=i.cS*z,odW=i.nW*oS,odH=i.nH*oS,ndW=i.nW*nS,ndH=i.nH*nS,ocX=(i.cW-odW)/2,ocY=(i.cH-odH)/2,ncX=(i.cW-ndW)/2,ncY=(i.cH-ndH)/2,oTx=ocX+pX,oTy=ocY+pY,imX=(mx-oTx)/oS,imY=(my-oTy)/oS,nTx=mx-imX*nS,nTy=my-imY*nS,tPX=nTx-ncX,tPY=nTy-ncY,rX=Math.max(0,(ndW-i.cW)/2),rY=Math.max(0,(ndH-i.cH)/2);tPX=Math.max(-rX,Math.min(rX,tPX));tPY=Math.max(-rY,Math.min(rY,tPY));aZ(z,tPX,tPY)})});R.addEventListener('wheel',function(e){e.preventDefault();var c=fC(e);if(!c)return;var i=gCI(c),rc=c.getBoundingClientRect(),mx=e.clientX-rc.left,my=e.clientY-rc.top,oZ=uZ,d=-e.deltaY,nZ=oZ*Math.exp(d*0.0015);nZ=Math.max(MN,Math.min(MX,nZ));var oS=i.cS*oZ,nS=i.cS*nZ,odW=i.nW*oS,odH=i.nH*oS,ndW=i.nW*nS,ndH=i.nH*nS,ocX=(i.cW-odW)/2,ocY=(i.cH-odH)/2,ncX=(i.cW-ndW)/2,ncY=(i.cH-ndH)/2,oTx=ocX+pX,oTy=ocY+pY,imX=(mx-oTx)/oS,imY=(my-oTy)/oS,nTx=mx-imX*nS,nTy=my-imY*nS;pX=nTx-ncX;pY=nTy-ncY;uZ=nZ;cP();aP()},{passive:false});R.addEventListener('pointerdown',function(e){var dom=e.target.closest&&e.target.closest('.gc-label');if(dom)return;var canP=uZ>1.001;if(e.button===1||e.button===2||(e.button===0&&canP)){pn=true;sX=e.clientX;sY=e.clientY;sPX=pX;sPY=pY;R.classList.add('gc-panning');R.setPointerCapture(e.pointerId);e.preventDefault()}});R.addEventListener('pointermove',function(e){if(!pn)return;pX=sPX+(e.clientX-sX);pY=sPY+(e.clientY-sY);cP();aP();e.preventDefault()});function eP(){pn=false;R.classList.remove('gc-panning')}R.addEventListener('pointerup',eP);R.addEventListener('pointercancel',eP);R.addEventListener('contextmenu',function(e){e.preventDefault()});R.addEventListener('dblclick',function(e){var c=fC(e);if(!c)return;var i=gCI(c),rc=c.getBoundingClientRect(),mx=e.clientX-rc.left,my=e.clientY-rc.top,tZ,tPX,tPY;if(uZ>1.001){tZ=1;tPX=0;tPY=0}else{tZ=DZ;var oS=i.cS*uZ,nS=i.cS*tZ,odW=i.nW*oS,odH=i.nH*oS,ndW=i.nW*nS,ndH=i.nH*nS,ocX=(i.cW-odW)/2,ocY=(i.cH-odH)/2,ncX=(i.cW-ndW)/2,ncY=(i.cH-ndH)/2,oTx=ocX+pX,oTy=ocY+pY,imX=(mx-oTx)/oS,imY=(my-oTy)/oS,nTx=mx-imX*nS,nTy=my-imY*nS;tPX=nTx-ncX;tPY=nTy-ncY;var rX=Math.max(0,(ndW-i.cW)/2),rY=Math.max(0,(ndH-i.cH)/2);tPX=Math.max(-rX,Math.min(rX,tPX));tPY=Math.max(-rY,Math.min(rY,tPY))}aZ(tZ,tPX,tPY)});window.addEventListener('resize',function(){cP();aP()});if(typeof ResizeObserver!=='undefined'){var rO=new ResizeObserver(function(){cP();aP()});rO.observe(R)}var ims=R.querySelectorAll('.gc-cell img'),lC=0,tI=ims.length;function oAL(){requestAnimationFrame(function(){requestAnimationFrame(function(){aP();R.classList.add('gc-ready')})})}ims.forEach(function(im){if(im.complete&&im.naturalWidth>0){lC++;if(lC===tI)oAL()}else{im.addEventListener('load',function(){lC++;if(lC===tI)oAL()});im.addEventListener('error',function(){lC++;if(lC===tI)oAL()})}});if(tI===0)R.classList.add('gc-ready');var initPos={zoom:10.98,panX:-0.3892,panY:0.0856},initApplied=false;function applyInit(){if(initApplied)return;if(!initPos||(initPos.zoom===1&&initPos.panX===0&&initPos.panY===0))return;if(!R.classList.contains('gc-ready')){setTimeout(applyInit,50);return}initApplied=true;R.dispatchEvent(new CustomEvent('gc-setview',{detail:initPos}))}if(initPos&&(initPos.zoom!==1||initPos.panX!==0||initPos.panY!==0)){setTimeout(applyInit,100)}R.addEventListener('gc-reset',function(){uZ=1;pX=0;pY=0;aP()});R.addEventListener('gc-setview',function(e){var d=e.detail;if(d&&d.zoom){var tZ=d.zoom,nPX=d.panX||0,nPY=d.panY||0;var c=R.querySelector('.gc-cell');if(c){var i=gCI(c),aS=i.cS*tZ,sW=i.nW*aS,sH=i.nH*aS,mPX=Math.max(0,(sW-i.cW)/2),mPY=Math.max(0,(sH-i.cH)/2),tPX=nPX*mPX,tPY=nPY*mPY;aZ(tZ,tPX,tPY)}else{aZ(tZ,0,0)}}});return true}function B(){if(I())return;var tr=0,mT=60;function rT(){tr++;if(I())return;if(mT>tr)requestAnimationFrame(rT)}requestAnimationFrame(rT)}if(document.readyState==='loading'){document.addEventListener('DOMContentLoaded',B)}else{B()}})();

PRODUCTION PLAN & BUDGET

(coming shortly)


Disclaimer:
This site is an independent technical demonstration of restoration/remastering methods. The samples shown here are provided for demonstration purposes.