FlowSource
Learn how to create, update, and manage AWS MediaConnect FlowSources using Alchemy Cloud Control.
The FlowSource resource lets you manage AWS MediaConnect FlowSources and their configuration settings for media transport.
Minimal Example
Section titled “Minimal Example”Create a basic FlowSource with required properties and one optional property.
import AWS from "alchemy/aws/control";
const basicFlowSource = await AWS.MediaConnect.FlowSource("basic-flow-source", { description: "Basic FlowSource for live streaming", name: "LiveStreamSource", ingestPort: 9000, protocol: "RTP"});
Advanced Configuration
Section titled “Advanced Configuration”Configure a FlowSource with encryption and a specific network configuration.
const advancedFlowSource = await AWS.MediaConnect.FlowSource("advanced-flow-source", { description: "Advanced FlowSource with encryption", name: "SecureLiveStreamSource", ingestPort: 9000, protocol: "RTP", decryption: { roleArn: "arn:aws:iam::123456789012:role/MediaConnectRole", keyType: "static-key", staticKeyConfig: { key: "your-encryption-key", keyId: "your-key-id" } }, senderIpAddress: "192.168.1.10", whitelistCidr: "192.168.1.0/24"});
Using Gateway Bridge Source
Section titled “Using Gateway Bridge Source”Create a FlowSource that utilizes a Gateway Bridge configuration.
const gatewayBridgeFlowSource = await AWS.MediaConnect.FlowSource("gateway-flow-source", { description: "FlowSource using Gateway Bridge", name: "GatewayBridgeSource", gatewayBridgeSource: { gatewayBridgeArn: "arn:aws:mediaconnect:us-west-2:123456789012:gateway-bridge:my-gateway-bridge" }, protocol: "RTP", sourceListenerAddress: "192.168.1.20", sourceListenerPort: 9001});
Configuring Entitlements
Section titled “Configuring Entitlements”Set up a FlowSource with an entitlement ARN for controlled access.
const entitledFlowSource = await AWS.MediaConnect.FlowSource("entitled-flow-source", { description: "FlowSource with entitlement", name: "EntitledLiveStreamSource", entitlementArn: "arn:aws:mediaconnect:us-west-2:123456789012:entitlement:my-entitlement", protocol: "RTP", senderIpAddress: "192.168.2.10"});