amp의 Amp-video는 직접 동영상 삽입을 재생하는데 사용되는 표준 html5 동영상입니다. 이 글에서는 amp-video로 작업하고 사용하는 방법을 이해하겠습니다.
amp-video로 작업하려면 다음 스크립트를 추가해야 합니다.
<script async custom-element="amp-video" src="https://cdn.ampproject.org/v0/amp-video-0.1.js"></script>
Amp-video에는 로드할 비디오 리소스가 있는 src 속성이 있으며 런타임시 amp에 의해 느리게 로드됩니다. 게다가 모든 기능은 html5 비디오 태그와 거의 동일합니다.
다음은 amp video에 추가 할 노드입니다.
- Source - 이 태그를 사용하여 재생할 다른 미디어 파일을 추가할 수 있습니다.
- Track - 이 태그를 사용하면 비디오의 자막을 활성화할 수 있습니다.
- Placeholder - 이 자리표시자 태그는 동영상이 시작되기 전에 콘텐츠를 표시합니다.
- Fallback - 이 태그는 브라우저가 HTML5 비디오를 지원하지 않을 때 호출됩니다.
amp-video 태그 형식
amp-video 태그의 형식은 다음과 같습니다.
<amp-video controls width="640" height="360" layout="responsive" poster="images/videoposter.png"> <source src="video/bunny.webm" type="video/webm" /> <source src="video/samplevideo.mp4" type="video/mp4" /> <div fallback> <p>This browser does not support the video element.</p> </div> </amp-video>
아래와 같이 실제 예제를 사용하여 amp-video를 이해하겠습니다.
예제
<!doctype html> <html ⚡ lang="ko"> <head> <meta charset="utf-8"> <script async src="https://cdn.ampproject.org/v0.js"></script> <title>Google AMP - Amp Video</title> <link rel="canonical" href="https://googleblogamp.blogspot.com/2021/01/google-amp-video.html"> <meta name="viewport" content="width=device-width,minimum-scale=1"> <style amp-boilerplate>body{-webkit-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-moz-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-ms-animation:-amp-start 8s steps(1,end) 0s 1 normal both;animation:-amp-start 8s steps(1,end) 0s 1 normal both}@-webkit-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-moz-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-ms-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-o-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}</style><noscript><style amp-boilerplate>body{-webkit-animation:none;-moz-animation:none;-ms-animation:none;animation:none}</style></noscript> <script async custom-element="amp-video" src="https://cdn.ampproject.org/v0/amp-video-0.1.js"></script> </head> <body> <h3>Google AMP - Amp Video</h3> <amp-video controls width="640" height="360" layout="responsive" poster="images/videoposter.png"> <source src="video/bunny.webm" type="video/webm" /> <source src="video/samplevideo.mp4" type="video/mp4" /> <div fallback> <p>This browser does not support the video element.</p> </div> </amp-video> </body> </html>
결과
위에 주어진 코드의 출력은 다음과 같습니다.
amp-video에 사용 가능한 속성
amp-video에 사용할 수 있는 속성은 다음 표에 나열되어 있습니다.
속성 | 설명 |
---|---|
src |
|
poster | 포스터는 동영상이 시작되기 전에 표시되는 img url을 사용합니다. |
autoplay | amp-video에 이 속성이 있으면 브라우저가 지원하는 경우 동영상이 자동 재생됩니다. 동영상은 음소거 모드로 재생되며 사용자는 동영상을 탭하여 음소거를 해제해야 합니다. |
controls | amp-video에 이 속성이 있으면 html5 video과 유사한 컨트롤 바가 동영상에 표시됩니다. |
loop | 이 속성이 amp-video에 있는 경우 완료되면 동영상이 다시 재생됩니다. |
crossorigin | 비디오를 재생할 리소스가 다른 출처에 있는 경우이 속성이 나타납니다. |
rotate-to-fullscreen | 동영상이 표시되는 경우 사용자가 기기를 가로 모드로 회전하면 동영상이 전체 화면으로 표시됩니다. |
Amp-video 자동 재생
동영상을 자동 재생해야하는 경우 autoplay 속성을 사용할 수 있습니다. 이 기능은 브라우저 지원에 따라 작동합니다. 자동 재생시 동영상은 음소거 상태가됩니다. 사용자가 비디오를 탭하면 음소거가 해제됩니다.
아래 주어진 작업 예제의 도움으로 자동 재생 기능을 살펴 보겠습니다.
예제
<!doctype html> <html ⚡ lang="ko"> <head> <meta charset="utf-8"> <script async src="https://cdn.ampproject.org/v0.js"></script> <title>Google AMP - Amp Video</title> <link rel="canonical" href="https://googleblogamp.blogspot.com/2021/01/google-amp-video.html"> <meta name="viewport" content="width=device-width,minimum-scale=1"> <style amp-boilerplate>body{-webkit-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-moz-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-ms-animation:-amp-start 8s steps(1,end) 0s 1 normal both;animation:-amp-start 8s steps(1,end) 0s 1 normal both}@-webkit-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-moz-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-ms-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-o-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}</style><noscript><style amp-boilerplate>body{-webkit-animation:none;-moz-animation:none;-ms-animation:none;animation:none}</style></noscript> <script async custom-element="amp-video" src="https://cdn.ampproject.org/v0/amp-video-0.1.js"></script> </head> <body> <h3>>Google AMP - Amp Video Autoplay</h3> <amp-video controls width="640" height="360" layout="responsive" poster="images/videoposter.png" autoplay> <source src="video/bunny.webm" type="video/webm" /> <source src="video/samplevideo.mp4" type="video/mp4" /> <div fallback> <p>This browser does not support the video element.</p> </div> </amp-video> </body> </html>
다음 코드와 같이 controls
속성을 추가하여 동영상에 컨트롤을
활성화 할 수 있습니다.
<amp-video controls width="640" height="360" layout="responsive" poster="images/videoposter.png" autoplay> <source src="video/bunny.webm" type="video/webm" /> <source src="video/samplevideo.mp4" type="video/mp4" /> <div fallback> <p>This browser does not support the video element.</p> </div> </amp-video>