Google AMP - วิดีโอ

แอมป์วิดีโอในแอมป์เป็นวิดีโอ html5 มาตรฐานที่ใช้เล่นวิดีโอฝังโดยตรง ในบทนี้ให้เราเข้าใจวิธีการทำงานและใช้ amp-video

ในการทำงานกับ amp-video เราต้องเพิ่มสคริปต์ต่อไปนี้ -

<script async custom-element = "amp-video" 
   src = "https://cdn.ampproject.org/v0/amp-video-0.1.js">
</script>

แอมป์วิดีโอมีแอตทริบิวต์ src ซึ่งมีทรัพยากรวิดีโอที่จะโหลดซึ่งโหลดโดยแอมป์ขณะรันไทม์ นอกจากนี้คุณสมบัติทั้งหมดเกือบจะเหมือนกับแท็กวิดีโอ html5

ต่อไปนี้เป็นโหนดที่จะเพิ่มลงในแอมป์วิดีโอ -

  • 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 amp lang = "en">
   <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 =  "http://example.ampproject.org/article-metadata.html">
      <meta name = "viewport" content = "width = device-width, minimum-scale = 1,initial-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 แสดงอยู่ในตารางที่นี่ -

ซีเนียร์ No คุณสมบัติและคำอธิบาย
1

src

หากไม่มีโหนด <source> แสดงว่าจะต้องระบุ src และเป็น https: // url

2

poster

ผู้โพสต์ใช้ img url ซึ่งจะแสดงก่อนที่วิดีโอจะเริ่ม

3

autoplay

การมีแอตทริบิวต์นี้ใน amp-video จะเล่นวิดีโอโดยอัตโนมัติหากเบราว์เซอร์รองรับวิดีโอจะเล่นในโหมดปิดเสียงและผู้ใช้จะต้องแตะที่วิดีโอเพื่อเปิดเสียง

4

controls

การมีแอตทริบิวต์นี้ใน amp-video จะแสดงการควบคุมวิดีโอคล้ายกับวิดีโอ html5

5

loop

หากมีแอตทริบิวต์นี้อยู่ใน amp-video วิดีโอจะเล่นอีกครั้งเมื่อเสร็จสิ้น

6

crossorigin

แอตทริบิวต์นี้จะปรากฏในภาพหากทรัพยากรในการเล่นวิดีโออยู่ในแหล่งกำเนิดอื่น

7

rotate-to-fullscreen

หากมองเห็นวิดีโอวิดีโอจะแสดงแบบเต็มหน้าจอหลังจากที่ผู้ใช้หมุนอุปกรณ์เข้าสู่โหมดแนวนอน

เล่นวิดีโอ AMP อัตโนมัติ

เราสามารถใช้แอตทริบิวต์เล่นอัตโนมัติในกรณีที่เราต้องการเล่นวิดีโออัตโนมัติ คุณลักษณะนี้จะทำงานตามการสนับสนุนเบราว์เซอร์ โปรดทราบว่าวิดีโอจะอยู่ในสถานะปิดเสียงเมื่อเล่นอัตโนมัติ เมื่อผู้ใช้แตะที่วิดีโอวิดีโอนั้นจะถูกเปิดเสียง

ให้เราใช้คุณสมบัติเล่นอัตโนมัติด้วยความช่วยเหลือของตัวอย่างการทำงานที่ให้ไว้ด้านล่าง -

ตัวอย่าง

<!doctype html>
<html amp lang = "en">
   <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 = "http://example.ampproject.org/article-metadata.html">

      <meta name = "viewport" content = "width=device-width,minimum-scale = 1, initial-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>

คุณสามารถเปิดใช้งานการควบคุมวิดีโอได้โดยเพิ่มแอตทริบิวต์การควบคุมดังที่แสดงในรหัสต่อไปนี้ -

<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>