{-# 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.MediaLive.Types.Eac3Settings where
import qualified Amazonka.Core as Core
import qualified Amazonka.Lens as Lens
import Amazonka.MediaLive.Types.Eac3AttenuationControl
import Amazonka.MediaLive.Types.Eac3BitstreamMode
import Amazonka.MediaLive.Types.Eac3CodingMode
import Amazonka.MediaLive.Types.Eac3DcFilter
import Amazonka.MediaLive.Types.Eac3DrcLine
import Amazonka.MediaLive.Types.Eac3DrcRf
import Amazonka.MediaLive.Types.Eac3LfeControl
import Amazonka.MediaLive.Types.Eac3LfeFilter
import Amazonka.MediaLive.Types.Eac3MetadataControl
import Amazonka.MediaLive.Types.Eac3PassthroughControl
import Amazonka.MediaLive.Types.Eac3PhaseControl
import Amazonka.MediaLive.Types.Eac3StereoDownmix
import Amazonka.MediaLive.Types.Eac3SurroundExMode
import Amazonka.MediaLive.Types.Eac3SurroundMode
import qualified Amazonka.Prelude as Prelude
data Eac3Settings = Eac3Settings'
{
Eac3Settings -> Maybe Eac3StereoDownmix
stereoDownmix :: Prelude.Maybe Eac3StereoDownmix,
Eac3Settings -> Maybe Double
loRoCenterMixLevel :: Prelude.Maybe Prelude.Double,
Eac3Settings -> Maybe Double
ltRtCenterMixLevel :: Prelude.Maybe Prelude.Double,
Eac3Settings -> Maybe Eac3LfeFilter
lfeFilter :: Prelude.Maybe Eac3LfeFilter,
Eac3Settings -> Maybe Double
ltRtSurroundMixLevel :: Prelude.Maybe Prelude.Double,
Eac3Settings -> Maybe Eac3MetadataControl
metadataControl :: Prelude.Maybe Eac3MetadataControl,
Eac3Settings -> Maybe Double
loRoSurroundMixLevel :: Prelude.Maybe Prelude.Double,
Eac3Settings -> Maybe Eac3SurroundMode
surroundMode :: Prelude.Maybe Eac3SurroundMode,
Eac3Settings -> Maybe Eac3AttenuationControl
attenuationControl :: Prelude.Maybe Eac3AttenuationControl,
Eac3Settings -> Maybe Eac3PassthroughControl
passthroughControl :: Prelude.Maybe Eac3PassthroughControl,
Eac3Settings -> Maybe Eac3BitstreamMode
bitstreamMode :: Prelude.Maybe Eac3BitstreamMode,
Eac3Settings -> Maybe Eac3LfeControl
lfeControl :: Prelude.Maybe Eac3LfeControl,
Eac3Settings -> Maybe Eac3CodingMode
codingMode :: Prelude.Maybe Eac3CodingMode,
Eac3Settings -> Maybe Eac3DrcLine
drcLine :: Prelude.Maybe Eac3DrcLine,
Eac3Settings -> Maybe Eac3DrcRf
drcRf :: Prelude.Maybe Eac3DrcRf,
Eac3Settings -> Maybe Eac3DcFilter
dcFilter :: Prelude.Maybe Eac3DcFilter,
Eac3Settings -> Maybe Double
bitrate :: Prelude.Maybe Prelude.Double,
Eac3Settings -> Maybe Eac3PhaseControl
phaseControl :: Prelude.Maybe Eac3PhaseControl,
Eac3Settings -> Maybe Eac3SurroundExMode
surroundExMode :: Prelude.Maybe Eac3SurroundExMode,
Eac3Settings -> Maybe Natural
dialnorm :: Prelude.Maybe Prelude.Natural
}
deriving (Eac3Settings -> Eac3Settings -> Bool
(Eac3Settings -> Eac3Settings -> Bool)
-> (Eac3Settings -> Eac3Settings -> Bool) -> Eq Eac3Settings
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Eac3Settings -> Eac3Settings -> Bool
$c/= :: Eac3Settings -> Eac3Settings -> Bool
== :: Eac3Settings -> Eac3Settings -> Bool
$c== :: Eac3Settings -> Eac3Settings -> Bool
Prelude.Eq, ReadPrec [Eac3Settings]
ReadPrec Eac3Settings
Int -> ReadS Eac3Settings
ReadS [Eac3Settings]
(Int -> ReadS Eac3Settings)
-> ReadS [Eac3Settings]
-> ReadPrec Eac3Settings
-> ReadPrec [Eac3Settings]
-> Read Eac3Settings
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [Eac3Settings]
$creadListPrec :: ReadPrec [Eac3Settings]
readPrec :: ReadPrec Eac3Settings
$creadPrec :: ReadPrec Eac3Settings
readList :: ReadS [Eac3Settings]
$creadList :: ReadS [Eac3Settings]
readsPrec :: Int -> ReadS Eac3Settings
$creadsPrec :: Int -> ReadS Eac3Settings
Prelude.Read, Int -> Eac3Settings -> ShowS
[Eac3Settings] -> ShowS
Eac3Settings -> String
(Int -> Eac3Settings -> ShowS)
-> (Eac3Settings -> String)
-> ([Eac3Settings] -> ShowS)
-> Show Eac3Settings
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [Eac3Settings] -> ShowS
$cshowList :: [Eac3Settings] -> ShowS
show :: Eac3Settings -> String
$cshow :: Eac3Settings -> String
showsPrec :: Int -> Eac3Settings -> ShowS
$cshowsPrec :: Int -> Eac3Settings -> ShowS
Prelude.Show, (forall x. Eac3Settings -> Rep Eac3Settings x)
-> (forall x. Rep Eac3Settings x -> Eac3Settings)
-> Generic Eac3Settings
forall x. Rep Eac3Settings x -> Eac3Settings
forall x. Eac3Settings -> Rep Eac3Settings x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep Eac3Settings x -> Eac3Settings
$cfrom :: forall x. Eac3Settings -> Rep Eac3Settings x
Prelude.Generic)
newEac3Settings ::
Eac3Settings
newEac3Settings :: Eac3Settings
newEac3Settings =
Eac3Settings' :: Maybe Eac3StereoDownmix
-> Maybe Double
-> Maybe Double
-> Maybe Eac3LfeFilter
-> Maybe Double
-> Maybe Eac3MetadataControl
-> Maybe Double
-> Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings
Eac3Settings'
{ $sel:stereoDownmix:Eac3Settings' :: Maybe Eac3StereoDownmix
stereoDownmix = Maybe Eac3StereoDownmix
forall a. Maybe a
Prelude.Nothing,
$sel:loRoCenterMixLevel:Eac3Settings' :: Maybe Double
loRoCenterMixLevel = Maybe Double
forall a. Maybe a
Prelude.Nothing,
$sel:ltRtCenterMixLevel:Eac3Settings' :: Maybe Double
ltRtCenterMixLevel = Maybe Double
forall a. Maybe a
Prelude.Nothing,
$sel:lfeFilter:Eac3Settings' :: Maybe Eac3LfeFilter
lfeFilter = Maybe Eac3LfeFilter
forall a. Maybe a
Prelude.Nothing,
$sel:ltRtSurroundMixLevel:Eac3Settings' :: Maybe Double
ltRtSurroundMixLevel = Maybe Double
forall a. Maybe a
Prelude.Nothing,
$sel:metadataControl:Eac3Settings' :: Maybe Eac3MetadataControl
metadataControl = Maybe Eac3MetadataControl
forall a. Maybe a
Prelude.Nothing,
$sel:loRoSurroundMixLevel:Eac3Settings' :: Maybe Double
loRoSurroundMixLevel = Maybe Double
forall a. Maybe a
Prelude.Nothing,
$sel:surroundMode:Eac3Settings' :: Maybe Eac3SurroundMode
surroundMode = Maybe Eac3SurroundMode
forall a. Maybe a
Prelude.Nothing,
$sel:attenuationControl:Eac3Settings' :: Maybe Eac3AttenuationControl
attenuationControl = Maybe Eac3AttenuationControl
forall a. Maybe a
Prelude.Nothing,
$sel:passthroughControl:Eac3Settings' :: Maybe Eac3PassthroughControl
passthroughControl = Maybe Eac3PassthroughControl
forall a. Maybe a
Prelude.Nothing,
$sel:bitstreamMode:Eac3Settings' :: Maybe Eac3BitstreamMode
bitstreamMode = Maybe Eac3BitstreamMode
forall a. Maybe a
Prelude.Nothing,
$sel:lfeControl:Eac3Settings' :: Maybe Eac3LfeControl
lfeControl = Maybe Eac3LfeControl
forall a. Maybe a
Prelude.Nothing,
$sel:codingMode:Eac3Settings' :: Maybe Eac3CodingMode
codingMode = Maybe Eac3CodingMode
forall a. Maybe a
Prelude.Nothing,
$sel:drcLine:Eac3Settings' :: Maybe Eac3DrcLine
drcLine = Maybe Eac3DrcLine
forall a. Maybe a
Prelude.Nothing,
$sel:drcRf:Eac3Settings' :: Maybe Eac3DrcRf
drcRf = Maybe Eac3DrcRf
forall a. Maybe a
Prelude.Nothing,
$sel:dcFilter:Eac3Settings' :: Maybe Eac3DcFilter
dcFilter = Maybe Eac3DcFilter
forall a. Maybe a
Prelude.Nothing,
$sel:bitrate:Eac3Settings' :: Maybe Double
bitrate = Maybe Double
forall a. Maybe a
Prelude.Nothing,
$sel:phaseControl:Eac3Settings' :: Maybe Eac3PhaseControl
phaseControl = Maybe Eac3PhaseControl
forall a. Maybe a
Prelude.Nothing,
$sel:surroundExMode:Eac3Settings' :: Maybe Eac3SurroundExMode
surroundExMode = Maybe Eac3SurroundExMode
forall a. Maybe a
Prelude.Nothing,
$sel:dialnorm:Eac3Settings' :: Maybe Natural
dialnorm = Maybe Natural
forall a. Maybe a
Prelude.Nothing
}
eac3Settings_stereoDownmix :: Lens.Lens' Eac3Settings (Prelude.Maybe Eac3StereoDownmix)
eac3Settings_stereoDownmix :: (Maybe Eac3StereoDownmix -> f (Maybe Eac3StereoDownmix))
-> Eac3Settings -> f Eac3Settings
eac3Settings_stereoDownmix = (Eac3Settings -> Maybe Eac3StereoDownmix)
-> (Eac3Settings -> Maybe Eac3StereoDownmix -> Eac3Settings)
-> Lens
Eac3Settings
Eac3Settings
(Maybe Eac3StereoDownmix)
(Maybe Eac3StereoDownmix)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Eac3StereoDownmix
stereoDownmix :: Maybe Eac3StereoDownmix
$sel:stereoDownmix:Eac3Settings' :: Eac3Settings -> Maybe Eac3StereoDownmix
stereoDownmix} -> Maybe Eac3StereoDownmix
stereoDownmix) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Eac3StereoDownmix
a -> Eac3Settings
s {$sel:stereoDownmix:Eac3Settings' :: Maybe Eac3StereoDownmix
stereoDownmix = Maybe Eac3StereoDownmix
a} :: Eac3Settings)
eac3Settings_loRoCenterMixLevel :: Lens.Lens' Eac3Settings (Prelude.Maybe Prelude.Double)
eac3Settings_loRoCenterMixLevel :: (Maybe Double -> f (Maybe Double))
-> Eac3Settings -> f Eac3Settings
eac3Settings_loRoCenterMixLevel = (Eac3Settings -> Maybe Double)
-> (Eac3Settings -> Maybe Double -> Eac3Settings)
-> Lens Eac3Settings Eac3Settings (Maybe Double) (Maybe Double)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Double
loRoCenterMixLevel :: Maybe Double
$sel:loRoCenterMixLevel:Eac3Settings' :: Eac3Settings -> Maybe Double
loRoCenterMixLevel} -> Maybe Double
loRoCenterMixLevel) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Double
a -> Eac3Settings
s {$sel:loRoCenterMixLevel:Eac3Settings' :: Maybe Double
loRoCenterMixLevel = Maybe Double
a} :: Eac3Settings)
eac3Settings_ltRtCenterMixLevel :: Lens.Lens' Eac3Settings (Prelude.Maybe Prelude.Double)
eac3Settings_ltRtCenterMixLevel :: (Maybe Double -> f (Maybe Double))
-> Eac3Settings -> f Eac3Settings
eac3Settings_ltRtCenterMixLevel = (Eac3Settings -> Maybe Double)
-> (Eac3Settings -> Maybe Double -> Eac3Settings)
-> Lens Eac3Settings Eac3Settings (Maybe Double) (Maybe Double)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Double
ltRtCenterMixLevel :: Maybe Double
$sel:ltRtCenterMixLevel:Eac3Settings' :: Eac3Settings -> Maybe Double
ltRtCenterMixLevel} -> Maybe Double
ltRtCenterMixLevel) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Double
a -> Eac3Settings
s {$sel:ltRtCenterMixLevel:Eac3Settings' :: Maybe Double
ltRtCenterMixLevel = Maybe Double
a} :: Eac3Settings)
eac3Settings_lfeFilter :: Lens.Lens' Eac3Settings (Prelude.Maybe Eac3LfeFilter)
eac3Settings_lfeFilter :: (Maybe Eac3LfeFilter -> f (Maybe Eac3LfeFilter))
-> Eac3Settings -> f Eac3Settings
eac3Settings_lfeFilter = (Eac3Settings -> Maybe Eac3LfeFilter)
-> (Eac3Settings -> Maybe Eac3LfeFilter -> Eac3Settings)
-> Lens
Eac3Settings
Eac3Settings
(Maybe Eac3LfeFilter)
(Maybe Eac3LfeFilter)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Eac3LfeFilter
lfeFilter :: Maybe Eac3LfeFilter
$sel:lfeFilter:Eac3Settings' :: Eac3Settings -> Maybe Eac3LfeFilter
lfeFilter} -> Maybe Eac3LfeFilter
lfeFilter) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Eac3LfeFilter
a -> Eac3Settings
s {$sel:lfeFilter:Eac3Settings' :: Maybe Eac3LfeFilter
lfeFilter = Maybe Eac3LfeFilter
a} :: Eac3Settings)
eac3Settings_ltRtSurroundMixLevel :: Lens.Lens' Eac3Settings (Prelude.Maybe Prelude.Double)
eac3Settings_ltRtSurroundMixLevel :: (Maybe Double -> f (Maybe Double))
-> Eac3Settings -> f Eac3Settings
eac3Settings_ltRtSurroundMixLevel = (Eac3Settings -> Maybe Double)
-> (Eac3Settings -> Maybe Double -> Eac3Settings)
-> Lens Eac3Settings Eac3Settings (Maybe Double) (Maybe Double)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Double
ltRtSurroundMixLevel :: Maybe Double
$sel:ltRtSurroundMixLevel:Eac3Settings' :: Eac3Settings -> Maybe Double
ltRtSurroundMixLevel} -> Maybe Double
ltRtSurroundMixLevel) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Double
a -> Eac3Settings
s {$sel:ltRtSurroundMixLevel:Eac3Settings' :: Maybe Double
ltRtSurroundMixLevel = Maybe Double
a} :: Eac3Settings)
eac3Settings_metadataControl :: Lens.Lens' Eac3Settings (Prelude.Maybe Eac3MetadataControl)
eac3Settings_metadataControl :: (Maybe Eac3MetadataControl -> f (Maybe Eac3MetadataControl))
-> Eac3Settings -> f Eac3Settings
eac3Settings_metadataControl = (Eac3Settings -> Maybe Eac3MetadataControl)
-> (Eac3Settings -> Maybe Eac3MetadataControl -> Eac3Settings)
-> Lens
Eac3Settings
Eac3Settings
(Maybe Eac3MetadataControl)
(Maybe Eac3MetadataControl)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Eac3MetadataControl
metadataControl :: Maybe Eac3MetadataControl
$sel:metadataControl:Eac3Settings' :: Eac3Settings -> Maybe Eac3MetadataControl
metadataControl} -> Maybe Eac3MetadataControl
metadataControl) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Eac3MetadataControl
a -> Eac3Settings
s {$sel:metadataControl:Eac3Settings' :: Maybe Eac3MetadataControl
metadataControl = Maybe Eac3MetadataControl
a} :: Eac3Settings)
eac3Settings_loRoSurroundMixLevel :: Lens.Lens' Eac3Settings (Prelude.Maybe Prelude.Double)
eac3Settings_loRoSurroundMixLevel :: (Maybe Double -> f (Maybe Double))
-> Eac3Settings -> f Eac3Settings
eac3Settings_loRoSurroundMixLevel = (Eac3Settings -> Maybe Double)
-> (Eac3Settings -> Maybe Double -> Eac3Settings)
-> Lens Eac3Settings Eac3Settings (Maybe Double) (Maybe Double)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Double
loRoSurroundMixLevel :: Maybe Double
$sel:loRoSurroundMixLevel:Eac3Settings' :: Eac3Settings -> Maybe Double
loRoSurroundMixLevel} -> Maybe Double
loRoSurroundMixLevel) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Double
a -> Eac3Settings
s {$sel:loRoSurroundMixLevel:Eac3Settings' :: Maybe Double
loRoSurroundMixLevel = Maybe Double
a} :: Eac3Settings)
eac3Settings_surroundMode :: Lens.Lens' Eac3Settings (Prelude.Maybe Eac3SurroundMode)
eac3Settings_surroundMode :: (Maybe Eac3SurroundMode -> f (Maybe Eac3SurroundMode))
-> Eac3Settings -> f Eac3Settings
eac3Settings_surroundMode = (Eac3Settings -> Maybe Eac3SurroundMode)
-> (Eac3Settings -> Maybe Eac3SurroundMode -> Eac3Settings)
-> Lens
Eac3Settings
Eac3Settings
(Maybe Eac3SurroundMode)
(Maybe Eac3SurroundMode)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Eac3SurroundMode
surroundMode :: Maybe Eac3SurroundMode
$sel:surroundMode:Eac3Settings' :: Eac3Settings -> Maybe Eac3SurroundMode
surroundMode} -> Maybe Eac3SurroundMode
surroundMode) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Eac3SurroundMode
a -> Eac3Settings
s {$sel:surroundMode:Eac3Settings' :: Maybe Eac3SurroundMode
surroundMode = Maybe Eac3SurroundMode
a} :: Eac3Settings)
eac3Settings_attenuationControl :: Lens.Lens' Eac3Settings (Prelude.Maybe Eac3AttenuationControl)
eac3Settings_attenuationControl :: (Maybe Eac3AttenuationControl -> f (Maybe Eac3AttenuationControl))
-> Eac3Settings -> f Eac3Settings
eac3Settings_attenuationControl = (Eac3Settings -> Maybe Eac3AttenuationControl)
-> (Eac3Settings -> Maybe Eac3AttenuationControl -> Eac3Settings)
-> Lens
Eac3Settings
Eac3Settings
(Maybe Eac3AttenuationControl)
(Maybe Eac3AttenuationControl)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Eac3AttenuationControl
attenuationControl :: Maybe Eac3AttenuationControl
$sel:attenuationControl:Eac3Settings' :: Eac3Settings -> Maybe Eac3AttenuationControl
attenuationControl} -> Maybe Eac3AttenuationControl
attenuationControl) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Eac3AttenuationControl
a -> Eac3Settings
s {$sel:attenuationControl:Eac3Settings' :: Maybe Eac3AttenuationControl
attenuationControl = Maybe Eac3AttenuationControl
a} :: Eac3Settings)
eac3Settings_passthroughControl :: Lens.Lens' Eac3Settings (Prelude.Maybe Eac3PassthroughControl)
eac3Settings_passthroughControl :: (Maybe Eac3PassthroughControl -> f (Maybe Eac3PassthroughControl))
-> Eac3Settings -> f Eac3Settings
eac3Settings_passthroughControl = (Eac3Settings -> Maybe Eac3PassthroughControl)
-> (Eac3Settings -> Maybe Eac3PassthroughControl -> Eac3Settings)
-> Lens
Eac3Settings
Eac3Settings
(Maybe Eac3PassthroughControl)
(Maybe Eac3PassthroughControl)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Eac3PassthroughControl
passthroughControl :: Maybe Eac3PassthroughControl
$sel:passthroughControl:Eac3Settings' :: Eac3Settings -> Maybe Eac3PassthroughControl
passthroughControl} -> Maybe Eac3PassthroughControl
passthroughControl) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Eac3PassthroughControl
a -> Eac3Settings
s {$sel:passthroughControl:Eac3Settings' :: Maybe Eac3PassthroughControl
passthroughControl = Maybe Eac3PassthroughControl
a} :: Eac3Settings)
eac3Settings_bitstreamMode :: Lens.Lens' Eac3Settings (Prelude.Maybe Eac3BitstreamMode)
eac3Settings_bitstreamMode :: (Maybe Eac3BitstreamMode -> f (Maybe Eac3BitstreamMode))
-> Eac3Settings -> f Eac3Settings
eac3Settings_bitstreamMode = (Eac3Settings -> Maybe Eac3BitstreamMode)
-> (Eac3Settings -> Maybe Eac3BitstreamMode -> Eac3Settings)
-> Lens
Eac3Settings
Eac3Settings
(Maybe Eac3BitstreamMode)
(Maybe Eac3BitstreamMode)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Eac3BitstreamMode
bitstreamMode :: Maybe Eac3BitstreamMode
$sel:bitstreamMode:Eac3Settings' :: Eac3Settings -> Maybe Eac3BitstreamMode
bitstreamMode} -> Maybe Eac3BitstreamMode
bitstreamMode) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Eac3BitstreamMode
a -> Eac3Settings
s {$sel:bitstreamMode:Eac3Settings' :: Maybe Eac3BitstreamMode
bitstreamMode = Maybe Eac3BitstreamMode
a} :: Eac3Settings)
eac3Settings_lfeControl :: Lens.Lens' Eac3Settings (Prelude.Maybe Eac3LfeControl)
eac3Settings_lfeControl :: (Maybe Eac3LfeControl -> f (Maybe Eac3LfeControl))
-> Eac3Settings -> f Eac3Settings
eac3Settings_lfeControl = (Eac3Settings -> Maybe Eac3LfeControl)
-> (Eac3Settings -> Maybe Eac3LfeControl -> Eac3Settings)
-> Lens
Eac3Settings
Eac3Settings
(Maybe Eac3LfeControl)
(Maybe Eac3LfeControl)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Eac3LfeControl
lfeControl :: Maybe Eac3LfeControl
$sel:lfeControl:Eac3Settings' :: Eac3Settings -> Maybe Eac3LfeControl
lfeControl} -> Maybe Eac3LfeControl
lfeControl) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Eac3LfeControl
a -> Eac3Settings
s {$sel:lfeControl:Eac3Settings' :: Maybe Eac3LfeControl
lfeControl = Maybe Eac3LfeControl
a} :: Eac3Settings)
eac3Settings_codingMode :: Lens.Lens' Eac3Settings (Prelude.Maybe Eac3CodingMode)
eac3Settings_codingMode :: (Maybe Eac3CodingMode -> f (Maybe Eac3CodingMode))
-> Eac3Settings -> f Eac3Settings
eac3Settings_codingMode = (Eac3Settings -> Maybe Eac3CodingMode)
-> (Eac3Settings -> Maybe Eac3CodingMode -> Eac3Settings)
-> Lens
Eac3Settings
Eac3Settings
(Maybe Eac3CodingMode)
(Maybe Eac3CodingMode)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Eac3CodingMode
codingMode :: Maybe Eac3CodingMode
$sel:codingMode:Eac3Settings' :: Eac3Settings -> Maybe Eac3CodingMode
codingMode} -> Maybe Eac3CodingMode
codingMode) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Eac3CodingMode
a -> Eac3Settings
s {$sel:codingMode:Eac3Settings' :: Maybe Eac3CodingMode
codingMode = Maybe Eac3CodingMode
a} :: Eac3Settings)
eac3Settings_drcLine :: Lens.Lens' Eac3Settings (Prelude.Maybe Eac3DrcLine)
eac3Settings_drcLine :: (Maybe Eac3DrcLine -> f (Maybe Eac3DrcLine))
-> Eac3Settings -> f Eac3Settings
eac3Settings_drcLine = (Eac3Settings -> Maybe Eac3DrcLine)
-> (Eac3Settings -> Maybe Eac3DrcLine -> Eac3Settings)
-> Lens
Eac3Settings Eac3Settings (Maybe Eac3DrcLine) (Maybe Eac3DrcLine)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Eac3DrcLine
drcLine :: Maybe Eac3DrcLine
$sel:drcLine:Eac3Settings' :: Eac3Settings -> Maybe Eac3DrcLine
drcLine} -> Maybe Eac3DrcLine
drcLine) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Eac3DrcLine
a -> Eac3Settings
s {$sel:drcLine:Eac3Settings' :: Maybe Eac3DrcLine
drcLine = Maybe Eac3DrcLine
a} :: Eac3Settings)
eac3Settings_drcRf :: Lens.Lens' Eac3Settings (Prelude.Maybe Eac3DrcRf)
eac3Settings_drcRf :: (Maybe Eac3DrcRf -> f (Maybe Eac3DrcRf))
-> Eac3Settings -> f Eac3Settings
eac3Settings_drcRf = (Eac3Settings -> Maybe Eac3DrcRf)
-> (Eac3Settings -> Maybe Eac3DrcRf -> Eac3Settings)
-> Lens
Eac3Settings Eac3Settings (Maybe Eac3DrcRf) (Maybe Eac3DrcRf)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Eac3DrcRf
drcRf :: Maybe Eac3DrcRf
$sel:drcRf:Eac3Settings' :: Eac3Settings -> Maybe Eac3DrcRf
drcRf} -> Maybe Eac3DrcRf
drcRf) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Eac3DrcRf
a -> Eac3Settings
s {$sel:drcRf:Eac3Settings' :: Maybe Eac3DrcRf
drcRf = Maybe Eac3DrcRf
a} :: Eac3Settings)
eac3Settings_dcFilter :: Lens.Lens' Eac3Settings (Prelude.Maybe Eac3DcFilter)
eac3Settings_dcFilter :: (Maybe Eac3DcFilter -> f (Maybe Eac3DcFilter))
-> Eac3Settings -> f Eac3Settings
eac3Settings_dcFilter = (Eac3Settings -> Maybe Eac3DcFilter)
-> (Eac3Settings -> Maybe Eac3DcFilter -> Eac3Settings)
-> Lens
Eac3Settings Eac3Settings (Maybe Eac3DcFilter) (Maybe Eac3DcFilter)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Eac3DcFilter
dcFilter :: Maybe Eac3DcFilter
$sel:dcFilter:Eac3Settings' :: Eac3Settings -> Maybe Eac3DcFilter
dcFilter} -> Maybe Eac3DcFilter
dcFilter) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Eac3DcFilter
a -> Eac3Settings
s {$sel:dcFilter:Eac3Settings' :: Maybe Eac3DcFilter
dcFilter = Maybe Eac3DcFilter
a} :: Eac3Settings)
eac3Settings_bitrate :: Lens.Lens' Eac3Settings (Prelude.Maybe Prelude.Double)
eac3Settings_bitrate :: (Maybe Double -> f (Maybe Double))
-> Eac3Settings -> f Eac3Settings
eac3Settings_bitrate = (Eac3Settings -> Maybe Double)
-> (Eac3Settings -> Maybe Double -> Eac3Settings)
-> Lens Eac3Settings Eac3Settings (Maybe Double) (Maybe Double)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Double
bitrate :: Maybe Double
$sel:bitrate:Eac3Settings' :: Eac3Settings -> Maybe Double
bitrate} -> Maybe Double
bitrate) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Double
a -> Eac3Settings
s {$sel:bitrate:Eac3Settings' :: Maybe Double
bitrate = Maybe Double
a} :: Eac3Settings)
eac3Settings_phaseControl :: Lens.Lens' Eac3Settings (Prelude.Maybe Eac3PhaseControl)
eac3Settings_phaseControl :: (Maybe Eac3PhaseControl -> f (Maybe Eac3PhaseControl))
-> Eac3Settings -> f Eac3Settings
eac3Settings_phaseControl = (Eac3Settings -> Maybe Eac3PhaseControl)
-> (Eac3Settings -> Maybe Eac3PhaseControl -> Eac3Settings)
-> Lens
Eac3Settings
Eac3Settings
(Maybe Eac3PhaseControl)
(Maybe Eac3PhaseControl)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Eac3PhaseControl
phaseControl :: Maybe Eac3PhaseControl
$sel:phaseControl:Eac3Settings' :: Eac3Settings -> Maybe Eac3PhaseControl
phaseControl} -> Maybe Eac3PhaseControl
phaseControl) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Eac3PhaseControl
a -> Eac3Settings
s {$sel:phaseControl:Eac3Settings' :: Maybe Eac3PhaseControl
phaseControl = Maybe Eac3PhaseControl
a} :: Eac3Settings)
eac3Settings_surroundExMode :: Lens.Lens' Eac3Settings (Prelude.Maybe Eac3SurroundExMode)
eac3Settings_surroundExMode :: (Maybe Eac3SurroundExMode -> f (Maybe Eac3SurroundExMode))
-> Eac3Settings -> f Eac3Settings
eac3Settings_surroundExMode = (Eac3Settings -> Maybe Eac3SurroundExMode)
-> (Eac3Settings -> Maybe Eac3SurroundExMode -> Eac3Settings)
-> Lens
Eac3Settings
Eac3Settings
(Maybe Eac3SurroundExMode)
(Maybe Eac3SurroundExMode)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Eac3SurroundExMode
surroundExMode :: Maybe Eac3SurroundExMode
$sel:surroundExMode:Eac3Settings' :: Eac3Settings -> Maybe Eac3SurroundExMode
surroundExMode} -> Maybe Eac3SurroundExMode
surroundExMode) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Eac3SurroundExMode
a -> Eac3Settings
s {$sel:surroundExMode:Eac3Settings' :: Maybe Eac3SurroundExMode
surroundExMode = Maybe Eac3SurroundExMode
a} :: Eac3Settings)
eac3Settings_dialnorm :: Lens.Lens' Eac3Settings (Prelude.Maybe Prelude.Natural)
eac3Settings_dialnorm :: (Maybe Natural -> f (Maybe Natural))
-> Eac3Settings -> f Eac3Settings
eac3Settings_dialnorm = (Eac3Settings -> Maybe Natural)
-> (Eac3Settings -> Maybe Natural -> Eac3Settings)
-> Lens Eac3Settings Eac3Settings (Maybe Natural) (Maybe Natural)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Eac3Settings' {Maybe Natural
dialnorm :: Maybe Natural
$sel:dialnorm:Eac3Settings' :: Eac3Settings -> Maybe Natural
dialnorm} -> Maybe Natural
dialnorm) (\s :: Eac3Settings
s@Eac3Settings' {} Maybe Natural
a -> Eac3Settings
s {$sel:dialnorm:Eac3Settings' :: Maybe Natural
dialnorm = Maybe Natural
a} :: Eac3Settings)
instance Core.FromJSON Eac3Settings where
parseJSON :: Value -> Parser Eac3Settings
parseJSON =
String
-> (Object -> Parser Eac3Settings) -> Value -> Parser Eac3Settings
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Core.withObject
String
"Eac3Settings"
( \Object
x ->
Maybe Eac3StereoDownmix
-> Maybe Double
-> Maybe Double
-> Maybe Eac3LfeFilter
-> Maybe Double
-> Maybe Eac3MetadataControl
-> Maybe Double
-> Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings
Eac3Settings'
(Maybe Eac3StereoDownmix
-> Maybe Double
-> Maybe Double
-> Maybe Eac3LfeFilter
-> Maybe Double
-> Maybe Eac3MetadataControl
-> Maybe Double
-> Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Eac3StereoDownmix)
-> Parser
(Maybe Double
-> Maybe Double
-> Maybe Eac3LfeFilter
-> Maybe Double
-> Maybe Eac3MetadataControl
-> Maybe Double
-> Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object -> Text -> Parser (Maybe Eac3StereoDownmix)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"stereoDownmix")
Parser
(Maybe Double
-> Maybe Double
-> Maybe Eac3LfeFilter
-> Maybe Double
-> Maybe Eac3MetadataControl
-> Maybe Double
-> Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Double)
-> Parser
(Maybe Double
-> Maybe Eac3LfeFilter
-> Maybe Double
-> Maybe Eac3MetadataControl
-> Maybe Double
-> Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"loRoCenterMixLevel")
Parser
(Maybe Double
-> Maybe Eac3LfeFilter
-> Maybe Double
-> Maybe Eac3MetadataControl
-> Maybe Double
-> Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Double)
-> Parser
(Maybe Eac3LfeFilter
-> Maybe Double
-> Maybe Eac3MetadataControl
-> Maybe Double
-> Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"ltRtCenterMixLevel")
Parser
(Maybe Eac3LfeFilter
-> Maybe Double
-> Maybe Eac3MetadataControl
-> Maybe Double
-> Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Eac3LfeFilter)
-> Parser
(Maybe Double
-> Maybe Eac3MetadataControl
-> Maybe Double
-> Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Eac3LfeFilter)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"lfeFilter")
Parser
(Maybe Double
-> Maybe Eac3MetadataControl
-> Maybe Double
-> Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Double)
-> Parser
(Maybe Eac3MetadataControl
-> Maybe Double
-> Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"ltRtSurroundMixLevel")
Parser
(Maybe Eac3MetadataControl
-> Maybe Double
-> Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Eac3MetadataControl)
-> Parser
(Maybe Double
-> Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Eac3MetadataControl)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"metadataControl")
Parser
(Maybe Double
-> Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Double)
-> Parser
(Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"loRoSurroundMixLevel")
Parser
(Maybe Eac3SurroundMode
-> Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Eac3SurroundMode)
-> Parser
(Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Eac3SurroundMode)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"surroundMode")
Parser
(Maybe Eac3AttenuationControl
-> Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Eac3AttenuationControl)
-> Parser
(Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Eac3AttenuationControl)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"attenuationControl")
Parser
(Maybe Eac3PassthroughControl
-> Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Eac3PassthroughControl)
-> Parser
(Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Eac3PassthroughControl)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"passthroughControl")
Parser
(Maybe Eac3BitstreamMode
-> Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Eac3BitstreamMode)
-> Parser
(Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Eac3BitstreamMode)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"bitstreamMode")
Parser
(Maybe Eac3LfeControl
-> Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Eac3LfeControl)
-> Parser
(Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Eac3LfeControl)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"lfeControl")
Parser
(Maybe Eac3CodingMode
-> Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Eac3CodingMode)
-> Parser
(Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Eac3CodingMode)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"codingMode")
Parser
(Maybe Eac3DrcLine
-> Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Eac3DrcLine)
-> Parser
(Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Eac3DrcLine)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"drcLine")
Parser
(Maybe Eac3DrcRf
-> Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Eac3DrcRf)
-> Parser
(Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Eac3DrcRf)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"drcRf")
Parser
(Maybe Eac3DcFilter
-> Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Eac3DcFilter)
-> Parser
(Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Eac3DcFilter)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"dcFilter")
Parser
(Maybe Double
-> Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode
-> Maybe Natural
-> Eac3Settings)
-> Parser (Maybe Double)
-> Parser
(Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode -> Maybe Natural -> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"bitrate")
Parser
(Maybe Eac3PhaseControl
-> Maybe Eac3SurroundExMode -> Maybe Natural -> Eac3Settings)
-> Parser (Maybe Eac3PhaseControl)
-> Parser
(Maybe Eac3SurroundExMode -> Maybe Natural -> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Eac3PhaseControl)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"phaseControl")
Parser (Maybe Eac3SurroundExMode -> Maybe Natural -> Eac3Settings)
-> Parser (Maybe Eac3SurroundExMode)
-> Parser (Maybe Natural -> Eac3Settings)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Eac3SurroundExMode)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"surroundExMode")
Parser (Maybe Natural -> Eac3Settings)
-> Parser (Maybe Natural) -> Parser Eac3Settings
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
"dialnorm")
)
instance Prelude.Hashable Eac3Settings
instance Prelude.NFData Eac3Settings
instance Core.ToJSON Eac3Settings where
toJSON :: Eac3Settings -> Value
toJSON Eac3Settings' {Maybe Double
Maybe Natural
Maybe Eac3AttenuationControl
Maybe Eac3BitstreamMode
Maybe Eac3CodingMode
Maybe Eac3DcFilter
Maybe Eac3DrcLine
Maybe Eac3DrcRf
Maybe Eac3LfeControl
Maybe Eac3LfeFilter
Maybe Eac3MetadataControl
Maybe Eac3PassthroughControl
Maybe Eac3PhaseControl
Maybe Eac3StereoDownmix
Maybe Eac3SurroundExMode
Maybe Eac3SurroundMode
dialnorm :: Maybe Natural
surroundExMode :: Maybe Eac3SurroundExMode
phaseControl :: Maybe Eac3PhaseControl
bitrate :: Maybe Double
dcFilter :: Maybe Eac3DcFilter
drcRf :: Maybe Eac3DrcRf
drcLine :: Maybe Eac3DrcLine
codingMode :: Maybe Eac3CodingMode
lfeControl :: Maybe Eac3LfeControl
bitstreamMode :: Maybe Eac3BitstreamMode
passthroughControl :: Maybe Eac3PassthroughControl
attenuationControl :: Maybe Eac3AttenuationControl
surroundMode :: Maybe Eac3SurroundMode
loRoSurroundMixLevel :: Maybe Double
metadataControl :: Maybe Eac3MetadataControl
ltRtSurroundMixLevel :: Maybe Double
lfeFilter :: Maybe Eac3LfeFilter
ltRtCenterMixLevel :: Maybe Double
loRoCenterMixLevel :: Maybe Double
stereoDownmix :: Maybe Eac3StereoDownmix
$sel:dialnorm:Eac3Settings' :: Eac3Settings -> Maybe Natural
$sel:surroundExMode:Eac3Settings' :: Eac3Settings -> Maybe Eac3SurroundExMode
$sel:phaseControl:Eac3Settings' :: Eac3Settings -> Maybe Eac3PhaseControl
$sel:bitrate:Eac3Settings' :: Eac3Settings -> Maybe Double
$sel:dcFilter:Eac3Settings' :: Eac3Settings -> Maybe Eac3DcFilter
$sel:drcRf:Eac3Settings' :: Eac3Settings -> Maybe Eac3DrcRf
$sel:drcLine:Eac3Settings' :: Eac3Settings -> Maybe Eac3DrcLine
$sel:codingMode:Eac3Settings' :: Eac3Settings -> Maybe Eac3CodingMode
$sel:lfeControl:Eac3Settings' :: Eac3Settings -> Maybe Eac3LfeControl
$sel:bitstreamMode:Eac3Settings' :: Eac3Settings -> Maybe Eac3BitstreamMode
$sel:passthroughControl:Eac3Settings' :: Eac3Settings -> Maybe Eac3PassthroughControl
$sel:attenuationControl:Eac3Settings' :: Eac3Settings -> Maybe Eac3AttenuationControl
$sel:surroundMode:Eac3Settings' :: Eac3Settings -> Maybe Eac3SurroundMode
$sel:loRoSurroundMixLevel:Eac3Settings' :: Eac3Settings -> Maybe Double
$sel:metadataControl:Eac3Settings' :: Eac3Settings -> Maybe Eac3MetadataControl
$sel:ltRtSurroundMixLevel:Eac3Settings' :: Eac3Settings -> Maybe Double
$sel:lfeFilter:Eac3Settings' :: Eac3Settings -> Maybe Eac3LfeFilter
$sel:ltRtCenterMixLevel:Eac3Settings' :: Eac3Settings -> Maybe Double
$sel:loRoCenterMixLevel:Eac3Settings' :: Eac3Settings -> Maybe Double
$sel:stereoDownmix:Eac3Settings' :: Eac3Settings -> Maybe Eac3StereoDownmix
..} =
[Pair] -> Value
Core.object
( [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Text
"stereoDownmix" Text -> Eac3StereoDownmix -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Eac3StereoDownmix -> Pair)
-> Maybe Eac3StereoDownmix -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Eac3StereoDownmix
stereoDownmix,
(Text
"loRoCenterMixLevel" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Double
loRoCenterMixLevel,
(Text
"ltRtCenterMixLevel" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Double
ltRtCenterMixLevel,
(Text
"lfeFilter" Text -> Eac3LfeFilter -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Eac3LfeFilter -> Pair) -> Maybe Eac3LfeFilter -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Eac3LfeFilter
lfeFilter,
(Text
"ltRtSurroundMixLevel" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Double
ltRtSurroundMixLevel,
(Text
"metadataControl" Text -> Eac3MetadataControl -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(Eac3MetadataControl -> Pair)
-> Maybe Eac3MetadataControl -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Eac3MetadataControl
metadataControl,
(Text
"loRoSurroundMixLevel" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Double
loRoSurroundMixLevel,
(Text
"surroundMode" Text -> Eac3SurroundMode -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Eac3SurroundMode -> Pair) -> Maybe Eac3SurroundMode -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Eac3SurroundMode
surroundMode,
(Text
"attenuationControl" Text -> Eac3AttenuationControl -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(Eac3AttenuationControl -> Pair)
-> Maybe Eac3AttenuationControl -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Eac3AttenuationControl
attenuationControl,
(Text
"passthroughControl" Text -> Eac3PassthroughControl -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(Eac3PassthroughControl -> Pair)
-> Maybe Eac3PassthroughControl -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Eac3PassthroughControl
passthroughControl,
(Text
"bitstreamMode" Text -> Eac3BitstreamMode -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Eac3BitstreamMode -> Pair)
-> Maybe Eac3BitstreamMode -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Eac3BitstreamMode
bitstreamMode,
(Text
"lfeControl" Text -> Eac3LfeControl -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Eac3LfeControl -> Pair) -> Maybe Eac3LfeControl -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Eac3LfeControl
lfeControl,
(Text
"codingMode" Text -> Eac3CodingMode -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Eac3CodingMode -> Pair) -> Maybe Eac3CodingMode -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Eac3CodingMode
codingMode,
(Text
"drcLine" Text -> Eac3DrcLine -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Eac3DrcLine -> Pair) -> Maybe Eac3DrcLine -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Eac3DrcLine
drcLine,
(Text
"drcRf" Text -> Eac3DrcRf -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Eac3DrcRf -> Pair) -> Maybe Eac3DrcRf -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Eac3DrcRf
drcRf,
(Text
"dcFilter" Text -> Eac3DcFilter -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Eac3DcFilter -> Pair) -> Maybe Eac3DcFilter -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Eac3DcFilter
dcFilter,
(Text
"bitrate" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Double
bitrate,
(Text
"phaseControl" Text -> Eac3PhaseControl -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Eac3PhaseControl -> Pair) -> Maybe Eac3PhaseControl -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Eac3PhaseControl
phaseControl,
(Text
"surroundExMode" Text -> Eac3SurroundExMode -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(Eac3SurroundExMode -> Pair)
-> Maybe Eac3SurroundExMode -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Eac3SurroundExMode
surroundExMode,
(Text
"dialnorm" Text -> Natural -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Natural -> Pair) -> Maybe Natural -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Natural
dialnorm
]
)