動画エンコーダーに1フレーム分の映像を転送してエンコードします
dsc_WriteEncoder p1,p2,p3
p1 : 動画エンコーダーID (dsc_CreateEncoder 関数から取得) p2 : DIB画像データ もしくは HSPのVRAM画像データ p3 : 上下反転するか(0 = しない, 1 = する)
(プラグイン / モジュール : hspdsc.dll)
動画エンコーダーに1フレーム分の映像を転送してエンコードします。 本命令は、リアルタイムなコンテンツのエンコードには向いていません。 キャプチャ映像などをリアルタイムな映像をエンコードする場合、 dsc_OpenEncoder命令で指定したフレームレートが 30.0 の場合は、 本命令を 1 秒間 に 30 回 きっちり呼び出す必要があります。 (厳密には、0.033 秒 に 1 回 の間隔) PCの性能不足などにより、呼び出し回数に過不足がある場合は 動画のコマ落ち(早送り)やスロー化の事象が容易に発生します。 p1 に 動画エンコーダーID を指定します。(dsc_CreateEncoder 関数 参照) p2 には DIBデータ もしくは HSPのVRAMデータを指定します。 mref や dsc_GetImageMem命令で本命令に渡せるデータが取得できます。 p3 には 映像を上下反転するかを指定します。(0 = しない, 1 = する) 通常はしないを選択してください。 正常終了時には stat に 0 が返ります。 異常時には stat に マイナス値が返ります。
// mp4 mref vram, 66 dsc_WriteEncoder id_enc, vram, 0
dsc_OpenEncoder | 動画エンコーダーを開いて、動画エンコードできる状態にします | (hspdsc.dll) |
dsc_CloseEncoder | 動画エンコーダーを閉じて、動画ファイルのファイナライズをします | (hspdsc.dll) |
プラグイン / モジュール | hspdsc.dll |
バージョン | 2.13 |
作成日 | 2021/6/13 |
著作者 | イノビア(inovia) |
URL | https://hsp.moe/ |
備考 | HSP向け DirectShow キャプチャプラグイン
【32bit版ランタイムの場合】 hspdsc.asをインクルード バーコードを使用する場合はhspbar.asをインクルード 【64bit版ランタイムの場合】 hsp3_64.asをインクルード hspdsc64.asをインクルード バーコードを使用する場合はhspbar64.asをインクルード |
グループ | 動画エンコード |
対応環境 |
|
移植のヒント | Windows |
hs ファイル | hsphelp\hspdsc.hs |