# SSP_StartJpegEncoderWithEncodeData

## 構文

    u32 SSP_StartJpegEncoderWithEncodeData(u8 *dst, u32 limit, u8 *wrk, u32 width, u32 height, u32 quality, u32 sampling, u32 option);

## 引数

dst | エンコード結果を格納するバッファ
limit | dstのサイズ このサイズを超えるとエンコードに失敗します。
wrk | 作業用バッファ。4バイトアライメントでなければなりません。 `SSP_ConvertJpegEncodeData()`と同じ指定にしてください。
width | エンコードする画像の横幅(pixel) `SSP_ConvertJpegEncodeData()`と同じ指定にしてください。
height | エンコードする画像の縦幅(pixel) `SSP_ConvertJpegEncodeData()`と同じ指定にしてください。
quality | エンコードのクオリティ 1〜100 まで指定可能であり、100 に近づくほど高画質になりサイズが大きくなります。
sampling | 主画像の出力形式 (SSP_JPEG_OUTPUT_YUV444 / SSP_JPEG_OUTPUT_YUV420 / SSP_JPEG_OUTPUT_YUV422) `SSP_ConvertJpegEncodeData()`と同じ指定にしてください。
option | エンコードオプション (SSP_JPEG_RGB555 / SSP_JPEG_YUV422 / SSP_JPEG_THUMBNAIL) `SSP_ConvertJpegEncodeData()`と同じ指定にしてください。

## 返り値

成功ならば、生成されたJPEGファイルのサイズが返ってくる。
失敗した場合は 0 が返る。

## 説明

`SSP_ConvertJpegEncodeData()`でコンバートした画像データをJPEGファイルにエンコードします。
`wrk, width, height, sampling, option`は、`SSP_ConvertJpegEncodeData()`と同じ指定にする必要があります。
コンバート処理とエンコード処理を一括して行いたい場合は、`SSP_StartJpegEncoder()`を使用してください。
注意：
本関数は完了後にエンコードの成功、失敗問わず、`SSP_SetJpegEncoderDateTime(),SSP_SetJpegEncoderDateTimeNow(),SSP_SetJpegEncoderMakerNote(),SSP_SetJpegEncoderMakerNoteEx()` で設定した値はクリアされます。
また、本関数は事前に `SSP_SetJpegEncoderDateTime()` もしくは `SSP_SetJpegEncoderDateTimeNow()` を呼び出していない場合、内部で `SSP_GetDateTime()` が呼ばれます。

## 参照

`SSP_SetJpegEncoderDateTime, SSP_SetJpegEncoderDateTimeNow, SSP_ConvertJpegEncodeData, SSP_StartJpegEncoder, SSP_SetJpegEncoderMakerNote, SSP_SetJpegEncoderMakerNoteEx, SSP_GetDateTime`

## 履歴

2009/07/16 関数の内部動作にあった説明に変更
2009/04/28 アライメントの制限について追記
2008/11/14 初版