Audio/video stream recording forums
|
Attention Visitor: |
You may have to register or log in before you can post:
|
|
|
Thread Tools | Display Modes |
#1
|
|||
|
|||
liveweb.arte.tv, videos.arte.tv: How to download video streams with rtmpdumpHello,
Currently this video is still broadcast: Code:
http://liveweb.arte.tv/fr/video/Christophe__en_direct_de_la_Cite_de_la_Musique Code:
E:\RtmpDump\rtmpdump_22b>rtmpdump -r "rtmpe://arte.fcod.llnwd.net:1935/a2306/o25 /MP4:liveweb/stream/911_160310_Christophe_hd.mp4" -W "http://liveweb.arte.tv/fla sh/player.swf?eventId=919&mode=prod&visual=true;jsessionid=281EB203D07FD90C42237 7A7986536E9.tc6l2&isLive=false;jsessionid=281EB203D07FD90C422377A7986536E9.tc6l2 &lang=fr" -p "http://liveweb.arte.tv/fr/video/Christophe__en_direct_de_la_Cite_d e_la_Musique/" -V -o output.mp4 RTMPDump v2.2b (c) 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL DEBUG: Protocol : RTMPE DEBUG: Hostname : arte.fcod.llnwd.net DEBUG: Port : 1935 DEBUG: Playpath : mp4:MP4:liveweb/stream/911_160310_Christophe_hd DEBUG: tcUrl : rtmpe://arte.fcod.llnwd.net:1935/a2306/o25 DEBUG: swfUrl : http://liveweb.arte.tv/flash/player.swf?eventId=919&mode=prod& visual=true;jsessionid=281EB203D07FD90C422377A7986536E9.tc6l2&isLive=false;jsess ionid=281EB203D07FD90C422377A7986536E9.tc6l2&lang=fr DEBUG: pageUrl : http://liveweb.arte.tv/fr/video/Christophe__en_direct_de_la_Ci te_de_la_Musique/ DEBUG: app : a2306/o25 DEBUG: live : no DEBUG: timeout : 120 sec DEBUG: SWFSHA256: 4E 4F 47 BB 50 23 88 16 BE 3F 37 42 9D 49 87 85 07 16 0A 5E 14 F7 E5 7C 62 82 1A BA 1C 7B 2B 5E DEBUG: SWFSize : 572503 DEBUG: Setting buffer time to: 36000000ms Connecting ... DEBUG: RTMP_Connect1, ... connected, handshaking DEBUG: HandShake: Client type: 06 DEBUG: HandShake: DH pubkey position: 166 DEBUG: HandShake: Client digest offset: 879 DEBUG: HandShake: Initial client digest: B8 00 7C FD A5 E5 E8 0C 07 7D 5F D3 4A 5B 99 94 6F DE 5C 96 9A 07 99 BF B0 E0 98 65 44 18 8E 33 DEBUG: HandShake: Type Answer : 08 WARNING: HandShake: Type mismatch: client sent 6, server answered 8 DEBUG: HandShake: Server Uptime : 1006033357 DEBUG: HandShake: FMS Version : 3.5.2.1 DEBUG: HandShake: Server DH public key offset: 89 DEBUG: HandShake: Secret key: 5D 3F 5C 25 46 51 1C 0A AA 4A 43 C1 A8 EC 89 6A 05 83 74 75 9C 93 12 11 5B AA 2B 28 C5 B0 06 79 C5 DF 16 79 B0 AB B9 35 50 4E 47 3C 1F 3C 04 C0 68 EF 81 FE A1 B F C8 AF 27 A0 18 A7 EE C0 65 76 BA 12 DF D4 79 A5 CE 5C 7A CD 40 8A 5B 5D 6B E6 D6 99 B7 1A 2E 4A 5D 38 3A 22 25 94 91 E3 01 46 B0 00 3A ED F0 7B C7 3C A9 1D 5B D8 5A BB 35 A7 8A 6E DB E4 7A 4D CF 7B C1 FD C9 AD 48 DA 1B E9 DEBUG: RC4 Out Key: 0A B7 BC 7A F2 68 15 78 E4 71 66 B6 92 76 5F 76 DEBUG: RC4 In Key: 97 B2 8E 73 61 A5 AE ED F6 69 5D A4 B4 E1 29 78 DEBUG: HandShake: Calculated digest key from secure key and server digest: 2C 31 C2 41 4F 66 23 77 14 86 8C B8 47 02 E3 6E 2A 48 F2 EE BF BD C6 15 4E C1 38 E1 C2 6C A0 22 DEBUG: HandShake: Client signature calculated: 80 48 D5 BB 21 67 2E 2A 0A 17 7D CF E1 D8 89 D4 90 EF 12 AB EE E5 A9 86 6E 9F B0 09 0A 06 A6 8D DEBUG: HandShake: Server sent signature: AC 86 25 7D 88 E3 B0 AC DE 6A B5 79 96 C1 11 1A DC 09 88 40 DF 0B EF CA C9 73 51 4F 2F 9E 82 54 DEBUG: HandShake: Digest key: A6 DC A5 7B BB 99 93 25 F7 0B 20 8D 25 98 FD EC 71 A2 A1 44 74 C0 14 1D 2F AD 59 44 AF 9B D7 E0 DEBUG: HandShake: Signature calculated: AC 86 25 7D 88 E3 B0 AC DE 6A B5 79 96 C1 11 1A DC 09 88 40 DF 0B EF CA C9 73 51 4F 2F 9E 82 54 DEBUG: HandShake: Genuine Adobe Flash Media Server DEBUG: HandShake: Handshaking finished.... DEBUG: RTMP_Connect1, handshaked DEBUG: Invoking connect INFO: Connected... DEBUG: HandleServerBW: server BW = 2500000 DEBUG: HandleClientBW: client BW = 2500000 2 DEBUG: RTMP_ClientPacket, received: invoke 240 bytes DEBUG: (object begin) DEBUG: (object begin) DEBUG: Property: <Name: fmsVer, STRING: FMS/3,5,3,837> DEBUG: Property: <Name: capabilities, NUMBER: 127.00> DEBUG: Property: <Name: mode, NUMBER: 1.00> DEBUG: (object end) DEBUG: (object begin) DEBUG: Property: <Name: level, STRING: status> DEBUG: Property: <Name: code, STRING: NetConnection.Co nnect.Success> DEBUG: Property: <Name: description, STRING: Connection succe eded.> DEBUG: Property: <Name: objectEncoding, NUMBER: 0.00> DEBUG: Property: <Name: data, OBJECT> DEBUG: (object begin) DEBUG: Property: <Name: version, STRING: 3,5,3,837> DEBUG: (object end) DEBUG: (object end) DEBUG: (object end) DEBUG: HandleInvoke, server invoking <_result> DEBUG: HandleInvoke, received result for method call <connect> DEBUG: sending ctrl. type: 0x0003 DEBUG: Invoking createStream DEBUG: RTMP_ClientPacket, received: invoke 21 bytes DEBUG: (object begin) DEBUG: Property: NULL DEBUG: (object end) DEBUG: HandleInvoke, server invoking <onBWDone> DEBUG: Invoking _checkbw DEBUG: RTMP_ClientPacket, received: invoke 29 bytes DEBUG: (object begin) DEBUG: Property: NULL DEBUG: (object end) DEBUG: HandleInvoke, server invoking <_result> DEBUG: HandleInvoke, received result for method call <createStream> DEBUG: SendPlay, seekTime=0.00, dLength=0, sending play: mp4:MP4:liveweb/stream/ 911_160310_Christophe_hd DEBUG: Invoking play DEBUG: sending ctrl. type: 0x0003 DEBUG: RTMP_ClientPacket, received: invoke 16419 bytes DEBUG: (object begin) DEBUG: Property: NULL DEBUG: (object end) DEBUG: HandleInvoke, server invoking <_onbwcheck> DEBUG: Invoking _result DEBUG: RTMP_ClientPacket, received: invoke 32803 bytes DEBUG: (object begin) DEBUG: Property: NULL DEBUG: (object end) DEBUG: HandleInvoke, server invoking <_onbwcheck> DEBUG: Invoking _result DEBUG: RTMP_ClientPacket, received: invoke 247 bytes DEBUG: (object begin) DEBUG: Property: NULL DEBUG: (object begin) DEBUG: Property: <Name: level, STRING: error> DEBUG: Property: <Name: code, STRING: NetStream.Play.S treamNotFound> DEBUG: Property: <Name: description, STRING: Failed to play M P4:liveweb/stream/911_160310_Christophe_hd; stream not found.> DEBUG: Property: <Name: details, STRING: MP4:liveweb/stre am/911_160310_Christophe_hd> DEBUG: Property: <Name: clientid, STRING: zK-gsqDS> DEBUG: (object end) DEBUG: (object end) DEBUG: HandleInvoke, server invoking <onStatus> DEBUG: HandleInvoke, onStatus: NetStream.Play.StreamNotFound ERROR: Closing connection: NetStream.Play.StreamNotFound DEBUG: Closing connection. Have you an idea of the problem? Thank you. |
#2
|
|||
|
|||
Re: liveweb.arte.tv and rtmpdumpI used Replay Media Catcher and it downloaded an RTMP stream from the URL provided. It didn't require SWF verification.
Also see the following thread: anyway to save arte.tv video ? (i cant download from french tv website on Mac OS X) It offers solutions for Mac OS X as well as Linux and Windows. |
#3
|
|||
|
|||
Re: liveweb.arte.tv and rtmpdumpThe line works fine
Code:
rtmpdump -r rtmpe://arte.fcod.llnwd.net:1935/a2306/o25/mp4:liveweb/stream/911_160310_Christophe_hd.mp4 -o video.mp4 |
#4
|
|||
|
|||
Re: liveweb.arte.tv and rtmpdumpQuote:
Thank you. Quote:
Thank you. |
#5
|
|||
|
|||
liveweb.arte.tv: [Tutorial] Downloading from arte live web using rtmpdumpI've written a small script for downloading from arte live web:
Code:
#!/usr/bin/php <?php if (!isset($_SERVER['argv'][1])) { die(); } if (is_numeric($_SERVER['argv'][1])) { $eventId = $_SERVER['argv'][1]; } else { $contents = file_get_contents($_SERVER['argv'][1]); preg_match('/eventId=(.*)\&mode/', $contents, $matches); $eventId = $matches[1]; } $contents = file_get_contents("http://arte.vo.llnwd.net/o21/liveweb/events/event-$eventId.xml"); preg_match('/<urlHd>rtmp:\/\/(.*)net\/(.*)\/MP4:(.*)<\/urlHd>/', $contents, $matches); if (isset($matches[3])) { $host = $matches[1] . 'net'; $app = $matches[2]; $path = 'MP4:' . $matches[3]; $file = basename($path); $live = ''; } else { preg_match('/<liveUrl>rtmp:\/\/(.*)\/(.*)\/(.*)<\/liveUrl>/', $contents, $matches); $host = $matches[1]; $app = $matches[2]; $path = $matches[3]; $file = basename($path) . '.mp4'; $live = '--live'; } preg_match_all('/<nameFr>(.*)<\/nameFr>/', $contents, $matches); $category = htmlspecialchars_decode($matches[1][1]); $title = htmlspecialchars_decode($matches[1][2]); preg_match('/<urlFr>(.*)<\/urlFr>/', $contents, $matches); $source = $matches[1]; echo "echo \"category: $category\n"; echo "title: $title\n"; echo "source: $source\" > $file.meta\n"; echo "\n"; echo "rtmpdump --host $host --app $app --playpath $path $live --flv $file\n"; Code:
php arte http://liveweb.arte.tv/fr/video/One_Shot_Not___Sting/ |
#6
|
|||
|
|||
Re: [Tutorial] Downloading from arte live webHow would you do the same thing for the video page,
Code:
http://videos.arte.tv/fr/videos/arte7#/fr/thumb///1/50/? |
#7
|
|||
|
|||
Re: [Tutorial] Downloading from arte live webCould someone please explain me how to do it exactly?
Thanks |
#8
|
|||
|
|||
Re: [Tutorial] Downloading from arte live webIf you're interested...
http://delendanet.blogspot.com/2011/...pupper-01.html http://www.delenda.net/artepupper/artepupper01.zip artepupper.exe 0- a simple windows forms interface to rtmpdump for arte |
#9
|
|||
|
|||
Re: [Tutorial] Downloading from arte live webQuote:
|
#10
|
|||
|
|||
Re: [Tutorial] Downloading from arte live web@ elch
Thank you so much for the php script. As of today, it is still working very well. And allows also to download some videos that are not playable anymore from the website ; your script allows RTMPdump to fetch them anyway! That's brilliant. Just for you to know -although I didn't use this feature yet- the first output from your script (the metadata) is false, there must have been a change from arte's servers. The correct files are downloaded, only the metadata.meta given before the rtmpdump command are wrong. Don't change anything else! All the best, L |
Tags: arte, arte tv, liveweb arte tv, rtmpdump, videos arte tv |
Thread Tools | |
Display Modes | |
|
|