Изучая один любопытный в настоящее время мне сайтик, я натолкнулся на кое-что прикольное. Пошел глядеть.
Лучше бы я туда не ходил!!! Нажав на ссылку OSGrid на поименованном ресурсе, я не успел глазом моргнуть, как оказался в очень странном месте. Забегая вперёд, я хочу отметить, что теперь-то я прекрасно понимаю, отчего они все такие из себя оранжевые и светятся и разлагаются - это все от воздействия радиации. Но, все по-порядку.
Первое, что я увидел - это грибообразный бункер.
Само собой, необходимо было забраться внутрь и выяснить, что же это такое. Вот какое дело - удивительная история, но никакого замка на двери не было. Ни замка, ни засова, ни сенсора или наборной панели... Дверь просто открылась автоматически.
Оказавшись внутри и оглянувшись, я понял, где оказался волей случая. Этот бункер, как и многие другие - узел сети управления могильниками ядерных отходов. Банально.
Также я получил сведения о географии конкретно этого места. Оно представляло из себя искуственный остров в океане, оттераформированный в виде знака радиационной опасности, чтобы было видно из космоса.
Тем не менее, за время, проведённое в бункере, местное солнце существенно приблизилось к горизонту и над могильником сгустились сумерки, еще более подчеркивая загадочное свечение. Впрочем, теперь ничего загадочного в нем не было, однако, несмотря на это мне захотелось посмотреть вблизи и я двинул в эту сторону.
Достигнув автоматической станции радиационного контроля, стало понятно, что свечение исходит от огромного озера. Оно светилось буквально всё - светилась вода, светился берег и даже воздух над нам светился радиоактивными испарениями.
С берега сразу в глубину озера уходила железная лестница, рядом с которой стояли две ржавые бочки, на облупленых боках которых красовались знаки радиационной опасности. Как и всё здесь, бочки также светились мёртвенным радиоактивным светом.
Подойдя к кромке воды, я смог разглядеть, что скрывается под ней. Озеро было чуть более, чем полностью, набито точно такими же бочками, как я видел на берегу.
Тем временам почти стемнело и нужно было делать лапы, что было сделано незамедлительно, боясь облысеть и покрыться целлюлитной коркой, как упомянутые мной в самом начале апельсиниты.
Я попросился на борт проходящего мимо судна. Вы спросите - как они меня взяли? А я сказал капитану, что я - кок. Ну, повар, то есть.
суббота, 26 декабря 2015 г.
четверг, 9 июля 2015 г.
[ICECAST2] Как получить метаданные звучащего трека?
Нет ничего проще, только нужно быть очень внимательным - айс становится не айс, если в файлах есть не просто ошибки, а и вовсе неточности.
Итак, нужно сделать файлик meta.xsl с таким содержанием:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" encoding="UTF-8" indent="no" method="text" omit-xml-declaration="yes"&qt;<xsl:strip-space elements="*">
<xsl:template match="/icestats">
<xsl:for-each select="source">
<xsl:value-of select="title">
</xsl:value-of></xsl:for-each></xsl:template></xsl:strip-space></xsl:output>
Положить его в DocumentRoot айса и пользоваться.
Итак, нужно сделать файлик meta.xsl с таким содержанием:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" encoding="UTF-8" indent="no" method="text" omit-xml-declaration="yes"&qt;<xsl:strip-space elements="*">
<xsl:template match="/icestats">
<xsl:for-each select="source">
<xsl:value-of select="title">
</xsl:value-of></xsl:for-each></xsl:template></xsl:strip-space></xsl:output>
Положить его в DocumentRoot айса и пользоваться.
четверг, 18 июня 2015 г.
[ADV][SL] ВЫСОКОКАЧЕСТВЕННЫЕ СТРИМЫ ДЛЯ КЛУБОВ И DJ
Неограниченное количество слушателей, широкие каналы и сервера, находящиеся в Чикаго и Амстердаме, делают наши стримы лучшим выбором! Кроме того, мы предоставляем услугу аренды персонального постоянного стрима для тех, у кого есть имя и хорошая музыка.
ПРАЙС НА СТРИМЫ
-----------------------
1 час - 100L$
1 день - 500L$
1 неделя - 1200L$
1 месяц - 3000L$
ПЕРСОНАЛЬНЫЙ СТРИМ - 4500L$
И другие опции для наших клиентов - уточняйте in-world Manoul Carnell
Link 2 In-World TechInvestLab
суббота, 23 мая 2015 г.
[SL] 2006-2015 || Конец эпохи старого Техлаба
Ничто не может длиться вечно, даже дождь. О как мне нравилась эта фраза из "Ворона", того самого, с Брендоном, который погиб как раз на съемках этого фильма...
Тот, старый Техлаб, который оставался неизменным и почти не менялся глобально в течение многих лет и который помнит каждый нуб и мульт, кто заглядывал сюда.
Теперь же остров претерпел кардинальные изменения, поэтому картинку переходного периода я положу здесь. На память.
P.S. И вот ещё что нужно обязательно сказать про новую эпоху Теха. Нет, сейчас я не скажу всего - сам не знаю, не придумали ещё всего до конца, не суть. Не это - суть. Есть парочка ссылок, очень хороших.
Тот, старый Техлаб, который оставался неизменным и почти не менялся глобально в течение многих лет и который помнит каждый нуб и мульт, кто заглядывал сюда.
Теперь же остров претерпел кардинальные изменения, поэтому картинку переходного периода я положу здесь. На память.
P.S. И вот ещё что нужно обязательно сказать про новую эпоху Теха. Нет, сейчас я не скажу всего - сам не знаю, не придумали ещё всего до конца, не суть. Не это - суть. Есть парочка ссылок, очень хороших.
- http://vk.com/techinvestlab
- http://2ndrussia.ru
- http://sl-free.tk
четверг, 25 сентября 2014 г.
[SL] AlphaSMS
Запустил сегодня то, что мечтал сделать в SecondLife еще с далёкого 2007 года - доставка коротких сообщений из виртуального мира на реальные телефоны мира аналогового. Кто-то воскликнет, мол, ничего сложного и другое бла-бла-бла, но по факту, исследовав вопрос, я почему-то так и не смог найти вменяемого сервиса, который бы гарантировано доставляет сообщения.
Зачем это нужно? Это нужно. Как это работает? Скоро опишу в техническом блоге. Но оно работает и это прикольно ;)
Зачем это нужно? Это нужно. Как это работает? Скоро опишу в техническом блоге. Но оно работает и это прикольно ;)
суббота, 30 августа 2014 г.
[XBMC] Аддон для www.turbik.tv - новая жизнь на Марсе
Не так давно, ибо всё относительно, мне в руки попал аддон из репозитория Сепиуса, который был призван без лишней суеты и пыли позволять проигрывать содержимое сайта Turbofilm.TV, который сейчас, кстати, имеет другой адрес - www.turbik.tv
Установив тот аддон я тотчас же обнаружил, что он скорее мёртв, чем жив - аддон никак не мог авторизоваться на сайте и постоянно требовалкушать вводить логин и пароль. Покопавшись в интернетах, я выяснил, что сам Сепиус давно забил поддерживать этот аддон на версии 1.0.7 в виду его бесперспективности для него лично, как я полагаю.
Прошло какое-то время и у меня дошли руки покопаться в нем с целью как-то оживить, во всяком случае, починить авторизацию и посмотреть, что же это за зверь такой и что хорошего он может посулить. В общем, всё это вылилось в переписывание аддона почти полностью, за исключением магических функций выковыривания медийных урлов, потому как захотелось реализовать там то, чего было бы весьма полезно и имеется на самом турбике.
Вот полный список изменений в версии 1.1.0:
Ну и, конечно же, ссылка на мой репозиторий: repository.virtcons-xbmc.zip
А теперь - слайды!
Ах да, чуть не забыл. Что не реализовано в этой версии, но что буду постепенно приводить в порядок:
А вот проблема с проигрыванием отдельных серий мне пока не совсем ясна. Дело в том, что какие-то серии то проигрываются, то нет, плеер говорит, что не может открыть линк. Заметил слабую связь с качеством доступа к серверам турбика, однако это точно не единственная причина. Буду разбираться.
Ну а что будет в следующих версиях я пока не скажу, чтобы интрига была ;)
Установив тот аддон я тотчас же обнаружил, что он скорее мёртв, чем жив - аддон никак не мог авторизоваться на сайте и постоянно требовал
Прошло какое-то время и у меня дошли руки покопаться в нем с целью как-то оживить, во всяком случае, починить авторизацию и посмотреть, что же это за зверь такой и что хорошего он может посулить. В общем, всё это вылилось в переписывание аддона почти полностью, за исключением магических функций выковыривания медийных урлов, потому как захотелось реализовать там то, чего было бы весьма полезно и имеется на самом турбике.
Вот полный список изменений в версии 1.1.0:
- Исправлена ошибка авторизации
- Исправлено отображение обоев, обложек и иконок
- Частично исправлено получение и проигрывание медиа
- Переписаны файлы языковой поддержки под новый стандарт
- Добавлены настройки выбора качества видео, языка звуковой дорожки и включения/отключения показа субтитров по умолчанию
- Добавлена функция просмотра сезона целиком
- Добавлена поддержка субтитров с управлением через стандартные функции плеера
Ну и, конечно же, ссылка на мой репозиторий: repository.virtcons-xbmc.zip
А теперь - слайды!
Ах да, чуть не забыл. Что не реализовано в этой версии, но что буду постепенно приводить в порядок:
- При просмотре сезона целиком субтитры не поддерживаются
- Некоторые видео могут быть недоступны для проигрывания
А вот проблема с проигрыванием отдельных серий мне пока не совсем ясна. Дело в том, что какие-то серии то проигрываются, то нет, плеер говорит, что не может открыть линк. Заметил слабую связь с качеством доступа к серверам турбика, однако это точно не единственная причина. Буду разбираться.
Ну а что будет в следующих версиях я пока не скажу, чтобы интрига была ;)
пятница, 29 августа 2014 г.
[XBMC] Коварные субтитры
Столкнулся я с одной проблемкой, решение которой у меня заняло без малого пару дней. Проблемка эта заключалась в том, что я никак не мог привязать внешний файл субтитров к тому, что игралось внутри плеера. Иными словами, вот есть стрим с видео, есть заботливо подготовленный файлик с субтитрами .srt, а всё вместе ну никак не хотело жить - видео есть, субтитров нет.
В XBMC существует метод назначения субтитров и управления ими:
В XBMC существует метод назначения субтитров и управления ими:
xbmc.Player().setSubtitles()
Казалось бы, что может быть проще? Проинил что следует и запускаем в плеер (в моем случае это был плейлист, содержащий всю информацию по трекам, в т.ч. и служебную), после чего жуём попкорн.
Но нет, субтитры никак не хотели отображаться ни на экране, ни даже в соотв. меню свойств плеера, как я ни бился над проблемой, изгуглив интернет до дыр - к слову сказать, XBMC крайне хреново документирован, большинство информации подчерпывается из форумов, где такие бедолаги, как я, ишут ответы на свои вопросы.
Что ж, в конце концов выход был найден благодаря безызвестному анонимусу, который вскользь заметил, что, оказывается, коварный плеер ничего по медиа не инит до тех пор, пока не открыл это самое медиа и не начал его играть. То есть попусту он ничего не знает о том, что куда назначать, пока не появился хэндл. Наверное, анонимус был одним из разработчиков XBMC :)
Таким образом, применив полученные знания на практике, я написал вот такой код (в реальности он несколько иной, я просто упросил для примера):
def playMedia(mediafile, subfile):
player = xbmc.Player()
player.play(mediafile)
if len(subfile) > 0:
for _ in xrange(30):
if player.isPlaying():
break
time.sleep(1)
player.setSubtitles(subfile)
Подписаться на:
Сообщения (Atom)





















