在线拍照,在线视频

在线拍照,在线视频

第一步:在库中建立一个视频元件,类型选择:视频(受 ActionScript 控制)。
第二步:将视频元件拖到场景中,并调整尺寸到想要的大小。并起名为“my_video”
第三步:在时间轴中粘入下边的 code。
复制内容到剪贴板代码:
var my_video:Video;
my_video._x=100;
my_video._y=40;
var my_cam:Camera = Camera.get();
my_cam.setMode(180, 140, 10, true);
my_video.attachVideo(my_cam);
shutter.onRelease = function() {
    myBitmap = new flash.display.BitmapData(180, 240, true, 0);
    myBitmap.draw(my_video);
    var tempObj = _root.createEmptyMovieClip("photo", 100);
    tempObj._x = 300;
    tempObj._y = 40;
    tempObj.attachBitmap(myBitmap, 1, "always", true);
};
Testing 发现有问题,拍出来照片只有 160x120 的区域有图像。并且图像变形了。 :eek:
什么地方出了问题呢?@#$%^&* (此处省略2小时 debug 时间……)
最后发现 my_video 复制到场景中调整大小时并不是改变 my_video.width 及 my_video.height 属性,而是改变 my_video._width 及 my_video._height 属性。原有视频元件的尺寸只有 160x120 。这就相当于将 my_video 作了形变。而 BitmapData.draw() 是不会考虑源元件的形变的。用官方的说法是:
引用:
源 MovieClip 对象不对此调用使用其任何舞台中转换。该源 MovieClip 对象会被视为存在于库或文件中,没有矩阵转换、没有颜色转换,也没有混合模式。如果您希望通过使用影片剪辑自身的 transform 属性来绘制影片剪辑,则可以使用它的 Transform 对象来传递各种 transformation 属性。
我开始没注意他给出的解决办法。我想既然 draw() 不考虑源元件的形变,那只能自己在输出的照片元件上想办法做形变了。于是有了这段 code。
复制内容到剪贴板代码:
var my_video:Video;
my_video._x=100;
my_video._y=40;
var my_cam:Camera = Camera.get();
my_cam.setMode(180, 140, 10, true);
my_video.attachVideo(my_cam);
shutter.onRelease = function() {
    myBitmap = new flash.display.BitmapData(160, 120, true, 0);
    myBitmap.draw(my_video);
    var tempObj = _root.createEmptyMovieClip("photo", 100);
    tempObj._x = 300;
    tempObj._y = 40;
    tempObj._width= 180;
    tempObj._height = 240;
    tempObj.attachBitmap(myBitmap, 1, "always", true);
};
这下照片是想要的大小了,而且图像也没有了变形。但发现图像没有摄像头显示的清晰。
想了一下,那是当然,draw() 不考虑源元件的形变,draw时my_video 被当作 160x120 来draw了。 :mad:
那能不能通过改变 my_video.width 及 my_video.height 属性来改变 my_video 的尺寸而不是将 my_video 作形变呢?不能!!!my_video.width 及 my_video.height 属性是只读属性。

解决方法:
第一步:用视频编辑软件制作一个 180x240 尺寸的1贞的白色 mov 视频文件。
第二步:用 Macromedia Flash 8 Video Encoder 将mov视频文件转为 flv 视频文件。
第三步:在库中建立一个视频元件,类型选择:嵌入(与时间轴同步)。
第四步:将视频元件拖到场景中,并起名为“my_video”
    Testing 发现 my_video.width 及 my_video.height 属性为 180x120 。阿哈 :cool:
第五步:在时间轴中粘入下边的 code 。
复制内容到剪贴板代码:
var my_video:Video;
my_video.clear()
my_video._x=100;
my_video._y=40;
var my_cam:Camera = Camera.get();
my_cam.setMode(180, 140, 10, true);
my_video.attachVideo(my_cam);
shutter.onRelease = function() {
    myBitmap = new flash.display.BitmapData(160, 120, true, 0);
    myBitmap.draw(my_video);
    var tempObj = _root.createEmptyMovieClip("photo", 100);
    tempObj._x = 300;
    tempObj._y = 40;
    tempObj._width= 180;
    tempObj._height = 240;
    tempObj.attachBitmap(myBitmap, 1, "always", true);
};

时间: 2024-09-02 23:56:21

在线拍照,在线视频的相关文章

java 在线拍照代码

java 在线拍照代码 在数码相机的普及(尤其是在电话手机),导致其价格下降就像他们的规模大幅缩水. 它现在越来越难找到,即使没有摄像头的手机,和机器人设备不可能例外.要访问相机 的硬件,你需要添加到您的照相机许可应用程序清单,如下所示: <uses-permission android:name="android.permission.CAMERA"/>   这授予访问相机服务.该相机类可以调整相机设置,拍照,摄像和处理流媒体预览.要 访问照相机服务,使用相机的静态类的o

flex+php在线拍照二

flex+php在线拍照 <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="100%"  xmlns:ns1="*" backgroundGradientColors="

Javascript+PHP实现在线拍照功能

  我们在一些WEB应用中可能会遇到这样的情况,用户需要自己现场拍照并上传到会员系统.比如驾校采集指纹拍照流程.考试现场采集照片等.我们今天要讲的是如何使用javascript和PHP实现一个简单的在线拍照并上传的功能. 实现这个功能的前提是你的电脑设备上需要安装有摄像头设备,以及你的浏览器需要支持flash.   HTML   <!DOCTYPE HTML>  <html>  <head>  <meta charset="utf-8">

jQuery+PHP+Mysql在线拍照和在线浏览照片

本文用示例讲述了如何使用jQuery与PHP及Mysql结合,实现WEB版在线拍照.上传.显示浏览的功能,ajax交互技术贯穿本文始末,所以本文的读者要求具备相当熟悉jQuery及其插件使用和javscript相关知识,具备PHP和Mysql相关知识.     本文示例建立在本站helloweba.com两篇文章之上,一篇是用于在线拍照的:Javascript+PHP实现在线拍照功能,另一篇是用于浏览照片的:Fancybox丰富的弹出层效果.如果您对在线拍照和Fancybox不大了解,可以先参照

flex+php在线拍照一[51空间]

昨天用flex+php做了一个在线拍照的小东东,可以实现会员头像的实时在线拍照更新. 首先来讲一讲原理: 1.将camera的内容显示在video中,这个不懂的参考actionscript的手册,里面有详细的讲解以及代码, 2.定义一下BitmapData对象, m_pictureBitmapData = new BitmapData(DEFAULT_CAMERA_WIDTH,DEFAULT_CAMERA_HEIGHT); 然后将video的内容写进BitmapData对象里, m_pictur

PHP+Javascript实现在线拍照功能实例_php技巧

本文实例讲述了PHP+Javascript实现在线拍照功能.分享给大家供大家参考.具体如下: 我们在一些WEB应用中可能会遇到这样的情况,用户需要自己现场拍照并上传到会员系统.比如驾校采集指纹拍照流程.考试现场采集照片等.我们今天要讲的是如何使用javascript和PHP实现一个简单的在线拍照并上传的功能. 实现这个功能的前提是你的电脑设备上需要安装有摄像头设备,以及你的浏览器需要支持flash <!DOCTYPE HTML> <html> <head> <me

C#、WEB开发, 如何实现,在线多人视频聊天、视频会议 ?

问题描述 公司最近让做一个在线多人视频聊天.视频会议的系统.本人完全没有相关工作经验,无从下手.希望大家能给一个,具体思路.以及其中舍得到的第三方组件.谢谢! 解决方案 解决方案二: 解决方案三:这货不是你能开发出来的,这货要买视频硬件,实现多路视频,百度搜一下有一整套的视频会议套件...一套么便宜的几W,看你的连接数,贵的话也几十W.解决方案四:不行锕公司分下来的任务.不行也的行啊解决方案五:网上下个flashmediaserver,里面有视屏会议的功能好像.自己玩玩可以,商用的话,要钱的,而

动易携手炎黄网络升级 互联网在线下载及视频体验

中介交易 SEO诊断 淘宝客 云主机 技术大厅 日前,炎黄网络与动易网络正式达成合作协议,后者将为动易软件下载和动易起航提供全方位的无限量带宽支持. 动易起航(qihang.powereasy.net/)是动易旗下视频教学\在线培训教学培训品牌基地,多年来一直为广大动易用户免费提供动易视频教程.UC在线课程培训等基于动易系列产品的互联网教学服务.截止至2009年4月,动易软件及动易起航下载量已愈突破500万次.各类软件工具及课程录像等突近千个! 一直以来,动易网络为动易起航教学和培训提供30M以

iOS开发系列--音频播放、录音、视频播放、拍照、视频录制

概览 随着移动互联网的发展,如今的手机早已不是打电话.发短信那么简单了,播放音乐.视频.录音.拍照等都是很常用的功能.在iOS中对于多媒体的支持是非常强大的,无论是音视频播放.录制,还是对麦克风.摄像头的操作都提供了多套API.在今天的文章中将会对这些内容进行一一介绍: 音频 音效 音乐 音频会话 录音 音频队列服务 视频 MPMoviePlayerController MPMoviePlayerViewController AVPlayer 摄像头 UIImagePickerControlle