import { useMemo } from 'react'; import { clsm } from '../../../../utils'; import { dashboard as $dashboardContent } from '../../../../content'; import { KEYFRAME_INTERVAL } from '../../../../constants'; import { processEncoderConfigData } from './utils'; import { useStreams } from '../../../../contexts/Streams'; import ConfigRow from './ConfigRow'; const $content = $dashboardContent.stream_session_page.encoder_configuration; const EncoderConfiguration = () => { const { activeStreamSession } = useStreams(); const encoderConfigValues = useMemo(() => { const { ingestConfiguration, channel, metrics } = activeStreamSession || {}; const { type: channelType } = channel || {}; const { statistics: { average: keyframeIntervalAvg } } = metrics?.find(({ label }) => label === KEYFRAME_INTERVAL) || { statistics: { average: null } }; let extendedIngestConfiguration; if (ingestConfiguration) { const { video: ingestVideoConfiguration } = ingestConfiguration || {}; extendedIngestConfiguration = { ...ingestConfiguration, video: { ...ingestVideoConfiguration, keyframeIntervalAvg } }; } return processEncoderConfigData(extendedIngestConfiguration, channelType); }, [activeStreamSession]); return (

{$content.title}

{encoderConfigValues.map(({ id, ...configData }) => ( ))}
); }; export default EncoderConfiguration;