вторник, 19 февраля 2013 г.

SCH735RPB

А вот еще приятный экземплярчик ножа "для яхтсменов и кендок" - Schrade Mariner's Rigging Sailor's Knife - SCH735RPB.





Клинок приятной формы, без всяких простигосподи, серейторов.
Правда, к сожалению и без приспособ для открытия одной рукой и фиксатора.


Зато свайка - с фиксатором в открытом положении, для складывания надо нажать на скобу для темляка.


Сделан вполне прилично - ничего не болтается и не заедает.
В сложенном состоянии - 105 мм, клинок - 63 мм.

воскресенье, 10 февраля 2013 г.

Как загрузить видео с OnlineTV.ru - 2 (попроще)

Способ распотрошить обмен браузера и RTMP-сервера при помощи wireshark рабочий, но это, так сказать, тяжелая артиллерия. В принципе в комплекте RTMPDump есть утилита-прокси сервер rtmpsuck.exe, которая, если на нее перенаправить запросы браузера "наружу", на порт 1935, выдаст все параметры, с которыми браузер запрашивает данные по RTMP. В описании есть и пример команды, как это перенаправление сделать средствами linux. Под windows средствами OS это сделать затруднительно, но зато есть RTMPDumpHelper от NirSoft. RTMPDumpHelper пытается внедрить свою dll во все процессы, использующие интернет, отлавливает обращения на порт 1935, перенаправляет их на rtmpsuck.exe, а ответ, который возвращает rtmpsuck.exe передает обратно в процесс браузера.

Итак, качаем RTMPDumpHelper и RTMPDump и распаковываем все в один каталог.

Запускаем браузер, открываем страницу с видео, например http://www.onlinetv.ru/video/643/.
Запускаем RTMPDumpHelper.exe, RTMPDumpHelper автоматически ставит на прослушку все обращения браузера на порт 1935 и запускает rtmpsuck.exe из комплекта RTMPDump, которому будет их переадресовывать.
Запускаем на просмотр видео. В браузере смотрим видео, а в окне rtmpsuck.exe видим параметры первоначального обращения и второго, после переадресовки:



В это же время проигрываемое видео автоматически сохраняется в файл, но можно и скопировать параметры из окошка rtmpsuck.exe в команду для FFmpeg, чтобы например, создать файл только со звуком:
ffmpeg -i "rtmp://88.212.207.11:1935/onlinetv/mp4:onlinetv/32/643/petrovic_hq.mp4 \
playpath=mp4:onlinetv/32/643/petrovic_hq.mp4 \
swfUrl=http://www.onlinetv.ru/static/flash/player.swf?v=1.0.5.5" \
-vn petrovic.mp3

или видео полностью:
ffmpeg -i "rtmp://88.212.207.11:1935/onlinetv/mp4:onlinetv/32/643/petrovic_hq.mp4 \
playpath=mp4:onlinetv/32/643/petrovic_hq.mp4 \
swfUrl=http://www.onlinetv.ru/static/flash/player.swf?v=1.0.5.5" \
-c copy petrovic.mp4

з.ы. К сожалению RTMPDumpHelper иногда падает и при этом его dll остается загруженной в кучу процессов :(, но что еще хуже, после одного падения RTMPDumpHelper уже невозможно нормально запустить, он начинает падать сразу после запуска, и так до перезагрузки компьютера.

четверг, 7 февраля 2013 г.

Как скачать видео или звук с OnlineTV.ru

Не люблю я смотреть видео на сайтах, а самый любимый жанр, всяческие разговоры, вообще смотреть особого смысла нет, предпочитаю слушать с плейера по пути на работу/ с работы. Поэтому, когда на OnlineTV.ru появилась Вся правда о... происхождении человека с доктором биологии Александром Марковым, а кнопки Скачать не обнаружилось, пришлось немножко поковыряться внутрях OnlineTV.ru и найти способ получить вожделенный mp3, ну и mp4 если надо.

Загружать потоковое видео по протоколу RTMP умеют спец.утилитка RTMPDump, ну и, сюрприз, сюрприз :) FFmpeg. Но просто по-тупому взять из исходников страницы http://www.onlinetv.ru/video/665/ свойства плейера streamer: "rtmp://cdn0.onlinetv.ru:1935/onlinetvload/", file: "onlinetv/19/665/evolution.mp4,onlinetv/19/665/evolution_hq.mp4" и подсунуть этим утилиткам не получится, во-первых, серверу, кроме адреса файла надо подсовывать еще дополнительные поля, а во-вторых, как оказалось файлы лежат по другому адресу.

Попытка поковырять обмен браузера и сервера при помощи Microsoft Network Monitor обломалась :( т.к. не смог найти для него парсер RTMP, а без парсера протокола все RTMP пакеты Microsoft Network Monitor показывает как голимый TCP - ничего не поймёшь.

Зато, как оказалось, хорошо показывает RTMP Wireshark. Запускаем Wireshark, включаем слежение, ставим фильтр rtmpt, обновляем страницу http://www.onlinetv.ru/video/665/, запускаем просмотр видео, видим сначала connect по первоначальному адресу, потом connect после переадресации и реальный адрес rtmp://, запомним также свойство swfUrl, пригодится:



несколькими строками ниже - команда play с реальным адресом файла:



Из распотрошенных данных можно составить команду на загрузку при помощи RTMPDump:
rtmpdump.exe --rtmp "rtmp://88.212.207.11:1935/onlinetv/mp4:onlinetv/19/665/evolution.mp4" \
--playpath "mp4:onlinetv/19/665/evolution.mp4" \
--swfUrl "http://www.onlinetv.ru/static/flash/player.swf?v=1.0.5.5" \
-o evolution.flv
(если что-то не идет можно добавить ключик --verbose, чтоб получить побольше информации), или при помощи FFmpeg:
ffmpeg -i "rtmp://88.212.207.11:1935/onlinetv/mp4:onlinetv/19/665/evolution.mp4 \
playpath=mp4:onlinetv/19/665/evolution.mp4 \
swfUrl=http://www.onlinetv.ru/static/flash/player.swf?v=1.0.5.5" \
-c copy evolution.mp4
Собственно FFmpeg'ом можно создавать сразу mp3:
ffmpeg -i "rtmp://88.212.207.11:1935/onlinetv/mp4:onlinetv/19/665/evolution.mp4 \
playpath=mp4:onlinetv/19/665/evolution.mp4 \
swfUrl=http://www.onlinetv.ru/static/flash/player.swf?v=1.0.5.5" \
-vn evolution.mp3

Вуаля! Дальше, пока разработчики сайта OnlineTV.ru что-нибудь не поменяют, можно так глубоко не потрошить, а брать из исходников страницы, например http://www.onlinetv.ru/video/658/, адрес файла file: "onlinetv/32/658/hakamada.mp4,onlinetv/32/658/hakamada_hq.mp4" и составлять команду для загрузки:
ffmpeg -i "rtmp://88.212.207.11:1935/onlinetv/mp4:onlinetv/32/658/hakamada_hq.mp4 \
playpath=mp4:onlinetv/32/658/hakamada_hq.mp4 \
swfUrl=http://www.onlinetv.ru/static/flash/player.swf?v=1.0.5.5" \
-c copy hakamada_hq.mp4

з.ы. обратные слэши - \ - не все командные оболочки адекватно воспринимают как визуальный разрыв длинной строки, так что, на всякий случай - вводите всю команду одной длинной строкой.

UPD: А вот ещё вариант.

воскресенье, 3 февраля 2013 г.

Олег Мелехов. «Звёздная бирема "Аквила". Мятеж»

А вот кому космооперу почитать! Мир, герои, сюжет, все на месте, не хватает только продолжения.

Где-то в параллельной вселенной живет и процветает звездная Республика. Десятки обитаемых миров, миллиарды граждан, могучие легионы и доблестный флот, а еще - алчные и могущественные враги, далекие и чреватые опасностями космические трассы. Что может быть общего у опального патриция и осужденной плебейки — бывшей рядовой штурмового отряда? Ничего, кроме приговора. Что связывает хладнокровную пилотессу и командира «звездной пехоты»? Только взаимная неприязнь и корабельная нейро-сеть. Но однажды судьбы четырех столь разных людей сошлись на борту «Аквилы» - лучшей звездной биремы пограничного сектора Вироза, и в истории Республики началась новая глава.

Прикупить можно в Литмаркете.

пятница, 1 февраля 2013 г.

Клубные соревнования 30.01.2013

С нового года, как водится, решили начать новую жизнь :) а именно в конце каждого месяца проводить клубные соревнования. Очень удачно удалось привлечь поучаствовать пару ребят из клуба исторических(?) фехтовальщиков. Поскольку с началом малость подзатянули, в полном формате провести не получилось, отбились только каждый с каждым, а на отдельные финалы времени уже не хватило, итоги подводили по набранным очкам. Но вообщем получилось довольно удачно, мне понравилось.

Вообще такие мероприятия имеет смысл проводить хотя бы для отработки на автоматизм организационных моментов - составление сетки, ведения протокола и судейства.

Парочка видео, первое - безрезультатный бой наших 1-х данов:



и второе - с одним из гостей (с белой повязкой):



Ну и несколько фоток:

Дима пробивает мен Андрею


Серега пробивает мен Андрею

Нда, кому-то надо почаще приходить на тренировки ;)

Серега смущал нас jodan'ом, мы уворачивались как могли :)




Регулярно снимая поединки заметил интересную штуку - хорошие, "живые" кадры получаются только если хотя бы один боец приличного уровня, если оба - начинающие снимать практически бесполезно, ни одного интересного кадра.