Skip to content

96fps/ThetaS-video-remap

This branch is 17 commits ahead of, 2 commits behind prouast/equirectangular-remap:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

11bdcf4 · Jan 4, 2019

History

26 Commits
Jul 2, 2017
Jan 4, 2019
Apr 4, 2017
Mar 28, 2018
Mar 28, 2018
Mar 28, 2018
Mar 28, 2018
Mar 28, 2018
Mar 28, 2018
Mar 28, 2018
Apr 4, 2017
Mar 28, 2018
Mar 31, 2018
Mar 28, 2018
Mar 31, 2018
Mar 28, 2018
Mar 28, 2018

Repository files navigation

ThetaS-video-remap

Example ➡️ Result

Generate maps for ffmpeg to convert of spherical video from the dual-full frame fish-eye images to equirectangular video.

Adapted from the example given for ffmpeg's RemapFilter, with support added for video captured with Ricoh Theta S devices.

Guide

Building

  1. Install ffmpeg, (make sure it's a recent version)
  2. Checkout the source of this repository
  3. Build: `$ gcc projection.c -lm -o project

Running

Create maps xmap.pgm and ymap.pgm for use with videos from Theta S devices:

$ ./project -x xmap.pgm -y ymap.pgm -h 960 -w 960 -c 1920 -r 960 -m theta --verbose

xmap ymap

This creates two ASCII encoded PGM files which act as a lookup table for ffmpeg to remap the video.

Apply the maps to the video R0014696.MP4:

$ ffmpeg -i R0014696.MP4 -i xmap.pgm -i ymap.pgm -q 0 -lavfi "format=pix_fmts=rgb24,remap" remapped.mp4

Known issues

The Lens mapping isn't perfect, I'm working on getting a more accurate mapping.

spinning camera stabilized wobble example

Stabilizing output videos via Hugin with Matthew Petroff's method reveals a wobble that would not be present if the mapping was perfect; Convieniently, I think i can use Hugin's Lens Calibration tools on the source frames to find a better mapping.

Useful Things for Spherical Video

Tag for upload

If you want to upload your video to youtube as a 360 video, make sure you encoded it as a .mp4, and use this tool from google. On linux, you can install python-tk and use the gui, or use it via command line.

The instructions there say to run python spatialmedia but there isn't anything called that, so replace spatialmedia with __main__.py and it works.

python __main__.py -i remapped.mp4 remapped_injected.mp4

Your file is now ready for YouTube/etc.

Releases

No releases published

Packages

No packages published

Languages

  • C 100.0%