안녕하세요~
안드로이드 어플개발하고 있는 학생입니다~

 Camera.PreviewCallback으로 byte[] data 받으면 그 영상 포맷이 YUV로 됩니다.
제가 개발하면서 사용하는게 갤럭시A라서 그건 YUV422로 되어있습니다.
그래서 442구조랑 YUV를 RGB로 변환하는 공식을 구해서 코드 짜고 있는데
이상하게 G값이 밝거나 어둡거나 색에 관계 없이 130대로 계속 나오네요;;

http://msdn.microsoft.com/en-us/library/ms893078.aspx
C = Y - 16
D = U - 128
E = V - 128

R = clip(( 298 * C           + 409 * E + 128) >> 8)
G = clip(( 298 * C - 100 * D - 208 * E + 128) >> 8)
B = clip(( 298 * C + 516 * D           + 128) >> 8)

공식은 이렇고 clip은 0~255로 값 잘라내는거구요...

G = clip(( 298 * C - 100 * D - 208 * E + 128) >> 8)

에서  298 * C - 100 * D - 208 * E + 128 값 보면  Y U V이 0이 되면
G 값이 130이 되는데 0이 되어가 정상 아닌가요ㅠㅠ?
검정색은 rgb값이 000니까... 근데 0 130 0 이런식으로 되서 밑에 처럼 나오는거 같습니다.
device.png
스샷은 카메라위에 변환된 rgb 비트맵 띄운건데 카메라 영상은 스샷안되네요;

아무댓글이라도 부탁드립니다 ㅠ


C:\Users\p310\Desktop\device.png