aws black belt techシリーズ amazon elastic transcoder
TRANSCRIPT
-
Amazon Elastic Transcoder AWS Black Belt Tech Webinar 2015 ()
-
( )
@con_mame facebook.com/conmame
AWS
Web / game / VideoLive Streaming
-
Agenda
Amazon Elastic transcoder AWS Pricing Q & A
-
Amazon Elastic transcoder
-
Amazon Elastic transcoder
-
SW Update
DIY()
-
Amazon Elastic Transcoder
(/)
(SW/)
()
(GUI/API)
-
Amazon Elastic Transcoder
(3GP, AAC, AVI, FLV, MP4, MPEG-2 )
Video codec : H.264, vp8 Audio codec : AAC, Vorbis, MP3 Container : mp4, MPEG-TS, webm, mp3, ogg Etc: HLSv3, HLSv4, Smooth Streaming
-
Amazon Elastic Transcoder
IAMCloudTrail
S3 Server-side encryptionKMS
Amazon S3
Amazon SNS
-
Upload Encode
-
Amazon Elastic Transcoder
Amazon S3(Input Bucket)
Amazon S3(Output Bucket)
AmazonElastic Transcoder Service
Amazon SNS
AWS SDK/API
ManagementConsole
/
/
-
Amazon Elastic Transcoder S3
AWS
S3Amazon Elastic Transcoder
Amazon SNS
-
Amazon Elastic Transcoder Pipline
(Job) Pipeline S3 Bucket SNS
Job
Preset (Frame Rate, Aspect Ratio, Container)
Preset
Preset
-
Amazon Elastic Transcoder
Pipeline Job Preset
-
JOB1
Input
Output JOB2
Input
Output JOB3
Input
Output
Pipeline1
-
Elastic Transcoder
-
Pipeline Pipeline
S3 Bucket S3 Bucket Storage Class
(Standard/RRS)
SNS TopicNotification
Server Side Encryption
-
Job Job
Pipeline INPUT OUTPUT(Prefix)
() Preset(Preset)
Job30
Duration Watermark Caption Encryption Manifest file(Adaptive bitrate) User Metadata
-
Job Job(HLS)
Duration Adaptive Bitrate
1. BitrateOutput Details 2. PlaylistOutput
Master Playlist(m3u8)
Playlist(m3u8): 2Mps
Playlist(m3u8): 600bps
01(ts): 1Mbps02(ts): 1Mbps
01(ts): 512kbps02(ts): 512kbps
:
:
HLS
-
Job Job
Pipeline INPUT OUTPUT(Prefix)
() Encryption Add Another Output
Job30
Album Art
Replace Prepend Append Fallback
-
Job (Optional)
-
Preset Preset
50
Video
FrameRateWatermarks Audio
Sample Rate
Thumbnails
-
Job Job
Job StatusComplete
Output Duration
-
1Job30Outputs 1jobOutput
1Pipeline1220jobs (12) http://docs.aws.amazon.com/elastictranscoder/latest/
developerguide/limits.html
-
50-100% Elastic Transcoder
Elastic Transcoder
-
Amazon SNS (HTTP(S))
DynamoDB Amazon SNS (
)
-
Caption Support Caption
: CEA-608 / CEA-708 / TTML / DFXP / EBU-TT/ SRT / WebVTT / SCC / mov-text
: DFXP / SRT / WebVTT / SCC / mov-text
Merge and Retain: embedded
captionSidecar caption ()
Merge and Override: Sidecar captionembedded caption ()
Override: sidecar caption
-
HLSv4 / smooth streaming HLSv4
iOS (5+) Android (4.4+) Byte-Range: 1segment
(v3)
Late Binding Audio:
I-Frame Only Playback: I-Frame (Key Frame) trick play
-
HLSv4 / smooth streaming
Master
Audio
I-Frame
#EXTINF:3.6327109999999996, #EXT-X-BYTERANGE:14271@564 demo1mv.ts #EXTINF:3.6327229999999995, #EXT-X-BYTERANGE:13819@410404 demo1mv.ts : I-frame
-
smooth streaming XboxWindows Phone
CloudFrontsmooth
streamingCloudFront
ISM: ISMV:
ISMC:
HLSv4 / smooth streaming
-
CloudTrail
Creating a job. The value of eventName is CreateJob.
Listing jobs by status Getting a job Deleting a Preset Deleting a pipeline
IP/User Name(IAM account)//Create Job
-
AWS Key Management Service
AWS Key Management Service
PipelineKMS
-
AWS Key Management Service Job
Encryption
KMSMaster KeyKey UsagePipelineIAM Role Default
Elastic_Transcoder_Default_Role
-
AWS Key Management Service
S3: Amazon S3Key S3-AWS-KMS: Amazon S3 + KMS
Master KeyPipelineKMSS3Key
AES-CBC-PKCS7: HLSPadded cipher-block
AES-CTR: AES Counter Mode - PlayReady DRM
AES-GCM: AES Galois Counter Mode -
-
User metadata
JobMetadata
Job JobSNSMetadata
-
User metadata
ID
Job
{ "state" : "COMPLETED", "userMetadata" : { "ContentsCode" : "a19B", "UserID" : "10", "Version" : "1" } }
-
AWS
-
S3CloudFront
HLS Smooth Streaming
RTMP
S3 + CloudFront
S3CloudFront S3 CloudFront
-
Storage Upload Servers
Encode Servers
Stream Servers
Upload Video
Store to Storage
Encoding
Distribution
Upload Encode
-
UploadDB
Upload
Upload
-
AWS1
Storage
API
Job submit
-
AWS2
Storage
Job submit
http://qiita.com/con_mame/items/b58a5e017e7c9ab2356b
-
AWS CognitoS3
: facebook IDID
Elastic Transcoder
Job
DynamoDB
CloudFront / S3Signed URLSDKURL
APIElastic BeanstalkAutoScaling
http://slidesha.re/1tvnU4K
-
Elastic Transcoder Tips
S3 Glacier
: 30Glacier
-
Elastic Transcoder Tips AWS SDKCLI tool
SDK
var ets = new AWS.ElasticTranscoder(); ets.createJob({ PipelineId: pipelineId, OutputKeyPrefix: 'demo/', Input: { Key: InputKey, FrameRate: 'auto', Resolution: 'auto', AspectRatio: 'auto', Interlaced: 'auto', Container: 'auto', }, Output: { Key: 'sample.mp4', ThumbnailPattern: 'sample-thumbs-{count}', PresetId: presetId, Rotate: 'auto' } }, function(error, data) { if(error) { debug(error); } else debug(data); });
-
Elastic Transcoder Tips SQSDynamoDB
Elastic TranscoderJob Elastic TranscoderPipeline
PipelinePipelineJob
Pipeline
-
Elastic Transcoder Pricing
" S3
20151
[] 2HD4002SD200
" ETS
-
CloudFrontS3/KMS
SDK
-
Amazon Elastic Transcoder Developer Guide http://docs.aws.amazon.com/elastictranscoder/latest/developerguide/introduction.html
Amazon Elastic Transcoder FAQ http://aws.amazon.com/jp/elastictranscoder/faqs/
Amazon Elastic Transcoder Pricing http://aws.amazon.com/jp/elastictranscoder/pricing/
AWS SDKs http://aws.amazon.com/tools/
-
Q&A
-
Webinar
AWS http://aws.amazon.com/jp/aws-jp-introduction/
-
Twitter/Facebook AWS
@awscloud_jp
http://on.fb.me/1vR8yWm