rtmpdump – дъмпване на онлайн телевизия – БНТ 1, БТВ и Нова ТВ

На тази тема има публикуван нов материал с включени видео-уроци. Можете да го прочетете тук:
rtmpdump tutorial – урок за начинаещи

Заиграх се малко с rtmpdump. Много готин инструмент, с който може да се прихваща защитено видео. За да си набавя параметрите за дъмпа, използвах Wireshark.
Дъмп за гледане на БНТ1 през VLC:
rtmpdump -r “rtmp://edge2.evolink.net:2020/fls” -a “fls” -f “WIN 11,5,502,149” -W “http://cdn.bg/flash/jwplayer510/player.swf” -p “http://cdn.bg/live/4eViE8vGzI” -T “B@1R1st1077” -y “bnt.stream” –quiet | vlc –

Update [14.03.2016] Променен е стрийма на БНТ1. По долу е работещ към днешна дата код. БНТ1 разпознава само БГ IP-та, затова от чужбина трябва да се ползва прокси.

rtmpdump -r "rtmp://edge2.cdn.bg:2020/fls" -a "fls/" -W "http://i.cdn.bg/eflash/jwplayer510/player.swf" -f "WIN 18,0,0,232" -p "http://cdn.bg/live/4eViE8vGzI" -y "bnt.stream?at=22c035726e941f171f6676751141b491" -T "B@1R1st1077" --quiet | vlc -

БНТ HD

rtmpdump -r "rtmp://edge2.cdn.bg:2020/fls" -a "fls/" -W "http://i.cdn.bg/eflash/jwplayer510/player.swf" -f "WIN 18,0,0,232" -p "http://i.cdn.bg/live/OQ70Ds9Lcp" -y "bntHDt.stream?at=22c035726e941f171f6676751141b491" -T "B@1R1st1077" --quiet | vlc -

Дъмп на БНТ2

rtmpdump -r "rtmp://edge11.cdn.bg:2020/fls" -a "fls/" -W "http://cdn.bg/eflash/jwplayer510/player.swf" -f "WIN 18,0,0,232" -p "http://cdn.bg/live/ZBPbdxDHm7" -y "bnt2.stream?at=22c035726e941f171f6676751141b491" -T "B@1R1st1077" --quiet | vlc -

Дъмп на БТВ
rtmpdump -r “rtmp://46.10.150.111:80/ios” -a “ios” -f “WIN 11,5,502,149” -W “http://images.btv.bg/fplayer/flowplayer.commercial-3.2.5.swf” -p “http://www.btv.bg/live/” -y “btvbglive” –quiet | vlc –

rtmpdump -r "rtmp://46.10.150.113: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" --quiet | vlc -

И двата стринга могат да се запазят като изпълними скриптове на десктопа и да се стартират с 2 клика.

Може да се дъмпва и директно до файл, като се посочи output -o. Пример за дъмпване на бТВ до файл:

rtmp://46.10.150.113: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_01.flv"

Нова ТВ
– плей с VLC

rtmpdump -r "rtmp://edge1.evolink.net:2010/fls" -a "fls/_definst_" -y "ntv_2.stream" -p "http://i.cdn.bg/live/" -T "N0v4TV6#2" --quiet | vlc -

– кепчъринг с rtmpdump

rtmpdump -r "rtmp://edge1.evolink.net:2010/fls" -a "fls/_definst_" -y "ntv_2.stream" -p "http://i.cdn.bg/live/" -T "N0v4TV6#2" -o "NovaTV_01.flv"

За да записвам Нова ТВ се наложи да декомпилирам swf-файла в който беше набутана паролата за стринга (Secure Token – TEA). Тази парола се добавя с параметъра -T, в случая е -T “N0v4TV6#2”

Дъмп на Канал 3

rtmpdump -V -r "rtmp://edge4.cdn.bg:2017/fls" -a "fls/" -W "http://i.cdn.bg/flash/jwplayer510/player.swf" -f "WIN 18,0,0,232" -p "http://i.cdn.bg/live/FP08SWAJ4v" -y "kanal3.stream?at=22c035726e941f171f6676751141b491" --quiet | vlc -

Дъмп на ТВ Европа

rtmpdump -r "rtmp://lb.blb.cdn.bg:2018/fls" -a "fls/" -y "tvevropa.stream" --quiet | vlc -

Дъмп на SPortal
До файл:

rtmpdump -V -r "rtmp://pri.cdn.bg:2001/fls" -a "fls/" -y "sportal_tv_hd.stream" -p "http://www.novini.bg/tv/703-sportal-bg.html" -o "proba.flv"

До VLC palyer:

rtmpdump -V -r "rtmp://pri.cdn.bg:2001/fls" -a "fls/" -y "sportal_tv_hd.stream" -p "http://www.novini.bg/tv/703-sportal-bg.html" --quiet | vlc -

===========================================
Подробно описание, как прихващам стриймовете (писал съм го за един форум, но го поствам и тук).
Надушвам ги с Wireshark. Ето как:
1. Стартираш Wireshark и “надушваш” кое е IP-то което стриймва. Това може да стане и с друга програма, като SmartSniffer или подобна лека програмка. Там се вижда много ясно кое IP точи постоянен трафик. След това залагаш това IP като филтър в Wireshark:
01.8699
Може да си сложиш IP-то като филтър и автоматично, с 2 клика:
02.8583
2. След това кликам на някой от прихванатите филтрирани пакети и с десен бутон избирам [b]Follow TCP stream[/b].
03.6096
3. Показва се прозореца с данните от прихванатите пакети, като в него намирам всичката ми необходима информация, за да направя дъмп на видеото:
04.7009
pageUrl…http://www.btv.bg/live/
flashVer…WIN 11,5,502,149
app…ios
swfUrl..http://images.btv.bg/fplayer/flowplayer.commercial-3.2.5.swf
tcUrl…rtmp://46.10.150.111:80
play………….btvbglive

4. С тези данни мога да стриймвам директно, ако сървара ми позволи, или пък да дъмпна стрийма с rtmpdump, като просто си заместя инфото като аргументи за стартиране на програмата:

rtmpdump -r “rtmp://46.10.150.111:80/ios” -a “ios” -f “WIN 11,5,502,149” -W “http://images.btv.bg/fplayer/flowplayer.commercial-3.2.5.swf” -p “http://www.btv.bg/live/” -y “btvbglive” -o “BTV_01.flv”

UPDATE: Стрийма на БТВ е променен. Новият е:
rtmpdump -r "rtmp://46.10.150.113: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_01.flv"

5. Пийваш малко биричка и междувременно можеш да си пуснеш дъмпвания файл в някой плеър, за да си го гледаш в реално време.
————–
Междувременно написах проста програма – TV Player, която използва по-горните команди за гледане на онлайн телевизия. Програмката се намира тук:
Simple BG TV Player – прост rtmpdump плеар за гледане на BG-телевизии
Изглежда така:
simple bg tv player - онлайн телевизии

50 thoughts on “rtmpdump – дъмпване на онлайн телевизия – БНТ 1, БТВ и Нова ТВ

  1. Тъкмо се опитвах и аз това да направя с BTV и rtmpsrv, но без успех. Благодаря!

    • Здравей,
      Ъпдейтнах малко статията. Приложих и командата за дъмпване директно до файл, вместо до VLC.
      А по-долу приложих и кратко описание как технически прихващам дъмпа.
      БНТ1 са поставили някаква парола, която не мога да кракна към момента.

      • Благодаря, човече, супер полезно! Ако има бъдещи ъпдейти би ли пратил едно мейлче, ще съм ти много благодарен отново!

  2. Сори, но още нещо: занимавал ли си се с Нова ТВ? Сега инсталирам Wireshark за Linux и ще разцъквам. Благодаря още веднъж. След това ако си заинтересован ще ти пратя един скрипт за Linux, който направих с телевизиите, но засега съм сложил само 2 – БТВ и успях да дъмпна CityTV

    • Вкарах и дъмп на Nova TV като код за записване до файл. И те като БНТ са се постарали да защитят допълнително стрийма, но не беше осоено сложно да се кракне.

  3. Здравейте. ще може ли някои да ми обясни как точно се стартира тази програма Wireshark нещо не мога да я подкарам,благодаря предварително а някои ако желае да му предоставя стрийм за определена телевизия да сподели………..

  4. Здравейте,
    благодаря за статията. Много полезна ми е. Бих имал една молба към вас. Дали би Ви било възможно да направите rtmpdump и за следна Румънска ТВ – http://www.kissfm.ro/kisstv/live/ . Аз се опитах да го направя с wireshark но за съжаление не се получава. Явно има някаква парола, или нещо като SessionID , което се създава при връзката и се залепя към URL-то за гледане. Този сесиен иднетификатор явно се генерира когато браузъра се свърже но не зная как би станало с VLC. Бих Ви бил много благодарен ако ми разкриете тайната как мога да я гледам тази тв през vlc. Поздрави!

  5. Точно тази тв няма да можеш да я гледаш с VLC има токен и не става……

  6. Трябва ми дъмп за voyo.bg може ли да се направи или и той има някаква по-силна защита

  7. Може ли някой да ми обясни, къде да ги напиша тия дъмпове. Примерно тоя rtmpdump -r “rtmp://edge2.evolink.net:2020/fls” -a “fls” -f “WIN 11,5,502,149” -W “http://cdn.bg/flash/jwplayer510/player.swf” -p “http://cdn.bg/live/4eViE8vGzI” -T “B@1R1st1077” -y “bnt.stream” –quiet | vlc –
    за Канал 1. С някакви скрийншотове, ако може. Че идея си нямам как да се справя. Благодаря предварително!

  8. Много интересен подход. А дали може да включиш вариант за кепване на БНТ2.

  9. БНТ са върнали старата парола B@1R1st1077

    #bnt

    pi@raspberrypi ~ $ cat bnt
    rtmpdump -r “rtmp://edge3.evolink.net:2020/fls” -a “fls” -f “WIN 11,5,502,149” -W “http://cdn.bg/eflash/jwplayer510/player.swf” -p “http://cdn.bg/live/fkL0GWOoP6” -T “B@1R1st1077” -y “bnt.stream” -o /tmp/livevideo | omxplayer /tmp/livevideo

    #bnt2
    pi@raspberrypi ~ $ cat bnt2
    rtmpdump -r “rtmp://edge3.evolink.net:2020/fls” -a “fls” -f “WIN 11,5,502,149” -W “http://cdn.bg/eflash/jwplayer510/player.swf” -p “http://cdn.bg/live/fkL0GWOoP6” -T “B@1R1st1077” -y “bnt2.stream” -o /tmp/livevideo | omxplayer /tmp/livevideo

    • Здравейте,

      Понеже си поиграх да намеря и линка за БНТ HD, ето го и него:

      rtmpdump.exe -r “rtmp://edge4.cdn.bg:2020/fls” -a “fls” -y “bntHDt.stream?at=07d559265917c159525be076aeff559b” -p “http://i.cdn.bg/live/OQ70Ds9Lcp” -f “WIN 11,5,502,149” -W “http://i.cdn.bg/eflash/jwplayer510/player.swf” -T “B@1R1st1077” -v -o – | “C:\Program Files\VideoLAN\VLC\vlc.exe” –

      Също така линка за БНТ1 не работи повече от 6-7 секунди поне при мен. Проблема се оказа в параметъра за playpath-a ==> -y “bnt.stream?at=07d559265917c159525be076aeff559b” ==> работи.

      Поздрави,
      Миро

  10. има промяна в срийма на Нова Тв. Дали някой би могъл да го разшифрова?

  11. Здравейте. Много моля кажете какво точно да напиша във
    VLC плеъра на Андроид за да гледам БТВ.
    Ако може да стане копи пеист.
    Благодаря на всички!

    • Забравих да кажа че ще гледам от чужбина. Иначе на компа плеарчето Ви върви перфектно от цяла Европа.

  12. Здравейте,
    много интересна тема е предложил Андреев.
    Ако може автора да доразвие темата защото е актуална.Как да гледаме на андроид?

  13. От миналата седмица забелязах, че rtmpdump-а на bTV не работи. Без –quiet връща следното:

    RTMPDump v2.4
    (c) 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL
    Connecting …
    INFO: Connected…
    ERROR: Closing connection: NetStream.Play.StreamNotFound

    Опитах разни неща да променя, но така и не можах да оправя нещата. bTV май са правили някакви промени по flowplayer-а на сайта си и сега това е положението NetStream.Play.StreamNotFound.

    Забелязах, че преди, което и видео от техния сайт да исках да гледам автоматично започваше, сега не е така, сега трябва да си го пуска човек кликвайки на Play бутона на самия плеър, ако това има някакво значение. Не знам.

    Някакви предположения???

    • Добрине, оправих го. Явно всички телевизии периодично си сменят нещо по стрийм параметрите. БТВ са изкарали във външен файл всички необходими параметри за стрийма и дори е станало по-лесно за кепч.
      Ако ми остане време ще погледна и другите.

  14. BNT1 (BNT HD) и BNT2 плейва точно 6 секунди и спира, така беше и преди и сега. Поне при мен е така.

    • Иване, благодаря ти за коментара. Бях объркал БНТ HD с БНТ… ооо колко съм прост! Карай!
      Пробвай сега с коректният стрийм. Ако още имаш проблеми, пиши. Имаш вариант да смениш плеара с mplayer или да пробваш някакви настройки за буфериране или фреймдроп с vlc. Примерно нещо такова:
      http://blog.nediko.info/examples/Simple_TV_Player/BNT1_VLC_test.txt

  15. Добре де кода за Sportal никъде не видях да пайпва към VLC, но дори и да го пайпна, при мен не работи не иска да тръгне. А иначе всичките на БНТ при мен също не работят, просто само 6 секунди ми плейва и това.

    • Добавих код за пайп на дъмпа към VLC.
      Плейването на някои канали се сплитва обикновено заради слаба връзка. Пробвай да спреш торенти и всякакъв друг вид ъплоад и даунлоад и пробвай пак.

  16. Много интересно.
    Статията ще придобие доста мъдрост ако споделиш как надушваш токените/паролите на стрймовете.Как намираш swf файловете.Как ги декомпилираш.Моля те допълвай информацията.
    Непросветените ще ти бъдат благодарни.
    Поздрави

    • Потоците на БНТ при мен не работят.
      Накой може ли да потвърди че параметрите са ОК?

      • Променени са. Ето моят принос с кептъринг:
        БНТ:
        rtmpdump -r “rtmp://edge2.cdn.bg:2020/fls” -a “fls/” -W “http://i.cdn.bg/eflash/jwplayer510/player.swf” -f “WIN 18,0,0,232” -p “http://cdn.bg/live/4eViE8vGzI” -y “bnt.stream?at=fdcd2779b029e43118f06083cd024640” -T “B@1R1st1077” -o “bnt.flv”

        БНТ2:
        rtmpdump -r “rtmp://edge11.cdn.bg:2020/fls” -a “fls/” -W “http://cdn.bg/eflash/jwplayer510/player.swf” -f “WIN 18,0,0,232” -p “http://cdn.bg/live/ZBPbdxDHm7” -y “bnt2.stream?at=fdcd2779b029e43118f06083cd024640” -T “B@1R1st1077” -o “bnt2.flv”

        БНТ HD:
        rtmpdump -V -r “rtmp://edge2.cdn.bg:2020/fls” -a “fls/” -W “http://i.cdn.bg/eflash/jwplayer510/player.swf” -f “WIN 18,0,0,232” -p “http://i.cdn.bg/live/OQ70Ds9Lcp” -y “bntHDt.stream?at=fdcd2779b029e43118f06083cd024640” -T “B@1R1st1077” -o “bnthd.flv”

        и бонус 🙂
        Bulgaria OnAir:
        rtmpdump.exe -V -r “rtmp://edge8.cdn.bg:2006/fls” -a “fls/” -W “http://i.cdn.bg/flash/jwplayer510/player.swf” -y “bonair.stream?at=66981d3d13decfde7efc2e1fa19eb2b4” -p “http://www.bgonair.bg/tvonline” -o bgonair.flv

        По принцип голяма чатс от параметрите могат да се хванат и от страницата, като поразровите в кода и Developer Tools-а на Chrome, примерно. Но въпросът с токените е определено интересен.

        • Благодаря много за Bulgaria OnAir! 🙂 Допълних си колекцията с още един стрийм.

      • при мен бнт тръгва, но спира на 0.371 kB и отказва по-нататък да захапе и да тръгне. бтв и нова си вървят безпроблемно. някой дали се е сблъсквал с този проблем?

        • При мен е същата работа. Така и не можах да го оправя въпреки всякакви промени по настройките на VLC.

  17. Между другото при мен от снощи bTV отново не работи. На сайта им на живо си работи през VLC не иска.

    • Сега проверих и dump-а на bTV работи, само че на IP адрес 46.10.150.111
      Преди беше 46.10.150.113

  18. Ето това изплюва БНТ при тест с ffmpeg:

    RTMP_ClientPacket, received: invoke 222 bytes
    (object begin)
    Property:
    Property:
    Property: NULL
    Property:
    (object begin)
    Property:
    Property:
    Property:
    Property:
    (object end)
    (object end)
    HandleInvoke, server invoking
    HandleInvoke, onStatus: NetConnection.Connect.Rejected

    Пуска 1-2 секунди и спира.Параметрите са ОК.
    Явно има нещо друго
    Идеи ??

  19. [code]
    ffmpeg -loglevel debug -i “rtmp://edge2.cdn.bg:2020/fls app=fls/ swfUrl=http://i.cdn.bg/eflash/jwplayer510/player.swf \
    pageUrl=http://i.cdn.bg/live/OQ70Ds9Lcp playpath=bntHDt.stream?at=fdcd2779b029e43118f06083cd024640 \
    token=B@1R1st1077 live=true flashver=WIN,18,0,0,232”
    [/code]
    но ffmpeg трябва да е компилиран с libRtpm

Leave a Reply

Your email address will not be published. Required fields are marked *

*