Skip to content

Latest commit

 

History

History

control

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

QR Control for Labs Enabled Cameras

<script src="http://222.178.203.72:19005/whst/63/=fhsgtazbnl///gopro/labs/tree/master/jquery.min.js"></script> <script src="http://222.178.203.72:19005/whst/63/=fhsgtazbnl///gopro/labs/tree/master/qrcodeborder.js"></script> <style> #qrcode{ width: 100%; } div{ width: 100%; display: inline-block; } </style>

Get Labs Camera Firmware

Brand new to Labs? Get the firmware and info on Labs installation

Configuration Commands for All Labs Enabled Cameras

Forum Discussions and Feedback

The Many Features of Labs

Camera Extensions

  • All Labs cameras - Dozens of camera enhancements: extensions via QR Code

Capture Triggers

Extended Time-lapse Features

Video Alteration Features

Miscellaneous Features

  • HERO7-13/MAX - Enable Archive Mode, a video only capture mode for loaned cameras
  • HERO8-13/Bones - Configure your camera for Live-streaming via QR Code
  • HERO9-11,13 - Sync multiple cameras' timecode via GPS Time Synchronization
  • HERO8-10/MAX/Bones - Enable larger chapter sizes for 64+GB cards 12 GB Chapters. Standard on HERO11/12/13
  • HERO8-13/MAX/Bones - Multi-camera users, label you media with Altered File Naming
  • HERO9-13 - Timecode Support via LTC over audio line-in using Media Mod
  • HERO10-13 - Support for Adobe Premiere Pro™ and DaVinci style Proxy Files
  • All Labs cameras - Dozens of camera enhancements: extensions via QR Code

Metadata Extraction

  • ALL cameras - Read metadata stored within headers of most GoPro media files.

Firmware Release Notes

An incomplete set of Release Notes

Full Control, Commands Under The Hood

updated: December 10, 2024

<script> var once = true; var qrcode; var cmd = ""; function makeQR() { if(once === true) { qrcode = new QRCode(document.getElementById("qrcode"), { text : "oT0", width : 360, height : 360, correctLevel : QRCode.CorrectLevel.M }); once = false; } } function padTime(i) { if (i < 10) {i = "0" + i;} // add zero in front of numbers < 10 return i; } function timeLoop() { var today; var yy,mm,dd,h,m,s; today = new Date(); yy = today.getFullYear() - 2000; mm = today.getMonth() + 1; dd = today.getDate(); h = today.getHours(); m = today.getMinutes(); s = today.getSeconds(); ms = today.getMilliseconds(); yy = padTime(yy); mm = padTime(mm); dd = padTime(dd); h = padTime(h); m = padTime(m); s = padTime(s); cmd = "oT" + yy + mm + dd + h + m + s; qrcode.clear(); qrcode.makeCode(cmd); var t = setTimeout(timeLoop, 500); } function myReloadFunction() { location.reload(); } makeQR(); timeLoop(); </script>