본문 바로가기

마크업 언어/HTML

HTML <video> 태그, 웹에서 동영상 삽입하기

HTML <video> 태그 완벽, 웹에서 동영상 삽입하기

웹사이트에 동영상을 삽입하는 일은 방문자에게 더욱 풍부한 경험을 제공하는 중요한 요소입니다. HTML5의 <video> 태그는 플러그인 없이 동영상을 쉽게 삽입하고 재생할 수 있는 강력한 기능을 제공합니다. 이 가이드에서는 <video> 태그의 기본 사용법부터 고급 기능까지, 동영상 삽입을 위해 필요한 모든 것을 다룹니다.

 

 

목차

  1. <video> 태그 개요
  2. 동영상 파일 형식과 호환성
  3. <video> 태그의 기본 사용법
  4. 속성과 옵션들
  5. 자막 추가하기: <track> 태그 사용법
  6. 동영상 컨트롤 사용자 정의
  7. 반응형 웹 디자인과 <video> 태그
  8. 최적화된 동영상 제공을 위한 팁

 

1. <video> 태그 개요

<video> 태그는 HTML5에서 도입된 요소로, 웹 페이지에 동영상을 쉽게 삽입하고 재생할 수 있도록 합니다. 이 태그는 다양한 속성을 통해 재생 버튼, 볼륨 조절, 자막 등을 지원하며, JavaScript와의 통합을 통해 고도로 인터랙티브한 동영상 경험을 제공할 수 있습니다.

 

 

2. 동영상 파일 형식과 호환성

웹에서 동영상을 제공할 때는 파일 형식과 브라우저 호환성을 고려해야 합니다. HTML5의 <video> 태그는 다음과 같은 주요 동영상 파일 형식을 지원합니다:

  • MP4 (MPEG-4 Part 14): 대부분의 브라우저와 호환되며, H.264 비디오 코덱과 AAC 오디오 코덱을 사용합니다.
  • WebM: 오픈 포맷으로, VP8/VP9 비디오 코덱과 Vorbis/Opus 오디오 코덱을 사용합니다. 주로 크롬, 파이어폭스에서 잘 지원됩니다.
  • Ogg (Ogg Theora): 오픈 포맷으로, Theora 비디오 코덱과 Vorbis 오디오 코덱을 사용합니다. 파이어폭스, 오페라에서 주로 지원됩니다.

모든 브라우저에서 동영상이 제대로 재생되도록 하려면 MP4, WebM, Ogg 세 가지 포맷을 모두 제공하는 것이 이상적입니다.

 

 

3. <video> 태그의 기본 사용법

<video> 태그를 사용하여 웹 페이지에 동영상을 삽입하는 기본적인 방법은 다음과 같습니다:

<video controls>
    <source src="video.mp4" type="video/mp4">
    <source src="video.webm" type="video/webm">
    <source src="video.ogv" type="video/ogg">
    Your browser does not support the video tag.
</video>

위 코드에서 <source> 태그는 브라우저가 지원하는 형식에 따라 적절한 동영상 파일을 선택하게 합니다. <video> 태그의 controls 속성은 재생, 일시정지, 볼륨 조절 등의 기본 컨트롤을 화면에 표시합니다.

 

 

4. 속성과 옵션들

<video> 태그에는 다양한 속성을 통해 동영상 재생을 제어할 수 있습니다. 주요 속성들은 다음과 같습니다:

  • autoplay: 페이지 로드 시 동영상을 자동으로 재생합니다.
  • loop: 동영상이 끝나면 다시 처음부터 재생합니다.
  • muted: 동영상을 처음부터 음소거 상태로 재생합니다.
  • preload: 브라우저가 동영상을 미리 로드할지 여부를 결정합니다. auto, metadata, none 값을 가집니다.
  • poster: 동영상이 로드되기 전에 표시할 이미지 URL을 지정합니다.

예를 들어, 자동 재생과 음소거 상태로 동영상을 로드하려면 다음과 같이 작성할 수 있습니다:

<video autoplay muted>
    <source src="video.mp4" type="video/mp4">
    </video>

 

 

5. 자막 추가하기: <track> 태그 사용법

<track> 태그는 동영상에 자막을 추가할 때 사용됩니다. 이 태그를 통해 다양한 언어의 자막을 제공할 수 있습니다.

<video controls>
    <source src="video.mp4" type="video/mp4">
    <track src="subtitles_en.vtt" kind="subtitles" srclang="en" label="English">
    <track src="subtitles_ko.vtt" kind="subtitles" srclang="ko" label="Korean">
</video>

위 예제에서 kind="subtitles"는 자막임을 나타내며, srclang 속성은 자막의 언어를, label 속성은 자막 선택 메뉴에서 표시될 이름을 지정합니다.

 

 

 

 

6. 동영상 컨트롤 사용자 정의

<video> 태그의 기본 컨트롤 외에도 JavaScript를 사용하여 커스텀 컨트롤을 만들 수 있습니다. 이를 통해 사용자의 경험을 더욱 맞춤화할 수 있습니다.

예를 들어, 재생 버튼을 직접 구현하려면 다음과 같이 할 수 있습니다:

<video id="myVideo" width="320" height="240">
    <source src="video.mp4" type="video/mp4">
</video>

<button onclick="playPause()">Play/Pause</button>

<script>
function playPause() {
    var video = document.getElementById("myVideo");
    if (video.paused) {
        video.play();
    } else {
        video.pause();
    }
}
</script>

이 코드에서는 버튼을 클릭할 때마다 동영상의 재생과 일시 정지를 토글하는 기능을 제공합니다.

 

 

7. 반응형 웹 디자인과 <video> 태그

반응형 웹 디자인에서는 다양한 디바이스에서 동영상이 잘 표시되도록 해야 합니다. <video> 태그는 CSS를 사용하여 크기를 조정할 수 있습니다.

예를 들어, 동영상이 화면의 너비에 맞춰지도록 하려면 다음과 같이 CSS를 적용할 수 있습니다:

<style>
video {
    width: 100%;
    height: auto;
}
</style>

<video controls>
    <source src="video.mp4" type="video/mp4">
</video>

이 설정은 동영상이 화면의 크기에 맞게 자동으로 크기가 조정되도록 합니다.

 

 

8. 최적화된 동영상 제공을 위한 팁

효율적인 동영상 제공을 위해 다음과 같은 최적화 방법을 고려해야 합니다:

  • 적절한 파일 크기: 동영상 파일 크기를 줄이기 위해 해상도를 조정하거나 비트레이트를 최적화하세요.
  • 다양한 포맷 제공: MP4, WebM, Ogg 등 다양한 포맷으로 동영상을 제공하여 호환성을 높이세요.
  • CDN 사용: 전 세계적으로 빠른 로딩 속도를 위해 콘텐츠 전달 네트워크(CDN)를 사용하세요.
  • 브라우저 캐시 활용: 브라우저 캐싱을 통해 재방문 시 동영상 로딩 시간을 줄일 수 있습니다.

이러한 방법들을 통해 동영상의 로딩 시간을 최소화하고 사용자 경험을 개선할 수 있습니다.