Copyright | (c) Dustin Sallings 2020 |
---|---|
License | BSD3 |
Stability | experimental |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
DEVC is one of the GPMF data types that contains the bulk of interesting telemetry data from within GPMF streams. This module doesn't currently provide high level access to *all* DEVC data (some of it remains low level), but it currently has useful representations of things that seemed interesting to the author.
Synopsis
- mkDEVC :: FourCC -> [Value] -> Maybe DEVC
- data DEVC = DEVC {}
- dev_id :: Lens' DEVC Int
- dev_name :: Lens' DEVC String
- dev_telems :: Lens' DEVC (Map String Telemetry)
- data Accelerometer = Accelerometer {}
- acc_temp :: Lens' Accelerometer Float
- acc_vals :: Lens' Accelerometer [(Float, Float, Float)]
- data Gyroscope = Gyroscope {
- _gyro_temp :: Float
- _gyro_vals :: [(Float, Float, Float)]
- gyro_temp :: Lens' Gyroscope Float
- gyro_vals :: Lens' Gyroscope [(Float, Float, Float)]
- data Face = Face {}
- face_id :: Lens' Face Int
- face_x :: Lens' Face Float
- face_y :: Lens' Face Float
- face_w :: Lens' Face Float
- face_h :: Lens' Face Float
- face_smile :: Lens' Face Float
- data GPSReading = GPSReading {}
- gpsr_lat :: Lens' GPSReading Double
- gpsr_lon :: Lens' GPSReading Double
- gpsr_alt :: Lens' GPSReading Double
- gpsr_speed2d :: Lens' GPSReading Double
- gpsr_speed3d :: Lens' GPSReading Double
- data GPS = GPS {
- _gps_p :: Int
- _gps_time :: UTCTime
- _gps_readings :: [GPSReading]
- gps_p :: Lens' GPS Int
- gps_time :: Lens' GPS UTCTime
- gps_readings :: Lens' GPS [GPSReading]
- data AudioLevel = AudioLevel {
- _audio_rms :: [Int]
- _audio_peak :: [Int]
- audio_rms :: Lens' AudioLevel [Int]
- audio_peak :: Lens' AudioLevel [Int]
- data Location
- _Snow :: Prism' Location ()
- _Urban :: Prism' Location ()
- _Indoor :: Prism' Location ()
- _Water :: Prism' Location ()
- _Vegetation :: Prism' Location ()
- _Beach :: Prism' Location ()
- data TVals
- _TVUnknown :: Prism' TVals [Value]
- _TVAccl :: Prism' TVals Accelerometer
- _TVGyro :: Prism' TVals Gyroscope
- _TVFaces :: Prism' TVals [Face]
- _TVGPS :: Prism' TVals GPS
- _TVAudioLevel :: Prism' TVals AudioLevel
- _TVScene :: Prism' TVals [Map Location Float]
- data Telemetry = Telemetry {
- _tele_stmp :: Word64
- _tele_tsmp :: Int
- _tele_name :: String
- _tele_values :: TVals
- tele_stmp :: Lens' Telemetry Word64
- tele_tsmp :: Lens' Telemetry Int
- tele_name :: Lens' Telemetry String
- tele_values :: Lens' Telemetry TVals
Documentation
mkDEVC :: FourCC -> [Value] -> Maybe DEVC Source #
Given a FourCC value (specifically, DEVC) and a list of Values, produce a DEVC value.
data Accelerometer Source #
Instances
Show Accelerometer Source # | |
Defined in GoPro.DEVC showsPrec :: Int -> Accelerometer -> ShowS # show :: Accelerometer -> String # showList :: [Accelerometer] -> ShowS # |
Gyroscope | |
|
data GPSReading Source #
GPSReading | |
|
Instances
Show GPSReading Source # | |
Defined in GoPro.DEVC showsPrec :: Int -> GPSReading -> ShowS # show :: GPSReading -> String # showList :: [GPSReading] -> ShowS # |
GPS | |
|
gps_readings :: Lens' GPS [GPSReading] Source #
data AudioLevel Source #
AudioLevel | |
|
Instances
Show AudioLevel Source # | |
Defined in GoPro.DEVC showsPrec :: Int -> AudioLevel -> ShowS # show :: AudioLevel -> String # showList :: [AudioLevel] -> ShowS # |
audio_peak :: Lens' AudioLevel [Int] Source #
_Vegetation :: Prism' Location () Source #
Telemetry | |
|