{-# 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 #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.MediaLive.Types.CaptionDestinationSettings
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.MediaLive.Types.CaptionDestinationSettings where

import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.MediaLive.Types.AribDestinationSettings
import Amazonka.MediaLive.Types.BurnInDestinationSettings
import Amazonka.MediaLive.Types.DvbSubDestinationSettings
import Amazonka.MediaLive.Types.EbuTtDDestinationSettings
import Amazonka.MediaLive.Types.EmbeddedDestinationSettings
import Amazonka.MediaLive.Types.EmbeddedPlusScte20DestinationSettings
import Amazonka.MediaLive.Types.RtmpCaptionInfoDestinationSettings
import Amazonka.MediaLive.Types.Scte20PlusEmbeddedDestinationSettings
import Amazonka.MediaLive.Types.Scte27DestinationSettings
import Amazonka.MediaLive.Types.SmpteTtDestinationSettings
import Amazonka.MediaLive.Types.TeletextDestinationSettings
import Amazonka.MediaLive.Types.TtmlDestinationSettings
import Amazonka.MediaLive.Types.WebvttDestinationSettings
import qualified Amazonka.Prelude as Prelude

-- | Caption Destination Settings
--
-- /See:/ 'newCaptionDestinationSettings' smart constructor.
data CaptionDestinationSettings = CaptionDestinationSettings'
  { CaptionDestinationSettings -> Maybe AribDestinationSettings
aribDestinationSettings :: Prelude.Maybe AribDestinationSettings,
    CaptionDestinationSettings -> Maybe BurnInDestinationSettings
burnInDestinationSettings :: Prelude.Maybe BurnInDestinationSettings,
    CaptionDestinationSettings -> Maybe DvbSubDestinationSettings
dvbSubDestinationSettings :: Prelude.Maybe DvbSubDestinationSettings,
    CaptionDestinationSettings -> Maybe EbuTtDDestinationSettings
ebuTtDDestinationSettings :: Prelude.Maybe EbuTtDDestinationSettings,
    CaptionDestinationSettings -> Maybe EmbeddedDestinationSettings
embeddedDestinationSettings :: Prelude.Maybe EmbeddedDestinationSettings,
    CaptionDestinationSettings
-> Maybe EmbeddedPlusScte20DestinationSettings
embeddedPlusScte20DestinationSettings :: Prelude.Maybe EmbeddedPlusScte20DestinationSettings,
    CaptionDestinationSettings
-> Maybe RtmpCaptionInfoDestinationSettings
rtmpCaptionInfoDestinationSettings :: Prelude.Maybe RtmpCaptionInfoDestinationSettings,
    CaptionDestinationSettings
-> Maybe Scte20PlusEmbeddedDestinationSettings
scte20PlusEmbeddedDestinationSettings :: Prelude.Maybe Scte20PlusEmbeddedDestinationSettings,
    CaptionDestinationSettings -> Maybe Scte27DestinationSettings
scte27DestinationSettings :: Prelude.Maybe Scte27DestinationSettings,
    CaptionDestinationSettings -> Maybe SmpteTtDestinationSettings
smpteTtDestinationSettings :: Prelude.Maybe SmpteTtDestinationSettings,
    CaptionDestinationSettings -> Maybe TeletextDestinationSettings
teletextDestinationSettings :: Prelude.Maybe TeletextDestinationSettings,
    CaptionDestinationSettings -> Maybe TtmlDestinationSettings
ttmlDestinationSettings :: Prelude.Maybe TtmlDestinationSettings,
    CaptionDestinationSettings -> Maybe WebvttDestinationSettings
webvttDestinationSettings :: Prelude.Maybe WebvttDestinationSettings
  }
  deriving (CaptionDestinationSettings -> CaptionDestinationSettings -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CaptionDestinationSettings -> CaptionDestinationSettings -> Bool
$c/= :: CaptionDestinationSettings -> CaptionDestinationSettings -> Bool
== :: CaptionDestinationSettings -> CaptionDestinationSettings -> Bool
$c== :: CaptionDestinationSettings -> CaptionDestinationSettings -> Bool
Prelude.Eq, ReadPrec [CaptionDestinationSettings]
ReadPrec CaptionDestinationSettings
Int -> ReadS CaptionDestinationSettings
ReadS [CaptionDestinationSettings]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [CaptionDestinationSettings]
$creadListPrec :: ReadPrec [CaptionDestinationSettings]
readPrec :: ReadPrec CaptionDestinationSettings
$creadPrec :: ReadPrec CaptionDestinationSettings
readList :: ReadS [CaptionDestinationSettings]
$creadList :: ReadS [CaptionDestinationSettings]
readsPrec :: Int -> ReadS CaptionDestinationSettings
$creadsPrec :: Int -> ReadS CaptionDestinationSettings
Prelude.Read, Int -> CaptionDestinationSettings -> ShowS
[CaptionDestinationSettings] -> ShowS
CaptionDestinationSettings -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CaptionDestinationSettings] -> ShowS
$cshowList :: [CaptionDestinationSettings] -> ShowS
show :: CaptionDestinationSettings -> String
$cshow :: CaptionDestinationSettings -> String
showsPrec :: Int -> CaptionDestinationSettings -> ShowS
$cshowsPrec :: Int -> CaptionDestinationSettings -> ShowS
Prelude.Show, forall x.
Rep CaptionDestinationSettings x -> CaptionDestinationSettings
forall x.
CaptionDestinationSettings -> Rep CaptionDestinationSettings x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep CaptionDestinationSettings x -> CaptionDestinationSettings
$cfrom :: forall x.
CaptionDestinationSettings -> Rep CaptionDestinationSettings x
Prelude.Generic)

-- |
-- Create a value of 'CaptionDestinationSettings' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'aribDestinationSettings', 'captionDestinationSettings_aribDestinationSettings' - Undocumented member.
--
-- 'burnInDestinationSettings', 'captionDestinationSettings_burnInDestinationSettings' - Undocumented member.
--
-- 'dvbSubDestinationSettings', 'captionDestinationSettings_dvbSubDestinationSettings' - Undocumented member.
--
-- 'ebuTtDDestinationSettings', 'captionDestinationSettings_ebuTtDDestinationSettings' - Undocumented member.
--
-- 'embeddedDestinationSettings', 'captionDestinationSettings_embeddedDestinationSettings' - Undocumented member.
--
-- 'embeddedPlusScte20DestinationSettings', 'captionDestinationSettings_embeddedPlusScte20DestinationSettings' - Undocumented member.
--
-- 'rtmpCaptionInfoDestinationSettings', 'captionDestinationSettings_rtmpCaptionInfoDestinationSettings' - Undocumented member.
--
-- 'scte20PlusEmbeddedDestinationSettings', 'captionDestinationSettings_scte20PlusEmbeddedDestinationSettings' - Undocumented member.
--
-- 'scte27DestinationSettings', 'captionDestinationSettings_scte27DestinationSettings' - Undocumented member.
--
-- 'smpteTtDestinationSettings', 'captionDestinationSettings_smpteTtDestinationSettings' - Undocumented member.
--
-- 'teletextDestinationSettings', 'captionDestinationSettings_teletextDestinationSettings' - Undocumented member.
--
-- 'ttmlDestinationSettings', 'captionDestinationSettings_ttmlDestinationSettings' - Undocumented member.
--
-- 'webvttDestinationSettings', 'captionDestinationSettings_webvttDestinationSettings' - Undocumented member.
newCaptionDestinationSettings ::
  CaptionDestinationSettings
newCaptionDestinationSettings :: CaptionDestinationSettings
newCaptionDestinationSettings =
  CaptionDestinationSettings'
    { $sel:aribDestinationSettings:CaptionDestinationSettings' :: Maybe AribDestinationSettings
aribDestinationSettings =
        forall a. Maybe a
Prelude.Nothing,
      $sel:burnInDestinationSettings:CaptionDestinationSettings' :: Maybe BurnInDestinationSettings
burnInDestinationSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:dvbSubDestinationSettings:CaptionDestinationSettings' :: Maybe DvbSubDestinationSettings
dvbSubDestinationSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:ebuTtDDestinationSettings:CaptionDestinationSettings' :: Maybe EbuTtDDestinationSettings
ebuTtDDestinationSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:embeddedDestinationSettings:CaptionDestinationSettings' :: Maybe EmbeddedDestinationSettings
embeddedDestinationSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:embeddedPlusScte20DestinationSettings:CaptionDestinationSettings' :: Maybe EmbeddedPlusScte20DestinationSettings
embeddedPlusScte20DestinationSettings =
        forall a. Maybe a
Prelude.Nothing,
      $sel:rtmpCaptionInfoDestinationSettings:CaptionDestinationSettings' :: Maybe RtmpCaptionInfoDestinationSettings
rtmpCaptionInfoDestinationSettings =
        forall a. Maybe a
Prelude.Nothing,
      $sel:scte20PlusEmbeddedDestinationSettings:CaptionDestinationSettings' :: Maybe Scte20PlusEmbeddedDestinationSettings
scte20PlusEmbeddedDestinationSettings =
        forall a. Maybe a
Prelude.Nothing,
      $sel:scte27DestinationSettings:CaptionDestinationSettings' :: Maybe Scte27DestinationSettings
scte27DestinationSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:smpteTtDestinationSettings:CaptionDestinationSettings' :: Maybe SmpteTtDestinationSettings
smpteTtDestinationSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:teletextDestinationSettings:CaptionDestinationSettings' :: Maybe TeletextDestinationSettings
teletextDestinationSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:ttmlDestinationSettings:CaptionDestinationSettings' :: Maybe TtmlDestinationSettings
ttmlDestinationSettings = forall a. Maybe a
Prelude.Nothing,
      $sel:webvttDestinationSettings:CaptionDestinationSettings' :: Maybe WebvttDestinationSettings
webvttDestinationSettings = forall a. Maybe a
Prelude.Nothing
    }

-- | Undocumented member.
captionDestinationSettings_aribDestinationSettings :: Lens.Lens' CaptionDestinationSettings (Prelude.Maybe AribDestinationSettings)
captionDestinationSettings_aribDestinationSettings :: Lens' CaptionDestinationSettings (Maybe AribDestinationSettings)
captionDestinationSettings_aribDestinationSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CaptionDestinationSettings' {Maybe AribDestinationSettings
aribDestinationSettings :: Maybe AribDestinationSettings
$sel:aribDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe AribDestinationSettings
aribDestinationSettings} -> Maybe AribDestinationSettings
aribDestinationSettings) (\s :: CaptionDestinationSettings
s@CaptionDestinationSettings' {} Maybe AribDestinationSettings
a -> CaptionDestinationSettings
s {$sel:aribDestinationSettings:CaptionDestinationSettings' :: Maybe AribDestinationSettings
aribDestinationSettings = Maybe AribDestinationSettings
a} :: CaptionDestinationSettings)

-- | Undocumented member.
captionDestinationSettings_burnInDestinationSettings :: Lens.Lens' CaptionDestinationSettings (Prelude.Maybe BurnInDestinationSettings)
captionDestinationSettings_burnInDestinationSettings :: Lens' CaptionDestinationSettings (Maybe BurnInDestinationSettings)
captionDestinationSettings_burnInDestinationSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CaptionDestinationSettings' {Maybe BurnInDestinationSettings
burnInDestinationSettings :: Maybe BurnInDestinationSettings
$sel:burnInDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe BurnInDestinationSettings
burnInDestinationSettings} -> Maybe BurnInDestinationSettings
burnInDestinationSettings) (\s :: CaptionDestinationSettings
s@CaptionDestinationSettings' {} Maybe BurnInDestinationSettings
a -> CaptionDestinationSettings
s {$sel:burnInDestinationSettings:CaptionDestinationSettings' :: Maybe BurnInDestinationSettings
burnInDestinationSettings = Maybe BurnInDestinationSettings
a} :: CaptionDestinationSettings)

-- | Undocumented member.
captionDestinationSettings_dvbSubDestinationSettings :: Lens.Lens' CaptionDestinationSettings (Prelude.Maybe DvbSubDestinationSettings)
captionDestinationSettings_dvbSubDestinationSettings :: Lens' CaptionDestinationSettings (Maybe DvbSubDestinationSettings)
captionDestinationSettings_dvbSubDestinationSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CaptionDestinationSettings' {Maybe DvbSubDestinationSettings
dvbSubDestinationSettings :: Maybe DvbSubDestinationSettings
$sel:dvbSubDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe DvbSubDestinationSettings
dvbSubDestinationSettings} -> Maybe DvbSubDestinationSettings
dvbSubDestinationSettings) (\s :: CaptionDestinationSettings
s@CaptionDestinationSettings' {} Maybe DvbSubDestinationSettings
a -> CaptionDestinationSettings
s {$sel:dvbSubDestinationSettings:CaptionDestinationSettings' :: Maybe DvbSubDestinationSettings
dvbSubDestinationSettings = Maybe DvbSubDestinationSettings
a} :: CaptionDestinationSettings)

-- | Undocumented member.
captionDestinationSettings_ebuTtDDestinationSettings :: Lens.Lens' CaptionDestinationSettings (Prelude.Maybe EbuTtDDestinationSettings)
captionDestinationSettings_ebuTtDDestinationSettings :: Lens' CaptionDestinationSettings (Maybe EbuTtDDestinationSettings)
captionDestinationSettings_ebuTtDDestinationSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CaptionDestinationSettings' {Maybe EbuTtDDestinationSettings
ebuTtDDestinationSettings :: Maybe EbuTtDDestinationSettings
$sel:ebuTtDDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe EbuTtDDestinationSettings
ebuTtDDestinationSettings} -> Maybe EbuTtDDestinationSettings
ebuTtDDestinationSettings) (\s :: CaptionDestinationSettings
s@CaptionDestinationSettings' {} Maybe EbuTtDDestinationSettings
a -> CaptionDestinationSettings
s {$sel:ebuTtDDestinationSettings:CaptionDestinationSettings' :: Maybe EbuTtDDestinationSettings
ebuTtDDestinationSettings = Maybe EbuTtDDestinationSettings
a} :: CaptionDestinationSettings)

-- | Undocumented member.
captionDestinationSettings_embeddedDestinationSettings :: Lens.Lens' CaptionDestinationSettings (Prelude.Maybe EmbeddedDestinationSettings)
captionDestinationSettings_embeddedDestinationSettings :: Lens'
  CaptionDestinationSettings (Maybe EmbeddedDestinationSettings)
captionDestinationSettings_embeddedDestinationSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CaptionDestinationSettings' {Maybe EmbeddedDestinationSettings
embeddedDestinationSettings :: Maybe EmbeddedDestinationSettings
$sel:embeddedDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe EmbeddedDestinationSettings
embeddedDestinationSettings} -> Maybe EmbeddedDestinationSettings
embeddedDestinationSettings) (\s :: CaptionDestinationSettings
s@CaptionDestinationSettings' {} Maybe EmbeddedDestinationSettings
a -> CaptionDestinationSettings
s {$sel:embeddedDestinationSettings:CaptionDestinationSettings' :: Maybe EmbeddedDestinationSettings
embeddedDestinationSettings = Maybe EmbeddedDestinationSettings
a} :: CaptionDestinationSettings)

-- | Undocumented member.
captionDestinationSettings_embeddedPlusScte20DestinationSettings :: Lens.Lens' CaptionDestinationSettings (Prelude.Maybe EmbeddedPlusScte20DestinationSettings)
captionDestinationSettings_embeddedPlusScte20DestinationSettings :: Lens'
  CaptionDestinationSettings
  (Maybe EmbeddedPlusScte20DestinationSettings)
captionDestinationSettings_embeddedPlusScte20DestinationSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CaptionDestinationSettings' {Maybe EmbeddedPlusScte20DestinationSettings
embeddedPlusScte20DestinationSettings :: Maybe EmbeddedPlusScte20DestinationSettings
$sel:embeddedPlusScte20DestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings
-> Maybe EmbeddedPlusScte20DestinationSettings
embeddedPlusScte20DestinationSettings} -> Maybe EmbeddedPlusScte20DestinationSettings
embeddedPlusScte20DestinationSettings) (\s :: CaptionDestinationSettings
s@CaptionDestinationSettings' {} Maybe EmbeddedPlusScte20DestinationSettings
a -> CaptionDestinationSettings
s {$sel:embeddedPlusScte20DestinationSettings:CaptionDestinationSettings' :: Maybe EmbeddedPlusScte20DestinationSettings
embeddedPlusScte20DestinationSettings = Maybe EmbeddedPlusScte20DestinationSettings
a} :: CaptionDestinationSettings)

-- | Undocumented member.
captionDestinationSettings_rtmpCaptionInfoDestinationSettings :: Lens.Lens' CaptionDestinationSettings (Prelude.Maybe RtmpCaptionInfoDestinationSettings)
captionDestinationSettings_rtmpCaptionInfoDestinationSettings :: Lens'
  CaptionDestinationSettings
  (Maybe RtmpCaptionInfoDestinationSettings)
captionDestinationSettings_rtmpCaptionInfoDestinationSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CaptionDestinationSettings' {Maybe RtmpCaptionInfoDestinationSettings
rtmpCaptionInfoDestinationSettings :: Maybe RtmpCaptionInfoDestinationSettings
$sel:rtmpCaptionInfoDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings
-> Maybe RtmpCaptionInfoDestinationSettings
rtmpCaptionInfoDestinationSettings} -> Maybe RtmpCaptionInfoDestinationSettings
rtmpCaptionInfoDestinationSettings) (\s :: CaptionDestinationSettings
s@CaptionDestinationSettings' {} Maybe RtmpCaptionInfoDestinationSettings
a -> CaptionDestinationSettings
s {$sel:rtmpCaptionInfoDestinationSettings:CaptionDestinationSettings' :: Maybe RtmpCaptionInfoDestinationSettings
rtmpCaptionInfoDestinationSettings = Maybe RtmpCaptionInfoDestinationSettings
a} :: CaptionDestinationSettings)

-- | Undocumented member.
captionDestinationSettings_scte20PlusEmbeddedDestinationSettings :: Lens.Lens' CaptionDestinationSettings (Prelude.Maybe Scte20PlusEmbeddedDestinationSettings)
captionDestinationSettings_scte20PlusEmbeddedDestinationSettings :: Lens'
  CaptionDestinationSettings
  (Maybe Scte20PlusEmbeddedDestinationSettings)
captionDestinationSettings_scte20PlusEmbeddedDestinationSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CaptionDestinationSettings' {Maybe Scte20PlusEmbeddedDestinationSettings
scte20PlusEmbeddedDestinationSettings :: Maybe Scte20PlusEmbeddedDestinationSettings
$sel:scte20PlusEmbeddedDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings
-> Maybe Scte20PlusEmbeddedDestinationSettings
scte20PlusEmbeddedDestinationSettings} -> Maybe Scte20PlusEmbeddedDestinationSettings
scte20PlusEmbeddedDestinationSettings) (\s :: CaptionDestinationSettings
s@CaptionDestinationSettings' {} Maybe Scte20PlusEmbeddedDestinationSettings
a -> CaptionDestinationSettings
s {$sel:scte20PlusEmbeddedDestinationSettings:CaptionDestinationSettings' :: Maybe Scte20PlusEmbeddedDestinationSettings
scte20PlusEmbeddedDestinationSettings = Maybe Scte20PlusEmbeddedDestinationSettings
a} :: CaptionDestinationSettings)

-- | Undocumented member.
captionDestinationSettings_scte27DestinationSettings :: Lens.Lens' CaptionDestinationSettings (Prelude.Maybe Scte27DestinationSettings)
captionDestinationSettings_scte27DestinationSettings :: Lens' CaptionDestinationSettings (Maybe Scte27DestinationSettings)
captionDestinationSettings_scte27DestinationSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CaptionDestinationSettings' {Maybe Scte27DestinationSettings
scte27DestinationSettings :: Maybe Scte27DestinationSettings
$sel:scte27DestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe Scte27DestinationSettings
scte27DestinationSettings} -> Maybe Scte27DestinationSettings
scte27DestinationSettings) (\s :: CaptionDestinationSettings
s@CaptionDestinationSettings' {} Maybe Scte27DestinationSettings
a -> CaptionDestinationSettings
s {$sel:scte27DestinationSettings:CaptionDestinationSettings' :: Maybe Scte27DestinationSettings
scte27DestinationSettings = Maybe Scte27DestinationSettings
a} :: CaptionDestinationSettings)

-- | Undocumented member.
captionDestinationSettings_smpteTtDestinationSettings :: Lens.Lens' CaptionDestinationSettings (Prelude.Maybe SmpteTtDestinationSettings)
captionDestinationSettings_smpteTtDestinationSettings :: Lens' CaptionDestinationSettings (Maybe SmpteTtDestinationSettings)
captionDestinationSettings_smpteTtDestinationSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CaptionDestinationSettings' {Maybe SmpteTtDestinationSettings
smpteTtDestinationSettings :: Maybe SmpteTtDestinationSettings
$sel:smpteTtDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe SmpteTtDestinationSettings
smpteTtDestinationSettings} -> Maybe SmpteTtDestinationSettings
smpteTtDestinationSettings) (\s :: CaptionDestinationSettings
s@CaptionDestinationSettings' {} Maybe SmpteTtDestinationSettings
a -> CaptionDestinationSettings
s {$sel:smpteTtDestinationSettings:CaptionDestinationSettings' :: Maybe SmpteTtDestinationSettings
smpteTtDestinationSettings = Maybe SmpteTtDestinationSettings
a} :: CaptionDestinationSettings)

-- | Undocumented member.
captionDestinationSettings_teletextDestinationSettings :: Lens.Lens' CaptionDestinationSettings (Prelude.Maybe TeletextDestinationSettings)
captionDestinationSettings_teletextDestinationSettings :: Lens'
  CaptionDestinationSettings (Maybe TeletextDestinationSettings)
captionDestinationSettings_teletextDestinationSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CaptionDestinationSettings' {Maybe TeletextDestinationSettings
teletextDestinationSettings :: Maybe TeletextDestinationSettings
$sel:teletextDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe TeletextDestinationSettings
teletextDestinationSettings} -> Maybe TeletextDestinationSettings
teletextDestinationSettings) (\s :: CaptionDestinationSettings
s@CaptionDestinationSettings' {} Maybe TeletextDestinationSettings
a -> CaptionDestinationSettings
s {$sel:teletextDestinationSettings:CaptionDestinationSettings' :: Maybe TeletextDestinationSettings
teletextDestinationSettings = Maybe TeletextDestinationSettings
a} :: CaptionDestinationSettings)

-- | Undocumented member.
captionDestinationSettings_ttmlDestinationSettings :: Lens.Lens' CaptionDestinationSettings (Prelude.Maybe TtmlDestinationSettings)
captionDestinationSettings_ttmlDestinationSettings :: Lens' CaptionDestinationSettings (Maybe TtmlDestinationSettings)
captionDestinationSettings_ttmlDestinationSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CaptionDestinationSettings' {Maybe TtmlDestinationSettings
ttmlDestinationSettings :: Maybe TtmlDestinationSettings
$sel:ttmlDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe TtmlDestinationSettings
ttmlDestinationSettings} -> Maybe TtmlDestinationSettings
ttmlDestinationSettings) (\s :: CaptionDestinationSettings
s@CaptionDestinationSettings' {} Maybe TtmlDestinationSettings
a -> CaptionDestinationSettings
s {$sel:ttmlDestinationSettings:CaptionDestinationSettings' :: Maybe TtmlDestinationSettings
ttmlDestinationSettings = Maybe TtmlDestinationSettings
a} :: CaptionDestinationSettings)

-- | Undocumented member.
captionDestinationSettings_webvttDestinationSettings :: Lens.Lens' CaptionDestinationSettings (Prelude.Maybe WebvttDestinationSettings)
captionDestinationSettings_webvttDestinationSettings :: Lens' CaptionDestinationSettings (Maybe WebvttDestinationSettings)
captionDestinationSettings_webvttDestinationSettings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CaptionDestinationSettings' {Maybe WebvttDestinationSettings
webvttDestinationSettings :: Maybe WebvttDestinationSettings
$sel:webvttDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe WebvttDestinationSettings
webvttDestinationSettings} -> Maybe WebvttDestinationSettings
webvttDestinationSettings) (\s :: CaptionDestinationSettings
s@CaptionDestinationSettings' {} Maybe WebvttDestinationSettings
a -> CaptionDestinationSettings
s {$sel:webvttDestinationSettings:CaptionDestinationSettings' :: Maybe WebvttDestinationSettings
webvttDestinationSettings = Maybe WebvttDestinationSettings
a} :: CaptionDestinationSettings)

instance Data.FromJSON CaptionDestinationSettings where
  parseJSON :: Value -> Parser CaptionDestinationSettings
parseJSON =
    forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
      String
"CaptionDestinationSettings"
      ( \Object
x ->
          Maybe AribDestinationSettings
-> Maybe BurnInDestinationSettings
-> Maybe DvbSubDestinationSettings
-> Maybe EbuTtDDestinationSettings
-> Maybe EmbeddedDestinationSettings
-> Maybe EmbeddedPlusScte20DestinationSettings
-> Maybe RtmpCaptionInfoDestinationSettings
-> Maybe Scte20PlusEmbeddedDestinationSettings
-> Maybe Scte27DestinationSettings
-> Maybe SmpteTtDestinationSettings
-> Maybe TeletextDestinationSettings
-> Maybe TtmlDestinationSettings
-> Maybe WebvttDestinationSettings
-> CaptionDestinationSettings
CaptionDestinationSettings'
            forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"aribDestinationSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"burnInDestinationSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"dvbSubDestinationSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ebuTtDDestinationSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"embeddedDestinationSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"embeddedPlusScte20DestinationSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"rtmpCaptionInfoDestinationSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"scte20PlusEmbeddedDestinationSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"scte27DestinationSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"smpteTtDestinationSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"teletextDestinationSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ttmlDestinationSettings")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"webvttDestinationSettings")
      )

instance Prelude.Hashable CaptionDestinationSettings where
  hashWithSalt :: Int -> CaptionDestinationSettings -> Int
hashWithSalt Int
_salt CaptionDestinationSettings' {Maybe AribDestinationSettings
Maybe EbuTtDDestinationSettings
Maybe EmbeddedDestinationSettings
Maybe EmbeddedPlusScte20DestinationSettings
Maybe DvbSubDestinationSettings
Maybe BurnInDestinationSettings
Maybe RtmpCaptionInfoDestinationSettings
Maybe Scte20PlusEmbeddedDestinationSettings
Maybe Scte27DestinationSettings
Maybe SmpteTtDestinationSettings
Maybe TeletextDestinationSettings
Maybe TtmlDestinationSettings
Maybe WebvttDestinationSettings
webvttDestinationSettings :: Maybe WebvttDestinationSettings
ttmlDestinationSettings :: Maybe TtmlDestinationSettings
teletextDestinationSettings :: Maybe TeletextDestinationSettings
smpteTtDestinationSettings :: Maybe SmpteTtDestinationSettings
scte27DestinationSettings :: Maybe Scte27DestinationSettings
scte20PlusEmbeddedDestinationSettings :: Maybe Scte20PlusEmbeddedDestinationSettings
rtmpCaptionInfoDestinationSettings :: Maybe RtmpCaptionInfoDestinationSettings
embeddedPlusScte20DestinationSettings :: Maybe EmbeddedPlusScte20DestinationSettings
embeddedDestinationSettings :: Maybe EmbeddedDestinationSettings
ebuTtDDestinationSettings :: Maybe EbuTtDDestinationSettings
dvbSubDestinationSettings :: Maybe DvbSubDestinationSettings
burnInDestinationSettings :: Maybe BurnInDestinationSettings
aribDestinationSettings :: Maybe AribDestinationSettings
$sel:webvttDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe WebvttDestinationSettings
$sel:ttmlDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe TtmlDestinationSettings
$sel:teletextDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe TeletextDestinationSettings
$sel:smpteTtDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe SmpteTtDestinationSettings
$sel:scte27DestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe Scte27DestinationSettings
$sel:scte20PlusEmbeddedDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings
-> Maybe Scte20PlusEmbeddedDestinationSettings
$sel:rtmpCaptionInfoDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings
-> Maybe RtmpCaptionInfoDestinationSettings
$sel:embeddedPlusScte20DestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings
-> Maybe EmbeddedPlusScte20DestinationSettings
$sel:embeddedDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe EmbeddedDestinationSettings
$sel:ebuTtDDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe EbuTtDDestinationSettings
$sel:dvbSubDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe DvbSubDestinationSettings
$sel:burnInDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe BurnInDestinationSettings
$sel:aribDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe AribDestinationSettings
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe AribDestinationSettings
aribDestinationSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BurnInDestinationSettings
burnInDestinationSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DvbSubDestinationSettings
dvbSubDestinationSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe EbuTtDDestinationSettings
ebuTtDDestinationSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe EmbeddedDestinationSettings
embeddedDestinationSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe EmbeddedPlusScte20DestinationSettings
embeddedPlusScte20DestinationSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe RtmpCaptionInfoDestinationSettings
rtmpCaptionInfoDestinationSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Scte20PlusEmbeddedDestinationSettings
scte20PlusEmbeddedDestinationSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Scte27DestinationSettings
scte27DestinationSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe SmpteTtDestinationSettings
smpteTtDestinationSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe TeletextDestinationSettings
teletextDestinationSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe TtmlDestinationSettings
ttmlDestinationSettings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe WebvttDestinationSettings
webvttDestinationSettings

instance Prelude.NFData CaptionDestinationSettings where
  rnf :: CaptionDestinationSettings -> ()
rnf CaptionDestinationSettings' {Maybe AribDestinationSettings
Maybe EbuTtDDestinationSettings
Maybe EmbeddedDestinationSettings
Maybe EmbeddedPlusScte20DestinationSettings
Maybe DvbSubDestinationSettings
Maybe BurnInDestinationSettings
Maybe RtmpCaptionInfoDestinationSettings
Maybe Scte20PlusEmbeddedDestinationSettings
Maybe Scte27DestinationSettings
Maybe SmpteTtDestinationSettings
Maybe TeletextDestinationSettings
Maybe TtmlDestinationSettings
Maybe WebvttDestinationSettings
webvttDestinationSettings :: Maybe WebvttDestinationSettings
ttmlDestinationSettings :: Maybe TtmlDestinationSettings
teletextDestinationSettings :: Maybe TeletextDestinationSettings
smpteTtDestinationSettings :: Maybe SmpteTtDestinationSettings
scte27DestinationSettings :: Maybe Scte27DestinationSettings
scte20PlusEmbeddedDestinationSettings :: Maybe Scte20PlusEmbeddedDestinationSettings
rtmpCaptionInfoDestinationSettings :: Maybe RtmpCaptionInfoDestinationSettings
embeddedPlusScte20DestinationSettings :: Maybe EmbeddedPlusScte20DestinationSettings
embeddedDestinationSettings :: Maybe EmbeddedDestinationSettings
ebuTtDDestinationSettings :: Maybe EbuTtDDestinationSettings
dvbSubDestinationSettings :: Maybe DvbSubDestinationSettings
burnInDestinationSettings :: Maybe BurnInDestinationSettings
aribDestinationSettings :: Maybe AribDestinationSettings
$sel:webvttDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe WebvttDestinationSettings
$sel:ttmlDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe TtmlDestinationSettings
$sel:teletextDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe TeletextDestinationSettings
$sel:smpteTtDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe SmpteTtDestinationSettings
$sel:scte27DestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe Scte27DestinationSettings
$sel:scte20PlusEmbeddedDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings
-> Maybe Scte20PlusEmbeddedDestinationSettings
$sel:rtmpCaptionInfoDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings
-> Maybe RtmpCaptionInfoDestinationSettings
$sel:embeddedPlusScte20DestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings
-> Maybe EmbeddedPlusScte20DestinationSettings
$sel:embeddedDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe EmbeddedDestinationSettings
$sel:ebuTtDDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe EbuTtDDestinationSettings
$sel:dvbSubDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe DvbSubDestinationSettings
$sel:burnInDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe BurnInDestinationSettings
$sel:aribDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe AribDestinationSettings
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe AribDestinationSettings
aribDestinationSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BurnInDestinationSettings
burnInDestinationSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DvbSubDestinationSettings
dvbSubDestinationSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe EbuTtDDestinationSettings
ebuTtDDestinationSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe EmbeddedDestinationSettings
embeddedDestinationSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe EmbeddedPlusScte20DestinationSettings
embeddedPlusScte20DestinationSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe RtmpCaptionInfoDestinationSettings
rtmpCaptionInfoDestinationSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Scte20PlusEmbeddedDestinationSettings
scte20PlusEmbeddedDestinationSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Scte27DestinationSettings
scte27DestinationSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe SmpteTtDestinationSettings
smpteTtDestinationSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe TeletextDestinationSettings
teletextDestinationSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe TtmlDestinationSettings
ttmlDestinationSettings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe WebvttDestinationSettings
webvttDestinationSettings

instance Data.ToJSON CaptionDestinationSettings where
  toJSON :: CaptionDestinationSettings -> Value
toJSON CaptionDestinationSettings' {Maybe AribDestinationSettings
Maybe EbuTtDDestinationSettings
Maybe EmbeddedDestinationSettings
Maybe EmbeddedPlusScte20DestinationSettings
Maybe DvbSubDestinationSettings
Maybe BurnInDestinationSettings
Maybe RtmpCaptionInfoDestinationSettings
Maybe Scte20PlusEmbeddedDestinationSettings
Maybe Scte27DestinationSettings
Maybe SmpteTtDestinationSettings
Maybe TeletextDestinationSettings
Maybe TtmlDestinationSettings
Maybe WebvttDestinationSettings
webvttDestinationSettings :: Maybe WebvttDestinationSettings
ttmlDestinationSettings :: Maybe TtmlDestinationSettings
teletextDestinationSettings :: Maybe TeletextDestinationSettings
smpteTtDestinationSettings :: Maybe SmpteTtDestinationSettings
scte27DestinationSettings :: Maybe Scte27DestinationSettings
scte20PlusEmbeddedDestinationSettings :: Maybe Scte20PlusEmbeddedDestinationSettings
rtmpCaptionInfoDestinationSettings :: Maybe RtmpCaptionInfoDestinationSettings
embeddedPlusScte20DestinationSettings :: Maybe EmbeddedPlusScte20DestinationSettings
embeddedDestinationSettings :: Maybe EmbeddedDestinationSettings
ebuTtDDestinationSettings :: Maybe EbuTtDDestinationSettings
dvbSubDestinationSettings :: Maybe DvbSubDestinationSettings
burnInDestinationSettings :: Maybe BurnInDestinationSettings
aribDestinationSettings :: Maybe AribDestinationSettings
$sel:webvttDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe WebvttDestinationSettings
$sel:ttmlDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe TtmlDestinationSettings
$sel:teletextDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe TeletextDestinationSettings
$sel:smpteTtDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe SmpteTtDestinationSettings
$sel:scte27DestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe Scte27DestinationSettings
$sel:scte20PlusEmbeddedDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings
-> Maybe Scte20PlusEmbeddedDestinationSettings
$sel:rtmpCaptionInfoDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings
-> Maybe RtmpCaptionInfoDestinationSettings
$sel:embeddedPlusScte20DestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings
-> Maybe EmbeddedPlusScte20DestinationSettings
$sel:embeddedDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe EmbeddedDestinationSettings
$sel:ebuTtDDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe EbuTtDDestinationSettings
$sel:dvbSubDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe DvbSubDestinationSettings
$sel:burnInDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe BurnInDestinationSettings
$sel:aribDestinationSettings:CaptionDestinationSettings' :: CaptionDestinationSettings -> Maybe AribDestinationSettings
..} =
    [Pair] -> Value
Data.object
      ( forall a. [Maybe a] -> [a]
Prelude.catMaybes
          [ (Key
"aribDestinationSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe AribDestinationSettings
aribDestinationSettings,
            (Key
"burnInDestinationSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe BurnInDestinationSettings
burnInDestinationSettings,
            (Key
"dvbSubDestinationSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe DvbSubDestinationSettings
dvbSubDestinationSettings,
            (Key
"ebuTtDDestinationSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe EbuTtDDestinationSettings
ebuTtDDestinationSettings,
            (Key
"embeddedDestinationSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe EmbeddedDestinationSettings
embeddedDestinationSettings,
            (Key
"embeddedPlusScte20DestinationSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe EmbeddedPlusScte20DestinationSettings
embeddedPlusScte20DestinationSettings,
            (Key
"rtmpCaptionInfoDestinationSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe RtmpCaptionInfoDestinationSettings
rtmpCaptionInfoDestinationSettings,
            (Key
"scte20PlusEmbeddedDestinationSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Scte20PlusEmbeddedDestinationSettings
scte20PlusEmbeddedDestinationSettings,
            (Key
"scte27DestinationSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Scte27DestinationSettings
scte27DestinationSettings,
            (Key
"smpteTtDestinationSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe SmpteTtDestinationSettings
smpteTtDestinationSettings,
            (Key
"teletextDestinationSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe TeletextDestinationSettings
teletextDestinationSettings,
            (Key
"ttmlDestinationSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe TtmlDestinationSettings
ttmlDestinationSettings,
            (Key
"webvttDestinationSettings" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe WebvttDestinationSettings
webvttDestinationSettings
          ]
      )