를 사용한 MediaConnect 예제 AWS CLI - AWS SDK 코드 예제

AWS Doc SDK ExamplesWord AWS SDK 리포지토리에는 더 많은 GitHub 예제가 있습니다.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

를 사용한 MediaConnect 예제 AWS CLI

다음 코드 예제에서는 AWS Command Line Interface with MediaConnect를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여줍니다.

작업은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 개별 서비스 함수를 직접적으로 호출하는 방법을 보여주며 관련 시나리오의 컨텍스트에 맞는 작업을 볼 수 있습니다.

각 예제에는 컨텍스트에서 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있는 전체 소스 코드에 대한 링크가 포함되어 있습니다.

주제

작업

다음 코드 예시에서는 add-flow-outputs을 사용하는 방법을 보여 줍니다.

AWS CLI

흐름에 출력을 추가하려면

다음 add-flow-outputs 예제에서는 지정된 흐름에 출력을 추가합니다.

aws mediaconnect add-flow-outputs \ --flow-arn arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BaseballGame \ --outputs Description='NYC stream',Destination=192.0.2.12,Name=NYC,Port=3333,Protocol=rtp-fec,SmoothingLatency=100 Description='LA stream',Destination=203.0.113.9,Name=LA,Port=4444,Protocol=rtp-fec,SmoothingLatency=100

출력:

{ "Outputs": [ { "Port": 3333, "OutputArn": "arn:aws:mediaconnect:us-east-1:111122223333:output:2-3aBC45dEF67hiJ89-c34de5fG678h:NYC", "Name": "NYC", "Description": "NYC stream", "Destination": "192.0.2.12", "Transport": { "Protocol": "rtp-fec", "SmoothingLatency": 100 } }, { "Port": 4444, "OutputArn": "arn:aws:mediaconnect:us-east-1:111122223333:output:2-987655dEF67hiJ89-c34de5fG678h:LA", "Name": "LA", "Description": "LA stream", "Destination": "203.0.113.9", "Transport": { "Protocol": "rtp-fec", "SmoothingLatency": 100 } } ], "FlowArn": "arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BaseballGame" }

자세한 내용은 AWS Elemental MediaConnect 사용 설명서흐름에 출력 추가를 참조하세요.

  • API 세부 정보는 AWS CLI 명령 참조AddFlowOutputs를 참조하세요.

다음 코드 예시에서는 create-flow을 사용하는 방법을 보여 줍니다.

AWS CLI

흐름을 생성하려면

다음 create-flow 예제에서는 지정된 구성으로 흐름을 생성합니다.

aws mediaconnect create-flow \ --availability-zone us-west-2c \ --name ExampleFlow \ --source Description='Example source, backup',IngestPort=1055,Name=BackupSource,Protocol=rtp,WhitelistCidr=10.24.34.0/23

출력:

{ "Flow": { "FlowArn": "arn:aws:mediaconnect:us-east-1:123456789012:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:ExampleFlow", "AvailabilityZone": "us-west-2c", "EgressIp": "54.245.71.21", "Source": { "IngestPort": 1055, "SourceArn": "arn:aws:mediaconnect:us-east-1:123456789012:source:2-3aBC45dEF67hiJ89-c34de5fG678h:BackupSource", "Transport": { "Protocol": "rtp", "MaxBitrate": 80000000 }, "Description": "Example source, backup", "IngestIp": "54.245.71.21", "WhitelistCidr": "10.24.34.0/23", "Name": "mySource" }, "Entitlements": [], "Name": "ExampleFlow", "Outputs": [], "Status": "STANDBY", "Description": "Example source, backup" } }

자세한 내용은 AWS Elemental MediaConnect 사용 설명서흐름 생성을 참조하세요.

  • API 세부 정보는 AWS CLI 명령 참조CreateFlow를 참조하세요.

다음 코드 예시에서는 delete-flow을 사용하는 방법을 보여 줍니다.

AWS CLI

흐름을 삭제하려면

다음 delete-flow 예제에서는 지정된 흐름을 삭제합니다.

aws mediaconnect delete-flow \ --flow-arn arn:aws:mediaconnect:us-east-1:123456789012:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:AwardsShow

출력:

{ "FlowArn": "arn:aws:mediaconnect:us-east-1:123456789012:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:AwardsShow", "Status": "DELETING" }

자세한 내용은 AWS Elemental MediaConnect 사용 설명서흐름 삭제를 참조하세요.

  • API 세부 정보는 AWS CLI 명령 참조DeleteFlow를 참조하세요.

다음 코드 예시에서는 describe-flow을 사용하는 방법을 보여 줍니다.

AWS CLI

흐름의 세부 정보를 보려면

다음 describe-flow 예제에서는 ARN, 가용 영역, 상태, 소스, 권한 및 출력과 같은 지정된 흐름의 세부 정보를 표시합니다.

aws mediaconnect describe-flow \ --flow-arn arn:aws:mediaconnect:us-east-1:123456789012:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:AwardsShow

출력:

{ "Flow": { "EgressIp": "54.201.4.39", "AvailabilityZone": "us-west-2c", "Status": "ACTIVE", "FlowArn": "arn:aws:mediaconnect:us-east-1:123456789012:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:AwardsShow", "Entitlements": [ { "EntitlementArn": "arn:aws:mediaconnect:us-west-2:123456789012:entitlement:1-AaBb11CcDd22EeFf-34DE5fG12AbC:MyEntitlement", "Description": "Assign to this account", "Name": "MyEntitlement", "Subscribers": [ "444455556666" ] } ], "Description": "NYC awards show", "Name": "AwardsShow", "Outputs": [ { "Port": 2355, "Name": "NYC", "Transport": { "SmoothingLatency": 0, "Protocol": "rtp-fec" }, "OutputArn": "arn:aws:mediaconnect:us-east-1:123456789012:output:2-3aBC45dEF67hiJ89-c34de5fG678h:NYC", "Destination": "192.0.2.0" }, { "Port": 3025, "Name": "LA", "Transport": { "SmoothingLatency": 0, "Protocol": "rtp-fec" }, "OutputArn": "arn:aws:mediaconnect:us-east-1:123456789012:output:2-987655dEF67hiJ89-c34de5fG678h:LA", "Destination": "192.0.2.0" } ], "Source": { "IngestIp": "54.201.4.39", "SourceArn": "arn:aws:mediaconnect:us-east-1:123456789012:source:3-4aBC56dEF78hiJ90-4de5fG6Hi78Jk:ShowSource", "Transport": { "MaxBitrate": 80000000, "Protocol": "rtp" }, "IngestPort": 1069, "Description": "Saturday night show", "Name": "ShowSource", "WhitelistCidr": "10.24.34.0/23" } } }

자세한 내용은 AWS Elemental MediaConnect 사용 설명서의 흐름 세부 정보 보기를 참조하세요.

  • API 세부 정보는 AWS CLI 명령 참조DescribeFlow를 참조하세요.

다음 코드 예시에서는 grant-flow-entitlements을 사용하는 방법을 보여 줍니다.

AWS CLI

흐름에 대한 권한을 부여하려면

다음 grant-flow-entitlements 예제에서는 지정된 기존 흐름에 다른 AWS 계정과 콘텐츠를 공유할 수 있는 권한을 부여합니다.

aws mediaconnect grant-flow-entitlements \ --flow-arn arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BaseballGame \ --entitlements Description='For AnyCompany',Encryption={"Algorithm=aes128,KeyType=static-key,RoleArn=arn:aws:iam::111122223333:role/MediaConnect-ASM,SecretArn=arn:aws:secretsmanager:us-west-2:111122223333:secret:mySecret1"},Name=AnyCompany_Entitlement,Subscribers=444455556666 Description='For Example Corp',Name=ExampleCorp,Subscribers=777788889999

출력:

{ "Entitlements": [ { "Name": "AnyCompany_Entitlement", "EntitlementArn": "arn:aws:mediaconnect:us-west-2:111122223333:entitlement:1-11aa22bb11aa22bb-3333cccc4444:AnyCompany_Entitlement", "Subscribers": [ "444455556666" ], "Description": "For AnyCompany", "Encryption": { "SecretArn": "arn:aws:secretsmanager:us-west-2:111122223333:secret:mySecret1", "Algorithm": "aes128", "RoleArn": "arn:aws:iam::111122223333:role/MediaConnect-ASM", "KeyType": "static-key" } }, { "Name": "ExampleCorp", "EntitlementArn": "arn:aws:mediaconnect:us-west-2:111122223333:entitlement:1-3333cccc4444dddd-1111aaaa2222:ExampleCorp", "Subscribers": [ "777788889999" ], "Description": "For Example Corp" } ], "FlowArn": "arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BaseballGame" }

자세한 내용은 AWS Elemental MediaConnect 사용 설명서흐름에 대한 권한 부여를 참조하세요.

다음 코드 예시에서는 list-entitlements을 사용하는 방법을 보여 줍니다.

AWS CLI

권한 목록을 보려면

다음 list-entitlements 예제에서는 계정에 부여된 모든 권한 목록을 보여줍니다.

aws mediaconnect list-entitlements

출력:

{ "Entitlements": [ { "EntitlementArn": "arn:aws:mediaconnect:us-west-2:111122223333:entitlement:1-11aa22bb11aa22bb-3333cccc4444:MyEntitlement", "EntitlementName": "MyEntitlement" } ] }

자세한 내용은 AWS Elemental MediaConnect API Word참조ListEntitlements를 참조하세요.

  • API 세부 정보는 AWS CLI 명령 참조ListEntitlements를 참조하세요.

다음 코드 예시에서는 list-flows을 사용하는 방법을 보여 줍니다.

AWS CLI

흐름 목록을 보려면

다음 list-flows 예제에서는 흐름 목록을 표시합니다.

aws mediaconnect list-flows

출력:

{ "Flows": [ { "Status": "STANDBY", "SourceType": "OWNED", "AvailabilityZone": "us-west-2a", "Description": "NYC awards show", "Name": "AwardsShow", "FlowArn": "arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:AwardsShow" }, { "Status": "STANDBY", "SourceType": "OWNED", "AvailabilityZone": "us-west-2c", "Description": "LA basketball game", "Name": "BasketballGame", "FlowArn": "arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BasketballGame" } ] }

자세한 내용은 AWS Elemental MediaConnect 사용 설명서의 흐름 목록 보기를 참조하세요.

  • API 세부 정보는 AWS CLI 명령 참조ListFlows를 참조하세요.

다음 코드 예시에서는 list-tags-for-resource을 사용하는 방법을 보여 줍니다.

AWS CLI

a MediaConnect 리소스의 태그를 나열하려면

다음 list-tags-for-resource 예제에서는 지정된 MediaConnect 리소스와 연결된 태그 키 및 값을 표시합니다.

aws mediaconnect list-tags-for-resource \ --resource-arn arn:aws:mediaconnect:us-east-1:123456789012:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BasketballGame

출력:

{ "Tags": { "region": "west", "stage": "prod" } }

자세한 내용은 Elemental TagResource UntagResourceWord 참조의 ListTagsForResource,Word,Word를 참조하세요. AWS MediaConnect API

다음 코드 예시에서는 remove-flow-output을 사용하는 방법을 보여 줍니다.

AWS CLI

흐름에서 출력을 제거하려면

다음 remove-flow-output 예제에서는 지정된 흐름에서 출력을 제거합니다.

aws mediaconnect remove-flow-output \ --flow-arn arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BaseballGame \ --output-arn arn:aws:mediaconnect:us-east-1:111122223333:output:2-3aBC45dEF67hiJ89-c34de5fG678h:NYC

출력:

{ "FlowArn": "arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BaseballGame", "OutputArn": "arn:aws:mediaconnect:us-east-1:111122223333:output:2-3aBC45dEF67hiJ89-c34de5fG678h:NYC" }

자세한 내용은 AWS Elemental MediaConnect 사용 설명서흐름에서 출력 제거를 참조하세요.

  • API 세부 정보는 AWS CLI 명령 참조RemoveFlowOutput를 참조하세요.

다음 코드 예시에서는 revoke-flow-entitlement을 사용하는 방법을 보여 줍니다.

AWS CLI

권한을 취소하려면

다음 revoke-flow-entitlement 예제에서는 지정된 흐름에 대한 권한을 취소합니다.

aws mediaconnect revoke-flow-entitlement \ --flow-arn arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BaseballGame \ --entitlement-arn arn:aws:mediaconnect:us-west-2:111122223333:entitlement:1-11aa22bb11aa22bb-3333cccc4444:AnyCompany_Entitlement

출력:

{ "FlowArn": "arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BaseballGame", "EntitlementArn": "arn:aws:mediaconnect:us-west-2:111122223333:entitlement:1-11aa22bb11aa22bb-3333cccc4444:AnyCompany_Entitlement" }

자세한 내용은 AWS Elemental MediaConnect 사용 설명서권한 취소를 참조하세요.

다음 코드 예시에서는 start-flow을 사용하는 방법을 보여 줍니다.

AWS CLI

흐름을 시작하려면

다음 start-flow 예제에서는 지정된 흐름을 시작합니다.

aws mediaconnect start-flow \ --flow-arn arn:aws:mediaconnect:us-east-1:123456789012:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:AwardsShow

이 명령은 출력을 생성하지 않습니다. 출력:

{ "FlowArn": "arn:aws:mediaconnect:us-east-1:123456789012:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:AwardsShow", "Status": "STARTING" }

자세한 내용은 AWS Elemental MediaConnect 사용 설명서흐름 시작을 참조하세요.

  • API 세부 정보는 AWS CLI 명령 참조StartFlow를 참조하세요.

다음 코드 예시에서는 stop-flow을 사용하는 방법을 보여 줍니다.

AWS CLI

흐름을 중지하려면

다음 stop-flow 예제에서는 지정된 흐름을 중지합니다.

aws mediaconnect stop-flow \ --flow-arn arn:aws:mediaconnect:us-east-1:123456789012:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:AwardsShow

출력:

{ "Status": "STOPPING", "FlowArn": "arn:aws:mediaconnect:us-east-1:123456789012:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:AwardsShow" }

자세한 내용은 AWS Elemental MediaConnect 사용 설명서흐름 중지를 참조하세요.

  • API 세부 정보는 AWS CLI 명령 참조StopFlow를 참조하세요.

다음 코드 예시에서는 tag-resource을 사용하는 방법을 보여 줍니다.

AWS CLI

a MediaConnect 리소스에 태그를 추가하려면

다음 tag-resource 예제에서는 키 이름과 값이 있는 태그를 지정된 MediaConnect 리소스에 추가합니다.

aws mediaconnect tag-resource \ --resource-arn arn:aws:mediaconnect:us-east-1:123456789012:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BasketballGame --tags region=west

이 명령은 출력을 생성하지 않습니다.

자세한 내용은 Elemental TagResource UntagResourceWord 참조의 ListTagsForResource,Word,Word를 참조하세요. AWS MediaConnect API

  • API 세부 정보는 AWS CLI 명령 참조TagResource를 참조하세요.

다음 코드 예시에서는 untag-resource을 사용하는 방법을 보여 줍니다.

AWS CLI

a MediaConnect 리소스에서 태그를 제거하려면

다음 untag-resource 예제에서는 지정된 키 이름과 관련 값이 있는 태그를 MediaConnect 리소스에서 제거합니다.

aws mediaconnect untag-resource \ --resource-arn arn:aws:mediaconnect:us-east-1:123456789012:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BasketballGame \ --tag-keys region

이 명령은 출력을 생성하지 않습니다.

자세한 내용은 Elemental TagResource UntagResourceWord 참조의 ListTagsForResource,Word,Word를 참조하세요. AWS MediaConnect API

  • API 세부 정보는 AWS CLI 명령 참조UntagResource를 참조하세요.

다음 코드 예시에서는 update-flow-entitlement을 사용하는 방법을 보여 줍니다.

AWS CLI

권한을 업데이트하려면

다음 update-flow-entitlement 예제에서는 지정된 권한을 새 설명 및 구독자로 업데이트합니다.

aws mediaconnect update-flow-entitlement \ --flow-arn arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BaseballGame \ --entitlement-arn arn:aws:mediaconnect:us-west-2:111122223333:entitlement:1-11aa22bb11aa22bb-3333cccc4444:AnyCompany_Entitlement \ --description 'For AnyCompany Affiliate' \ --subscribers 777788889999

출력:

{ "FlowArn": "arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BaseballGame", "Entitlement": { "Name": "AnyCompany_Entitlement", "Description": "For AnyCompany Affiliate", "EntitlementArn": "arn:aws:mediaconnect:us-west-2:111122223333:entitlement:1-11aa22bb11aa22bb-3333cccc4444:AnyCompany_Entitlement", "Encryption": { "KeyType": "static-key", "Algorithm": "aes128", "RoleArn": "arn:aws:iam::111122223333:role/MediaConnect-ASM", "SecretArn": "arn:aws:secretsmanager:us-west-2:111122223333:secret:mySecret1" }, "Subscribers": [ "777788889999" ] } }

자세한 내용은 AWS Elemental MediaConnect 사용 설명서권한 업데이트를 참조하세요.

다음 코드 예시에서는 update-flow-output을 사용하는 방법을 보여 줍니다.

AWS CLI

흐름의 출력을 업데이트하려면

다음 update-flow-output 예제에서는 지정된 흐름에 대한 출력을 업데이트합니다.

aws mediaconnect update-flow-output \ --flow-arn arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BaseballGame \ --output-arn arn:aws:mediaconnect:us-east-1:111122223333:output:2-3aBC45dEF67hiJ89-c34de5fG678h:NYC \ --port 3331

출력:

{ "FlowArn": "arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:BaseballGame", "Output": { "Name": "NYC", "Port": 3331, "Description": "NYC stream", "Transport": { "Protocol": "rtp-fec", "SmoothingLatency": 100 }, "OutputArn": "arn:aws:mediaconnect:us-east-1:111122223333:output:2-3aBC45dEF67hiJ89-c34de5fG678h:NYC", "Destination": "192.0.2.12" } }

자세한 내용은 AWS Elemental MediaConnect 사용 설명서흐름에 대한 출력 업데이트를 참조하세요.

  • API 세부 정보는 AWS CLI 명령 참조UpdateFlowOutput를 참조하세요.

다음 코드 예시에서는 update-flow-source을 사용하는 방법을 보여 줍니다.

AWS CLI

기존 흐름의 소스를 업데이트하려면

다음 update-flow-source 예제에서는 기존 흐름의 소스를 업데이트합니다.

aws mediaconnect update-flow-source \ --flow-arn arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:AwardsShow \ --source-arn arn:aws:mediaconnect:us-east-1:111122223333:source:3-4aBC56dEF78hiJ90-4de5fG6Hi78Jk:ShowSource \ --description 'Friday night show' \ --ingest-port 3344 \ --protocol rtp-fec \ --whitelist-cidr 10.24.34.0/23

출력:

{ "FlowArn": "arn:aws:mediaconnect:us-east-1:111122223333:flow:1-23aBC45dEF67hiJ8-12AbC34DE5fG:AwardsShow", "Source": { "IngestIp": "34.210.136.56", "WhitelistCidr": "10.24.34.0/23", "Transport": { "Protocol": "rtp-fec" }, "IngestPort": 3344, "Name": "ShowSource", "Description": "Friday night show", "SourceArn": "arn:aws:mediaconnect:us-east-1:111122223333:source:3-4aBC56dEF78hiJ90-4de5fG6Hi78Jk:ShowSource" } }

자세한 내용은 AWS Elemental MediaConnect 사용 설명서의 흐름 소스 업데이트를 참조하세요.

  • API 세부 정보는 AWS CLI 명령 참조UpdateFlowSource를 참조하세요.