tencent cloud

ドキュメントMedia Processing Service導入ガイド音声・動画トランスコードの導入

音声・動画トランスコードの導入

PDF
フォーカスモード
フォントサイズ
最終更新日: 2025-11-05 14:18:59

一、音声・動画トランスコード機能の概要

概要

音声・動画トランスコードとは、元の音声・動画ストリームを別の音声・動画ストリームに変換するオフラインタスクです。トランスコードを通じて、元のストリームのエンコード形式、解像度、ビットレートなどのパラメータを変更し、様々な端末やネットワーク環境での再生に適応させることができます。各トランスコードタイプの概要は以下の表をご参照ください。
対応する入力ソース
トランスコードタイプ
説明


ビデオ
標準ビデオトランスコード
ビデオのビットレートを削減し、元のストリームのエンコーディング規格、解像度、フレームレートなどのパラメータを変更することで、様々な端末やネットワーク環境での再生に適応させることができます。
TSCトランスコード
TSCトランスコードは、標準ビデオトランスコードを強化した機能です。様々なタイプのビデオに対して適応的な最適化処理を行い、より低い帯域幅で、より高画質な視聴体験をユーザーに提供します。画質を保証、あるいは向上させながら、帯域コストを50%以上削減します。
ビデオのアダプティブビットレートストリーミング
入力されたソースビデオファイルを、様々な再生シナリオに適した複数のストリームに変換します。これにより、ユーザーはネットワーク状況に応じて適切なビットレートのビデオを選択でき、視聴体験が向上します。
再多重化
ソースビデオファイルのコンテナフォーマットを変更できます。
オーディオ
標準音声トランスコード
オーディオのビットレートを削減し、エンコーディング規格、サンプリングレート、チャンネルなどのパラメータを変更することで、様々な端末やネットワーク環境での再生に適応させることができます。
TSC音声トランスコード
TSC音声トランスコードは、標準音声トランスコードを強化した機能です。様々なタイプのオーディオに対して適応的な最適化処理を行い、より低い帯域幅で、より高品質な音響体験をユーザーに提供します。
オーディオのアダプティブビットレートストリーミング
入力されたソースオーディオファイルを、様々な再生シナリオに適した複数のストリームに変換します。これにより、異なるネットワーク条件に適応し、ユーザー体験が向上します。

技術の強み

Tencent Cloud Media Processing Service(MPS)は、業界で最も包括的な音声・動画エンコーディング規格による圧縮をサポートしています。TSCトランスコード、アダプティブビットレートストリーミング、再多重化、音声トランスコードなど多様な方式を提供し、分散トランスコードは最大30倍速以上をサポート。再生時の帯域幅とコストの削減を支援します。
包括的なエンコード方式で、ビットレートを50%以上削減
包括的なエンコード方式(VP8、H.264、VP9、H.265、AV1、AVS3、H.266など)を提供し、元の画質を損なうことなくビットレートを大幅に削減し、再生帯域幅とストレージコストを節約します。
より優れた画質、高精細な視界
TSCトランスコードは、スマート動的エンコード技術を採用し、ビットレートを削減すると同時に、より高画質な映像効果を実現します。オープンソースのエンコーダーと比較して、VMAF値は3〜5ポイント向上します。最大8Kの高解像度ビデオのリアルタイムエンコーディングをサポートし、超解像、HDR、広色域化などの技術を融合。さらに、国内で初めてDolby Vision/Dolby Atmosをサポートし、極めてクリアな視聴体験を提供します。

説明:
体験ラボを開くと、音声・動画トランスコード機能の効果をすぐに体験できます。

音声・動画トランスコード機能の利用方法

(1)ご利用前の注意事項

音声・動画トランスコード機能を利用する前に、以下の準備を完了する必要があります:Tencent Cloudアカウントの登録/ログインCOSストレージサービスの有効化と権限付与。具体的な操作ガイドについてはクイックスタートをご参照ください。アカウントの権限付与に関する問題はアカウントの権限付与ドキュメントをご参照ください。

(2)音声・動画トランスコードタスクの作成

MPSでは、コンソールでのクイックタスク作成、APIによるタスク開始、タスクの自動実行の3つのタスク開始方法を提供しています。以下のフローチャートは、各方法の共通の操作フローを示しています。音声・動画トランスコードタスクの具体的な設定方法については、下記の音声・動画トランスコードタスクの作成の詳細説明をご参照ください。


二、音声・動画トランスコードタスクの作成

方法1. コンソールからノーコードでタスクを開始

1. MPSコンソールに移動し、タスク作成 > オンデマンド処理タスクをクイック作成を順にクリックします。

2. まず、入力ビデオファイルを指定します。COSまたはAWS S3のバケットから音声・動画ファイルを選択するか、ファイルのダウンロードURLを指定できます。
3. 次に、「入力ファイルの処理」ステップで、音声・動画トランスコードノードを追加します。

4. ポップアップした設定ドロワーで、必要な音声・動画トランスコードテンプレートを選択するか、トランスコードパラメータをカスタマイズします。詳細なテンプレートパラメータ設定については音声・動画トランスコードテンプレートをご参照ください。

5. 最後に、出力ビデオの保存パスを指定した後、作成をクリックしてタスクを開始します。


方法2. APIによるタスク開始

方法1:ProcessMedia APIを呼び出し、テンプレートIDを指定してタスクを開始します。例:
{
"InputInfo": {
"Type": "URL",
"UrlInputInfo": {
"Url": "https://test-1234567.cos.ap-guangzhou.myqcloud.com/video/test.mp4"// 処理したいビデオのURLに置き換えてください
}
},
"OutputStorage": {
"Type": "cos",
"CosOutputStorage": {
"Bucket": "test-1234567",
"Region": "ap-guangzhou"
}
},
"MediaProcessTask": {
"TranscodeTaskSet": [
{
"Definition": 100800, //100800はプリセットのビデオトランスコードテンプレートIDです。ご自身のカスタム音声・動画トランスコードテンプレートIDに置き換え可能です
}
]
}
}
方法2:ProcessMedia APIを呼び出し、ワークフローIDを指定してタスクを開始します(ワークフローの作成については、下記の自動実行部分、またはオンデマンドワークフロードキュメントを参照)。例:
{
"InputInfo": {
"Type": "COS",
"CosInputInfo": {
"Bucket": "test-1234567",
"Region": "ap-guangzhou",
"Object": "/video/123.mp4"
}
},
"OutputStorage": {
"Type": "cos",
"CosOutputStorage": {
"Bucket": "test-1234567",
"Region": "ap-guangzhou"
}
},
"ScheduleId": 12345 //カスタムワークフローIDに置き換えてください。12345は単なる例であり、実際の意味はありません
}
推奨:API Explorerによるクイックデバッグと検証
MPSのAPI Explorerオンラインデバッグページに移動し、左側のAPIリストからメディア処理を選択します。下の図を参考に、入力パス、出力パス、テンプレートID、ワークフローIDなどのパラメータを記入すると、APIをオンラインで呼び出すことができます。


付録:トランスコード関連APIの拡張パラメータ

一部の高度な機能は、コンソールのトランスコードテンプレート作成ページでは設定が公開されていません。APIを使用してトランスコードテンプレートを作成し、StdExtInfoで拡張パラメータを渡すことができます。

オーディオストリームへの無音パケットの補完

パラメータ名
要件
タイプ
備考
enable_mute _audio
任意
Int
有効にすると、無音パケットを補完します。デフォルトは0。
0:無効。
1:オーディオフレームが不連続な場合に無音パケットを補完します。
2:1に加え、末尾にオーディオが存在しない場合にも無音パケットを補完します。
JSON例:
"StdExtInfo" : "{\\"audio_info\\":{\\"enable_mute_audio\\":1}}"

トランスコード出力ファイルの保存方法

コンソールでは、COS、AWS S3を出力パスとして設定できます。拡張パラメータを使用すれば、トランスコード出力ファイルを他のサードパーティのクラウドストレージにアップロードすることも可能です。
パラメータ名
要件
タイプ
備考
appid
任意
String
クラウドアカウントID。
bucket
必須
String
バケット名。
リージョン
必須
String
バケットのリージョン名。
headers
任意
JSON 構造
JSON構造。ファイルアップロード時に付与されるヘッダー。例:
「headers」: {
“agent” : “tencent”,
“used” : “for-test”
}
token
任意
String
一時的なトークンを使用してアップロードとダウンロードを行います。
id
任意
String
ユーザーSecretID。
key
任意
String
ユーザーSecretKey。
host
任意
String
host
access_point
任意
string
aws_vpcタイプの場合は必須。
storage_type
任意
String
"aws_s3":AWS S3。
"aws_vpc":AWS Private Cloud。
「oss」:Alibaba Cloud OSS。
JSON例は以下の通りです:
"StdExtInfo" : "{\\"cos_info\\":{\\"storage_type\\":\\"oss\\",\\"bucket\\":\\"test-test\\",\\"region\\":\\"cn-shenzhen\\",\\"id\\":\\"abcdefghijk\\",\\"key\\":\\"lmnopqrstuvwxyz\\"}}"

方法3. COSへのファイルアップロード後にMPSタスクを自動実行

COSバケットにビデオファイルをアップロードした際に、プリセットのパラメータに従って自動的に音声・動画トランスコード処理を実行させたい場合は、以下の手順で設定できます。
1. タスク作成時にこのワークフローを保存をクリックし、ポップアップウィンドウでトリガーとなるBucketやディレクトリなどのパラメータを設定します。

2. 次にオンデマンドワークフローリストに移動し、作成したワークフローを見つけ、起動のスイッチをオンにします。以降、トリガーディレクトリに新しいビデオファイルが追加されると、このワークフローでプリセットされたフローとパラメータに従って自動的にタスクが開始され、処理後のビデオファイルが設定された出力パスに保存されます。
注意:
ワークフローを有効にした後、設定が反映されるまで3~5分かかります。


三、タスク結果の照会

1. タスクコールバック

ProcessMediaからメディア処理タスクを開始する際、TaskNotifyConfigパラメータでコールバック情報を設定できます。タスク処理が完了すると、設定されたコールバック情報を通じてタスク結果が通知されます。ParseNotificationからイベント通知結果を解析できます。

2. タスク結果の照会

方法1:DescribeTaskDetailインターフェースを呼び出してタスク結果を照会する

ProcessMediaが返したTaskId(例:24000022-WorkflowTask-b20a8exxxxxxx1tt110253)を入力し、タスク結果を照会します。


方法2:コンソールでタスク結果を照会する

1. コンソールのオンデマンドタスク管理に移動すると、タスクリストに開始したばかりのタスクが表示されます。

2. サブタスクのステータスが「成功」になったら、COS Bucket > 出力Bucketに移動し、出力場所を見つけると、音声・動画トランスコードの出力ファイルをプレビュー、ダウンロードなどの操作ができます。


四、その他のトランスコード関連機能の説明

透かしの追加

トランスコードタスク作成時、透かしの追加をサポートしています。
コンソールでトランスコードタスクを開始する際、以下の手順で透かしを追加できます。

APIでタスクを開始する際、以下の例を参考にタスクを開始できます。
{
"InputInfo": {
"Type": "URL",
"UrlInputInfo": {
"Url": "https://test-1234567.cos.ap-guangzhou.myqcloud.com/video/test.mp4" // 処理したいビデオのURLに置き換えてください
}
},
"OutputStorage": {
"Type": "cos",
"CosOutputStorage": {
"Bucket": "test-1234567",
"Region": "ap-guangzhou"
}
},
"MediaProcessTask": {
"TranscodeTaskSet": [
{
"Definition": 100800, //100800はプリセットのビデオトランスコードテンプレートIDです。ご自身のカスタム音声・動画トランスコードテンプレートIDに置き換え可能です
"WatermarkSet": [
{
"Definition": 12345//透かしテンプレートIDに置き換えてください。12345は単なる例であり、実際の意味はありません
}
]
}
]
}
}

トランスコードは字幕の焼き込み(ハードサブ)をサポート

注意:
字幕焼き込み機能を使用すると、トランスコード料金が発生します。料金の完全な説明については、音声・動画トランスコードの課金ドキュメントをご確認ください。

方法1:コンソールで字幕焼き込みタスクを開始

トランスコードタスク作成時、字幕をハードサブとしてビデオ画面に焼き込むことをサポートしています。以下の2つの方法で字幕ソースを選択できます。
字幕ファイル:COSに保存されている字幕ファイルを選択するか、字幕ファイルのURLアドレスを直接入力することができます。対応形式:SRT、WebVTT、ASS、SSA、PGS、SUP。

ソースビデオの字幕トラック:ソースビデオ内の字幕トラックを指定(1~100の正の整数)し、ビデオ画面に焼き込むことができます。

焼き込み前に、字幕の表示スタイルをカスタマイズできます。
デフォルトスタイル:ユーザーの字幕ファイルが持つスタイルを使用します。スタイルがない場合は、MPSのデフォルトスタイルが適用されます。
プリセットスタイル:背景なし・小、背景なし・大、背景あり・小、背景あり・大の4種類のプリセットオプションを提供します。対応するプレビュー画像をクリックすると、詳細なパラメータ設定を確認でき、必要に応じて調整も可能です。
カスタムスタイル:カスタム設定画面に移動し、すべての字幕スタイルパラメータを柔軟に調整できます。

注意:
字幕スタイルをカスタマイズする際、ポップアップウィンドウ右側の字幕スタイルエリアで手動入力・調整が可能です。また、左側のプレビューエリアで字幕や字幕背景の位置・サイズをドラッグして調整することもでき、複数行の字幕のプレビューもサポートしています。
字幕や字幕背景の位置・サイズをドラッグして調整:

Enterキーで複数行の字幕を編集:

期待通りの効果が得られるよう、字幕スタイルをカスタマイズする際は、プレビューエリアの表示効果を参考してください。カスタムスタイルパラメータの詳細は以下の表の通りです。
基本パラメータ
ソースビデオのサイズ
プリセットのサイズを選択するか、カスタムで入力できます。カスタム入力時の範囲は[0, 4096]です。
注意:選択または入力する際は、ソースビデオのサイズと一致させてください。設定が誤っていると、字幕のレンダリングに異常が生じ、最終的な効果に影響する可能性があります。
フォント
システムのプリセットフォントを選択できます。
フォントサイズ
px単位でフォントサイズを設定できます。範囲は[1, 4096]で、正の整数を入力してください。
字幕スタイル設定エリアで手動入力するか、左側のビデオエリアで字幕を選択してドラッグし、拡大・縮小できます。
文字色
フォントの色と透明度を設定できます。RGBAおよびHSLAでAの値を指定すると透明度が設定でき、値の範囲は0~1です(0は完全透明、1は完全不透明)。
字幕の位置
pxと%の2つの単位で字幕の位置を設定できます。字幕スタイル設定エリアで手動入力するか、左側のビデオエリアで字幕を選択してドラッグ調整できます。
注意:字幕や背景の位置を調整する際は、必ず画面の可視領域内に完全に収めてください。境界外に出ると、期待通りの効果が得られない場合があります。
字幕の背景
背景色
字幕の背景色と透明度を設定できます。RGBAおよびHSLAでAの値を指定すると透明度が設定でき、値の範囲は0~1です(0は完全透明、1は完全不透明)。
字幕背景の高さ
px単位で字幕背景の高さ/幅を設定できます。入力する際は、ソースビデオの高さ/幅を超えないように注意してください。
字幕スタイル設定エリアで手動入力するか、左側のビデオエリアで字幕を選択してドラッグし、拡大・縮小できます。
字幕背景の幅
背景の位置
pxと%の2つの単位で字幕背景の位置を設定できます。字幕スタイル設定エリアで手動入力するか、左側のビデオエリアで字幕背景を選択してドラッグ調整できます。
注意:字幕や背景の位置を調整する際は、必ず画面の可視領域内に完全に収めてください。境界外に出ると、期待通りの効果が得られない場合があります。
配置
行間隔
px単位で行間隔を設定できます。範囲は[0, 1000]です。
文字の配置
上揃えと下揃えの2つの方法をサポートしています。
上揃え:単一行の字幕が複数行字幕の最初の行に揃えられます。つまり、字幕の上辺の位置が固定され、下辺は行数に応じて変動します。
下揃え:単一行の字幕が複数行字幕の最後の行に揃えられます。字幕の下辺の位置が固定され、上辺は行数に応じて変動します。
文字縁取り
文字縁取りの色と透明度を設定できます。RGBAおよびHSLAでAの値を指定すると透明度が設定でき、値の範囲は0~1です(0は完全透明、1は完全不透明)。
太さ
px単位で文字の縁取りの太さを設定できます。範囲は[0, 1000]です。
文字の影
文字の影の色と透明度を設定できます。RGBAおよびHSLAでAの値を指定すると透明度が設定でき、値の範囲は0~1です(0は完全透明、1は完全不透明)。
影の幅
px単位で影の幅を設定できます。範囲は[0, 1000]です。

方法2:APIを呼び出して字幕焼き込みタスクを開始

ProcessMedia APIを呼び出してトランスコードタスクを開始する際に、SubtitleTemplateフィールドで字幕ファイルを指定できます。
ProcessMediaのJSONの例:
{
"MediaProcessTask": {
"TranscodeTaskSet": [
{
"Definition": 100040, //トランスコードテンプレートID。必要なテンプレートIDに置き換えてください
"OverrideParameter": { //パラメータの上書き。トランスコードテンプレート内の一部パラメータを柔軟に上書きできます
"SubtitleTemplate": { //字幕焼き込み設定
"Path": "https://test-1234567.cos.ap-nanjing.myqcloud.com/mps_autotest/subtitle/1.vtt", //字幕ファイルのパス
"StreamIndex": 2,
"FontType": "simkai.ttf",
"FontSize": "10px",
"FontColor": "0xFFFFFF",
"FontAlpha": 0.9
}
}
}
]
},
"InputInfo": { //入力ビデオ情報
"Type": "URL",
"UrlInputInfo": {
"Url": "https://test-1234567.cos.ap-nanjing.myqcloud.com/mps_autotest/subtitle/123.mkv"
}
},
"OutputStorage": { //出力バケット
"Type": "COS",
"CosOutputStorage": {
"Bucket": "test-1234567",
"Region": "ap-nanjing"
}
},
"OutputDir": "/mps_autotest/output2/", //出力パス
"Action": "ProcessMedia",
"Version": "2019-06-12"
}

音声・動画エンハンスメント

トランスコード時に、音声・動画エンハンスメント機能を使用するかどうかを選択できます。詳細な導入ガイドは音声・動画エンハンスメント導入チュートリアルをご参照ください。
APIを使用する場合、トランスコードテンプレートを作成する際にEnhanceConfigパラメータを設定してエンハンスメント機能を有効にできます。

JSON例は以下の通りです:
{
"Container": "mp4",
"Name": "test",
"VideoTemplate": { //ビデオトランスコードのパラメータ設定
"Codec": "h264",
"Fps": 50,
"Bitrate": 5000,
"Width": 0,
"Height": 0,
"Gop": 0
},
"AudioTemplate": { //音声トランスコードのパラメータ設定
"Codec": "aac",
"Bitrate": 60
},
"EnhanceConfig": { //エンハンスメントのパラメータ設定
"VideoEnhance": { //映像エンハンスメントの設定
"FrameRate": { //フレーム補間
"Switch": "ON",
"Fps": 50
},
"SuperResolution": { //超解像
"Switch": "ON",
"Type": "lq"
}
},
"AudioEnhance": { //音声エンハンスメントの設定
"Denoise": { //音声ノイズリダクション
"Switch": "ON"
}
}
}
}

オンデマンド処理ソリューション

高品質なトランスコード機能を提供すると同時に、 Tencent RTCは「品質検査+トランスコード&エンハンスメント」というオンデマンド処理ソリューションも提供しています。コスト最適化を目的とするシナリオでは、トランスコード処理の前に、ビデオソースに対して一度品質検査を行うことができます。その結果に基づき、目的に合ったトランスコードテンプレートを選択します。メディア品質検査の導入詳細はメディア品質検査の導入ドキュメントをご参照ください。

よくあるご質問

より高い圧縮率を得るには?

ビットレートやCRFといった通常のエンコードパラメータ設定に加え、TSCトランスコードのエクストリーム圧縮テンプレート(各種シナリオのプリセットテンプレートを含む)のご利用を推奨します。より高い圧縮率と、より優れた画質を体験できます。

画質を最高レベルに引き上げるには?

さらなる画質向上を求める場合は、音声・動画エンハンスメント機能のご利用を推奨します。画質を大幅に向上させ、総合画質改善、顔補正、アーティファクト除去、色彩補正、超解像、スマートフレーム補間、大規模モデルによる画質改善など、多様な機能をサポートしています。詳細な導入ガイドは音声・動画エンハンスメント導入チュートリアルをご参照ください。

他のプラットフォームのCOSを、トランスコード出力ファイルの保存パスとしてサポートしていますか?

はい、サポートしています。StdExtInfo拡張パラメータで他のプラットフォームのCOSのパスを設定できます。詳細は上記の付録:トランスコード関連APIの拡張パラメータをご参照ください。

外部字幕はサポートしていますか?

ビデオのアダプティブビットレートストリーミングを使用する際、AddOnSubtitlesフィールドで外部字幕ファイルを指定し、字幕付きのマルチビットレートHLSを生成できます。
文字化けのリスクを避けるため、現在サポートしているのはUTF-8エンコーディングの字幕ファイルのみです。対応フォーマット:SRT、WebVTT、ASS、SSA。
ProcessMediaのJSONの例:
{
"InputInfo": { //入力ビデオ情報
"Type": "COS",
"CosInputInfo": {
"Bucket": "test-1234567",
"Region": "ap-guangzhou",
"Object": "/test/subtitleinput/test.mp4"
}
},
"OutputStorage": { //出力バケット
"Type": "COS",
"CosOutputStorage": {
"Bucket": "cg-1308104797",
"Region": "ap-guangzhou"
}
},
"OutputDir": "/yunaMPStest/abroutput/", ////出力パス
"MediaProcessTask": {
"AdaptiveDynamicStreamingTaskSet": [ //アダプティブビットレートストリーミングのタスク設定
{
"Definition": 1414064, //アダプティブビットレートテンプレートID
"AddOnSubtitles": [ //外部字幕の設定
{
"Type": "subtitle-stream",
"Subtitle": {
"Type": "COS",
"CosInputInfo": {
"Bucket": "test-1234567",
"Region": "ap-guangzhou",
"Object": "/test/subtitleinput/chs.srt"
}
},
"SubtitleName": "chs"
},
{
"Type": "subtitle-stream",
"Subtitle": {
"Type": "COS",
"CosInputInfo": {
"Bucket": "test-1234567",
"Region": "ap-guangzhou",
"Object": "/test/subtitleinput/cht.srt"
}
},
"SubtitleName": "cht"
},
{
"Type": "subtitle-stream",
"Subtitle": {
"Type": "COS",
"CosInputInfo": {
"Bucket": "test-1234567",
"Region": "ap-guangzhou",
"Object": "/test/subtitleinput/eng.srt"
}
},
"SubtitleName": "eng"
}
]
}
]
}
}

マルチオーディオトラックを含む入力ビデオから、HLSで個別のオーディオストリームを生成し、再生時に音声を切り替えられるようにするには?

シナリオ:
元のビデオに複数のオーディオトラック(例:二ヶ国語音声など)が含まれているが、プレイヤー側でトラックの切り替えができない場合、以下の設定で実現できます。
ソリューション:
ビデオのアダプティブビットレートストリーミングテンプレートを作成し、出力形式としてHLSを選択する際に、「セグメント形式」設定項目で「TS+Packed Audio」または「MP4+Packed Audio」モードを有効にします。これにより、それぞれビデオTSファイル+独立したRAWオーディオファイル、またはビデオMP4ファイル+独立したRAWオーディオファイルが出力され、再生クライアント側で異なるオーディオトラックの切り替えが可能になります。
ビデオのアダプティブビットレートストリーミングテンプレート設定:

出力ファイルリスト:

プレイヤーでの異なるオーディオトラックの切り替え:


倍速トランスコードとは何ですか?サポートしていますか?

倍速トランスコードとは、ビデオを分割して並行でトランスコード処理を行うことで、特に中・長尺ビデオのトランスコード速度を大幅に向上させる技術です。MPSは倍速トランスコード機能をサポートしており、最大で30倍速以上が可能です。この機能のご利用を希望される場合は、お問い合わせください。

課金に関する説明

Tencent Cloud Media Processing Service(MPS)音声・動画トランスコードサービスは、出力ファイルの再生時間に基づく課金モデルを採用しており、標準トランスコード、再多重化、TSCトランスコード、純音声トランスコード、オフピーク時間帯トランスコードなど、多様な処理タイプをサポートしています。各タイプの課金ルールの完全な説明については、音声・動画トランスコードの課金ドキュメントをご参照ください。

ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック