動画の中の「あの曲」が気になったので、HTMLプレイヤーを自作してShazamで特定してみた

自作HTMLプレイヤーとShazamで曲名を特定する記事のOGPバナー、シンプル版

スマートフォンで撮った動画を見返していて、「あ、この曲なんだっけ……」と気になったことはありませんか。背後に流れているBGMのタイトルが気になって検索しても、断片的な歌詞やメロディだけでは思い出せない。今回はその「曲名がわからない問題」を、Claudeに自作プレイヤーを作ってもらい、Shazamと組み合わせることで解決した記録です。

きっかけ:動画ファイル(.mov)が再生しづらかった

問題の動画は、iPhoneで撮影した .mov 形式のファイルでした。.mov 自体は珍しい形式ではありませんが、iPhoneで撮影された動画はHEVC(H.265)という映像コーデックで圧縮されていることが多く、ブラウザによっては再生できないケースがあります。HEVCへの対応状況はブラウザの種類だけでなく、OS側のコーデックサポート状況にも左右されるため、「このブラウザなら必ず再生できる」と一概には言えない点が厄介でした。

「ローカルの動画ファイルを、手元のブラウザで素早く確認したい」というだけなのに、対応コーデックの違いで手間がかかる――これが最初の小さな壁でした。

解決策:シンプルな自作プレイヤーをHTMLで作る

そこで、ブラウザ上で動画ファイルを選んで再生できるだけの、ごくシンプルなHTMLファイルを作成しました。ポイントは次の2点です。

  • ファイル選択方式:あらかじめ動画ファイルを特定のフォルダに置く必要がなく、「ファイルを選択」ボタンから好きなファイルを選べるようにしました。汎用性を重視し、パス指定が不要な設計です。
  • ローカル完結:選んだファイルはブラウザ内でObject URLとして読み込まれるだけで、外部サーバーへ送信されることはありません。

完成したコードは以下の通りです(その後、.mp3.mp4にも対応させた最終版です)。

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>動画・音声ファイル再生プレイヤー</title>
<style>
  body {
    font-family: -apple-system, "Hiragino Sans", "Meiryo", sans-serif;
    background: #1c1c1e;
    color: #f5f5f7;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 40px 16px;
    margin: 0;
    min-height: 100vh;
  }
  h1 {
    font-size: 1.2rem;
    font-weight: 500;
    margin-bottom: 24px;
  }
  .file-input-wrapper {
    margin-bottom: 24px;
  }
  input[type="file"] {
    color: #f5f5f7;
    background: #2c2c2e;
    border: 1px solid #444;
    border-radius: 8px;
    padding: 10px 14px;
    font-size: 0.95rem;
  }
  video {
    max-width: 90vw;
    max-height: 70vh;
    background: #000;
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.5);
    display: none;
  }
  audio {
    width: 90vw;
    max-width: 480px;
    margin-top: 12px;
    display: none;
  }
  .audio-icon {
    font-size: 4rem;
    margin-top: 20px;
    display: none;
  }
  .filename {
    margin-top: 12px;
    font-size: 0.85rem;
    color: #a1a1a6;
  }
  .note {
    margin-top: 32px;
    font-size: 0.8rem;
    color: #6e6e73;
    max-width: 480px;
    text-align: center;
    line-height: 1.5;
  }
</style>
</head>
<body>

  <h1>動画・音声ファイル再生プレイヤー(.mov / .mp3 対応)</h1>

  <div class="file-input-wrapper">
    <input type="file" id="fileInput" accept="video/*,audio/*,.mov,.mp3">
  </div>

  <div class="audio-icon" id="audioIcon">🎵</div>
  <video id="videoPlayer" controls></video>
  <audio id="audioPlayer" controls></audio>
  <div class="filename" id="filenameDisplay"></div>

  <div class="note">
    「ファイルを選択」ボタンからお手元の .mov や .mp3 ファイルを選んでください。<br>
    ファイルはブラウザ内でのみ読み込まれ、外部へ送信・保存されません。<br>
    動画ファイルがHEVC(H.265)コーデックの場合、ブラウザやOSの対応状況によっては再生できないことがあります。
  </div>

<script>
  const fileInput = document.getElementById('fileInput');
  const video = document.getElementById('videoPlayer');
  const audio = document.getElementById('audioPlayer');
  const audioIcon = document.getElementById('audioIcon');
  const filenameDisplay = document.getElementById('filenameDisplay');
  let currentUrl = null;

  fileInput.addEventListener('change', function(e) {
    const file = e.target.files[0];
    if (!file) return;

    if (currentUrl) {
      URL.revokeObjectURL(currentUrl);
    }

    currentUrl = URL.createObjectURL(file);
    filenameDisplay.textContent = file.name;

    const isAudio = file.type.startsWith('audio') || /\.mp3$/i.test(file.name);

    if (isAudio) {
      video.style.display = 'none';
      video.removeAttribute('src');
      audio.src = currentUrl;
      audio.style.display = 'block';
      audioIcon.style.display = 'block';
      audio.play().catch(() => {});
    } else {
      audio.style.display = 'none';
      audioIcon.style.display = 'none';
      audio.removeAttribute('src');
      video.src = currentUrl;
      video.style.display = 'block';
      video.play().catch(() => {});
    }
  });
</script>

</body>
</html>

使い方はとても簡単です。このHTMLファイルをダブルクリックしてブラウザで開き、「ファイルを選択」から該当のファイルを選ぶだけで再生が始まります。

Shazamプラグインで曲名を特定

動画をブラウザで再生できるようになったところで、ブラウザ拡張機能の「Shazam」を使い、再生中の音声を聴かせてみました。結果は一瞬。曲名とアーティスト名がすぐに表示され、長年気になっていた疑問が解決しました。

動画編集ソフトを立ち上げたり、音声を抜き出したりする手間は一切不要で、「ブラウザで再生→拡張機能が自動で聴き取る」というだけのシンプルな流れで完了したのが印象的でした。

ここで一点補足です。Shazamのブラウザ拡張機能はChrome向けに提供されているもので、Chromeウェブストアからインストールします(Safariや他のブラウザでは同じ拡張機能は使えません)。今回は実際にChromeでHEVC(H.265)形式の.movファイルを再生し、そのままShazamに聴き取らせることができましたが、HEVC再生への対応状況は環境によって差があるため、もしChromeで動画が再生されない場合は、後述のように.mp4へ変換するなど別の手段を検討する必要があります。

つまり、「自作プレイヤーでの再生」と「Shazamでの曲名特定」を同じ流れで行うには、基本的にChromeを使うのが前提になります。

mp4・mp3にも対応させた

最初は .mov 専用に作ったプレイヤーでしたが、せっかくなので汎用性を高めることにしました。具体的には、選択したファイルの種類(MIMEタイプや拡張子)を見て、

  • 動画ファイル(.mov.mp4 など)→ <video> タグで再生
  • 音声ファイル(.mp3 など)→ <audio> タグで再生(音符アイコンを表示)

を自動で切り替えるようにしました。動画かどうかを毎回意識しなくても、同じ画面でファイルを選ぶだけで適切に再生されます。実際に .mp4 ファイルでも問題なく動作することを確認できました。

まとめ

「動画の中の曲名が気になる」という、ちょっとしたきっかけから始まった今回の取り組みでしたが、

  1. ブラウザのコーデック対応状況を、自作のシンプルなHTMLプレイヤーで吸収(パス指定不要のファイル選択方式)
  2. Chrome+Shazamのブラウザ拡張機能で曲名をその場で特定
  3. 動画だけでなく音声ファイルにも対応させて汎用性を向上

という流れで、想像以上にスムーズに解決できました。ローカルにある動画・音声ファイルをサーバーにアップロードすることなく、その場でブラウザだけで確認・再生できる手軽さは、ちょっとした調べ物のときに地味に便利です。今回のコードはご自由にお使いいただけますので、似たような場面で気になる曲が出てきたら、ぜひ試してみてください。

動画作成には自信があります!

ChatGPTとClaudeを徹底比較|違い・強み・使い分け戦略を完全解説

生成AIの進化により、ChatGPTとClaudeは現在もっとも注目される大規模言語モデル(LLM)となっています。本記事では、両者の違い・強み・使い分け戦略を整理し、最適な活用方法を解説します。


ChatGPTとClaudeとは?基本概要と開発背景

ChatGPTとClaudeは、生成AI市場を牽引する代表的なAIモデルです。

ChatGPTは、米国のAI企業 OpenAI が開発し、対話型AIを世界的に普及させました。文章作成、プログラミング、マーケティング支援など幅広い用途に対応できる汎用性が強みです。

一方、Claudeは Anthropic が開発した生成AIで、安全性と長文処理能力を重視して設計されています。特に企業利用や大量ドキュメントの読解に強みがあります。

両者は同じ生成AIでありながら、設計思想や得意分野が異なります。


ChatGPTとClaudeの性能比較

1. 文章生成力

ChatGPTは自然でバランスの取れた文章生成が得意で、SEO記事やビジネス文書作成に向いています。

Claudeは論理構造が安定した文章を生成し、長文でも一貫性を保ちやすい傾向があります。

2. 推論力

ChatGPTは複雑な指示理解や段階的思考を伴うタスクに強みがあります。

Claudeは慎重で安全寄りの出力を行う設計思想が特徴です。

3. 創造性

アイデア発想やブレインストーミングではChatGPTが積極的なアウトプットを提示する傾向があります。

Claudeは整合性を重視し、破綻の少ない提案を行います。

4. 安定性

長文処理や文脈維持ではClaudeが評価されることが多く、レポート生成などに適しています。


料金・安全性・企業利用の違い

料金体系や企業利用面でも違いがあります。

  • ChatGPT:個人向けから法人向けまで幅広いプランが存在
  • Claude:API利用や法人活用に強み

Claudeは安全性を重視する設計思想を持ち、リスクのある出力を避ける傾向があります。一方、ChatGPTは柔軟性が高く、幅広い用途で活用可能です。

企業導入では以下の観点が重要です。

  • セキュリティ要件
  • 社内活用範囲
  • 出力の柔軟性

用途別の最適な使い分け戦略

ChatGPTが向いているケース

  • ブログ記事やSNS投稿作成
  • プログラミング補助
  • アイデア発想
  • マーケティング戦略設計

Claudeが向いているケース

  • 長文レポート作成
  • 大量ドキュメントの要約
  • 契約書や社内規定の分析
  • リスクを抑えた企業利用

個人利用ではChatGPTを軸に、企業の法務・企画部門ではClaudeを併用する形が現実的です。


ChatGPTとClaudeを併用するという選択肢

最適解は「どちらかを選ぶ」ことではなく、「目的別に併用する」ことです。

  1. ChatGPTでアイデアを大量生成
  2. Claudeで構造を整理し、長文化
  3. ChatGPTで最終ブラッシュアップ

このようなワークフローを構築することで、アウトプットの質と効率を大幅に向上できます。


まとめ

ChatGPTは汎用性と創造性に優れ、幅広い用途に対応できる生成AIです。Claudeは安全性と長文安定性に強く、企業利用に適しています。

重要なのは優劣ではなく、目的に応じた使い分けです。さらに、両者を併用することで、それぞれの強みを最大化できます。

生成AI時代に求められるのは、AIを単体で使う力ではなく、戦略的に組み合わせる設計力といえるでしょう。

動画作成には自信があります!

PAGE TOP