SDK 名 | VOD の iOS アップロード SDK |
バージョン番号 | V1.1.23.0 |
SDK 介绍 | App のエンドユーザー向けにローカルビデオを VOD プラットフォームにアップロードするシナリオを提供 |
開発者 | Tencent Cloud Computing (Beijing) Co., Ltd. |
DK をダウンロード | 1. をクリックして iOS アップロード Demo とソースコードをダウンロードします。ダウンロードされた圧縮ファイルを解凍すると、Demo ディレクトリが表示されます。 2. ソースコードは Demo/app/src/main/java/com/tencent/ugcupload/demo/videoupload ディレクトリにアップロードされます。 |
TXUGCUploadDemo/upload
をプロジェクトディレクトリにコピーします。pod 'QCloudQuic','6.3.7'pod 'QCloudCOSXML/Slim','6.4.4'// プロジェクトがすでにこの依存関係を持っている場合、追加する必要がありませんpod 'AFNetworking','4.0.1'
-ObjC
を追加します。TXUGCPublish *_videoPublish = [[TXUGCPublish alloc] initWithUserID:@"upload_video_userid"];
_videoPublish.delegate = self;
#pragma mark - TXVideoPublishListener- (void)onPublishProgress:(NSInteger)uploadBytes totalBytes:(NSInteger)totalBytes {self.progressView.progress = (float)uploadBytes/totalBytes;NSLog(@"onPublishProgress [%ld/%ld]", uploadBytes, totalBytes);}- (void)onPublishComplete:(TXPublishResult*)result {NSString *string = [NSString stringWithFormat:@"アップロード完了、エラーコード[%d],メッセージ[%@]", result.retCode, result.retCode == 0? result.videoURL: result.descMsg];[self showErrorMessage:string];NSLog(@"onPublishComplete [%d/%@]", result.retCode, result.retCode == 0? result.videoURL: result.descMsg);}
TXPublishParam *publishParam = [[TXPublishParam alloc] init];publishParam.signature = @"業務バックエンドで生成された署名";publishParam.videoPath = @"ビデオファイルパス";
[_videoPublish publishVideo:publishParam];
TXPublishParam *publishParam = [[TXPublishParam alloc] init];publishParam.signature = @"業務バックエンドで生成された署名";publishParam.coverPath = @"カバー画像ファイルパス";publishParam.videoPath = @"ビデオファイルパス";
canclePublish
インターフェースを呼び出します。[_videoPublish canclePublish];
TXUGCPublish
のpublishVideo
を再度呼び出します。enableResume
は、中断からの再開のスイッチであり、デフォルトで有効になっています。TXPublishParam *publishParam = [[TXPublishParam alloc] init];publishParam.enableHTTPS = true;
setIsDebug
メソッドで操作する必要があります。デフォルトは有効になります。有効になっている場合、 logcat ログが印刷される同時に、log が app プライベートディレクトリに保存されます。// NO ログを無効にする[_videoPublish setIsDebug:NO];
// オブジェクトの作成TXUGCPublish *_imagePublish = [[TXUGCPublish alloc] initWithUserID:@"upload_image_userid"];// コールバックの設定_imagePublish.mediaDelegate = self;// アップロードパラメータの作成TXMediaPublishParam *publishParam = [[TXMediaPublishParam alloc] init];publishParam.signature = @"業務バックエンドで生成された署名";publishParam.mediaPath = @"画像ファイルへのパス";// 画像またはメディアファイルをアップロードします[_imagePublish publishMedia:publishParam];
TXUGCPublish::initWithUserID
パラメータ名 | パラメータの記述 | タイプ | 入力必須 |
userID | ユーザーのuserID。ユーザーを区別するために使用されます。 | NSString | いいえ |
TXUGCPublish.publishVideo
パラメータ名 | パラメータの記述 | タイプ | 入力必須 |
param | パラメータをリリースします。 | TXPublishParam | はい |
TXPublishParam
パラメータ名 | パラメータの記述 | タイプ | 入力必須 |
signature | クライアントからのアップロード署名を行います。 | NSString* | はい |
videoPath | ローカルビデオファイルパスです。 | NSString* | はい |
coverPath | カバー画像のローカルパスです。設定しなくてもかまいません。 | NSString* | いいえ |
fileName | Tencent Cloudにアップロードするビデオファイル名です。入力しない場合はデフォルトでローカルファイル名を使用します。 | NSString* | いいえ |
enableResume | 中断からの再開を有効にするか。デフォルトでは有効になっています。 | BOOL | いいえ |
enableHttps | HTTPSを有効にするか。デフォルトでは無効になっています。 | BOOL | いいえ |
enablePreparePublish | プリアップロードメカニズムを有効にするかどうか。デフォルトでは有効になります。プリアップロードメカニズムは、ファイルアップロードの品質を大幅に向上させることができます。 | BOOL | いいえ |
sliceSize | シャードサイズ。最小 1M、最大 10M に対応。デフォルトはアップロードされたファイルサイズを 10 で割った値です。 | long | いいえ |
concurrentCount | シャードアップロードの最大並列処理数。デフォルトは4個です。 | int | いいえ |
trafficLimit | 速度制限値設定範囲は 819200 ~ 838860800、つまり 100KB/s ~ 100MB/s です。この範囲を超えると 400 エラーが返されます。タイムアウトを防ぐために、この値をあまり小さく設定することを推奨しません。-1 は速度制限なしを表します。 | long | いいえ |
uploadResumController | 続行ポイントコントローラー。続行ポイントキー値の計算と保存を自分で実現できます。デフォルトでは md5 でファイルのキー値を計算します。 | id<IUploadResumeController> | いいえ |
TXUGCPublish.delegate
メンバー変数名 | 変数の記述 | タイプ | 入力必須 |
delegate | アップロードの進捗と結果コールバックプロキシ。 | TXVideoPublishListener | はい |
onPublishProgress
変数名 | 変数の記述 | タイプ |
uploadBytes | アップロード済みのバイト数です。 | NSInteger |
totalBytes | 総バイト数です。 | NSInteger |
onPublishComplete
変数名 | 変数の記述 | タイプ |
result | アップロードの結果です。 | TXPublishResult |
onPublishEvent
変数名 | 変数の記述 | タイプ |
evt | イベント。デバッグプリントに使用します。 | NSDictionary |
TXPublishResult
メンバー変数名 | 変数の説明 | タイプ |
retCode | エラーコード | int |
descMsg | アップロード失敗のエラー記述。 | NSString |
videoId | VODビデオファイルID。 | NSString |
videoURL | ビデオストレージアドレス。 | NSString |
coverURL | カバー画像のストレージアドレス。 | NSString |
TXUGCPublishOptCenter.prepareUpload
パラメータ名 | パラメータの記述 | タイプ | 入力必須 |
signature | NSString | はい |
TXVideoPublishListener
インターフェースによってビデオのアップロードのステータスを監視します。従って、TXPublishResult
のretCode
を使用して、ビデオの公開状況を確認することができます。エラーコード | TVCCommonにおいて対応する定数 | 意味 |
0 | TVC_OK | アップロードに成功しました。 |
1001 | TVC_ERR_UGC_REQUEST_FAILED | アップロードリクエストが失敗しました。通常、クライアントの署名が期限切れまたは無効になっており、Appに署名を再申請する必要があります。 |
1002 | TVC_ERR_UGC_PARSE_FAILED | リクエスト情報の解析に失敗しました。 |
1003 | TVC_ERR_VIDEO_UPLOAD_FAILED | ビデオのアップロードに失敗しました。 |
1004 | TVC_ERR_COVER_UPLOAD_FAILED | カバー画像のアップロードに失敗しました。 |
1005 | TVC_ERR_UGC_FINISH_REQ_FAILED | アップロード終了リクエストが失敗しました。 |
1006 | TVC_ERR_UGC_FINISH_RSP_FAILED | アップロード終了レスポンスのエラーです。 |
1008 | TVC_ERR_FILE_NOT_EXIST | 渡されたファイルパスにファイルが存在しません |
1009 | TVC_ERR_ERR_UGC_PUBLISHING | ビデオアップロード中 |
1010 | TVC_ERR_UGC_INVALID_PARAME | 無効なパラメータ |
1012 | TVC_ERR_INVALID_SIGNATURE | ショートビデオのアップロードサインが空です |
1013 | TVC_ERR_INVALID_VIDEOPATH | ビデオパスが空です |
1017 | TVC_ERR_USER_CANCLE | ユーザー呼び出しでアップロードをキャンセルします |
1020 | TVC_ERR_UPLOAD_SIGN_EXPIRED | サインが期限切れになりました |
TXUGCPublish::initWithUserID
パラメータ名 | パラメータの記述 | タイプ | 入力必須 |
userID | ユーザーのuserID。ユーザーを区別するために使用されます。 | NSString | いいえ |
TXUGCPublish.publishMedia
パラメータ名 | パラメータの記述 | タイプ | 入力必須 |
param | パラメータをリリースします。 | TXMediaPublishParam | はい |
TXMediaPublishParam
パラメータ名 | パラメータの記述 | タイプ | 入力必須 |
signature | クライアントからのアップロード署名を行います。 | NSString* | はい |
mediaPath | ローカル画像/メディアファイルパスです。 | NSString* | はい |
fileName | Tencent Cloudにアップロードする画像/メディアファイル名です。入力しない場合はデフォルトでローカルファイル名を使用します。 | NSString* | いいえ |
enableResume | 中断からの再開を有効にするか。デフォルトでは有効になっています。 | BOOL | いいえ |
enableHttps | HTTPSを有効にするか。デフォルトでは無効になっています。 | BOOL | いいえ |
enablePreparePublish | プリアップロードメカニズムを有効にするかどうか。デフォルトでは有効になります。プリアップロードメカニズムは、ファイルアップロードの品質を大幅に向上させることができます。 | BOOL | いいえ |
sliceSize | シャードサイズ。最小 1M、最大 10M に対応。デフォルトはアップロードされたファイルサイズを 10 で割った値です。 | long | いいえ |
concurrentCount | シャードアップロードの最大並列処理数。デフォルトは4個です。 | int | いいえ |
trafficLimit | 速度制限値設定範囲は 819200 ~ 838860800、つまり 100KB/s ~ 100MB/s です。この範囲を超えると 400 エラーが返されます。タイムアウトを防ぐために、この値をあまり小さく設定することを推奨しません。-1 は速度制限なしを表します。 | long | いいえ |
uploadResumController | 続行ポイントコントローラー。続行ポイントキー値の計算と保存を自分で実現できます。デフォルトでは md5 でファイルのキー値を計算します。 | id<IUploadResumeController> | いいえ |
TXUGCPublish.TXMediaPublishListener
メンバー変数名 | 変数の記述 | タイプ | 入力必須 |
mediaDelegate | アップロード進捗と結果コールバックプロキシ。 | TXMediaPublishListener | はい |
onMediaPublishProgress
変数名 | 変数の記述 | タイプ |
uploadBytes | アップロード済みのバイト数です。 | NSInteger |
totalBytes | 総バイト数です。 | NSInteger |
onMediaPublishComplete
変数名 | 変数の記述 | タイプ |
result | アップロードの結果です。 | TXMediaPublishResult |
onMediaPublishEvent
変数名 | 変数の記述 | タイプ |
evt | イベント。デバッグプリントに使用します。 | NSDictionary |
TXMediaPublishResult
メンバー変数名 | 変数の説明 | タイプ |
retCode | エラーコード | int |
descMsg | アップロード失敗のエラー記述。 | NSString |
mediaId | 画像/メディアファイルIDです。 | NSString |
mediaURL | 画像/メディアストレージアドレスです。 | NSString |
TXUGCPublishOptCenter.prepareUpload
パラメータ名 | パラメータの記述 | タイプ | 入力必須 |
signature | NSString | はい |
TXMediaPublishListener
インターフェースによって画像/メディアのアップロードのステータスを監視します。従って、TXMediaPublishResult
のretCode
を使用して、画像/メディアの公開状況を確認することができます。エラーコード | TVCCommonにおいて対応する定数 | 意味 |
0 | TVC_OK | アップロードに成功しました。 |
1001 | TVC_ERR_UGC_REQUEST_FAILED | アップロードリクエストが失敗しました。通常、クライアントの署名が期限切れまたは無効になっており、Appに署名を再申請する必要があります。 |
1002 | TVC_ERR_UGC_PARSE_FAILED | リクエスト情報の解析に失敗しました。 |
1003 | TVC_ERR_VIDEO_UPLOAD_FAILED | ビデオのアップロードに失敗しました。 |
1004 | TVC_ERR_COVER_UPLOAD_FAILED | カバーのアップロードに失敗しました。 |
1005 | TVC_ERR_UGC_FINISH_REQ_FAILED | アップロード終了リクエストが失敗しました。 |
1006 | TVC_ERR_UGC_FINISH_RSP_FAILED | アップロード終了レスポンスのエラーです。 |
1008 | TVC_ERR_FILE_NOT_EXIST | 渡されたファイルパスにファイルが存在しません。 |
1009 | TVC_ERR_ERR_UGC_PUBLISHING | ビデオアップロード中。 |
1010 | TVC_ERR_UGC_INVALID_PARAME | 無効なパラメータ。 |
1012 | TVC_ERR_INVALID_SIGNATURE | ショートビデオのアップロードサインが空です。 |
1013 | TVC_ERR_INVALID_VIDEOPATH | ビデオパスが空です。 |
1017 | TVC_ERR_USER_CANCLE | ユーザー呼び出しでアップロードをキャンセルします。 |
1020 | TVC_ERR_UPLOAD_SIGN_EXPIRED | サインが期限切れになりました。 |
この記事はお役に立ちましたか?