Comments 33
Хорошая штука. Жаль, что ни о какой стабильности и поддержки речи пока не идет. Но, тем не менее, радует, что в будущем проглядывается счастье.
Раньше был опыт с пиринговым видео… Столько велосипедов было и глюков. Использовали только Adobe Stratus.
Раньше был опыт с пиринговым видео… Столько велосипедов было и глюков. Использовали только Adobe Stratus.
+1
Ну судя по всему ждать осталось не так долго, опера перешла на webkit. Mozilla старается в реализации webrtc. Думаю что постепенно google glass и другие будут видео с камеры транслировать именно через webrtc.
0
А смысл от google glass — в чате надо видеть собеседника? Или вы имели ввиду видеоблог на этой технологии?
+1
Можно же в зеркало смотреть ) Гугл дакфэйс, так сказать. А кроме шуток, не вижу особого смысла на собеседника смотреть, если только не виделись давно. Можно нормально собеседнику показывать какое-либо место и т.п.
0
Да, я имел виду видео блог или какой нибудь интерактивный дневник. Думаю что общение с бюрократией в данном девайсе тоже будет иметь успех.
+1
Технология перспективная, но больше всего интересует поддержка браузерами. Пару лет назад была печаль, и с тех пор особых изменений у них на сайте не видел. Пока я так понимаю технология доступна в стабильной версии хрома, и сборке Firefox.
0
Пока что более менее всё нормально только в хроме, но даже тут — почему-то с одной стороны звук не поулчилось передать. Кроме того, захват звука идёт не с микрофона, а с общего канала — возможно в будущем это всё будет как-то регулироваться. В хромиуме (вроде ж тот же движок, цифра в цифру версия) — почему-то RTCPeerConnection не пытается состыковаться через локальную сеть — только через полученный внешний IP.
0
Возможно нужно поднять локальный STUN -сервер, т.к. по-умолчанию используют гугловский
0
И еще. А можно где взять ваш код целиком, чтобы в локальной сети поиграться.
0
Не утруждайте себя. Товарищ просто прокомментировал демку от гугла код которой находится тут
0
Плюс остается узнать как принять видео-поток на сервере
0
Уважаемый, а Вас не учили оставлять ссылки на первоисточники (исходников в том числе)?
-1
-2
Прочитайте внимательно мой комментарий, особенно то что в скобках
-1
Вы никогда не пробовали в браузере нажать Ctrl-U?
0
Глубоко уважаемый, Александр. Не размещение ссылок на первоисточник (даже исходного кода) это не только моветон, но и избавляет автора от ответов на подобные комментарии. А на счет Ctr+U сделайте мне эту комбинацию на серверном питоновом скрипте этой демки
P.S. Всегда умиляют такие наивные люди как Вы.
P.S. Всегда умиляют такие наивные люди как Вы.
0
Глубоко уважаемый, Иван. Читаете ли Вы статьи, прежде чем их комментировать? Например, обратите внимание, что автор написал серверную часть по-своему и к данным Вами исходникам она не имеет ни малейшего отношения. А ответы на вопросы о собственных исходниках (а также о мотивации автора давать или не давать эти исходники), я таки оставлю отвечать ему самому.
0
«написал серверную часть по-своему»
Не используя исходники от google?
Не используя исходники от google?
0
Ну, полагаю, приведённый в статье фрагмент можно сравнить с кодом по Вашей ссылке — наверно, начиная со 173 строки
0
Читаем что такое первоисточник, думаем, еще раз думаем, перечитываем мой комментарий, синтезируем полученные знания и не пытаемся мне что-то доказать.
0
Встречное предложение подумать над ответами на Ваши комментарии. А заодно, поразмыслить над таким неординарным теоретическим вопросом, как что является предметом рассмотрения данной статьи — объект реального мира в виде демки с прилагающимися к нему исходниками, на что ссылка дана, и авторской реализацией серверной части, либо некий блок кода, являющийся, вероятно, исходником серверной части, на котором на самом деле работает демка, на который ссылаетесь Вы, но автором статьи не рассмотренный?
И в целом — предлагаю данный душещипательный философский вопрос вынести в личку, поскольку здесь это обсуждение скатывается в безбожный оффтопик. Имхо, здесь в теме хватило бы просто сослаться на то, что исходники демки существуют в открытом виде, о чём автор, вероятно, не знал.
И в целом — предлагаю данный душещипательный философский вопрос вынести в личку, поскольку здесь это обсуждение скатывается в безбожный оффтопик. Имхо, здесь в теме хватило бы просто сослаться на то, что исходники демки существуют в открытом виде, о чём автор, вероятно, не знал.
0
А на счет Ctr+U сделайте мне эту комбинацию на серверном питоновом скрипте этой демкиНа питоновский код если честно не смотрел, там заточено для app engine, используется база гугла и тд. В том коде что я привел используется ajax, mongodb, две простеньких функции. Конечно у меня нет проверок исключительных ситуаций ошибок и всего остального, но это ж не продакшен, это простой пример.
0
Вы отрицаете, что использовали код предоставленный google?
0
Честно говоря я вас немного не понимаю. Вам приведенный мной python код кажется настолько сложным что его невозможно написать самому? Если вы усматриваете откровенный копипаст то приведите пожалуйста пример. Или имелась в виду клиентская часть?
0
Вы отрицаете, что использовали код предоставленный google?
0
man diff
0
Ваш код в студию!
-1
Вы настойчивы
Набросал пример для bottle вначале необходимо выполнить:
также поставить mongodb
создать необходимый шаблон, и запустить питоновский код
Набросал пример для bottle вначале необходимо выполнить:
pip install jinja2
pip install bottle
также поставить mongodb
создать необходимый шаблон, и запустить питоновский код
from bottle import run, route, request, jinja2_template as templ
def connect():
mongo = Connection('localhost', 27017)
db = mongo['db']
db.authenticate('user', 'pass')
return db
db = connect()
@route('/chat/<room>')
def chat(room):
doc = db.chat.find_one({'_id':room})
initiator = 1
if not doc:
initiator = 0
doc = {'_id':room, 'mess': []}
db.chat.save(doc)
return templ('rtc.tpl', initiator = initiator, room=room)
@route('/chat', method='POST')
def chat_post():
lst = 0.0; msg = []
room = get_post('room')
user_id= get_post('user_id')
last= float(get_post('last', 0))
mess= get_post('mess')
doc = db.chat.find_one({'_id':room})
if mess:
doc['mess'].append((time.time(), mess, user_id))
db.chat.save(doc)
for i_time, i_msg, i_user in doc['mess']:
if i_user != user_id and i_time > last:
lst = i_time
msg.append((i_time, i_user, i_msg))
if not lst: lst = last
return json.dumps({'result': 'ok', 'last': lst, 'msg': msg})
def get_post(name, default = None):
return request.POST[name] if name in request.POST else default
run(host='localhost', port=8080)
0
-1
а для чего функция maybeStart? Я не нашел её в js коде, какое её применение?
Так же прошу исходники rtc.tpl
P.S. пытался реализовать на node.js и websocket-ах, но как-то не вышло…
Так же прошу исходники rtc.tpl
P.S. пытался реализовать на node.js и websocket-ах, но как-то не вышло…
0
Sign up to leave a comment.
Webrtc, Peer Connection — создание полноценного видео чата в браузере