

高岡智則
年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)
libx264とは?初心者でも分かる基本ガイド
この記事では、libx264 が何か、どんなときに使うのか、基本の使い方のポイントを中学生にも分かるように解説します。
1. libx264とは何か
libx264 は動画を圧縮して小さなファイルに変える「エンコーダー」と呼ばれるソフトの一つです。エンコーダーは映像を「データのかたまり」へ変換します。H.264 という規格に合わせて圧縮を行い、映像を軽く・綺麗に保つ工夫をします。libx264 はオープンソースで、誰でも改良して使える性質があります。世界中の開発者が品質と速度の両立を目指して日々改良を続けており、フリーソフトウェアの中でも特に信頼されているエンコーダーのひとつです。
2. libx264 が FFmpeg とどう関わるか
動画処理の代表的なツールである FFmpeg は、さまざまなエンコーダーを組み合わせて動画の入出力を行います。libx264 はその中で最も人気のある H.264 エンコーダーの一つです。FFmpeg を使って動画を変換するとき、エンコード設定として -c:v libx264 のように指定します。これにより、入力動画を H.264 形式の映像として出力できます。
3. 仕組みと代表的な設定
H.264 は高い画質を保ちつつデータ量を抑える高度な圧縮規格です。libx264 はこの規格に合わせて、さまざまなパラメータでエンコードを最適化します。代表的な設定には次のようなものがあります。
| 意味 | |
|---|---|
| preset | エンコードの速度と品質のバランスを決める指標。例として ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow などがあります。 |
| crf | 映像の品質とファイルサイズを決める主要な指標です。数値が低いほど高品質でファイルサイズは大きくなります。一般的には 18 から 28 がよく使われます。 |
| profile | エンコードした映像のプロファイル。主に baseline、main、high などがあり、再生機器の互換性に影響します。 |
| tune | 用途別の最適化オプション。film、animation、zerolatency など、用途に合わせて画質や遅延を調整します。 |
4. 実際の使い方の一例
実際にコマンドラインで使う際の基本イメージを紹介します。以下は一般的なコマンドの例です。環境により細部は異なることがあります。
例: ffmpeg -i input.mp4 -c:v libx264 -preset fast -crf 23 -c:a aac -b:a 128k output.mp4
5. 実務での注意点とコツ
・ライセンスや特許の観点に注意しましょう。H.264 の特許は複数の団体が管理しており、動画を配布する用途では適切な権利処理が必要になることがあります。
・出力先のデバイスやプラットフォームを意識して設定を選ぶと、視聴体験が向上します。高品質を優先する場合は CRF 値を下げ、再生デバイスが限られている場合はプレセットを veryfast よりも medium や slow にするなどの工夫が有効です。
6. 要点のまとめ
本記事の要点は次の通りです。libx264 は H.264 用のオープンソースエンコーダーです。FFmpeg と組み合わせて使用するのが一般的で、crf と preset、profile、tune などの設定で品質とサイズのバランスを調整します。使い方を覚えれば、動画の品質を保ちながらファイルサイズを抑え、さまざまなデバイスで再生しやすい動画を作れます。
libx264の同意語
- libx264
- FFmpeg などで H.264 動画をエンコードする際に使われる公式ライブラリ。x264 エンコーダ本体を FFmpeg 用に提供する部品。
- x264ライブラリ
- x264 エンコーダを組み込んで利用するためのライブラリ。エンコード処理を外部のアプリと連携させる役割を果たす。
- x264エンコーダライブラリ
- x264 エンコーダを提供・呼び出すためのライブラリ。FFmpeg からエンコード機能を利用するための部品。
- FFmpegのx264エンコーダライブラリ
- FFmpeg がH.264エンコードに x264 を用いる際に組み込まれているライブラリ。
- x264エンコーダ
- H.264 形式へ動画をエンコードするエンコーダ本体。x264 プロジェクトが提供する実装。
- x264
- オープンソースのH.264エンコード実装。libx264 はこのエンコーダを FFmpeg 向けにラップするライブラリ。
- H.264エンコーダライブラリ
- H.264 のエンコード機能を提供するライブラリ。x264/ libx264 の総称として用いられることもある。
libx264の対義語・反対語
- デコーダー
- エンコードされた映像データを元の映像・音声へ戻す処理や役割。libx264 が担うエンコードの反対の機能として捉えられます。
- デコード
- エンコードされたデータを解いて、元のデータ形式に戻すこと。エンコードの反対動作です。
- 非圧縮映像
- 圧縮を行わず、元データのままの映像。エンコードで削られる情報を保持しない点が対概念です。
- ハードウェアエンコード
- CPUやGPUなどの専用ハードウェアを使って映像をエンコードする方式。ソフトウェアベースの libx264 とは対になる考え方です。
- ソフトウェアデコード
- ソフトウェアでデコードを実行する方式。ハードウェアデコードの対になるデコード手段です。
- libx265
- H.265/HEVC のエンコードライブラリ。エンコードの別規格であり、libx264 の対抗・対照として捉えられます。
- デコーダーライブラリ
- デコーダー機能を提供するライブラリのこと。エンコードを行う libx264 の反対側の役割を持つ代表例です。
libx264の共起語
- FFmpeg
- 動画・音声のエンコード・デコード・配信を行うオープンソースの総合フレームワーク。libx264はFFmpeg内で最も一般的なH.264エンコーダとして広く使用されます。
- x264
- libx264の実装名。H.264/AVCをソフトウェアでエンコードする高品質なエンコーダです。
- H.264 / AVC
- 国際的な映像圧縮規格。高い圧縮効率と広い互換性が特徴です。
- MPEG-4 AVC
- H.264の正式名称。libx264はこの規格に準拠してエンコードします。
- CRF
- Constant Rate Factor。画質を一定に保つ指標で、低いほど高画質・大容量、高いほど低画質・小容量になります。
- Preset
- エンコードの速度と品質のトレードオフを決める設定群。ultrafast から veryslow まで用意され、遅いほど圧縮効率が上がります。
- Tune
- 用途別にエンコードを最適化する設定。film、animation、grain、zerolatency、stillimage などがあります。
- Profile
- エンコードの互換性と圧縮特性を決めるカテゴリ。Baseline、Main、High などがあり、再生デバイスの対応を左右します。
- Bitrate
- 目標ビットレート。-b:v で指定する値で、CRFと組み合わせて品質とサイズを調整します。
- GOP
- Group of Pictures の略。IフレームとP/Bフレームの間隔(-g)を決め、動画の検索性とファイルサイズに影響します。
- Iフレーム
- I-フレーム(Intra)と呼ばれる完全参照フレーム。映像の切れ目や再生の安定性を担います。
- Bフレーム
- B-フレーム。前後のフレームを参照して動き補償を行い、圧縮効率を高めます。
- CABAC
- エントロピー符号化の高度な方式。CABAC は高い圧縮効率を発揮しますが計算量が多くなります。
- CAVLC
- CABAC の代替となるエントロピー符号化方式。低スペック環境で使われます。
- Reference frames
- 参照フレーム数。多いほど画質は良くなりますが処理負荷が増えます。
- pix_fmt
- ピクセルフォーマット。映像の色表現方法を決め、互換性と圧縮効率に影響します。
- yuv420p
- 最も一般的なピクセルフォーマットの一つ。Y、U、V 成分をそれぞれ別々に格納します。
- 8-bit
- 色深度8ビット。多くの配信・再生環境で標準的ですが、階調は10-bitより劣ることがあります。
- 10-bit
- 色深度10ビット。階調表現が豊かでダイナミックレンジが広いですが対応機器が限られることがあります。
- Two-pass encoding
- 2パスエンコード。1パスで解析を行い、2パスで最適なビット配分を適用します。品質とサイズの安定化に有効です。
- fps
- フレーム毎秒。映像の滑らかさとデータ量に影響します。
- Threads
- エンコード時のスレッド数。マルチスレッドによりエンコード速度を向上させます。
- libavcodec
- FFmpeg のコーデックライブラリ。libx264 はこのライブラリを使ってエンコードします。
- FFprobe
- FFmpeg の分析ツール。映像・音声の情報を取得するのに用います。
- MP4
- 広く使われる動画コンテナ形式。互換性が高く、libx264 出力の代表的な格納先です。
- MKV
- 柔軟性の高い動画コンテナ形式。複数のトラックや字幕を格納できます。
- zerolatency
- 低遅延化のためのチューニング設定。リアルタイムストリーミングで効果を発揮します。
- Motion estimation
- 動き推定。映像の動きを予測して圧縮効率を高める技術です。
- Color space
- 色空間。映像の色再現性に関わる設定で、BT.601/BT.709 などがあります。
libx264の関連用語
- libx264
- FFmpeg などのアプリで使われる H.264/AVC エンコーダのライブラリ。-c:v libx264 のように指定して利用します。
- x264
- libx264 の元となるオープンソースのエンコーダ。FFmpeg などで実装の基盤として使われます。
- H.264 / MPEG-4 AVC
- 現代的な動画コーデック。高い圧縮性能と広い対応機器を持つ規格です。
- FFmpeg
- 動画・音声の変換・編集・配信を行う代表的なオープンソースフレームワーク。
- libavcodec
- FFmpeg のコーデックライブラリ。エンコーダとデコーダの実装を提供します。
- CRF
- Constant Rate Factor の略。画質とファイルサイズのバランスを決める指標。数値が小さいほど高品質・大容量。
- Preset
- エンコードの速度と圧縮率のトレードオフを決める設定群。ultrafast から placebo まで用意されています。
- ultrafast
- 最速のプリセット。品質は低めだが処理が非常に速い。
- superfast
- 高速寄りのプリセット。
- veryfast
- 実用的な速さと品質のバランス。
- faster
- 速さ重視のプリセット。
- fast
- 速い設定。
- medium
- 標準的なバランスのプリセット。
- slow
- 高品質・ファイルサイズを抑えるプリセット。
- slower
- さらに高品質寄り。
- veryslow
- 最高品質を狙うが処理が重い設定。
- placebo
- 開発向けの極端に高品質寄りのプリセット。一般には使用しません。
- Tune
- エンコードの目的に合わせて最適化する設定カテゴリ。
- film
- 映画素材向けの最適化。
- animation
- アニメ素材向けの最適化。
- grain
- 粒状感を活かすための最適化。
- stillimage
- 静止画素材向けの最適化。
- zerolatency
- 遅延を最小化する設定。リアルタイム配信向け。
- Profile
- H.264 の機能セットを決めるプロファイル。Basline / Main / High など。
- Baseline
- 互換性重視のプロファイル。古い端末でも再生しやすい。
- Main
- 中程度の機能と互換性のバランス。
- High
- 高機能で高圧縮を狙うプロファイル。
- Level
- H.264 の機能レベル。対応解像度・ビットレートの上限を規定します。
- Bitrate
- 目標ビットレート。VBV などと組み合わせて制御します。
- VBV
- Video Buffer Verifier。ビットレート安定性を保つバッファ制御。
- vbv-bufsize
- VBV のバッファサイズ。
- two-pass
- 2 パスエンコード。統計情報を使って2回目に最適化します。
- first pass
- 1 パス目。主に統計情報を取得。
- second pass
- 2 パス目。統計情報を基に最適化してエンコード。
- keyint
- I フレーム間隔(キーフレーム間隔)。
- ref_frames
- 参照フレーム数。多いと精度は上がるが処理は重くなる。
- bframes
- B フレームの枚数。より高い圧縮を狙えます。
- me
- 動き推定アルゴリズムの選択肢。代表的には dia / hex / umh / esa など。
- dia
- Diamond Search。動き推定の一種。
- hex
- Hexagon Search。別の動き推定アルゴリズム。
- umh
- Uneven Multi-Hexagon。高性能な動き推定法の一つ。
- esa
- Exhaustive Search Algorithm 的な広範囲探索。
- subme
- サブピクセル精度の設定。通常は 0-6 程度を設定します。
- trellis
- 量子化の最適化手法。0/1/2 などで制御。
- deblock
- デブロックフィルタの強さ。0 でデフォルト、+-で強さを調整。
- cabac
- CABAC エントロピー符号化の有無。
- cavlc
- CAVLC エントロピー符号化の有無。
- aq
- Adaptive Quantization。画質とビットレートのバランスを取る機能。
- aq-mode
- AQ のモード設定。通常 0/1/2 など。
- aq-strength
- AQ の強さ。0.0〜1.0 程度で指定。
- psy
- Psychovisual 最適化。視覚的品質を高める調整。
- pix_fmt
- ピクセルフォーマット。例: yuv420p。
- yuv420p
- 最も一般的な色サンプリング。四分の一分解で効率的。
- sar
- Sample Aspect Ratio。画素の縦横比を設定。
- dar
- Display Aspect Ratio。表示時の縦横比を設定。
libx264のおすすめ参考サイト
- ビデオコーデック「HEVC」とは?その特長と活用方法を知る - Photron
- H.264とH.265の違いとは?動画圧縮技術を徹底解説【最新版】
- x264とは (エックスニーロクヨンとは) [単語記事] - ニコニコ大百科
- X264とは?意味をわかりやすく簡単に解説 - xexeq.jp



















