ソフトウェアエンコード 【software encoding】
概要
ソフトウェアエンコード(software encoding)とは、音声や動画のデータ圧縮などのエンコード処理をソフトウェア(コンピュータプログラム)によって行うこと。動画データの圧縮などの処理を行う際に、コンピュータ上のCPUやGPUを使い、プログラムでエンコード処理を行う方式。アナログ信号からデジタルデータへの変換、データ圧縮、暗号化など、情報を特定の形式の符号(コード)の列に変換する操作を「エンコード」(encoding)という。専用のハードウェアを用いる方式を「ハードウェアエンコード」(hardware encoding)、汎用のハードウェア上でコンピュータプログラムによって処理する方式をソフトウェアエンコードという。
ソフトウェアエンコードは処理速度では劣るが、ソフトウェアを切り替えたり追加することで様々なデータ形式に対応できる。ハードウェアのように製造や運搬にコストが掛からず、容易に提供、入手、導入できる利点もある。性能が高く様々な用途に用いるパソコンなどで一般的な処理方式である。
ソフトウェアエンコーダ (software encoder)
エンコード処理を行うためのコンピュータプログラムを「ソフトウェアエンコーダ」(software encoder)という。主に動画や音声のデータ圧縮を行うために利用されており、アプリケーションソフトに内蔵されているか、ライブラリやプラグイン、アドオンなどの形で個別に提供される。
一つのエンコーダは通常一つの形式に対応するが、単体で複数の形式に対応するものある。オペレーティングシステム(OS)やアプリケーションに追加でエンコーダを導入することで、様々な形式に対応できるようになる。符号化されたデータを逆変換し、元の状態に復号する「ソフトウェアデコーダ」(software decoder)も兼ねているものは「ソフトウェアコーデック」(software codec)という。
(2024.6.23更新)