Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 12.01.2010, 06:52
robin_bobin2001 вне форума Посмотреть профиль Отправить личное сообщение для robin_bobin2001 Посетить домашнюю страницу robin_bobin2001 Найти все сообщения от robin_bobin2001
  № 1  
Ответить с цитированием
robin_bobin2001

Регистрация: Jun 2004
Адрес: Севастополь, Украина
Сообщений: 124
Отправить сообщение для robin_bobin2001 с помощью ICQ Отправить сообщение для robin_bobin2001 с помощью Skype™
По умолчанию getPixel со NetStream RTMP видео... как?

Перепробовал кучу вариантов.
Суть проблемы в следующем, если не подключаю стрим, все работает как часы, пиксели определяются, все замечательно. Как только стрим подключен, т.е. видео идет, пиксели не ловятся...

Код AS1/AS2:
import flash.display.*
import flash.mx.video;
 
//тут мы создаем стрим, назначаем ему адреса потоков и громкоти отдельной функцией
_root.createRTMP=function(hintobj,wherecont,cont,vidobj,smoth,path,stream,vol,IO1,IOobj1,IO1time){
wherecont.createEmptyMovieClip(cont,wherecont.getNextHighestDepth());
wherecont[cont].videoInstance = vidobj;
if(smoth=="smoth"){wherecont[cont].videoInstance.smoothing=true;}
wherecont[cont].nc = new NetConnection();
wherecont[cont].nc.connect(path);
wherecont[cont].ns = new NetStream(wherecont[cont].nc);
wherecont[cont].ns.setBufferTime(2);
wherecont[cont].nc.isLive=true;
wherecont[cont].ns.onStatus = function(infoObject:Object) {
//trace(infoObject["code"]);
if(infoObject["code"]=="NetStream.Buffer.Full"&&IO1){
_root.TweenedWhat(IOobj1,100,0,IO1time,"_alpha",1,null,funca,vara1,vara2,vara3,ID,true);
	}
if(infoObject["code"]=="NetStream.Buffer.Empty"){}
}//func
//Стопкадры
wherecont[cont].ns.onCuePoint = function(infoObject:Object){
    trace("onCuePoint:");
    for (var propName:String in infoObject) {
        if (propName != "parameters"){
            trace(propName + " = " + infoObject[propName]);}else{
            trace("parameters =");
            if (infoObject.parameters != undefined) {
                for (var paramName:String in infoObject.parameters){
                    trace(" " + paramName + ": " + infoObject.parameters[paramName]);
                }}else{trace("undefined");}}}
    trace("---------");}
 
wherecont[cont].ns.onMetaData = function(infoObject:Object) {
    for (var propName:String in infoObject) {
        trace(propName + " = " + infoObject[propName]);}}
 
 wherecont[cont].videoInstance.attachVideo(wherecont[cont].ns);
wherecont[cont].createEmptyMovieClip("sond", wherecont[cont].getNextHighestDepth());//Attach the netstream audio to the newly created symbol
 wherecont[cont].sond.attachAudio(wherecont[cont].ns);//we can now alter the volume of the netstream by setting the sound level of "audio"
 wherecont[cont].audio = new Sound(wherecont[cont].sond);
if(vol){
	wherecont[cont].audio.setVolume(vol);
}else{
	wherecont[cont].audio.setVolume(0);}
 wherecont[cont].ns.play(stream);
}
 
pata="rtmp://tralyalya/livevideo/";//Путь к видеостриму типа
_root.createRTMP(hintobj,_root,"vi1",_root.vid1,"smoth",pata,"stream4",50,IO1,IOobj1,IO1time); //вызываем функцию, создаем видеострим и подключаем на объект ВИДЕО
//_root.vid1 - это объект Video
 
///а от сюда уже пытаемся ловить цвет пикселя под мышкой...
_root.onMouseMove = function(){
var bmp:BitmapData = new BitmapData(Stage.width, Stage.height, false);
bmp.draw(this);
 
    var pColor:Number = bmp.getPixel(_xmouse, _ymouse)
    var hexColor:String = pColor.toString(16).toUpperCase()
    while(hexColor.length < 6){
        hexColor = "0" + hexColor
    }
    var r = Number("0x" + hexColor.substr(0,2))
    var g = Number("0x" + hexColor.substr(2,2))
    var b = Number("0x" + hexColor.substr(4,2))
    testo.text = "0x" + hexColor + ", {r:" + r + ", g:" + g + ", b:" + b + "}"
 
}
stop();


Последний раз редактировалось robin_bobin2001; 12.01.2010 в 06:57.
Создать новую тему   Часовой пояс GMT +4, время: 22:58.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 22:58.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.