Прихващане на Nova Live stream

В това видео ще покажа, как се взима ръчно файла с live stream на Нова ТВ. Има лека разлика спрямо прихващането на bTV стрийма, защото нова ползва iframe на външна страница.
Използвани инструменти:
firefox
wget (for windows)
pup html parser
ffplay (идва стандартно с ffmpeg)

Share and Enjoy !

Shares

Прихващане на bTV Live stream

bTV имат доста слабичка защита на стрийма. Нова поне ползват криптиране на стрийма с hls.key, което не е никакъв проблем за чупене, но пак е нещо. бТВ се защитават само с един динамично генериран адрес, който обаче е твърде достъпен, поне според мен. Сменят масива с адреси всеки ден, но факта, че присъства статично в ajax адрес, който може да се отвори и прочете от всеки, прави цялата защита смешна. За любителите на кепчъринга и за тираджиите прилагам скромно туториалче. Използваните инструменти са: Firefox, wget, jq, ffmpeg.

И по-лесния вариант за прихващане на видеото само с Firefox.

С тази техника може да се прихване почти всеки видео стрийм или да се свали видео файл. Когато видеото е криптирано, може да се записва стрийма, но по-инстересно е да се свалят всички файлове с високо качество и да се декриптират ръчно, като се ползва hls-ключ и оригиналните ts-файлове.

Ето и простичък PHP-код, който върши цялата работа по екстрактването на линка:

<?php
$wpage = file_get_contents("https://btvplus.bg/live/");

preg_match("@url: +'([^']*)@", $wpage, $m);

$config_page = file_get_contents("https://btvplus.bg".$m[1]);

$j = json_decode($config_page, true);

echo $j['info']['file'];
?>

Трябва да се отбележи, че bTV детектват, дали url-адреса се зарежда от чужбина и го ограничават (с http response code 301), но е много вероятно самия стрийм да не е ограничен. Не съм го пробвал. Хубавото е, че веднъж гепен адреса на стрийма, може да се гледа цял ден.

————————

И един бонус – сорс код за C#, който гепва стринга и го плейва с ffplay. За целта ffplay трябва да е в директорията с компилираното exe или в променливата Path на обкръжението на Win.

using System;
using System.Text.RegularExpressions;
using System.Net;
using System.IO;
using System.Diagnostics;


public class playBtv{
	static void Main(string[] args){
		string baseUrl = "https://btvplus.bg";
		string url1 = baseUrl + "/live/";
		ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;
		WebClient client = new WebClient();

		string htmlCode1 = client.DownloadString(url1);
		string pattern = "url:";

		StringReader strReader = new StringReader(htmlCode1);
		string aLine, url2 = null;
		while(strReader.Peek() >= 0){
			aLine = strReader.ReadLine().Trim();

			if(aLine.Contains(pattern)){
				Match match = Regex.Match(aLine, @"([^']*)'([^']*)");
				url2 = baseUrl + match.Groups[2].Value;
				break;
			}
		}
		string htmlCode2 = client.DownloadString(url2);

		Match match2 = Regex.Match(htmlCode2, "(file\":\")([^\"]*)");
		string m3u8 = match2.Groups[2].Value.Replace("\\","");
		Process.Start("ffplay", m3u8);
	}
}

Компилира се с някой от наличните в Windows C# компилатори от .NET Frameworks. Примерно:

C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc /target:exe btv_play.cs

Share and Enjoy !

Shares

Обединяване на хоризонтално и вертикално позиционирано видео с ffmpeg

Понякога правя върховната глупост да снимам видео с телефона, като го държа вертикално. После се усещам и го завъртам както си трябва и правя още едно видео. А накрая ми се иска да ги обединя. Намирането на безплатен софтуер, който да слива подобен тип вертикално и хоризонтално разположени видео файлове ме затрудни. За това се върнах отново към класиката ffmpeg.

Стъпките за обединяване на 2 подобни видео файла са следните:

  • двата файла трябва да са с едни и същи кодеци
  • конвертиране на 2-та файла до TS-формат
  • напасване на двата файла по широчина и височина, като се добавя padding (отстояния) в картината на файла, сниман вертикално
  • обединяване на двата файла

Ще си помогна с един пример:

ffmpeg video join - vertical and horisontal

video1.mp4 – хоризонтално разположено с размери на картината 1920×1080.
video2.mp4 – вертикално разположено с размери на картината 1080×1920.
out_full.mp4 – изходния файл, след обединяването на двата

Използвам по-долните команди за ffmpeg са тествани под Win7, но вероятно ще работят и под Linux.

1
2
3
4
ffmpeg -i video1.mp4 -q 1 -f mpegts out1.ts
ffmpeg -i video2.mp4 -q 1 -vf "scale=iw*min(1920/iw\,1080/ih):ih*min(1920/iw\,1080/ih),pad=1920:1080:(1920-iw)/2:(1080-ih)/2" -f mpegts out2.ts
 
ffmpeg -i "concat:out1.ts|out2.ts"  -c:a aac -b:a 128k -vcodec libx264 -preset slow out_full.mp4

Share and Enjoy !

Shares



Конвертиране на видео до webm, ogv, mp4, mkv – Ned Video Converter

Ned video converter - ogv, webm, mp4
Беше ми необходима проста програма за конвертиране на видео до webm и ogg video (ogv), която да ми позволява пълен контрол на изходния файл. Тъй като не намерих такава безплатна, освен конзолния ffmpeg, реших да спретна едно GUI за ffmpeg с просто кодиране в AutoIt. Чудих се за името на програмата и реших да не се правя на оригинален, затова е Ned video converter.
Програмата в момента конвертира до webm, avi, ogv, mp4, flv и mkv. Но позволява да се стартира кодиране до всякакъв формат, ако познавате инструментите на ffmpeg. Стартирането на процеса взима стринга от полето Command и така могат ръчно да се променят всички параметри. Например можем да зададем ръчно команда за конвертиране на видео до mp3-файл, като в полето Command въведем следния тринг:

ffmpeg -i <input> -c:a libmp3lame -b:a 256k -vn -f mp3 some_audio_file.mp3

Ned video converter - mp3
Разбира се ръчните настройки са само опционални, спокойно могат да се ползват вградените скромни опции на GUI-то.
Важно е да се отбележи, че при ресайзване на видео по широчина, тогава височината се променя в съотношение, за това зададената височина трябва да е кратна на 2. Това е причината понякога ресайването да не работи. Просто се въвежда нова стойност на широчината, увеличена или намалена с +1 (примерно 600 не работи, тогава се пробва с 601, 602 и т.н.) и се натиска бутона Generate Command.
Ако файловете се получават големи или с недобро качество е добре да се попрочете документацията на ffmpeg. Параметрите за конвертиране могат да се променят и от външния ini-файл, така че да паснат на конкретните нужди.
Прилагам и сорса, който е доволно прост. Отделил съм GUI-частта и фукциите от основния файл, за да има по-добра четимост.
При конжертиране на avi и mkv (matroska) съм задал да се използва параметъра -crf за контрол на качеството. По принцип за запазване на качеството, каквото е във входния файла, параметъра се сетва на -crf 23. За по-малък файл и по-лошо качество може да се остави на -crf 25 или повече. За по-добро качество на картината може да се пробва с -crf 19.
Сорса е абсолютно свободен за ползване, променяне, споделяне.
Изтегляне за 32 и 64bit Windows:
Ned_video_converter-32bit-0.02.zip
Ned_video_converter-64bit-0.02.zip
Ако има проблеми с програмката, моля да ги споделите в коментарите.
По-долу може да се види кратко видео с примерно конвертиране до webm и mp4 формати. Видеото е конвертирано до тези формати, за да мога да го вградя в тази страница. Видеото, което конвертирам е свален от YouTube клип Camila Cabello – Havana ft. Young Thug.

Share and Enjoy !

Shares



Kodi 17.4 – Гледане на български ТВ канали

Преди време бях постнал статия за гледане на български ТВ-канали с Kodi в комбинация с добавката Free BGTVs, която позволява да се гледа БТВ, Канал 1, Нова ТВ и други популярни български ТВ канали. Но тъй като версиите и хранилищата доста се промениха, реших да публикувам още един по-обновен туториал.
Ще опиша как се прави ръчно добавяне на необходимите добавки (add-ons), защото ми се струва доста по-лесно отколкото да се добавят репозиторита и да се търси добавка в тях.
Изтегля се последната стабилна версия на Kodi от официалния сайт или се инсталира през сторето, което ползва мобилното ви устройство. В моя случай аз изтеглих десктоп версията kodi-17.4-Krypton-x86.exe (актуалните версии могат да се намерят тук). След което програмата (или app-а) се инсталира.
Изтеглят се следните две добавки:
repo.bg.plugins-1.0.0.zip
plugin.video.free.bgtvs-2.3.2.zip (или тук).
Възможно е в момента, когато четете този туториал, да са се появили нови версии на двете добавки, така е добре да направите проверка. Аз изтеглих добавките от този сайт: http://kodi-addons.club/.
След това стартираме Kodi и както сме в Home-скрийна кликаме на бутона за настройките:
Kodi 17.4 Krypton - home screen
Избираме System settings:
Kodi 17.4 Krypton - System settings
От тук можем да променим и настройките за субтитрите: System Settings -> Player:
kody subtitles settings
Избираме от менюто Add-ons и в ляво включваме опцията Unknown sources:
Kodi 17.4 Krypton - unknown sources ON
Връщаме се на Home-скрийна на Kodi и избираме Add-ons:
Kodi 17.4 Krypton - home-addons
В секцията Add-ons избираме бутона за пакетите горе в ляво:
Kodi 17.4 Krypton - add-ons
Алед като ни се отвори Add-on browser избираме бутона Install from zip file:
Kodi 17.4 Krypton - install from zip file
Селектираме файла repo.bg.plugins-1.0.0.zip, за да го инсталираме:
Kodi 17.4 Krypton - repo.bg.plugins-1.0.0.zip
След като се инсталира, кликаме на файла plugin.video.free.bgtvs-2.3.2.zip, за да инсталираме и него:
Kodi 17.4 Krypton - plugin.video.free.bgtvs-2.3.2.zip
Връщаме се в home-скрийна на Kodi и избораме Add-ons. Ако всичко е минало наред, ще се появи бутон с добавката Free.BGTVs.

На видеото по-долу може да се видя стъпките за инсталиране на добавките:

Share and Enjoy !

Shares



Simple TV Player – трикове с ini-файла

Урока е валиден за версия на плеъра 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 "http://www.btv.bg/static/bg/shared/app/flowplayer/flowplayer.rtmp-3.2.13.swf" -p "http://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:

CityTV=ffplay http://nodeb.gocaster.net:1935/CGL/_definst_/mp4:TODAYFM_TEST2/playlist.m3u8

Остана да се добави опция и за запис на тази телевизия. Това го правя с ffmpeg, като отново добавям един ред в settings.ini:

RECORD City=ffmpeg -i http://nodeb.gocaster.net:1935/CGL/_definst_/mp4:TODAYFM_TEST2/playlist.m3u8 -acodec copy -vcodec copy -f mp4 City.mp4

Ето и видеото, което показва как плейвам стрийма от City с ffplay и след това го записвам с ffmpeg:

Примерния settings.ini файл за този тест може да се изтегли от тук: settings.ini-Play_and_Record_video_City.rar
Архива се разархивира в директорията на програмата и се заменя стария файл settings.ini.

ВАЖНО: При запис на поточното видео е важно конзолния прозорец да се затвори с командата Ctrl + C – това ще затвори правилно записваното видео. Ако този прозорец се остави отворен и се затвори само прозореца на програмата, то записа ще продължи докато компютъра не се изключи!

Програмата е изключително простичка. Всъщност е GUI с възможност за ползване на различни инструменти за плейване и запис на поточно видео. Но пък мен ми е много удобна.

Share and Enjoy !

Shares

rtmpdump tutorial – урок за начинаещи

Ако искам да гледам и записвам онлайн телевизии или други стриймове, често използвам инструмента rtmpdum. Много добър инструмент, но се използва в конзолен режим или през промпта на Windows. В тази статия ще покажа няколко примера, как използвам rtmpdump за да гледам и записвам български онлайн телевизии. Операционната система под която ще покажа примерите е LinuMint 18.1, която е Ubuntu базирана. Като исключим някои подробности по инсталацията, техниките са абсолютно същите и под Windows с тази разлика, че инструментите трябва да се намират в една директория.

Подготовка за дъмпване на онлайн видео стриймове

За начало е добре да инсталираме на flash-player за Ubuntu:

sudo apt-add-repository multiverse
sudo apt-get update
sudo apt-get install flashplugin-installer

След това инсталираме rtmpdump и някакъв лек видео плеър, който позволява подаване на команди през конзолата. Mplayer или VLC са доста добър избор, затова аз ще използвам mplayer:

sudo apt-get install rtmpdump
sudo apt-get install 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. Харесват ми репортажите, публицистиката и предаванията за култура и спорт.
Адреса за онлайн гледане на телевизията е: http://www.bgonair.bg/tvonline

Важно е да отбележим, че много често не е нужно да стартираме Wireshark, Fiddler или друга тежка бойна техника, за да дъмпнем някое поточно видео. Достатъчно да е поразгледаме сорс-кода на страницата, която излъчва видеото.

Web page source - rtmp address

В случая ще прегледам сорс-кода и ще тестваме, дали параметрите в него са достатъчни. Ще използвам браузера Firefox. Отваряме сорса на http://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 http://i.cdn.bg/flash/jwplayer510/player.swf
-a fls/

Допълнително знаем и адреса на страница, която плейва видеото. Значи имаме и параметъра -p:

-p http://www.bgonair.bg/tvonline

Да направим първия тест с тези параметри, като задължително включим дебъгването, за да ни покаже, ако има някакъв проблем:

rtmpdump -r rtmp://lb.cdn.bg:2006/fls -y bonair.stream?at=66981d3d13decfde7efc2e1fa19eb2b4 -a fls/ -W http://i.cdn.bg/flash/jwplayer510/player.swf -p http://www.bgonair.bg/tvonline -z

rtmpdump - debug error

Мда… Неуспешен първи опит, но пък ни донесе ценна информация за грешката. Да разгледаме какво изплю конзолата:

Интересният ред е този:

redirect, STRING:	rtmp://edge12.cdn.bg:2006/fls>

Той ни покзва, че rtmp-адреса в страницата е с пренасочване към адрес rtmp://edge12.cdn.bg:2006/fls. Ок, тогава да направим нов опит с този нов адрес. Този път изпълнени с енстусиазъм и увереност, премахваме дебъгването и закачаме потока с пайп към mplayer. Важно е да се отбележи, че понякога mplayer иска предваретелен кеш на потока, или пък не иска. Това зависи и от хардуера в машината. Обикновено слагам кеширането, което препоръчват разработчиците и слагам опцията , която казва на mplayer, че приема пайп поток, а не файл.

rtmpdump -r rtmp://edge12.cdn.bg:2006/fls -y bonair.stream?at=66981d3d13decfde7efc2e1fa19eb2b4 -a fls/ -W http://i.cdn.bg/flash/jwplayer510/player.swf -p http://www.bgonair.bg/tvonline | mplayer -cache 8192 -

В конзолата се вижда, че mplayer започва да кешира видеото. Трябва да изчакаме, докато кешира около 20%, след което се появява прозореца с видеото.
От опит знам, че много често повечето параметри не са необходими. Достатъчно е да знаем само rtmp-сървара и името на стрийма. Нека да пробваме, като разкараме и кеширането на mplayer.

rtmpdump -r rtmp://edge12.cdn.bg:2006/fls -y bonair.stream?at=66981d3d13decfde7efc2e1fa19eb2b4 | mplayer -

Плучи се една сравнително късичка команда. При мен работи, като има само едно леко забавяне в началото.

Ако искаме да запазим видеото във файл, тогава премахваме пайпа към mplayer и го заменяме с командата -o some_file.flv.

rtmpdump -r rtmp://edge12.cdn.bg:2006/fls -y bonair.stream?at=66981d3d13decfde7efc2e1fa19eb2b4 -o onair.flv

Видео, което показва стъпките в този пример:

Дъмпване на онлайн телевизия – пример 2

BTV rtmpdump

Предлагам да затвърдим материала, като дъмпнем още някоя телевизия. В този пример ще покажа как се дъмпва онлайн стрийма на BTV. Подхода е същият, дори може да се каже, че е още по-лесно. Отваряме страница с онлайн видеото: http://www.btv.bg/live/ и търсим в сорс-кода за стринг rtmp. Виждаме, че го има на няколко места, но нас ни интересува конкретно този пасаж:

Сега остава да сглобим командата за rtmpdump и да тестваме. Но ще използвам VLC-плеара, защото тоя mplayer нещо ме нерви с поведението си, множеството ръчни настройки и клавишни комбинации.

rtmpdump -r rtmp://hls.btv.bg.sof.cmestatic.com:80/alpha -y alpha | vlc -

И то взе, че тръгна! 🙂 Дори нямаше пренасочване.
Ако искаме да съхраним до файл, пак като по-горе, добавяме -o some_file.flv

Ето кратко видео и с упражнението – сваляне на онлайн видео от BTV с rtmpdump:

За следващото упражнение ще трябва да намеря нещо по-завързано.

Дъмпване на онлайн телевизия – пример 3

За този пример ще дъмпнем БНТ. Ще го направя под Windows, но тъй като знам, че стрийма от БНТ изисква токен (secure token – ключ за стартиране), за да се дъмпне, ще ни трябват някои допълнителни инструменти:
Firefox – Web браузер. Избирате се езика и версията – 32 или 64bit.
Firebug – добавка (addon) за Firefox, който ще ни помогне доста за разлистване на сорс кода на страницата.
JPEXS Free Flash Decompiler – този безплатен инструмент декомпилира *.SWF файлове до изходния сорс-код.
Notepad++ – текстов редактор, който може да търси в множество файлове.

rtmp firebug parameters

Първа да разузнаем кои параметри можем да видим в сорс кода на страницата. Посещаваме с Firefox страницата на БНТ, която излъчва стрийма: http://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 http://cdn.bg/eflash/jwplayer510/player.swf
-p http://tv.bnt.bg/bnt1/16×9/

Да направим първи тест, за да проверим, дали няма пренасочване или някакъв друг проблем:

rtmpdump -r rtmp://lb.cdn.bg:2020/fls -y bnt.stream?at=42516e922eacee82fb021dbc64b9165b -z

Резултата е:

DEBUG: Property: <Name:              level, STRING:     error>
DEBUG: Property: <Name:               code, STRING:     NetConnection.Connect.Rejected>
DEBUG: Property: <Name:        description, STRING:     Connection failed: Application rejected connection.>
DEBUG: Property: <Name:                 ex, OBJECT>
DEBUG: (object begin)
DEBUG: Property: <Name:           redirect, STRING:     rtmp://edge11.cdn.bg:2020/fls>

Виждаме, че имаме пренасочване с redirect към rtmp://edge11.cdn.bg:2020/fls. Тогава да заменим адресите и да пробваме пак:

rtmpdump -r rtmp://edge11.cdn.bg:2020/fls -y bnt.stream?at=42516e922eacee82fb021dbc64b9165b -z

Този път се получи друга грешка:

DEBUG: Property: <Name:              level, STRING:     error>
DEBUG: Property: <Name:               code, STRING:     NetConnection.Connect.Rejected>
DEBUG: Property: <Name:        description, STRING:     Connection failed: Application rejected connection.>
DEBUG: Property: <Name:           clientid, NUMBER:     714507177.00>
DEBUG: Property: <Name:        secureToken, STRING:     a8a4a8dcd4b74063e45148602dfebe8a4d24717532878cfaa2a1e87aaa0e58b48f0df073>

Появи се secureToken стринг, което означава, че видеото има нужда от този токен (ключ, парола), за да се стартира.
Как можем да разберем кой е този ключ и къде е този ключ. Понякога този токен се намира в HTML кода, друг път е набутан в SWF-файла. Има случаи при които видеото е защитено с двойка код + ключ. В един от следващите уроци ще покажа и случай, когато ключа е обфускейтнат и не се вижда никъде в явен вид, освен чрез хекс-редактор. В случая проверих и знам, че токена се намира в SWF-файла. За да го видим, първо трябва да декомпилираме SWF-файла до изходния му код. За тази цел сваляме swf-файла http://cdn.bg/eflash/jwplayer510/player.swf с някой даунлоадер или директно с браузера и го отваряме в програмата JPEXS Free Flash Decompiler.
Слектираме директорията със ActionScript-овете и я екстрактваме:

ActionScript export
secureToken

Сега отваряме програмата Notepad++ и избираме от менюто Search -> Find in files…, избираме директорията в която да рови, като оставяме за филтър “*” за да прерови всички файлове. Критерий за търсене ни е “securetoken”. Попадаме на тези ценни редове:

БИНГО – B@1R1st1077! Точно това е, което ни трябва!
Правим два-три опита с останалите параметри и виждаме, че тази команда стартира видеото:

rtmpdump -r rtmp://edge11.cdn.bg:2020/fls -y bnt.stream?at=42516e922eacee82fb021dbc64b9165b -p http://tv.bnt.bg/bnt1/16x9/ -T B@1R1st1077 | mplayer -

Ето и видеото, което показва как се дъмпва БНТ:

Следващия стрийм трябва да е още по усложнен. Може би трябва да покажа, как се разбират обфускейтнатите пароли, въпреки, че това не е много за начинаещи. Не е сложно, но не съм сигурен, дали е за масово споделяне. Може би ще дам подсказки за по-любознателните.

Дъмпване на онлайн телевизия – пример 4

[TODO]

Share and Enjoy !

Shares

Гледане на онлайн филми с български субтитри – Kodi + 1Channel

1Channel install and add subtitles

Видео урока е ъпдейтнат до последната стабилна версия на Kodi Krypton 17.4!

От както TV Box устройствата станаха толкова популярни и се нароиха различни марки и модели SMART телевизори, става бум и на методите за прихващане на онлайн стрийминг видео от сайтове за филми. В този туториал ще се поитам да да покажа, как да си настроите Kodi, за да можете да гледате най-новите филми с български субтитри. Ще покажа и как точно се закачат добавките за субтитри за сайтовете:
http://subsunacs.net/
http://subs.sab.bz/
http://opensubtitles.org/
Ако все още нямате инсталиран Kodi, поправете тази фатална грешка. В друг мой туториал може да се види инсталацията на Kodi и закачането на добавка за БГ Телевизии.

В този урок ще използвам добавката PrimeWire / 1Channel, която позволява свързване към Custom Domain-и с филми.
Метода е валиден за всички устройства, позволяващи инсталиране на Kodi – TV Box, Android таблети и телефони, SMART телевизори, Windows PC и т.н..
Най-голяма трудност е да се намерят отключени Custom Domains. Повечето къстъм домейни напоследък искат пейтване с IP-то на устройството, през което ще гледате. Елементарно е, но е досадно, а и понякога рисково. Това се вижда във видеото по-долу, където антивирусната ми изпищя, защото сайта за сдвояване беше допуснал потенциално опасни реклами, като pop-up.

Във видеото изтеглям добавката repository.exodus-4.0.0.zip от сайта http://kodi-addons.club. Но за да се инсталират добавки от външни източници е необходими да се позволи на система да инсталира такива добавки: Settings -> System settings -> Add-ons -> Unknown sources. Слага се на on.
Kodi Krypton - unknown sources

Ето кратко видео, което показва стъпките за инсталиране и стартиране на 1Channel:

PS: PrimeWire / 1Channel не е единствената алтернатива за гледане на онлайн филми. Лично мен напоследък повече ме кефи Project Free Tv. Как се инсталира, можете да се види тук.

Share and Enjoy !

Shares



Гледане на български ТВ канали с Kodi

Гледане на българска телевизия с Kodi

ВАЖНО: Има нова статия за инсталирането на добавката за българските телевизии. Можете да видите статията тук: Kodi 17.4 – Гледане на български ТВ канали

От статистиката на блога ми забелязвам, че много хора се интересуват как могат да гледат български телевизии през интернет – Канал 1, бТВ, Нова ТВ, Канал 3, ТВ7, Нова ТВ, Евроком и др.. Преди време бях писал малка програмка за целта, както и туториал за прихващане на стриймове. В тази статия ще се опитам да предложа много по-лесен вариант за гледане на BG телевизии за различни устройства благодарение на програмата Kodi. Kodi е мултимедийна платформа за различни операционни системи (Windows, Apple, Android, Linux и др.), която поддържа плъгини и може да се надстройва според нуждите на потребителя. Програмата се и използва като база за някои марки SMART телевизори. Ще се опитам да направя серия от уроци, които показват възможностите на програмата, като започна с най-важното – гледане на популярните български телевизии.

За начало ще ни е необходимо да си свалим програмата. В момента съм под Windows и ще използвам инсталатора за тази ОС. Но стъпките, показани в урока, важат за всички операционни системи, на които може да се инсталира последната стабилна версия на Kodi Isengard 15.2. Свалете си програмата от тук:
http://kodi.tv/download/
Желателното е да свалите версията, която описвам, но ако се чувствате сигурни, можете да свалите и по-нова версия. Стъпките ще са аналогични.
След валянето на програмата я инсталираме. Следва закачането на най-важното хранилище за добавки SuperRepo. Адреса на хранилището е: http://srp.nu
Тази информация е достатъчна за плейване на популярните български ТВ канали. От тук насетне изгледайте приложеното видео, което в рамките на 4 минути описва всички необходими стъпки:

[Javascript required to view Flash movie, please turn it on and refresh this page]


В следващия урок ще се опитам да покажа, как да се закачи 1Channel, за да се гледат филми с български субтитри. Урока може да се види тук:
Гледане на онлайн филми с български субтитри – Kodi + 1Channel

ПС: Ако сте олдскуул тип, който харесва прости програмки, които вършат работата, можете да хвърлите един поглед на един мой стар проект:
Simple BG TV Player – прост rtmpdump плеар за гледане на BG-телевизии.

Share and Enjoy !

Shares



Jason Derulo dance steps

Дъщеря ми много си пада по бай Jason Derulo. Накара ме да и кача песните му таблета и всеки ден го гледа. Сега ме накара, да и изрежа от клиповете стъпките на hip-hop-а му… е, нямах избор :).
Опитах се да мина тънко, като пусна търсения за jason derulo dance steps, обаче нищо конкретно не намерих. Затова си поиграх и направих това кратко видео. Дано да и е достатъчно, щото почнах и аз да повтарям Wiggle, wiggle 🙂

[Javascript required to view Flash movie, please turn it on and refresh this page]

Лично мен ме кефи парчето Trumpets и на пасажите с “get undress” го увеличавам малко, та барем булката се сети. Не че хваща дикиш, ам песента си ме радва.
За създаване на видеото използвах ffmpeg.

Share and Enjoy !

Shares