Показать сообщение отдельно
Старый 08.01.2011, 13:53
Lao_kutuz вне форума Посмотреть профиль Отправить личное сообщение для Lao_kutuz Найти все сообщения от Lao_kutuz
  № 1  
Ответить с цитированием
Lao_kutuz

Регистрация: Nov 2008
Сообщений: 43
По умолчанию Делаем снимок с камеры

У меня какой-то конфуз. Добавляю видео с камеры на сцену, пытаюсь сделать снимок по клику.
Отрисовую битмапдату размерами с видео, делаю битмап закидываю на сцену, размеры програмно проверяю - те же что и видео, но сама битмапа получается сплюснутая вдвое по высоте. То есть верхняя половина - сжатый снимок видео нижняя просто белый фон.

Код AS3:
function getSnapshot(ev:MouseEvent):void
{
 
	var btData	:BitmapData = new BitmapData(_video.width, _video.height);
		btData.draw(_video);
	var bitmap	:Bitmap = new Bitmap(btData);
		bitmap.x = 320;
		//bitmap.height*=2;					
	addChild(bitmap)
 
	trace(bitmap.width, bitmap.height);
}
размеры выводит что надо, картинка сжатая. Если раскоментировать ту строчку увеличения вдвое битмапы, то визуально норм будет всё, но размеры програмные вдвое больше.

От чего такой глюк, кто знает? Особенности сжатия, кодек так работает ?

Добавлено через 2 часа 26 минут
З.Ы. Работает ваще хз как. Поменял размеры видео-режима камеры - всё поменялось. Оно оказывается не вдвое масштабирует а ваще как-то непонятно

Код AS3:
if (Camera.names.length>0)
{
	var webCam	:Camera = Camera.getCamera();
		webCam.setMode(200,200,15,true);
 
	 webCam.addEventListener(StatusEvent.STATUS, statusHandler); 
 
    _video= new Video(); 
	_video.width = webCam.width;
	_video.height= webCam.height;
	_video.attachCamera(webCam);
    addChild(_video); 
 
}
Для режима 200х200 работает так


для
Код AS3:
webCam.setMode(320,480,15,true);


что за беда? Есть конечно вариант видео закидывает на спрайт, и отрисовывать снимок с спрайта, но интересно почему с видео не нормально как-то работает
__________________
На самом деле самого дела нет. В самой деятельности заключена самость дела - и наоборот.