Dokumentasi ini AWS CLI hanya untuk Versi 1. Untuk dokumentasi yang terkait dengan Versi 2 AWS CLI, lihat Panduan Pengguna Versi 2.
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
MediaLive contoh menggunakan AWS CLI
Contoh kode berikut menunjukkan cara melakukan tindakan dan mengimplementasikan skenario umum dengan menggunakan AWS Command Line Interface with MediaLive.
Tindakan adalah kutipan kode dari program yang lebih besar dan harus dijalankan dalam konteks. Sementara tindakan menunjukkan cara memanggil fungsi layanan individual, Anda dapat melihat tindakan dalam konteks dalam skenario terkait.
Setiap contoh menyertakan tautan ke kode sumber lengkap, di mana Anda dapat menemukan instruksi tentang cara mengatur dan menjalankan kode dalam konteks.
Topik
Tindakan
Contoh kode berikut menunjukkan cara menggunakancreate-channel
.
- AWS CLI
-
Untuk membuat saluran
create-channel
Contoh berikut membuat saluran dengan meneruskan file JSON yang berisi parameter yang ingin Anda tentukan.Saluran dalam contoh ini menyerap input HLS PULL yang terhubung ke sumber yang berisi video, audio, dan teks yang disematkan. Saluran membuat satu grup keluaran HLS dengan server Akamai sebagai tujuan. Grup output berisi dua output: satu untuk video H.265 dan audio AAC, dan satu untuk keterangan Web-VTT, hanya dalam bahasa Inggris.
JSON untuk saluran contoh ini mencakup parameter minimum yang diperlukan untuk saluran yang menggunakan input HLS PULL dan yang menghasilkan grup keluaran HLS dengan Akamai sebagai tujuan. JSON berisi bagian utama ini:
InputAttachments
, yang menentukan satu sumber untuk audio, dan satu sumber untuk teks. Itu tidak menentukan pemilih video, yang berarti MediaLive mengekstrak video pertama yang ditemukannya di sumbernya.Destinations
, yang berisi dua alamat IP (URLs) untuk grup keluaran tunggal di saluran ini. Alamat ini memerlukan kata sandi.EncoderSettings
, yang berisi subbagian.AudioDescriptions
, yang menentukan bahwa saluran berisi satu aset output audio, yang menggunakan sumber dari InputAttachments, dan menghasilkan audio dalam format AAC.CaptionDescriptions
, yang menentukan bahwa saluran berisi satu aset keluaran teks, yang menggunakan sumber dari InputAttachments, dan menghasilkan teks dalam format Web-VTT.VideoDescriptions
, yang menentukan bahwa saluran berisi satu aset keluaran video, dengan resolusi yang ditentukan.OutputGroups
, yang menentukan kelompok output. Dalam contoh ini ada satu kelompok bernamaAkamai
. Koneksi dibuat menggunakan HLS PUT. Grup output berisi dua output. Satu output adalah untuk aset video (bernamaVideo_high
) dan aset audio (bernamaAudio_EN
). Satu output adalah untuk aset teks (bernamaWebVTT_EN
).Dalam contoh ini, beberapa parameter tidak mengandung nilai atau mengandung parameter kosong bersarang. Misalnya, OutputSettings untuk
Video_and_audio
output berisi beberapa parameter bersarang yang berakhir pada parameter kosong M3U8Settings. Parameter ini harus disertakan, tetapi Anda dapat menghilangkan satu, beberapa, atau semua anak-anaknya, yang berarti bahwa anak akan mengambil nilai defaultnya atau menjadi nol.Semua parameter yang berlaku untuk saluran contoh ini tetapi yang tidak ditentukan dalam file ini akan mengambil nilai default, disetel ke null, atau mengambil nilai unik yang dihasilkan oleh MediaLive.
aws medialive create-channel \ --cli-input-json
file://channel-in-hls-out-hls-akamai.json
Isi dari
channel-in-hls-out-hls-akamai.json
:{ "Name": "News_West", "RoleArn": "arn:aws:iam::111122223333:role/MediaLiveAccessRole", "InputAttachments": [ { "InputAttachmentName": "local_news", "InputId": "1234567", "InputSettings": { "AudioSelectors": [ { "Name": "English-Audio", "SelectorSettings": { "AudioLanguageSelection": { "LanguageCode": "EN" } } } ], "CaptionSelectors": [ { "LanguageCode": "ENE", "Name": "English_embedded" } ] } } ], "Destinations": [ { "Id": "akamai-server-west", "Settings": [ { "PasswordParam": "/medialive/examplecorp1", "Url": "http://203.0.113.55/news/news_west", "Username": "examplecorp" }, { "PasswordParam": "/medialive/examplecorp2", "Url": "http://203.0.113.82/news/news_west", "Username": "examplecorp" } ] } ], "EncoderSettings": { "AudioDescriptions": [ { "AudioSelectorName": "English-Audio", "CodecSettings": { "AacSettings": {} }, "Name": "Audio_EN" } ], "CaptionDescriptions": [ { "CaptionSelectorName": "English_embedded", "DestinationSettings": { "WebvttDestinationSettings": {} }, "Name": "WebVTT_EN" } ], "VideoDescriptions": [ { "Height": 720, "Name": "Video_high", "Width": 1280 } ], "OutputGroups": [ { "Name": "Akamai", "OutputGroupSettings": { "HlsGroupSettings": { "Destination": { "DestinationRefId": "akamai-server-west" }, "HlsCdnSettings": { "HlsBasicPutSettings": {} } } }, "Outputs": [ { "AudioDescriptionNames": [ "Audio_EN" ], "OutputName": "Video_and_audio", "OutputSettings": { "HlsOutputSettings": { "HlsSettings": { "StandardHlsSettings": { "M3u8Settings": {} } }, "NameModifier": "_1" } }, "VideoDescriptionName": "Video_high" }, { "CaptionDescriptionNames": [ "WebVTT_EN" ], "OutputName": "Captions-WebVTT", "OutputSettings": { "HlsOutputSettings": { "HlsSettings": { "StandardHlsSettings": { "M3u8Settings": {} } }, "NameModifier": "_2" } } } ] } ], "TimecodeConfig": { "Source": "EMBEDDED" } } }
Output:
Output mengulangi kembali isi file JSON, ditambah nilai-nilai berikut. Semua parameter diurutkan menurut abjad.
ARN
untuk saluran. Bagian terakhir dari ARN adalah ID saluran unik.EgressEndpoints
kosong di saluran contoh ini karena hanya digunakan untuk input PUSH. Ketika itu berlaku, itu menunjukkan alamat pada konten MediaLive yang didorong ke.OutputGroups
,Outputs
. Ini menunjukkan semua parameter untuk grup keluaran dan output, termasuk yang tidak Anda sertakan tetapi relevan dengan saluran ini. Parameter mungkin kosong (mungkin menunjukkan parameter atau fitur dinonaktifkan dalam konfigurasi saluran ini) atau mungkin menampilkan nilai default yang akan berlaku.LogLevel
diatur ke default (DISABLED).Tags
diatur ke default (null).PipelinesRunningCount
danState
menunjukkan status saluran saat ini.Untuk informasi selengkapnya, lihat Membuat Saluran dari Awal di Panduan MediaLive Pengguna AWS Elemental.
-
Untuk detail API, lihat CreateChannel
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakancreate-input
.
- AWS CLI
-
Untuk membuat masukan
create-input
Contoh berikut membuatHLS PULL
input dengan meneruskan file JSON yang berisi parameter yang berlaku untuk jenis input ini. JSON untuk masukan contoh ini menentukan dua sumber (alamat) ke input, untuk mendukung redundansi dalam ingest. Alamat ini memerlukan kata sandi.aws medialive create-input \ --cli-input-json
file://input-hls-pull-news.json
Isi dari
input-hls-pull-news.json
:{ "Name": "local_news", "RequestId": "cli000059", "Sources": [ { "Url": "https://203.0.113.13/newschannel/anytownusa.m3u8", "Username": "examplecorp", "PasswordParam": "/medialive/examplecorp1" }, { "Url": "https://198.51.100.54/fillervideos/oceanwaves.mp4", "Username": "examplecorp", "PasswordParam": "examplecorp2" } ], "Type": "URL_PULL" }
Output:
Output mengulangi kembali isi file JSON, ditambah nilai-nilai berikut. Semua parameter diurutkan menurut abjad.
Arn
untuk masukan. Bagian terakhir dari ARN adalah ID input unik.Attached Channels
, yang selalu kosong untuk input yang baru dibuat.Destinations
, yang kosong dalam contoh ini karena hanya digunakan dengan input PUSH.Id
untuk input, sama dengan ID di ARN.MediaConnectFlows
, yang kosong dalam contoh ini karena hanya digunakan dengan input tipe MediaConnect.SecurityGroups
, yang kosong dalam contoh ini karena hanya digunakan dengan input PUSH.State
dari masukan ini.Tags
, yang kosong (default untuk parameter ini).Untuk informasi selengkapnya, lihat Membuat Input di Panduan MediaLive Pengguna AWS Elemental.
-
Untuk detail API, lihat CreateInput
di Referensi AWS CLI Perintah.
-