Испириран от интереса към плеара ми за гледане на български телевизии, реших да дам и някои идеи за хората, които нямат под ръка компютър и могат да гледат стриймове на мобилния си телефон с Android. За целта е необходимо да се инсталира плеър, който може да плейва rtmp-стриймове. Може би най-популярния и простичък подобен плеър за Android към момента е XMTV Player. Има само едно неудобство, че не се инсталира през Google Play, а ръчно. За да стане това, трябва да се включи инсталиране на приложения от Unknown Sources. Влезте в настройките на телефона и го включете: Settings -> Security -> Unknown Sources
След това изтеглете XMTV Player, влезте в Downloads и кликнете на приложението и го инсталирайте.
След това изтеглете тази плей-листа с български телевизии: XMTV_BGTV_palylist.m3u. Плей-листата е мое дело. Вероятно някои от адресите след време ще спрат да работят, но ще се постарая да я ъпдейтвам периодично.
Телевизиите към днешна дата (22.01.2017) са: БНТ, bTV, Nova TV, OnAir, ТВ Европа, Sportal.
Би трябвало плей-листата да се е свалила в Downloads. Намирате я, кликате на нея и избирате да се отвори с XMTV Player. Важно: Преди да отворите плей-листата, трябва да стартирате плеъра поне веднъж, за да поотвърдите, че ще го ползвате. Плей-листата може да се отвори и от файловия браузер на XMTV.
Това е. Наздраве!
PS [16.07.2016]: Добавени са радио БНР и радио City. Ъпдейтнат е стрийма на OnAIR.
Не е реклама, нито се хваля. Просто препоръчвам това джобно ножче Enlan M024A. Някои от приятелите ми са любители ножари. Аз не съм, но все ми се налага да дялна нещо. Имах натрупани разни бонус точки от китайските сайтчета и трябваше да ги ползвам, защото ще ми изгорят до края на месеца и реших да си взема една чекийка. Това ножле ме изненада с качеството си, а цената на която го взех е смешна – около $4.
Кефи ме, че се научих да го отварям и затварям с една ръка. Клипа за закачане може да се свали с торкс (не съм гледал номерата, но мисля, че и с подходящ шестограм може да се получи), ако почне да пречи при по-продължителна работа.
Чекийката е малка и е тежка. Не знам това дали е недостатък или предимство. Но мен ужасно ме кефи. Пичове, препоръчвам го! Настина е добро!
ПС: Вероятно може да се намери в други китайски сайтове на още по-добра цена, така че огледайте се.
Обичате ли да рисувате? И аз обичам, но не се справям много добре, а толкова ми се иска да рисувам хубаво. Дъщеря ми също обича да рисува и мисля, че повече и се отдава. Реших, че на едни такива видни художници като нас е добра идея да си вземем графичен таблет. Не бях убеден до колко ще свикнем с подобна джаджа, за това се насочих към китайските устройства, които са на цени под 100 кинта. Всъщност основната идея да го закупя е, че ми се налага да рисувам разни логота, скеч-картинки и елементи от дизайна на проектите ми. До сега го правех с молив и после сканирах или снимах скиците. Но е добре човек да не изостава от технологиите, защото времето ще го изпревари. Един приятел казва, че след години и до обществена тоалетна няма да можем да идем без нужда от някаква джаджа :).
Спрях се на Ugee M708 поради няколко причини – цена, има официален сайт и драйвери, които се ъпдейтват, ревютата са сравнително добри.
Закупих графичния таблет от Gearbest: UGEE M708 Digital Painting Graphic Tablet P51 Drawing Pen. С доставката ми излезе на цена $44.28.
Ей така изглежда на живо:
Инсталирах му драйверите от диска с който дойде и веднага се разпозна от Win7. Но на следващият ден започна да се държи странно. Когато позиционирам писалката над полето я отмества спрямо последното положени на курсора на мишката ми. Трагедия! За това изтеглих последните налични драйвери от сайта на Ugee: https://www.ugee.eu/m708-dm/. Е с тези драйвери работи вече 3-4 седмици без никакъв проблем.
До сега не съм ползвал графичен таблет, но мога да кажа, че тая джджка е чудесна! Полето е достатъчно голямо за моите нужди и се асоциира с целия дисплей на монитора.
Все още не съм задълбал толкова, че да си програмирам копчетата, важното е че Ugee M708 работи чудесно и под Ubuntu, след инсталиране на драйверите за графични таблети DIGImend. За Ubuntu инсталирах digimend-dkms_6_all.deb.
Все още нямам богата галерия с рисунки от таблета, но имам няколко лога и скици на дизайни.
Ще споделя едно лого, което правих. Скицата, драскана на бързо:
А това е вектора, преди да мине през Photoshop:
Използвах Inkscape, сорс файла може да се изтегли от тук: Kotva_SVG.Inkscape.rar
Това е тест първи по създаването на собствен ръкописен шрифт. За целта използвах Inkscape, като изтеглих шаблони от https://www.paintfont.com/. Както всяко начало и това е трудна работа. Разработвам един проект в който искам да вкарам натурален шрифт, който да имитира максимално писане с химикал. Потърсих за подобни шрифтове на кирилица, но не намерих. За това се наложи, да се пробвам да си направя сам. Е горе-долу се получи. Не е баш както си го представях, но ще го ползвам.
Наличните символи не са много:
Ето как изглежда шрифта ми на кирилица и на латиница:
Урока е валиден за версия на плеъра 0.8 и по-нови.
Скоро пренаписах кода (то па един код) на плеара ми за БГ-телевизии Simple BG TV Player, като прехвърлих адресите на стриймовете във външен файл. Тази промяна да доста свобода на действие, като позволява:
да се добавят нови стриймове и да се редактират старите
да се записва видеото
да се сменя дъмпера и плеара
В тази статия ще покажа някои от възможностите за редактиране на settings.ini файла.
Записване на стрийма във файл
За конкретния пример ще запиша стрим на телевизия BTV. Като начало е добре да запазим копие на оригиналния файл settings.ini и да му дадем друго име, примерно settings_ORIGINAL.ini. Сега вече можем да мажем във settings.ini без притеснения, че може нещо да се обърка. Отваряме файла и намираме реда със стрийма на BTV. Копираме реда и го пействаме на нов ред. След това изтриваме последната част, която пайпва стрийма към mplayer и указваме на дъмпера да записва до файла с опцията “-o file.flv”. BTV сменят често адреса на стрийм сървара, затова ще покажа текущата работеща команда. Новия ред е добре да започва с ново име, примерно BTV RECORD или от сорта. Ето как изглежда при мен:
RECORD BTV=rtmpdump -r "rtmp://46.10.150.111:80/alpha" -a "alpha" -f "WIN 11,5,502,149" -W "https://www.btv.bg/static/bg/shared/app/flowplayer/flowplayer.rtmp-3.2.13.swf" -p "https://www.btv.bg/live/" -y "alpha" -o BTV.flv
Запазваме файла и стартираме програмата. Ето кратко видео, как записвам видео стрийм на телевизия BTV:
Примерния settings.ini файл за този тест може да се изтегли от тук: settings.ini-Record_BTV.rar Архива се разархивира в директорията на програмата и се заменя стария файл settings.ini.
Добавяне на нов стрийм, плейване с ffplay и запис до файл с ffmpeg
В списъка с телевизии ми липсва CityTV. Реших да го добавя, но ми се искаше да добавя и опция за запис на клиповете. Единствения проблем е, че CityTV използва формат, който не се поддържа от rtmpdump (всъщност не е точно така, но да не задълбаваме). За това трябваше да добавя нов плеър, който да плейва стрийма от сайта на City.bg. Изтеглих архив с пакета ffmpeg и разархивирах двата инструмента ffplay.exe и ffmpeg.exe. Нищо друго не ми трябва. След това се заиграх с settings.ini.
За да се добави тази нова телевизия се отваря оригиналния settings.ini в текстов редактор и се добавя един ред, който указва да програмата как да плейне City TV с плеъра ffplay:
Ето и видеото, което показва как плейвам стрийма от City с ffplay и след това го записвам с ffmpeg:
Примерния settings.ini файл за този тест може да се изтегли от тук: settings.ini-Play_and_Record_video_City.rar Архива се разархивира в директорията на програмата и се заменя стария файл settings.ini.
ВАЖНО: При запис на поточното видео е важно конзолния прозорец да се затвори с командата Ctrl + C – това ще затвори правилно записваното видео. Ако този прозорец се остави отворен и се затвори само прозореца на програмата, то записа ще продължи докато компютъра не се изключи!
Програмата е изключително простичка. Всъщност е GUI с възможност за ползване на различни инструменти за плейване и запис на поточно видео. Но пък мен ми е много удобна.
Ако искам да гледам и записвам онлайн телевизии или други стриймове, често използвам инструмента rtmpdum. Много добър инструмент, но се използва в конзолен режим или през промпта на Windows. В тази статия ще покажа няколко примера, как използвам rtmpdump за да гледам и записвам български онлайн телевизии. Операционната система под която ще покажа примерите е LinuMint 18.1, която е Ubuntu базирана. Като исключим някои подробности по инсталацията, техниките са абсолютно същите и под Windows с тази разлика, че инструментите трябва да се намират в една директория.
Подготовка за дъмпване на онлайн видео стриймове
За начало е добре да инсталираме на flash-player за Ubuntu:
След това инсталираме rtmpdump и някакъв лек видео плеър, който позволява подаване на команди през конзолата. Mplayer или VLC са доста добър избор, затова аз ще използвам mplayer:
Да бучнем и един VLC плеър – ей така да има. Понякога с него картината е по-добре.
sudo apt-get install vlc
Създаваме една директория rtmpdump_tests в home-директорията и позиционираме конзолата в нея:
mkdir rtmpdump_tests
cd rtmpdump_tests
Вече сме готови да стартираме нашите rtmpdump тестове, но преди това нека да видим какви са основните аргументи, които ще ползваме от хелпа на програмата:
rtmpdump -h
--rtmp|-r url URL (e.g. rtmp://host[:port]/path)
--playpath|-y path Overrides the playpath parsed from rtmp url
--pageUrl|-p url Web URL of played programme
--app|-a app Name of target app on server
--swfVfy|-W url URL to player swf file, compute hash/size automatically
--flashVer|-f string Flash version string (default: "LNX 10,0,32,18")
--quiet|-q Suppresses all command output.
--flv|-o string FLV output file name, if the file name is - print stream to stdout
--debug|-z Debug level command output.
Мисля, че хелпа ясно показва кой аргумент за какво се ползва. Но най-добре да разгледаме няколко примера, които ще изяснят нагледно употребата им, но ще внеса малко пояснения: -r – адреса на RTMP-сървара -y – файла или името на стрийма, който плейва сървара -p – адреса на WEB-страницата от която се излъчва видеото -a – името на приложението, което плейва стрийма. Много често то е записано в адреса на rtmp-сървара. Примерно в rtmp://rd.xxxxdn.com:2016/fls, този аргумент е fls. -W – това е флаш плеъра с контролите, който плейва стрийма. Обикновено това е swf-файл. Понякога в този файл се съдържа и парола за отключване на стрийма. -f – флаш версията с която плейваме стрийма. Можем да използваме Windows (“WIN 18,0,0,232”) или Linux (“LNX 10,0,32,18”) версии. -q – не е важна команда. Пропуска показването на допълнителната информация при изпълнение на командите. Използвам я, за да виждам по-бързо това, което ме интересува. -o – записва стрийма в *.FLV файл, който в последствие можем да качим в Youtube или просто да си запазим някое тв-предаване във файл. -z – много важна команда. Често показва какъв ни е проблема, когато някой стрийм не иска да се дъмпне.
Дъмпване на онлайн телевизия – пример 1
Аз не гледам много телевизия, но напоследък ми се случва да си пускам OnAir. Харесват ми репортажите, публицистиката и предаванията за култура и спорт. Адреса за онлайн гледане на телевизията е: https://www.bgonair.bg/tvonline
Важно е да отбележим, че много често не е нужно да стартираме Wireshark, Fiddler или друга тежка бойна техника, за да дъмпнем някое поточно видео. Достатъчно да е поразгледаме сорс-кода на страницата, която излъчва видеото.
В случая ще прегледам сорс-кода и ще тестваме, дали параметрите в него са достатъчни. Ще използвам браузера Firefox. Отваряме сорса на https://www.bgonair.bg/tvonline , натискаме клавишната комбинация за търсене Ctrl+F и пишем rtmp.
Виждаме JavaScript код с параметри, които се подават на SWF-плеър, който стартира адрес някакво поточно RTMP-видео. Вероятно това е търсеното видео на OnAir. Раглеждайки този пасаж от сорс-кода на страницата, можем да изкараме следните параметри с които да стартираме rtmpdump:
-r rtmp://lb.cdn.bg:2006/fls
-y bonair.stream?at=66981d3d13decfde7efc2e1fa19eb2b4
-W https://i.cdn.bg/flash/jwplayer510/player.swf
-a fls/
Допълнително знаем и адреса на страница, която плейва видеото. Значи имаме и параметъра -p:
-p https://www.bgonair.bg/tvonline
Да направим първия тест с тези параметри, като задължително включим дебъгването, за да ни покаже, ако има някакъв проблем:
Мда… Неуспешен първи опит, но пък ни донесе ценна информация за грешката. Да разгледаме какво изплю конзолата:
Интересният ред е този:
redirect, STRING: rtmp://edge12.cdn.bg:2006/fls>
Той ни покзва, че rtmp-адреса в страницата е с пренасочване към адрес rtmp://edge12.cdn.bg:2006/fls. Ок, тогава да направим нов опит с този нов адрес. Този път изпълнени с енстусиазъм и увереност, премахваме дебъгването и закачаме потока с пайп към mplayer. Важно е да се отбележи, че понякога mplayer иска предваретелен кеш на потока, или пък не иска. Това зависи и от хардуера в машината. Обикновено слагам кеширането, което препоръчват разработчиците и слагам опцията –, която казва на mplayer, че приема пайп поток, а не файл.
В конзолата се вижда, че mplayer започва да кешира видеото. Трябва да изчакаме, докато кешира около 20%, след което се появява прозореца с видеото. От опит знам, че много често повечето параметри не са необходими. Достатъчно е да знаем само rtmp-сървара и името на стрийма. Нека да пробваме, като разкараме и кеширането на mplayer.
Предлагам да затвърдим материала, като дъмпнем още някоя телевизия. В този пример ще покажа как се дъмпва онлайн стрийма на BTV. Подхода е същият, дори може да се каже, че е още по-лесно. Отваряме страница с онлайн видеото: https://www.btv.bg/live/ и търсим в сорс-кода за стринг rtmp. Виждаме, че го има на няколко места, но нас ни интересува конкретно този пасаж:
Сега остава да сглобим командата за rtmpdump и да тестваме. Но ще използвам VLC-плеара, защото тоя mplayer нещо ме нерви с поведението си, множеството ръчни настройки и клавишни комбинации.
И то взе, че тръгна! 🙂 Дори нямаше пренасочване. Ако искаме да съхраним до файл, пак като по-горе, добавяме -o some_file.flv
Ето кратко видео и с упражнението – сваляне на онлайн видео от BTV с rtmpdump:
За следващото упражнение ще трябва да намеря нещо по-завързано.
Дъмпване на онлайн телевизия – пример 3
За този пример ще дъмпнем БНТ. Ще го направя под Windows, но тъй като знам, че стрийма от БНТ изисква токен (secure token – ключ за стартиране), за да се дъмпне, ще ни трябват някои допълнителни инструменти: – Firefox – Web браузер. Избирате се езика и версията – 32 или 64bit. – Firebug – добавка (addon) за Firefox, който ще ни помогне доста за разлистване на сорс кода на страницата. – JPEXS Free Flash Decompiler – този безплатен инструмент декомпилира *.SWF файлове до изходния сорс-код. – Notepad++ – текстов редактор, който може да търси в множество файлове.
Първа да разузнаем кои параметри можем да видим в сорс кода на страницата. Посещаваме с Firefox страницата на БНТ, която излъчва стрийма: https://tv.bnt.bg/bnt1/16×9/ Отваряме сорс кода и търсим за SWF. Оказва се, че няма такъв файл, значи е набутан в някой от JavaScript файловете и ще трябва по задълбочено ровичкане с Firebug. Натискаме F12 за да заредим панела на Firebug. Избираме показалката за “Inspect element” и кликаме върху флаш прозореца с видеото. След като се лисне сорса търсим в редовете JavaScript параметрите, които се подават на плеъра. Ето ги гадините:
До тук имаме следните параметри: -r rtmp://lb.cdn.bg:2020/fls -y bnt.stream?at=42516e922eacee82fb021dbc64b9165b -a fls/ -W https://cdn.bg/eflash/jwplayer510/player.swf -p https://tv.bnt.bg/bnt1/16×9/
Да направим първи тест, за да проверим, дали няма пренасочване или някакъв друг проблем:
Появи се secureToken стринг, което означава, че видеото има нужда от този токен (ключ, парола), за да се стартира. Как можем да разберем кой е този ключ и къде е този ключ. Понякога този токен се намира в HTML кода, друг път е набутан в SWF-файла. Има случаи при които видеото е защитено с двойка код + ключ. В един от следващите уроци ще покажа и случай, когато ключа е обфускейтнат и не се вижда никъде в явен вид, освен чрез хекс-редактор. В случая проверих и знам, че токена се намира в SWF-файла. За да го видим, първо трябва да декомпилираме SWF-файла до изходния му код. За тази цел сваляме swf-файла https://cdn.bg/eflash/jwplayer510/player.swf с някой даунлоадер или директно с браузера и го отваряме в програмата JPEXS Free Flash Decompiler. Слектираме директорията със ActionScript-овете и я екстрактваме:
Сега отваряме програмата Notepad++ и избираме от менюто Search -> Find in files…, избираме директорията в която да рови, като оставяме за филтър “*” за да прерови всички файлове. Критерий за търсене ни е “securetoken”. Попадаме на тези ценни редове:
БИНГО – B@1R1st1077! Точно това е, което ни трябва! Правим два-три опита с останалите параметри и виждаме, че тази команда стартира видеото:
Следващия стрийм трябва да е още по усложнен. Може би трябва да покажа, как се разбират обфускейтнатите пароли, въпреки, че това не е много за начинаещи. Не е сложно, но не съм сигурен, дали е за масово споделяне. Може би ще дам подсказки за по-любознателните.
Като дете обожавах комикс-списанието Дъга. С дни съм се наслаждавал на илюстрациите и историите. Трескаво проверявах в книжарницата, дали е излязъл новият брой.
Преди няколко дни от профила на илюстратора Пенко Гелев във Facebook разбрах, че мога да си поръчам новия брой на Проект Дъга – Над Дъгата 2. Ей тоя подарък за Нова Година чаках. Всъщност идеята е да го подаря на дъщеря ми за именния и ден, но и аз ще го разглеждам с огромен интерес. Поръчах си го следвайки инструкциите от тук и дойде за около 4-5 дни. Разкошно списание! Качеството е на невероятно ниво и като съдържание, и като изработка. Имаше и бонус – календар Над Дъгата 2 за 2017-та. Респект за целия екип, стоящ зад проекта!
И тъй като вече си имам новия брой, остана да се сдобия със стария – Проект Дъга – Над Дъгата от 2012-та година. Оказа се, че намирането на хартиеното издание е кауза пердута. Но пък разбрах, че авторите са решили да пуснат електронно копие напълно безплатно. Лично аз изпитах леко разочарование от избора на сайтове от които може да се изтегли броя – цък и цък.
Позволих си да кача Дъгата и на Google Drive: Nad_Dygata_2012-HQ.pdf
А илюстрациите наистина си заслужават!
За сега няма да качвам примерни изображения от новия брой – Над Дъгата 2, за да не ги види дъщеря ми. Ще си запазя насладата от изненадата.
Не знам, защо е толкова трудно да се намри безплатен немско-български офлайн речник. Търсих нещо читаво и не намерих. И за Android ситуацията е тъжна – безплатните речници, които ги има в GooglePlay са по-скоро рекламни платформи, а набора от думи е доста … семпъл. За това реших да си сглобя нещо с подръчни средства, което да интегрирам във вездесъщия GoldenDict.
Изтеглих два речника от Babylon:
– German-Bulgarian
– Bulgarian-German
Тези речници са малко криви и в тоя формат (BGL) е невъзможно да се редактират. Могат да се ползват в GoldenDict директно, но тъй като са компилирани в ANSI има досадни проблеми с умлаутите. За това ги прекомпилирах с Pyglossary – dictionary converter до обикновени текстови файлове, които мога да редактирам с регулярни изрази, за да се появят умлаутите. Промених енкодинга на файловете от ANSI до UTF-8 защото това е правилния енкодинг за юникод символите. След това прекомпилирах речниците до популярния StartDict-формат *.IFO, който се поддържа от повечето безплатни речникови платформи. Остана ми само да копирам речниците на съответните места.
Речниците с StarDict-формат могат да се изтеглят от тук: Bulgarian-German-Bulgarian_Dictionary.zip
Инсталиране на Немско-Български речник под Linux
Ще опиша процедурата за Ubuntu-базирани дистрибуции.
Първо ъпдейтваме хранилищата и изтегляме програмата GoldenDict:
Създаваме една папка dictdata в home-директорията в която да разархивираме речниците:
1
mkdir ~/dictdata
mkdir ~/dictdata
Изтегля се архива Bulgarian-German-Bulgarian_Dictionary.zip и се разархивира в папката dictdata.
След това отваряме програмата GoldenDict и правим следните настройки, за да заредим речниците:
Избираме от менюто Edit->Dictionaries, след това кликаме на бутона Add.. и браузваме до директорията с речниците – dictdata. След което натискаме бутона Rescan Now. Речниците вече са добавени. Ето как изглежда при мен:
Инсталиране на Немско-Български речник под Windows
Изтегля се архива Bulgarian-German-Bulgarian_Dictionary.zip и се разархивира в някоя директория, примерно C:\dictdata.
Изтегля се програмата GoldenDict за Windows. Може да се изтегли портабъл версия или стандартен инсталатор. Инсталираме програмата след това правим настройките, за да посочим кои речници да ползва: Редактиране->Речници…
Натискаме бутона Добавяне… и посочваме директорията в която сме разархивирали речниците:
След което натискаме бутона Повторно сканиране и след това бутона Ok.
И вече си имаме речниците:
Ако някой се затруднява с настройките на програмата, може да изтегли портабъл версия за Windows с добавени немско-български и английско-български речници от тук: GoldenDict_Portable-EN-BG,DE-BG.rar
Предполагам, че само трябва да се разархивира и да се ползва.
GoldenDict разполага с много настройки, които са доста удобни – последователността на речниците може да се променя, могат да се добавят саунд-файлове с изговарянето на думите и т.н. Страхотна програма, а на всичкото отгоре напълно безплатна!
Инсталиране на Немско-Български речник под Android
GoldenDict има страхотна безплатна версия и за Android – GoldenDict Free. По-добър речник за телефон/таблет лично аз не съм срещал до сега. Само трябва да си качим немско-българските речници. За целта изтегляме архива Bulgarian-German-Bulgarian_Dictionary.zip. След това създаваме една папка dictdata в главната директория на устройството ни (телефона или таблета).
Свързваме се с телефона/таблета по някакъв начин – с кабел или през WiFi. Аз ползвам ES File Explorer, който има една много полезна опция Network->Remote Manager и си работя през WiFi. Разархивираме архива с речниците в папката dictdata.
При стартиране на програмата тя сканира всички директории за речници. При мен автоматично намери речниците. Не се наложи да правя нищо допълнително. Ето немско-българския речник GoldenDict за Android в действие:
Share and Enjoy !
Shares
This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish.AcceptRead More
Privacy & Cookies Policy
Privacy Overview
This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.