# SSP_ConvertJpegEncodeData

## 構文

    BOOL SSP_ConvertJpegEncodeData(const void* src, u8 *wrk, u32 width, u32 height, u32 sampling, u32 option);

## 引数

src | エンコードする画像データ (RGB555 もしくは YUV422)。4バイトアライメントでなければなりません。
wrk | 作業用バッファ。4バイトアライメントでなければなりません。 `SSP_GetJpegEncoderBufferSize()`で必要なサイズが計算できます。
width | エンコードする画像の横幅(pixel)
height | エンコードする画像の縦幅(pixel)
sampling | エンコード時の主画像の出力形式 (SSP_JPEG_OUTPUT_YUV444 / SSP_JPEG_OUTPUT_YUV420 / SSP_JPEG_OUTPUT_YUV422)
option | エンコードオプション (SSP_JPEG_RGB555 / SSP_JPEG_YUV422 / SSP_JPEG_THUMBNAIL)

## 返り値

成功ならば TRUE

## 説明

画像データをJPEGファイルへのエンコードに使用する形式にコンバートします。
エンコードする画像データは RGB555、YUV422 が使用できます。YUV422 の画像データを `src` に指定した場合は、必ず `option` に `SSP_JPEG_YUV422` を指定するようにしてください。
サムネイル付きのエンコードを行いたい場合は、`SSP_JPEG_THUMBNAIL` を `option` に指定する必要があります。
そのため、YUV422 の画像をサムネイル付きでエンコードする場合は、`SSP_JPEG_YUV422|SSP_JPEG_THUMBNAIL` を `option` に指定します。
エンコードできる画像の縦横サイズは `sampling` の値によって変わります。
`SSP_JPEG_OUTPUT_YUV444` を指定した場合は、縦横サイズがそれぞれ8の倍数である必要があります。
`SSP_JPEG_OUTPUT_YUV420` を指定した場合は、縦横サイズがそれぞれ16の倍数である必要があります。
`SSP_JPEG_OUTPUT_YUV422` を指定した場合は、縦サイズが8の倍数、横サイズが16の倍数である必要があります。
実際のエンコードは`SSP_StartJpegEncoderWithEncodeData()`で行われるため、入力元データである`src`は、本関数終了時点で破棄して問題ありません。

## 参照

`SSP_StartJpegEncoderWithEncodeData, SSP_GetJpegEncoderBufferSize()`

## 履歴

2009/04/28 アライメントの制限について追記
2008/11/14 初版