JPEGヘッダーファイルから画像マーカーの開始点を読みたい。 cでJPEGヘッダファイルからこのマーカーを読み取るには?あなたは順序でこれらのバイトを見つける必要があるので、jpegヘッダーファイルからsoiマーカーを読み取る
-1
A
答えて
0
画像コードの開始は、FF
D8
で、何かのように:
#include <stdio.h>
#include <string.h>
int main(void)
{
unsigned char seq[] = {0x01, 0x02, 0xFF, 0xD8, 'S', 'O', 'I', 0x00};
unsigned char *res = seq;
/* We can not use strstr because seq is not a valid string */
while ((res = memchr(res, 0xFF, sizeof seq - (res - seq)))) {
if (*(++res) == 0xD8) {
res++; /* + 1 to consume 0xD8 */
break;
}
}
if (res != NULL) {
printf("%s\n", res);
}
return 0;
}
出力:
SOI
0
jpeg形式で任意のマーカーヘッダーの前に開始マーカー0xFF
があり、soiマーカーは0xD8
です。
値が0xFF
のバイトを見つけて、次のバイトが0xD8
かどうかを確認するまで、データを繰り返し処理できます。おめでとう、あなたは今すぐソイマーカーを見つけました。
関連する問題
- 1. データストリームの始めにJPEG SOIマーカーが必要ですか?
- 2. TIFFヘッダーファイルの読み取り方法c#?
- 3. 既に読み込まれた地図からマーカーを取得
- 4. libcurlが提供するストリームからjpegを読み込みます。
- 5. jpegファイルの解析、SOSマーカー
- 6. plistから読み取る
- 7. コンソールプロセスから読み取る
- 8. ソケットブロックから読み取る
- 9. InputStreamから読み取る
- 10. マイクロコントローラから読み取る
- 11. jpeg画像から埋め込みサムネイルを読み込む方法は?
- 12. ヘッダーファイルから浮動小数点ポインタを文字配列に読み込む
- 13. Java Servletからファイルを読み取る
- 14. コンピュータからAndroidデータベースファイルを読み取る
- 15. * .ipaからLocalization.stringsファイルを読み取る
- 16. stdinからパスワードを読み取る
- 17. ファイルシステムからファイルを読み取る
- 18. Firebaseデータベースからデータを読み取る
- 19. sdcardからビットマップを読み取る
- 20. Cテキストファイルから値を読み取る
- 21. Excelからデータを読み取る
- 22. ファイルからJavaプロパティグループを読み取る
- 23. app.configから値を読み取る
- 24. データストアからデータを読み取る
- 25. バイトからパケットIDを読み取る
- 26. AnnotationProcessorからバイトコードを読み取る
- 27. asp.netからhtmlファイルを読み取る
- 28. FTPからファイルを読み取る
- 29. リモートHDFSからファイルを読み取る
- 30. h5ファイルからデータを読み取る