2011-02-03 6 views
1

저는 플렉스 앱에 비디오 디스플레이가 있습니다. 카메라에 부착되어 있습니다. 카메라 해상도는 사용자의 선택에 따라 달라질 수 있지만 비디오 디스플레이 (미리보기) 크기는 고정되어 있습니다. 나는 그 때 이것을하고있다 :플렉스, 카메라의 높이와 너비가 비디오 디스플레이와 다른 스냅 샷을 캡처하십시오.

bmd.draw (vidDisplay);

여기서 bmd는 비트 맵입니다. 문제는 결과 비트 맵이 (설정되는) 카메라 설정의 올바른 크기를 갖지만 비디오의 캡처는 항상 비트 맵 내부의 비디오 디스플레이 크기입니다. 나는 감각을 만들고 싶다. 결과는 왼쪽 상단에있는 더 큰 이미지 내부의 작은 그림처럼 보입니다.

고정 된 높이로 비디오 디스플레이 미리보기를 원하지만 다양한 해상도로 스냅 샷을 찍을 수 있습니다. 어떤 도움을 주셔서 감사합니다! 그것으로 비디오 리플렉션 (비디오 iteself 아닌 미리보기 창)을 그릴 다음

var bmd: BitmapData = new BitmapData(video.width, video.height); 

과 :

+0

매트릭스를 사용하여 스냅 샷의 축척을 변경할 수 있습니다. 예제를 볼 필요가 있습니다. 그리기 방법의 두 번째 매개 변수 인 image.draw (obj, yourMatrix); – Neil

답변

0

당신은 그것을 만들 때 비트 맵의 ​​크기를 설정할 수 있습니다

bmd.draw(vidDisplay); 
+0

이것은 내가하고있는 일입니다. 어떻게 비디오와 다른 미리보기 창 크기를 설정합니까? 나는 그것이 질문이라고 생각한다. – rodrick

0

가장 쉬운 간단하게 스냅 샷을 찍기 전에 VideoDisplay의 크기를 조정하는 것입니다. 그냥 스냅 샷을 복용의 목적을 위해 별도의 flash.media.Video 객체를 사용하는 경우

videoDisplay.width = desiredWidth; 
videoDisplay.height = desiredHeight; 

// validate immediately to see new size  
videoDisplay.validateNow(); 

bitmapData.draw(videoDisplay); 

// now restore to original size 
videoDisplay.width = originalWidth; 
videoDisplay.height = originalHeight; 

videoDisplay.validateNow(); 

더 나은이 될 것입니다.

+0

흠 나는 꽤 빨리 많은 사진을 찍고 있습니다. 내 상황에서는 크기를 조정해도 효과가 없을 것 같습니다. 나는 한 발을 내줄 것이다. 다른 옵션은 약간의 리소스 집약적 인 것 같습니다 ?? – rodrick

관련 문제