{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.Rekognition.Types.SegmentDetection where
import qualified Amazonka.Core as Core
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
import Amazonka.Rekognition.Types.SegmentType
import Amazonka.Rekognition.Types.ShotSegment
import Amazonka.Rekognition.Types.TechnicalCueSegment
data SegmentDetection = SegmentDetection'
{
SegmentDetection -> Maybe TechnicalCueSegment
technicalCueSegment :: Prelude.Maybe TechnicalCueSegment,
:: Prelude.Maybe Prelude.Natural,
SegmentDetection -> Maybe Text
durationSMPTE :: Prelude.Maybe Prelude.Text,
SegmentDetection -> Maybe Integer
endTimestampMillis :: Prelude.Maybe Prelude.Integer,
SegmentDetection -> Maybe Text
startTimecodeSMPTE :: Prelude.Maybe Prelude.Text,
SegmentDetection -> Maybe Text
endTimecodeSMPTE :: Prelude.Maybe Prelude.Text,
SegmentDetection -> Maybe Natural
durationMillis :: Prelude.Maybe Prelude.Natural,
SegmentDetection -> Maybe Natural
durationFrames :: Prelude.Maybe Prelude.Natural,
SegmentDetection -> Maybe Integer
startTimestampMillis :: Prelude.Maybe Prelude.Integer,
SegmentDetection -> Maybe SegmentType
type' :: Prelude.Maybe SegmentType,
SegmentDetection -> Maybe ShotSegment
shotSegment :: Prelude.Maybe ShotSegment,
:: Prelude.Maybe Prelude.Natural
}
deriving (SegmentDetection -> SegmentDetection -> Bool
(SegmentDetection -> SegmentDetection -> Bool)
-> (SegmentDetection -> SegmentDetection -> Bool)
-> Eq SegmentDetection
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SegmentDetection -> SegmentDetection -> Bool
$c/= :: SegmentDetection -> SegmentDetection -> Bool
== :: SegmentDetection -> SegmentDetection -> Bool
$c== :: SegmentDetection -> SegmentDetection -> Bool
Prelude.Eq, ReadPrec [SegmentDetection]
ReadPrec SegmentDetection
Int -> ReadS SegmentDetection
ReadS [SegmentDetection]
(Int -> ReadS SegmentDetection)
-> ReadS [SegmentDetection]
-> ReadPrec SegmentDetection
-> ReadPrec [SegmentDetection]
-> Read SegmentDetection
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [SegmentDetection]
$creadListPrec :: ReadPrec [SegmentDetection]
readPrec :: ReadPrec SegmentDetection
$creadPrec :: ReadPrec SegmentDetection
readList :: ReadS [SegmentDetection]
$creadList :: ReadS [SegmentDetection]
readsPrec :: Int -> ReadS SegmentDetection
$creadsPrec :: Int -> ReadS SegmentDetection
Prelude.Read, Int -> SegmentDetection -> ShowS
[SegmentDetection] -> ShowS
SegmentDetection -> String
(Int -> SegmentDetection -> ShowS)
-> (SegmentDetection -> String)
-> ([SegmentDetection] -> ShowS)
-> Show SegmentDetection
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SegmentDetection] -> ShowS
$cshowList :: [SegmentDetection] -> ShowS
show :: SegmentDetection -> String
$cshow :: SegmentDetection -> String
showsPrec :: Int -> SegmentDetection -> ShowS
$cshowsPrec :: Int -> SegmentDetection -> ShowS
Prelude.Show, (forall x. SegmentDetection -> Rep SegmentDetection x)
-> (forall x. Rep SegmentDetection x -> SegmentDetection)
-> Generic SegmentDetection
forall x. Rep SegmentDetection x -> SegmentDetection
forall x. SegmentDetection -> Rep SegmentDetection x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep SegmentDetection x -> SegmentDetection
$cfrom :: forall x. SegmentDetection -> Rep SegmentDetection x
Prelude.Generic)
newSegmentDetection ::
SegmentDetection
newSegmentDetection :: SegmentDetection
newSegmentDetection =
SegmentDetection' :: Maybe TechnicalCueSegment
-> Maybe Natural
-> Maybe Text
-> Maybe Integer
-> Maybe Text
-> Maybe Text
-> Maybe Natural
-> Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection
SegmentDetection'
{ $sel:technicalCueSegment:SegmentDetection' :: Maybe TechnicalCueSegment
technicalCueSegment =
Maybe TechnicalCueSegment
forall a. Maybe a
Prelude.Nothing,
$sel:endFrameNumber:SegmentDetection' :: Maybe Natural
endFrameNumber = Maybe Natural
forall a. Maybe a
Prelude.Nothing,
$sel:durationSMPTE:SegmentDetection' :: Maybe Text
durationSMPTE = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:endTimestampMillis:SegmentDetection' :: Maybe Integer
endTimestampMillis = Maybe Integer
forall a. Maybe a
Prelude.Nothing,
$sel:startTimecodeSMPTE:SegmentDetection' :: Maybe Text
startTimecodeSMPTE = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:endTimecodeSMPTE:SegmentDetection' :: Maybe Text
endTimecodeSMPTE = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:durationMillis:SegmentDetection' :: Maybe Natural
durationMillis = Maybe Natural
forall a. Maybe a
Prelude.Nothing,
$sel:durationFrames:SegmentDetection' :: Maybe Natural
durationFrames = Maybe Natural
forall a. Maybe a
Prelude.Nothing,
$sel:startTimestampMillis:SegmentDetection' :: Maybe Integer
startTimestampMillis = Maybe Integer
forall a. Maybe a
Prelude.Nothing,
$sel:type':SegmentDetection' :: Maybe SegmentType
type' = Maybe SegmentType
forall a. Maybe a
Prelude.Nothing,
$sel:shotSegment:SegmentDetection' :: Maybe ShotSegment
shotSegment = Maybe ShotSegment
forall a. Maybe a
Prelude.Nothing,
$sel:startFrameNumber:SegmentDetection' :: Maybe Natural
startFrameNumber = Maybe Natural
forall a. Maybe a
Prelude.Nothing
}
segmentDetection_technicalCueSegment :: Lens.Lens' SegmentDetection (Prelude.Maybe TechnicalCueSegment)
segmentDetection_technicalCueSegment :: (Maybe TechnicalCueSegment -> f (Maybe TechnicalCueSegment))
-> SegmentDetection -> f SegmentDetection
segmentDetection_technicalCueSegment = (SegmentDetection -> Maybe TechnicalCueSegment)
-> (SegmentDetection
-> Maybe TechnicalCueSegment -> SegmentDetection)
-> Lens
SegmentDetection
SegmentDetection
(Maybe TechnicalCueSegment)
(Maybe TechnicalCueSegment)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SegmentDetection' {Maybe TechnicalCueSegment
technicalCueSegment :: Maybe TechnicalCueSegment
$sel:technicalCueSegment:SegmentDetection' :: SegmentDetection -> Maybe TechnicalCueSegment
technicalCueSegment} -> Maybe TechnicalCueSegment
technicalCueSegment) (\s :: SegmentDetection
s@SegmentDetection' {} Maybe TechnicalCueSegment
a -> SegmentDetection
s {$sel:technicalCueSegment:SegmentDetection' :: Maybe TechnicalCueSegment
technicalCueSegment = Maybe TechnicalCueSegment
a} :: SegmentDetection)
segmentDetection_endFrameNumber :: Lens.Lens' SegmentDetection (Prelude.Maybe Prelude.Natural)
= (SegmentDetection -> Maybe Natural)
-> (SegmentDetection -> Maybe Natural -> SegmentDetection)
-> Lens
SegmentDetection SegmentDetection (Maybe Natural) (Maybe Natural)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SegmentDetection' {Maybe Natural
endFrameNumber :: Maybe Natural
$sel:endFrameNumber:SegmentDetection' :: SegmentDetection -> Maybe Natural
endFrameNumber} -> Maybe Natural
endFrameNumber) (\s :: SegmentDetection
s@SegmentDetection' {} Maybe Natural
a -> SegmentDetection
s {$sel:endFrameNumber:SegmentDetection' :: Maybe Natural
endFrameNumber = Maybe Natural
a} :: SegmentDetection)
segmentDetection_durationSMPTE :: Lens.Lens' SegmentDetection (Prelude.Maybe Prelude.Text)
segmentDetection_durationSMPTE :: (Maybe Text -> f (Maybe Text))
-> SegmentDetection -> f SegmentDetection
segmentDetection_durationSMPTE = (SegmentDetection -> Maybe Text)
-> (SegmentDetection -> Maybe Text -> SegmentDetection)
-> Lens SegmentDetection SegmentDetection (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SegmentDetection' {Maybe Text
durationSMPTE :: Maybe Text
$sel:durationSMPTE:SegmentDetection' :: SegmentDetection -> Maybe Text
durationSMPTE} -> Maybe Text
durationSMPTE) (\s :: SegmentDetection
s@SegmentDetection' {} Maybe Text
a -> SegmentDetection
s {$sel:durationSMPTE:SegmentDetection' :: Maybe Text
durationSMPTE = Maybe Text
a} :: SegmentDetection)
segmentDetection_endTimestampMillis :: Lens.Lens' SegmentDetection (Prelude.Maybe Prelude.Integer)
segmentDetection_endTimestampMillis :: (Maybe Integer -> f (Maybe Integer))
-> SegmentDetection -> f SegmentDetection
segmentDetection_endTimestampMillis = (SegmentDetection -> Maybe Integer)
-> (SegmentDetection -> Maybe Integer -> SegmentDetection)
-> Lens
SegmentDetection SegmentDetection (Maybe Integer) (Maybe Integer)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SegmentDetection' {Maybe Integer
endTimestampMillis :: Maybe Integer
$sel:endTimestampMillis:SegmentDetection' :: SegmentDetection -> Maybe Integer
endTimestampMillis} -> Maybe Integer
endTimestampMillis) (\s :: SegmentDetection
s@SegmentDetection' {} Maybe Integer
a -> SegmentDetection
s {$sel:endTimestampMillis:SegmentDetection' :: Maybe Integer
endTimestampMillis = Maybe Integer
a} :: SegmentDetection)
segmentDetection_startTimecodeSMPTE :: Lens.Lens' SegmentDetection (Prelude.Maybe Prelude.Text)
segmentDetection_startTimecodeSMPTE :: (Maybe Text -> f (Maybe Text))
-> SegmentDetection -> f SegmentDetection
segmentDetection_startTimecodeSMPTE = (SegmentDetection -> Maybe Text)
-> (SegmentDetection -> Maybe Text -> SegmentDetection)
-> Lens SegmentDetection SegmentDetection (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SegmentDetection' {Maybe Text
startTimecodeSMPTE :: Maybe Text
$sel:startTimecodeSMPTE:SegmentDetection' :: SegmentDetection -> Maybe Text
startTimecodeSMPTE} -> Maybe Text
startTimecodeSMPTE) (\s :: SegmentDetection
s@SegmentDetection' {} Maybe Text
a -> SegmentDetection
s {$sel:startTimecodeSMPTE:SegmentDetection' :: Maybe Text
startTimecodeSMPTE = Maybe Text
a} :: SegmentDetection)
segmentDetection_endTimecodeSMPTE :: Lens.Lens' SegmentDetection (Prelude.Maybe Prelude.Text)
segmentDetection_endTimecodeSMPTE :: (Maybe Text -> f (Maybe Text))
-> SegmentDetection -> f SegmentDetection
segmentDetection_endTimecodeSMPTE = (SegmentDetection -> Maybe Text)
-> (SegmentDetection -> Maybe Text -> SegmentDetection)
-> Lens SegmentDetection SegmentDetection (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SegmentDetection' {Maybe Text
endTimecodeSMPTE :: Maybe Text
$sel:endTimecodeSMPTE:SegmentDetection' :: SegmentDetection -> Maybe Text
endTimecodeSMPTE} -> Maybe Text
endTimecodeSMPTE) (\s :: SegmentDetection
s@SegmentDetection' {} Maybe Text
a -> SegmentDetection
s {$sel:endTimecodeSMPTE:SegmentDetection' :: Maybe Text
endTimecodeSMPTE = Maybe Text
a} :: SegmentDetection)
segmentDetection_durationMillis :: Lens.Lens' SegmentDetection (Prelude.Maybe Prelude.Natural)
segmentDetection_durationMillis :: (Maybe Natural -> f (Maybe Natural))
-> SegmentDetection -> f SegmentDetection
segmentDetection_durationMillis = (SegmentDetection -> Maybe Natural)
-> (SegmentDetection -> Maybe Natural -> SegmentDetection)
-> Lens
SegmentDetection SegmentDetection (Maybe Natural) (Maybe Natural)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SegmentDetection' {Maybe Natural
durationMillis :: Maybe Natural
$sel:durationMillis:SegmentDetection' :: SegmentDetection -> Maybe Natural
durationMillis} -> Maybe Natural
durationMillis) (\s :: SegmentDetection
s@SegmentDetection' {} Maybe Natural
a -> SegmentDetection
s {$sel:durationMillis:SegmentDetection' :: Maybe Natural
durationMillis = Maybe Natural
a} :: SegmentDetection)
segmentDetection_durationFrames :: Lens.Lens' SegmentDetection (Prelude.Maybe Prelude.Natural)
segmentDetection_durationFrames :: (Maybe Natural -> f (Maybe Natural))
-> SegmentDetection -> f SegmentDetection
segmentDetection_durationFrames = (SegmentDetection -> Maybe Natural)
-> (SegmentDetection -> Maybe Natural -> SegmentDetection)
-> Lens
SegmentDetection SegmentDetection (Maybe Natural) (Maybe Natural)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SegmentDetection' {Maybe Natural
durationFrames :: Maybe Natural
$sel:durationFrames:SegmentDetection' :: SegmentDetection -> Maybe Natural
durationFrames} -> Maybe Natural
durationFrames) (\s :: SegmentDetection
s@SegmentDetection' {} Maybe Natural
a -> SegmentDetection
s {$sel:durationFrames:SegmentDetection' :: Maybe Natural
durationFrames = Maybe Natural
a} :: SegmentDetection)
segmentDetection_startTimestampMillis :: Lens.Lens' SegmentDetection (Prelude.Maybe Prelude.Integer)
segmentDetection_startTimestampMillis :: (Maybe Integer -> f (Maybe Integer))
-> SegmentDetection -> f SegmentDetection
segmentDetection_startTimestampMillis = (SegmentDetection -> Maybe Integer)
-> (SegmentDetection -> Maybe Integer -> SegmentDetection)
-> Lens
SegmentDetection SegmentDetection (Maybe Integer) (Maybe Integer)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SegmentDetection' {Maybe Integer
startTimestampMillis :: Maybe Integer
$sel:startTimestampMillis:SegmentDetection' :: SegmentDetection -> Maybe Integer
startTimestampMillis} -> Maybe Integer
startTimestampMillis) (\s :: SegmentDetection
s@SegmentDetection' {} Maybe Integer
a -> SegmentDetection
s {$sel:startTimestampMillis:SegmentDetection' :: Maybe Integer
startTimestampMillis = Maybe Integer
a} :: SegmentDetection)
segmentDetection_type :: Lens.Lens' SegmentDetection (Prelude.Maybe SegmentType)
segmentDetection_type :: (Maybe SegmentType -> f (Maybe SegmentType))
-> SegmentDetection -> f SegmentDetection
segmentDetection_type = (SegmentDetection -> Maybe SegmentType)
-> (SegmentDetection -> Maybe SegmentType -> SegmentDetection)
-> Lens
SegmentDetection
SegmentDetection
(Maybe SegmentType)
(Maybe SegmentType)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SegmentDetection' {Maybe SegmentType
type' :: Maybe SegmentType
$sel:type':SegmentDetection' :: SegmentDetection -> Maybe SegmentType
type'} -> Maybe SegmentType
type') (\s :: SegmentDetection
s@SegmentDetection' {} Maybe SegmentType
a -> SegmentDetection
s {$sel:type':SegmentDetection' :: Maybe SegmentType
type' = Maybe SegmentType
a} :: SegmentDetection)
segmentDetection_shotSegment :: Lens.Lens' SegmentDetection (Prelude.Maybe ShotSegment)
segmentDetection_shotSegment :: (Maybe ShotSegment -> f (Maybe ShotSegment))
-> SegmentDetection -> f SegmentDetection
segmentDetection_shotSegment = (SegmentDetection -> Maybe ShotSegment)
-> (SegmentDetection -> Maybe ShotSegment -> SegmentDetection)
-> Lens
SegmentDetection
SegmentDetection
(Maybe ShotSegment)
(Maybe ShotSegment)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SegmentDetection' {Maybe ShotSegment
shotSegment :: Maybe ShotSegment
$sel:shotSegment:SegmentDetection' :: SegmentDetection -> Maybe ShotSegment
shotSegment} -> Maybe ShotSegment
shotSegment) (\s :: SegmentDetection
s@SegmentDetection' {} Maybe ShotSegment
a -> SegmentDetection
s {$sel:shotSegment:SegmentDetection' :: Maybe ShotSegment
shotSegment = Maybe ShotSegment
a} :: SegmentDetection)
segmentDetection_startFrameNumber :: Lens.Lens' SegmentDetection (Prelude.Maybe Prelude.Natural)
= (SegmentDetection -> Maybe Natural)
-> (SegmentDetection -> Maybe Natural -> SegmentDetection)
-> Lens
SegmentDetection SegmentDetection (Maybe Natural) (Maybe Natural)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SegmentDetection' {Maybe Natural
startFrameNumber :: Maybe Natural
$sel:startFrameNumber:SegmentDetection' :: SegmentDetection -> Maybe Natural
startFrameNumber} -> Maybe Natural
startFrameNumber) (\s :: SegmentDetection
s@SegmentDetection' {} Maybe Natural
a -> SegmentDetection
s {$sel:startFrameNumber:SegmentDetection' :: Maybe Natural
startFrameNumber = Maybe Natural
a} :: SegmentDetection)
instance Core.FromJSON SegmentDetection where
parseJSON :: Value -> Parser SegmentDetection
parseJSON =
String
-> (Object -> Parser SegmentDetection)
-> Value
-> Parser SegmentDetection
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Core.withObject
String
"SegmentDetection"
( \Object
x ->
Maybe TechnicalCueSegment
-> Maybe Natural
-> Maybe Text
-> Maybe Integer
-> Maybe Text
-> Maybe Text
-> Maybe Natural
-> Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection
SegmentDetection'
(Maybe TechnicalCueSegment
-> Maybe Natural
-> Maybe Text
-> Maybe Integer
-> Maybe Text
-> Maybe Text
-> Maybe Natural
-> Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
-> Parser (Maybe TechnicalCueSegment)
-> Parser
(Maybe Natural
-> Maybe Text
-> Maybe Integer
-> Maybe Text
-> Maybe Text
-> Maybe Natural
-> Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object -> Text -> Parser (Maybe TechnicalCueSegment)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"TechnicalCueSegment")
Parser
(Maybe Natural
-> Maybe Text
-> Maybe Integer
-> Maybe Text
-> Maybe Text
-> Maybe Natural
-> Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
-> Parser (Maybe Natural)
-> Parser
(Maybe Text
-> Maybe Integer
-> Maybe Text
-> Maybe Text
-> Maybe Natural
-> Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Natural)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"EndFrameNumber")
Parser
(Maybe Text
-> Maybe Integer
-> Maybe Text
-> Maybe Text
-> Maybe Natural
-> Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
-> Parser (Maybe Text)
-> Parser
(Maybe Integer
-> Maybe Text
-> Maybe Text
-> Maybe Natural
-> Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"DurationSMPTE")
Parser
(Maybe Integer
-> Maybe Text
-> Maybe Text
-> Maybe Natural
-> Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
-> Parser (Maybe Integer)
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe Natural
-> Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Integer)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"EndTimestampMillis")
Parser
(Maybe Text
-> Maybe Text
-> Maybe Natural
-> Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe Natural
-> Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"StartTimecodeSMPTE")
Parser
(Maybe Text
-> Maybe Natural
-> Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
-> Parser (Maybe Text)
-> Parser
(Maybe Natural
-> Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"EndTimecodeSMPTE")
Parser
(Maybe Natural
-> Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
-> Parser (Maybe Natural)
-> Parser
(Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Natural)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"DurationMillis")
Parser
(Maybe Natural
-> Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
-> Parser (Maybe Natural)
-> Parser
(Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Natural)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"DurationFrames")
Parser
(Maybe Integer
-> Maybe SegmentType
-> Maybe ShotSegment
-> Maybe Natural
-> SegmentDetection)
-> Parser (Maybe Integer)
-> Parser
(Maybe SegmentType
-> Maybe ShotSegment -> Maybe Natural -> SegmentDetection)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Integer)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"StartTimestampMillis")
Parser
(Maybe SegmentType
-> Maybe ShotSegment -> Maybe Natural -> SegmentDetection)
-> Parser (Maybe SegmentType)
-> Parser (Maybe ShotSegment -> Maybe Natural -> SegmentDetection)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe SegmentType)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"Type")
Parser (Maybe ShotSegment -> Maybe Natural -> SegmentDetection)
-> Parser (Maybe ShotSegment)
-> Parser (Maybe Natural -> SegmentDetection)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe ShotSegment)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"ShotSegment")
Parser (Maybe Natural -> SegmentDetection)
-> Parser (Maybe Natural) -> Parser SegmentDetection
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Natural)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"StartFrameNumber")
)
instance Prelude.Hashable SegmentDetection
instance Prelude.NFData SegmentDetection