すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:動画トランスコーディング

最終更新日:Aug 26, 2026

動画トランスコーディングを使用することで、ビデオコーデックの変更、解像度とビットレートの削減、コンテナフォーマットの変換、ビデオパラメーターの調整を行い、さまざまなニーズに対応できます。

機能の説明

動画のトランスコーディングは、圧縮およびエンコードされた動画ストリームを別の動画ストリームに変換するプロセスです。このプロセスでは、動画フォーマット、コンテナフォーマット、解像度、フレームレート、ビットレートなどのパラメーターを変更し、さまざまなデバイスやプラットフォームでの再生に適応させます。また、ファイルサイズを削減して伝送効率を最適化します。

image

利用シーン

  • 複数デバイスの互換性:携帯電話、タブレット、コンピューター、スマートテレビなど、さまざまなデバイスでスムーズな再生を確保するために、動画トランスコーディングを使用して動画をデバイス固有のフォーマットに変換できます。

  • ストリーミングメディアの再生:ストリーミングメディアサービスでは、動画を複数のフォーマットとビットレートにトランスコーディングする必要があります。これにより、ユーザーのネットワーク状況に応じて動的に調整を行い、視聴体験を向上させることができます。

  • 動画の圧縮:動画をトランスコーディングすることで、品質を大幅に損なうことなくファイルサイズを削減できます。これにより、特にネットワーク帯域幅が限られている場合に、効率的なストレージと伝送が容易になります。

使用開始

前提条件

  • Intelligent Media Management (IMM) が有効化されていること。

  • バケットを作成し、処理対象のファイルをバケットにアップロードしていること。

  • IMM プロジェクトを作成してバインドしていること。OSS コンソールでプロジェクトをバインドするか、API を呼び出してバインドできます。IMM プロジェクトはバケットと同じリージョンに存在する必要があります。

  • 操作に必要な権限を持っていること。Alibaba Cloud アカウントには、デフォルトですべての権限があります。RAM ユーザーとロールは、RAM ポリシーまたはバケットポリシーによる権限付与が必要です。

    権限

    • 関連リソースにアクセスするための権限をユーザーに付与します。

      • OSS を使用してデータ処理を行うための権限をユーザーに付与します。

        API

        アクション

        説明

        GetObject

        oss:GetObject

        オブジェクトをダウンロードします。

        oss:GetObjectVersion

        versionId パラメーターを使用して特定のオブジェクトバージョンをダウンロードするには、この権限が必要です。

        kms:Decrypt

        オブジェクトメタデータに X-Oss-Server-Side-Encryption: KMS が含まれている場合に必要です。

        なし

        oss:ProcessImm

        OSS を介して IMM を使用してデータを処理できます。

        PostProcessTask

        oss:PostProcessTask

        非同期処理 (x-oss-async-process) など、POST リクエストを使用したデータ処理機能を利用できます。

      • IMM のメディアトランスコーディング機能を使用するための権限をユーザーに付与します。

        API

        アクション

        説明

        CreateMediaConvertTask

        imm:CreateMediaConvertTask

        IMM を使用してメディアトランスコーディングを実行できます。

    • IMM サービスで使用されるロール (デフォルトでは、リソース ARN acs:ram:*:<account-id>:role/aliyunimmdefaultrole を持つ AliyunIMMDefaultRole) に、データ処理のために、関連リソースにアクセスする権限を付与します。

      API

      アクション

      説明

      なし

      ram:PassRole

      ユーザーがロールを別のサービスに渡すことで、サービス間のリソースアクセスを有効にできます。

      GetObject

      oss:GetObject

      オブジェクトをダウンロードします。

      oss:GetObjectVersion

      versionId パラメーターを使用して特定のオブジェクトバージョンをダウンロードするには、この権限が必要です。

      kms:Decrypt

      オブジェクトメタデータに X-Oss-Server-Side-Encryption: KMS が含まれている場合に必要です。

      HeadObject

      oss:GetObject

      オブジェクトメタデータを取得します。

      PutObject

      oss:PutObject

      オブジェクトをアップロードします。

      oss:PutObject

      バージョニングが有効なバケットにオブジェクトをアップロードするために必要です。

      kms:GenerateDataKey

      KMS のサーバー側の暗号化を使用してオブジェクトをアップロードするには、これらの権限が必要です。

      kms:Decrypt

SDK の使用

メディアトランスコーディングでは、Java、Python、Go 向けの OSS SDK の非同期処理機能を使用します。

Java

OSS SDK for Java 3.17.4 以降が必要です。

import com.aliyun.oss.ClientBuilderConfiguration;
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.common.auth.CredentialsProviderFactory;
import com.aliyun.oss.common.auth.EnvironmentVariableCredentialsProvider;
import com.aliyun.oss.common.comm.SignVersion;
import com.aliyun.oss.model.AsyncProcessObjectRequest;
import com.aliyun.oss.model.AsyncProcessObjectResult;
import com.aliyuncs.exceptions.ClientException;

import java.util.Base64;

public class Demo {
    public static void main(String[] args) throws ClientException {
        // エンドポイントを設定します。たとえば、バケットが China (Hangzhou) リージョンにある場合は、エンドポイントを https://oss-cn-hangzhou.aliyuncs.com に設定します。
        String endpoint = "https://oss-cn-hangzhou.aliyuncs.com";
        // リージョン ID を指定します。例: cn-hangzhou。
        String region = "cn-hangzhou";
        // 環境変数からアクセス認証情報を取得します。サンプルコードを実行する前に、OSS_ACCESS_KEY_ID と OSS_ACCESS_KEY_SECRET の環境変数が設定されていることを確認してください。
        EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider();
        // バケット名を指定します。例: examplebucket。
        String bucketName = "examplebucket";
        // 出力動画ファイルの名前を指定します。
        String targetKey = "dest.avi";
        // ソース動画ファイルの名前を指定します。
        String sourceKey = "src.mp4";

        // OSSClient インスタンスを作成します。
        ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration();
        clientBuilderConfiguration.setSignatureVersion(SignVersion.V4);
        OSS ossClient = OSSClientBuilder.create()
                .endpoint(endpoint)
                .credentialsProvider(credentialsProvider)
                .clientConfiguration(clientBuilderConfiguration)
                .region(region)
                .build();

        try {
            // メディアトランスコーディングパラメーターを含む動画処理スタイル文字列を作成します。
            String style = String.format("video/convert,f_avi,vcodec_h265,s_1920x1080,vb_2000000,fps_30,acodec_aac,ab_100000,sn_1");
            // 非同期処理の指示を作成します。
            String bucketEncoded = Base64.getUrlEncoder().withoutPadding().encodeToString(bucketName.getBytes());
            String targetEncoded = Base64.getUrlEncoder().withoutPadding().encodeToString(targetKey.getBytes());
            String process = String.format("%s|sys/saveas,b_%s,o_%s", style, bucketEncoded, targetEncoded);
            // AsyncProcessObjectRequest オブジェクトを作成します。
            AsyncProcessObjectRequest request = new AsyncProcessObjectRequest(bucketName, sourceKey, process);
            // 非同期処理タスクを開始します。
            AsyncProcessObjectResult response = ossClient.asyncProcessObject(request);
            System.out.println("EventId: " + response.getEventId());
            System.out.println("RequestId: " + response.getRequestId());
            System.out.println("TaskId: " + response.getTaskId());

        } finally {
            // リソースを解放するために OSSClient インスタンスをシャットダウンします。
            ossClient.shutdown();
        }
    }
}

Python

OSS SDK for Python 2.18.4 以降が必要です。

# -*- coding: utf-8 -*-
import base64
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider


def main():
    # エンドポイントを設定します。たとえば、バケットが China (Hangzhou) リージョンにある場合は、エンドポイントを https://oss-cn-hangzhou.aliyuncs.com に設定します。
    endpoint = 'https://oss-cn-hangzhou.aliyuncs.com'
    # 環境変数からアクセス認証情報を取得します。サンプルコードを実行する前に、OSS_ACCESS_KEY_ID と OSS_ACCESS_KEY_SECRET の環境変数が設定されていることを確認してください。
    auth = oss2.ProviderAuthV4(EnvironmentVariableCredentialsProvider())

    # バケット名を指定します。
    bucket_name = 'examplebucket'
    # リージョン ID を指定します。例: cn-hangzhou。
    region = 'cn-hangzhou'
    # Bucket オブジェクトを作成します。
    bucket = oss2.Bucket(auth, endpoint, bucket_name, region=region)

    # ソース動画ファイルの名前を指定します。
    source_key = 'src.mp4'
    # 出力動画ファイルの名前を指定します。
    target_key = 'dest.avi'
    # メディアトランスコーディングパラメーターを含む動画処理スタイル文字列を作成します。
    style = 'video/convert,f_avi,vcodec_h265,s_1920x1080,vb_2000000,fps_30,acodec_aac,ab_100000,sn_1'
    # 非同期処理の指示を作成します。
    process = "{0}|sys/saveas,b_{1},o_{2}".format(style,
                                            oss2.compat.to_string(base64.urlsafe_b64encode(oss2.compat.to_bytes(bucket_name))).replace('=', ''),
                                            oss2.compat.to_string(base64.urlsafe_b64encode(oss2.compat.to_bytes(target_key))).replace('=', ''))

    # 非同期メディア処理 API を呼び出します。
    try:
        # 非同期処理タスクを開始します。
        result = bucket.async_process_object(source_key, process)
        print(f"EventId: {result.event_id}")
        print(f"RequestId: {result.request_id}")
        print(f"TaskId: {result.task_id}")
    except Exception as e:
        print(f"Error: {e}")


if __name__ == "__main__":
    main()

Go

OSS SDK for Go 3.0.2 以降が必要です。

package main

import (
	"encoding/base64"
	"fmt"
	"os"
	"strings"

	"github.com/aliyun/aliyun-oss-go-sdk/oss"
)

func main() {
	// 環境変数からアクセス認証情報を取得します。サンプルコードを実行する前に、OSS_ACCESS_KEY_ID と OSS_ACCESS_KEY_SECRET の環境変数が設定されていることを確認してください。
	provider, err := oss.NewEnvironmentVariableCredentialsProvider()
	if err != nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}
	// OSSClient インスタンスを作成します。
	// エンドポイントを設定します。たとえば、バケットが China (Hangzhou) リージョンにある場合は、エンドポイントを https://oss-cn-hangzhou.aliyuncs.com に設定します。その他のリージョンについては、実際のエンドポイントを指定してください。
	client, err := oss.New("https://oss-cn-hangzhou.aliyuncs.com", "", "", oss.SetCredentialsProvider(&provider), oss.AuthVersion(oss.AuthV4), oss.Region("cn-hangzhou"))
	if err != nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}
	// バケット名を指定します。例: examplebucket。
	bucketName := "examplebucket"
	bucket, err := client.Bucket(bucketName)
	// 出力動画ファイルの名前を指定します。
	targetObject := "dest.avi"
	if err != nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}
	// ソース動画ファイルの名前を指定します。
	sourceObject := "src.mp4"

	// メディアトランスコーディングパラメーターを含む動画処理スタイル文字列を作成します。
	style := "video/convert,f_avi,vcodec_h265,s_1920x1080,vb_2000000,fps_30,acodec_aac,ab_100000,sn_1"
	// 非同期処理の指示を作成します。
	process := fmt.Sprintf("%s|sys/saveas,b_%v,o_%v", style, strings.TrimRight(base64.URLEncoding.EncodeToString([]byte(bucketName)), "="), strings.TrimRight(base64.URLEncoding.EncodeToString([]byte(targetObject)), "="))
	fmt.Printf("%#v\n", process)
	// 非同期処理タスクを開始します。
	rs, err := bucket.AsyncProcessObject(sourceObject, process)
	if err != nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}
	fmt.Printf("EventId:%s\n", rs.EventId)
	fmt.Printf("RequestId:%s\n", rs.RequestId)
	fmt.Printf("TaskId:%s\n", rs.TaskId)
}

パラメーター

操作:video/convert

次の表では、この操作のパラメーターについて説明します。

パラメーター

タイプ

必須

説明

ss

int

No

トランスコーディングの開始時刻をミリ秒単位で指定します。有効な値:

  • 0 (デフォルト):動画の先頭からトランスコーディングを開始します。

  • 0 より大きい値:ss で指定したミリ秒からトランスコーディングを開始します。

t

int

No

トランスコーディングの継続時間をミリ秒単位で指定します。有効な値:

  • 0 (デフォルト):動画の末尾までトランスコードします。

  • 0 より大きい値:t ミリ秒間トランスコードします。

f

string

Yes

メディアコンテナのタイプです。有効な値:

  • オーディオ/ビデオコンテナ:mp4、mkv、mov、asf、avi、mxf、ts、flv、webm

  • オーディオのみのコンテナ:mp3、aac、flac、oga、ac3、opus、amr

vn

int

No

ビデオストリームを無効化するかどうかを指定します。有効な値:

  • 0 (デフォルト):ビデオストリームを保持します。

  • 1 :ビデオストリームを無効化します。出力ファイルにはビデオストリームが含まれません。

vcodec

string

No

ビデオコーデックです。有効な値:

  • copy (デフォルト):再エンコードせずに、ソースのビデオストリームをコピーします。

  • h264 :H.264 コーデックを使用して動画をエンコードします。

  • h265 :H.265 コーデックを使用して動画をエンコードします。

  • vp9 :VP9 コーデックを使用して動画をエンコードします。

fps

float

No

ビデオのフレームレートです。値の範囲は 0~240 です。

fpsopt

int

No

ビデオのフレームレートの適用方法を指定します。有効な値:

  • 0:常にターゲットのフレームレートを使用します。

  • 1:ソースのビデオフレームレートが fps で指定したターゲットのフレームレートより低い場合は、ソースのビデオフレームレートを使用します。

  • 2:ソースのビデオフレームレートが fps で指定したターゲットのフレームレートより低い場合、トランスコーディングは失敗します。

pixfmt

string

No

ピクセルフォーマットです。デフォルトはソース動画のピクセルフォーマットです。有効な値:

  • yuv420p

  • yuva420p

  • yuv420p10le

  • yuv422p

  • yuv422p10le

  • yuv444p

  • yuv444p10le

s

string

No

ターゲットの解像度です。

  • 形式:wxh (幅x高さ)。

  • 幅と高さは、いずれも 2 の倍数で、64~4,096 の範囲内である必要があります。例:4096x4096、64x64。

sopt

int

No

ターゲット解像度の適用方法を指定します。有効な値:

  • 0:常にターゲット解像度を使用します。

  • 1:ソース解像度が s で指定したターゲット解像度より小さい場合は、ソース解像度を使用します。

  • 2:ソース解像度が s で指定したターゲット解像度より小さい場合、トランスコーディングは失敗します。

scaletype

string

No

リサイズモードです。有効な値:

  • crop:指定したサイズを満たすように、アスペクト比を維持して動画をリサイズし、余分な部分を中央から切り取ります。

  • stretch (デフォルト):指定したサイズに合わせて動画を引き伸ばします。アスペクト比が変わる場合があります。

  • fill:指定したサイズに収まるようにアスペクト比を維持して動画をリサイズし、余白を黒帯で埋めます。

  • fit:黒帯を追加せずに、指定したサイズに収まるようアスペクト比を維持して動画をリサイズします。

arotate

int

No

解像度の向きを自動で調整するかどうかを指定します。有効な値:

  • 0 (デフォルト):無効。

  • 1:有効。

g

int

No

キーフレーム間隔です。値の範囲は 1~100,000 です。

vb

int

No

ターゲットのビデオビットレートです。単位はビット/秒 (bps) です。値の範囲は 10,000~100,000,000 です。

vbopt

int

No

ターゲットのビデオビットレートの適用方法を指定します。有効な値:

  • 0:常にターゲットのビデオビットレートを使用します。

  • 1:ソースのビデオビットレートが vb で指定したターゲットのビットレートより低い場合は、ソースのビデオビットレートを使用します。

  • 2:ソースのビデオビットレートが vb で指定したターゲットのビットレートより低い場合、トランスコーディングは失敗します。

crf

float

No

固定レート係数 (CRF) です。値の範囲は 0~51 です。

maxrate

int

No

最大ビットレートです。単位はビット/秒 (bps) です。値の範囲は 10,000~100,000,000 です。

bufsize

int

No

バッファサイズです。単位はビットです。値の範囲は 10,000~200,000,000 です。

an

int

No

オーディオストリームを無効化するかどうかを指定します。有効な値:

  • 0 (デフォルト):オーディオストリームを保持します。

  • 1:オーディオストリームを無効化します。出力ファイルにはオーディオストリームが含まれません。

acodec

string

No

オーディオコーデックです。有効な値:

  • copy (デフォルト):再エンコードせずに、ソースのオーディオストリームをコピーします。

  • mp3:MP3 コーデックを使用して音声をエンコードします。

  • aac:AAC コーデックを使用して音声をエンコードします。

  • flac:FLAC コーデックを使用して音声をエンコードします。

  • vorbis:Vorbis コーデックを使用して音声をエンコードします。

  • ac3:AC3 コーデックを使用して音声をエンコードします。

  • opus:Opus コーデックを使用して音声をエンコードします。

  • amr:AMR コーデックを使用して音声をエンコードします。

ar

int

No

オーディオのサンプリングレートです。有効な値:

  • 8000

  • 11025

  • 12000

  • 16000

  • 22050

  • 24000

  • 32000

  • 44100

  • 48000

  • 88200

  • 96000

ac

int

No

オーディオのチャンネル数です。デフォルトはソースオーディオのチャンネル数です。値の範囲は 1~8 です。

aq

int

No

オーディオの圧縮品質です。ab パラメーターとは同時に指定できません。値の範囲:0~100。

ab

int

No

オーディオのビットレートです。このパラメーターは aq パラメーターと同時に指定できません。単位はビット/秒 (bps) です。値の範囲:1000~10000000。

abopt

int

No

ターゲットのオーディオビットレートの適用方法を指定します。有効な値:

  • 0 (デフォルト):常にターゲットのオーディオビットレートを使用します。

  • 1:ソースのオーディオビットレートが ab で指定したターゲットのビットレートより低い場合は、ソースのオーディオビットレートを使用します。

  • 2:ソースのオーディオビットレートが ab で指定したターゲットのビットレートより低い場合、トランスコーディングは失敗します。

sn

int

No

字幕を無効化するかどうかを指定します。有効な値:

  • 0 (デフォルト):字幕を保持します。

  • 1:字幕を無効化します。出力ファイルには字幕が含まれません。

adepth

int

No

オーディオのサンプリングビット深度です。有効な値は 16 と 24 です。

説明

このパラメーターは、acodec が flac に設定されている場合にのみ有効です。

segment

string

No

メディアセグメンテーションの設定です。デフォルトでは、動画はセグメント化されません。

f

string

No

メディアセグメンテーションのフォーマットです。有効な値:

  • hls

  • dash

親ノード: segment

t

int

No

セグメントの継続時間です。単位はミリ秒です。値の範囲は 0~3,600,000 です。

親ノード: segment

動画トランスコーディングは、sys/saveas (名前を付けて保存) および notify (メッセージ通知) パラメーターもサポートします。

API リファレンス

高度なカスタマイズを行うには、REST API リクエストを直接送信します。 承認ヘッダーの署名を計算する必要があります。 署名 V4 (推奨)。

AVI から MP4 への変換

ジョブ設定

  • ソースオブジェクト

    • 動画フォーマット: AVI

    • 動画名: example.avi

  • 処理方法: 動画トランスコーディング

  • 送信先オブジェクト

    • 動画情報

      • 動画フォーマット: MP4

      • 動画名: outobjprefix.mp4

      • ビデオストリームフォーマット: H.265

      • 動画の解像度: 1920x1080

      • 動画のフレームレート: 30 fps

      • 動画のビットレート: 2 Mbps

    • 音声情報

      • オーディオストリームフォーマット: AAC

      • オーディオビットレート: 100 Kbps

      • 字幕ストリーム: 無効

    • 出力パス: oss://outbucket/outobjprefix.mp4

サンプルリクエスト

POST /example.avi?x-oss-async-process HTTP/1.1
Host: video-demo.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 28 Oct 2022 06:40:10 GMT
Authorization: SignatureValue
 
// example.avi オブジェクトをトランスコードします。 出力は、H.265 ビデオストリーム (1920x1080, 30 fps, 2 Mbps) と AAC オーディオストリーム (100 Kbps) を含む MP4 ファイルです。 字幕は無効になります。 出力は oss://outbucket/outobjprefix.mp4 に保存されます。
x-oss-async-process=video/convert,f_mp4,vcodec_h265,s_1920x1080,vb_2000000,fps_30,acodec_aac,ab_100000,sn_1|sys/saveas,b_b3V0YnVja2V0,o_b3V0b2JqcHJlZml4LnthdXRvZXh0fQ

AVI から TS への変換

ジョブ設定

  • ソースオブジェクト

    • 動画フォーマット: AVI

    • 動画名: example.avi

  • 処理方法

    • トランスコード時間: 入力ファイルの10,000ミリ秒時点から開始し、60,000ミリ秒間のセグメントをトランスコードします。

    • セグメントメソッド: 30 秒の HLS セグメントを作成します。

    • トランスコーディング完了通知: MNS メッセージを送信します。

  • 送信先オブジェクト

    • 動画情報

      • 動画フォーマット: TS

      • ビデオストリームフォーマット: H.264

      • 動画のビットレート: 1 Mbps

    • 音声情報

      • オーディオストリームフォーマット: MP3

      • オーディオビットレート: 100 Kbps

    • 出力パス

      • TS オブジェクト: oss://outbucket/outobjprefix-%d.ts

      • M3U8 オブジェクト: oss://outbucket/outobjprefix.m3u8

サンプルリクエスト

POST /example.avi?x-oss-async-process HTTP/1.1
Host: video-demo.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 28 Oct 2022 06:40:10 GMT
Authorization: SignatureValue
 
// example.avi オブジェクトをトランスコードします。
x-oss-async-process=video/convert,ss_10000,t_60000,f_ts,vcodec_h264,vb_1000000,acodec_mp3,ab_100000/segment,f_hls,t_30000|sys/saveas,b_b3V0YnVja2V0,o_b3V0b2JqcHJlZml4LnthdXRvZXh0fQ/notify,topic_QXVkaW9Db252ZXJ0

AVI から MP3 への変換

ジョブ設定

  • ソースオブジェクト

    • 動画名: example.avi

    • 動画フォーマット: AVI

  • 処理方法: オーディオストリームを抽出してトランスコードします。

  • 送信先オブジェクト

    • オーディオコンテナ: MP3

    • 音声符号化形式: MP3

    • オーディオビットレート: 100 Kbps

    • ビデオストリーム: 無効

    • 字幕ストリーム: 無効

    • 出力パス: oss://outbucket/outobjprefix.mp3。 ソース動画に複数のオーディオストリームがある場合、デフォルトでは最初のストリームのみが処理されます。

サンプルリクエスト

POST /example.avi?x-oss-async-process HTTP/1.1
Host: video-demo.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 28 Oct 2022 06:40:10 GMT
Authorization: SignatureValue
 
// example.avi オブジェクトからオーディオストリームを抽出してトランスコードします。
x-oss-async-process=video/convert,f_mp3,acodec_mp3,ab_100000,vn_1,sn_1|sys/saveas,b_b3V0YnVja2V0,o_b3V0b2JqcHJlZml4LnthdXRvZXh0fQ

課金

動画トランスコーディングでは、OSS と IMM の両方で課金項目が発生します。

  • OSS: OSS 製品価格。

    API

    課金項目

    説明

    GetObject

    GET リクエスト

    リクエスト料金は、成功したリクエストの数に基づいて計算されます。

    インターネットアウトバウンドトラフィック

    パブリックエンドポイント (例: oss-cn-hangzhou.aliyuncs.com) または転送アクセラレーションエンドポイント (例: oss-accelerate.aliyuncs.com) を使用して GetObject API を呼び出すと、転送されたデータ量に基づいてインターネットアウトバウンドトラフィック料金が課金されます。

    低頻度アクセスデータ取得

    取得したデータが低頻度アクセスストレージクラスにある場合、取得したデータ量に基づいて低頻度アクセスデータ取得料金が課金されます。

    Archive-Direct Read データ取得

    Archive-Direct Read が有効になっているバケットからアーカイブオブジェクトを読み取ると、取得したデータ量に基づいて Archive-Direct Read データ取得料金が課金されます。

    転送アクセラレーション

    転送アクセラレーションが有効になっており、転送アクセラレーションエンドポイントを使用してバケットにアクセスする場合、転送されたデータ量に基づいて転送アクセラレーション料金が課金されます。

    PutObject

    PUT リクエスト

    リクエスト料金は、成功したリクエストの数に基づいて計算されます。

    ストレージ料金

    ストレージ料金は、オブジェクトのストレージクラス、サイズ、保存期間に基づいて計算されます。

    HeadObject

    HEAD リクエスト

    リクエスト料金は、成功したリクエストの数に基づいて計算されます。

  • IMM: IMM の課金項目。

    API

    課金項目

    説明

    CreateMediaConvertTask

    VideoCompress264LD

    H.264-LD トランスコーディングの料金です。メディア処理料金は、動画の再生時間 (秒) に基づいて計算されます。

    VideoCompress264SD

    H.264-SD トランスコーディングの料金です。メディア処理料金は、動画の再生時間 (秒) に基づいて計算されます。

    VideoCompress264HD

    H.264-HD トランスコーディングの料金です。メディア処理料金は、動画の再生時間 (秒) に基づいて計算されます。

    VideoCompress2642K

    H.264-2K トランスコーディングの料金です。メディア処理料金は、動画の再生時間 (秒) に基づいて計算されます。

    VideoCompress2644K

    H.264-4K トランスコーディングの料金です。メディア処理料金は、動画の再生時間 (秒) に基づいて計算されます。

    VideoCompress265LD

    H.265-LD トランスコーディングの料金です。メディア処理料金は、動画の再生時間 (秒) に基づいて計算されます。

    VideoCompress265SD

    H.265-SD トランスコーディングの料金です。メディア処理料金は、動画の再生時間 (秒) に基づいて計算されます。

    VideoCompress265HD

    H.265-HD トランスコーディングの料金です。メディア処理料金は、動画の再生時間 (秒) に基づいて計算されます。

    VideoCompress2652K

    H.265-2K トランスコーディングの料金です。メディア処理料金は、動画の再生時間 (秒) に基づいて計算されます。

    VideoCompress2654K

    H.265-4K トランスコーディングの料金です。メディア処理料金は、動画の再生時間 (秒) に基づいて計算されます。

    AudioCompress

    オーディオトランスコーディングの料金です。

制限

  • 動画トランスコーディングは、非同期処理 (x-oss-async-process) に限定されます。

  • 匿名アクセスはサポートされていません。

  • サポートされている動画フォーマットは次のとおりです: MP4、MPEG-TS、MKV、MOV、AVI、FLV、M3U8、WebM、WMV、RM、VOB。

よくある質問

動画トランスコーディング中の「ResourceNotFound」エラー

ResourceNotFound, The specified resource Attachment is not found. エラーは、IMM プロジェクトにバケットがバインドされていないことを示します。バケットを IMM プロジェクトにバインドして解決します。OSS データ処理利用ガイド。

出力のソースパスへの保存

いいえ。入力パスを出力パスのプレフィックスにすることはできません。これは、トリガーループやソースオブジェクトの上書きといった、予期しない動作を防ぐためです。

オーディオビット深度の設定

はい。 OSS の x-oss-process リクエストで pixfmt パラメーターを使用します。

タスク ID を使用したタスク結果の取得

IMM の GetTask API を使用してタスク結果を取得します。

サフィックスによるオブジェクトの検索と削除

いいえ。OSS は順序不同のストレージを使用しているため、サフィックスによるオブジェクトの検索はサポートしていません。

バックエンドでメッセージを受信できない場合

トピックとサブスクリプションが存在することを確認してください。存在しない、または削除された場合は、サブスクリプションを再設定し、トランスコーディングを再開してください。

自動トランスコーディングでのテンプレートの使用

はい。トリガーを設定することで、バケット内の新規および既存の動画を自動的に処理できます。タスク、バッチ処理、トリガーは、システム定義テンプレートとカスタムテンプレートの両方に対応しています。詳細については、バッチ処理およびトリガーをご参照ください。

トランスコードされた動画の料金

はい。トランスコードされた動画はストレージ領域を占有するため、料金が発生します。

Saving output to the source path

Do not set the output path to be the same as the source path, as this will overwrite the source object.