Communauté francophone des utilisateurs de Xubuntu
Les Ubuntu-partys sont l'occasion pour beaucoup d'entre vous d'acquérir les goodies Ubuntu-fr faits par nos petites mains avec amour.
Pour tous les autres, fini le désespoir de les manquer
Il est désormais possible de vous procurer l'objet de votre choix grâce à la boutique en ligne, commune à Framasoft et Ubuntu-fr. Vous pourrez déjà y trouver mugs, t-shirts et, bien sûr, les Framakey Ubuntu-fr Remix.
Bon soir,
est-ce que quelqu'un a réussi à télécharger par M6replay. J'ai utilsé rtmpsuck (de svn://svn.mplayerhq.hu/rtmpdump/trunk) afin de connaître les bons paramètres. Cela retourne:
$ rtmpdump -z -r "rtmpe://groupemsix.fcod.llnwd.net/a2883/d1" -a "a2883/d1" -f "LNX 10,0,45,2" -W "http://groupemsix.vo.llnwd.net/o24/u/production/swf/v10_videoPlayer.swf" -t "rtmpe://groupemsix.fcod.llnwd.net/a2883/d1" -p "http://www.m6replay.fr/#/series-fictions/un-gars-une-fille/8646" -y "mp4:production/regienum/m6_un-gars-une-fille_25750_170220102035.mp4" -o output.flv
C'etait possible que quelqu'un peux tester ce command?
Chez moi, il dit seulement:
DEBUG: Property: <Name: level, STRING: error>
DEBUG: Property: <Name: code, STRING: NetConnection.Connect.Rejected>
DEBUG: Property: <Name: description, STRING: Connection failed.>
DEBUG: Property: <Name: description, STRING: [ Server.Reject ] : Connection failed.>
Et puis, rtmpdump s'arrete.
Merci beaucopup.
tasbin
Dernière modification par tasbin (Le 19/02/2010, à 19:52)
Hors ligne
Bonsoir,
Cela retourne ça chez moi : http://pastebin.com/2iQ2Mc9u
Une question, comment as-tu paramétré rtmpsuck pour avoir l'URL du flux rtmpe, ça m'intéresse ? ![]()
Hors ligne
Bonjour,
merci pour ta reponse.
Et qu'est-ce qui ce passe quand tu ouvre le lien dans ton navigateur? http://www.m6replay.fr/#/series-fiction … fille/8646
J'ai lance rtmpsuck comme ca:
# ./rtmpsrv -z
Mais tu dois aussi devier le trafic, par ex. utilisant iptables:
# sysctl net.netfilter.nf_conntrack_acct=1
# iptables -t nat -A OUTPUT -p tcp --dport 1935 -j REDIRECT
As-tu une IP francaise? Je suis etonne parce que tu recois le meme message comme moi.
Hors ligne
Je crois que j'avais decouvert comment ca marche.
Pour M6, vous avez besoin de ce lien:
http://www.m6replay.fr/catalogue/120.xml
Et pour W9:
http://data.w9replay.fr/catalogue/120-w9.xml
Puis, cherches video_url="..." pour les series ce que vous voulez recuperer. Finalement, mets ce valeur dans le parametre -y de rtmpdump:
$ rtmpdump -r rtmpe://groupemsix.fcod.llnwd.net/a2883/d1 -a a2883/d1 -f "LNX 10,0,45,2" -W http://groupemsix.vo.llnwd.net/o24/u/pr … Player.swf -t rtmpe://groupemsix.fcod.llnwd.net/a2883/d1 -y <ICI> -o output.flv
Par exemple:
$ rtmpdump -r rtmpe://groupemsix.fcod.llnwd.net/a2883/d1 -a a2883/d1 -f "LNX 10,0,45,2" -W http://groupemsix.vo.llnwd.net/o24/u/pr … Player.swf -t rtmpe://groupemsix.fcod.llnwd.net/a2883/d1 -y mp4:production/regienum/m6_le-choix-de-gracie_25446_180220101345.mp4 -o m6_le-choix-de-gracie_25446_180220101345.mp4
Fonctionne parfaitement. ![]()
Pardon pour mon mauvais francais. (Je suis allemand^^)
Hors ligne
Bonsoir,
Je peux t'assurer que ton français est très compréhensible et même plus que celui de certains Français ![]()
Alors oui, j'ai une IP française.
Lorsque je lance ta commande (sauf erreur dans le copié/collé), j'obtiens une erreur :
./rtmpdump -r rtmpe://groupemsix.fcod.llnwd.net/a2883/d1 -a a2883/d1 -f "LNX 10,0,45,2" -W http://groupemsix.vo.llnwd.net/o24/u/production/swf/v10_videoPlayer.swf -t rtmpe://groupemsix.fcod.llnwd.net/a2883/d1 -y mp4:production/regienum/m6_le-choix-de-gracie_25446_180220101345.mp4 -o m6_le-choix-de-gracie_25446_180220101345.mp4 RTMPDump v2.1d (c) 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL Connecting ... ERROR: RTMP_Connect1, handshake failed.
Merci pour les commandes pour rtmpsuck... en revanche je peine à exploiter les informations qu'il retourne.
Exemple :
http://www.musicme.com/#/Julien-Ribot/albums/Vega-3700426905220.html?play=05
./rtmpsrv -z RTMP Server v2.1d (c) 2010 Andrej Stepanchuk, Howard Chu; license: GPL Streaming on rtmp://0.0.0.0:1935 DEBUG: serverThread: accepted connection from 192.168.0.13 to 62.210.133.18 DEBUG: SHandShake: Type Requested : 06 DEBUG: SHandShake: DH pubkey position: 472 DEBUG: SHandShake: Client digest offset: 1383 DEBUG: SHandShake: Initial server digest: 8B 64 45 78 51 1B AA DA 1B 29 12 8B 2B AA D0 1C CE 58 36 BC 64 8E 9A E7 A6 53 DE 41 92 A5 B6 44 DEBUG: SHandShake: Client Uptime : 21329 DEBUG: SHandShake: Player Version: -128.0.3.2 WARNING: Trying different position for client digest! DEBUG: SHandShake: Client DH public key offset: 579 DEBUG: SHandShake: Secret key: EB 70 4A E0 21 83 96 AE 8C 51 FB 1C A3 63 6E 17 B3 08 43 97 17 98 28 4F 30 A1 32 FE 03 E4 C1 32 0B 2E 42 78 EB 29 3A C1 0C 9E 06 D5 0E 26 0C 9F ED 4A EC 7B C6 42 47 FB D1 69 47 EC 7A 93 30 97 C5 15 97 88 F2 85 58 7C 97 0D D9 F3 84 50 F4 A0 CF 1E 84 D1 8D 4D A2 3C 9C 36 C5 AE E8 51 21 98 B6 57 6C D0 B7 7D 42 CC 2C 33 05 38 D1 0D EF 5F 53 01 F6 77 E8 65 AA 32 24 03 B0 20 93 A4 CE 3D DEBUG: RC4 Out Key: BE FA 97 E7 90 05 E8 30 8C E8 86 7C 41 65 1E 69 DEBUG: RC4 In Key: 4D B3 06 3E 01 1F B2 63 1A 4B D9 E5 E0 4B F0 6E DEBUG: SHandShake: Calculated digest key from secure key and server digest: 19 38 5C 19 6C D0 0F 4B 73 6C 74 2F D4 11 43 49 18 8B 07 D3 3B 8A F8 D2 FC 46 0B 84 5B 7A 0A 13 DEBUG: SHandShake: Server signature calculated: 7D CA 89 4D 86 DD 20 5F AD 8F 52 E6 93 7E 28 53 2A 31 11 55 F4 01 5E 0A 83 22 BB 14 19 5F 0B AE DEBUG: SHandShake: Client sent signature: C3 F0 78 35 4E EB 92 C1 50 14 28 B2 02 BE D8 DD C2 F0 24 32 84 94 17 A4 53 CD 80 E0 FC AA 88 1A DEBUG: SHandShake: Digest key: A2 52 F5 AB 5A B1 9C C6 A3 5D 91 9D F3 18 F3 7C 1D CE D7 C1 DE 9C 40 4E E7 A4 12 43 F0 38 27 0D DEBUG: SHandShake: Signature calculated: C3 F0 78 35 4E EB 92 C1 50 14 28 B2 02 BE D8 DD C2 F0 24 32 84 94 17 A4 53 CD 80 E0 FC AA 88 1A DEBUG: SHandShake: Genuine Adobe Flash Player DEBUG: SHandShake: Handshaking finished.... DEBUG2: RTMP_ReadPacket: fd=4 0000: 03 00 00 01 00 01 d9 14 00 00 00 00 ............ 0000: 02 00 07 63 6f 6e 6e 65 63 74 00 3f f0 00 00 00 ...connect.?.... 0010: 00 00 00 03 00 03 61 70 70 02 00 11 75 6e 6c 69 ......app...unli 0020: 6d 69 74 65 64 32 2f 61 75 64 69 6f 2f 00 08 66 mited2/audio/..f 0030: 6c 61 73 68 56 65 72 02 00 0d 4c 4e 58 20 31 30 lashVer...LNX 10 0040: 2c 30 2c 34 35 2c 32 00 06 73 77 66 55 72 6c 02 ,0,45,2..swfUrl. 0050: 00 39 68 74 74 70 3a 2f 2f 77 77 77 2e 6d 75 73 .9http://www.mus 0060: 69 63 6d 65 2e 63 6f 6d 2f 41 75 64 69 6f 43 6f icme.com/AudioCo 0070: 6e 74 61 69 6e 65 72 56 32 2e 73 77 66 3f 76 65 ntainerV2.swf?ve DEBUG2: RTMP_ReadPacket: fd=4 0000: c3 . 0000: 72 3d 32 2c 31 35 36 26 72 3d 30 00 05 74 63 55 r=2,156&r=0..tcU 0010: 72 6c 02 00 2c 72 74 6d 70 65 3a 2f 2f 73 74 72 rl..,rtmpe://str 0020: 65 61 6d 2e 6d 75 73 69 63 6d 65 2e 63 6f 6d 2f eam.musicme.com/ 0030: 75 6e 6c 69 6d 69 74 65 64 32 2f 61 75 64 69 6f unlimited2/audio 0040: 2f 00 04 66 70 61 64 01 00 00 0c 63 61 70 61 62 /..fpad....capab 0050: 69 6c 69 74 69 65 73 00 40 2e 00 00 00 00 00 00 ilities.@....... 0060: 00 0b 61 75 64 69 6f 43 6f 64 65 63 73 00 40 a8 ..audioCodecs.@. 0070: ee 00 00 00 00 00 00 0b 76 69 64 65 6f 43 6f 64 ........videoCod DEBUG2: RTMP_ReadPacket: fd=4 0000: c3 . 0000: 65 63 73 00 40 6f 80 00 00 00 00 00 00 0d 76 69 ecs.@o........vi 0010: 64 65 6f 46 75 6e 63 74 69 6f 6e 00 3f f0 00 00 deoFunction.?... 0020: 00 00 00 00 00 07 70 61 67 65 55 72 6c 02 00 25 ......pageUrl..% 0030: 68 74 74 70 3a 2f 2f 77 77 77 2e 6d 75 73 69 63 http://www.music 0040: 6d 65 2e 63 6f 6d 2f 61 75 64 69 6f 66 72 61 6d me.com/audiofram 0050: 65 2e 70 68 70 00 0e 6f 62 6a 65 63 74 45 6e 63 e.php..objectEnc 0060: 6f 64 69 6e 67 00 40 08 00 00 00 00 00 00 00 00 oding.@......... 0070: 09 02 00 21 38 5a 57 52 4a 37 74 33 48 75 43 63 ...!8ZWRJ7t3HuCc DEBUG2: RTMP_ReadPacket: fd=4 0000: c3 . 0000: 4e 51 78 36 5f 36 7a 58 4b 7a 5a 55 6d 65 78 55 NQx6_6zXKzZUmexU 0010: 47 58 57 62 7a 03 00 06 75 73 65 72 49 44 02 00 GXWbz...userID.. 0020: 22 76 2d 38 39 64 32 36 39 36 31 33 66 31 35 35 "v-89d269613f155 0030: 62 61 34 33 64 31 35 31 31 33 61 30 35 35 35 39 ba43d15113a05559 0040: 30 66 62 00 08 61 75 74 68 54 79 70 65 00 40 00 0fb..authType.@. 0050: 00 00 00 00 00 00 00 00 09 ......... DEBUG: ServePacket, received packet type 14, size 473 bytes DEBUG: ServePacket, received: invoke 473 bytes DEBUG: (object begin) DEBUG: Property: <Name: no-name., STRING: connect> DEBUG: Property: <Name: no-name., NUMBER: 1.00> DEBUG: Property: <Name: no-name., OBJECT> DEBUG: (object begin) DEBUG: Property: <Name: app, STRING: unlimited2/audio/> DEBUG: Property: <Name: flashVer, STRING: LNX 10,0,45,2> DEBUG: Property: <Name: swfUrl, STRING: http://www.musicme.com/AudioContainerV2.swf?ver=2,156&r=0> DEBUG: Property: <Name: tcUrl, STRING: rtmpe://stream.musicme.com/unlimited2/audio/> DEBUG: Property: <Name: fpad, BOOLEAN: FALSE> DEBUG: Property: <Name: capabilities, NUMBER: 15.00> DEBUG: Property: <Name: audioCodecs, NUMBER: 3191.00> DEBUG: Property: <Name: videoCodecs, NUMBER: 252.00> DEBUG: Property: <Name: videoFunction, NUMBER: 1.00> DEBUG: Property: <Name: pageUrl, STRING: http://www.musicme.com/audioframe.php> DEBUG: Property: <Name: objectEncoding, NUMBER: 3.00> DEBUG: (object end) DEBUG: Property: <Name: no-name., STRING: 8ZWRJ7t3HuCcNQx6_6zXKzZUmexUGXWbz> DEBUG: Property: <Name: no-name., OBJECT> DEBUG: (object begin) DEBUG: Property: <Name: userID, STRING: v-89d269613f155ba43d15113a055590fb> DEBUG: Property: <Name: authType, NUMBER: 2.00> DEBUG: (object end) DEBUG: (object end) DEBUG: ServeInvoke, client invoking <connect> DEBUG2: RTMP_SendPacket: fd=4, size=239 0000: 43 00 00 00 00 00 ef 14 C....... 0000: 02 00 07 5f 72 65 73 75 6c 74 00 3f f0 00 00 00 ..._result.?.... 0010: 00 00 00 03 00 06 66 6d 73 56 65 72 02 00 0d 46 ......fmsVer...F 0020: 4d 53 2f 33 2c 35 2c 31 2c 35 32 35 00 0c 63 61 MS/3,5,1,525..ca 0030: 70 61 62 69 6c 69 74 69 65 73 00 40 3f 00 00 00 pabilities.@?... 0040: 00 00 00 00 04 6d 6f 64 65 00 3f f0 00 00 00 00 .....mode.?..... 0050: 00 00 00 00 09 03 00 05 6c 65 76 65 6c 02 00 06 ........level... 0060: 73 74 61 74 75 73 00 04 63 6f 64 65 02 00 1d 4e status..code...N 0070: 65 74 43 6f 6e 6e 65 63 74 69 6f 6e 2e 43 6f 6e etConnection.Con 0000: c3 . 0000: 6e 65 63 74 2e 53 75 63 63 65 73 73 00 0b 64 65 nect.Success..de 0010: 73 63 72 69 70 74 69 6f 6e 02 00 15 43 6f 6e 6e scription...Conn 0020: 65 63 74 69 6f 6e 20 73 75 63 63 65 65 64 65 64 ection succeeded 0030: 2e 00 0e 6f 62 6a 65 63 74 45 6e 63 6f 64 69 6e ...objectEncodin 0040: 67 00 40 08 00 00 00 00 00 00 00 04 64 61 74 61 g.@.........data 0050: 03 00 07 76 65 72 73 69 6f 6e 02 00 09 33 2c 35 ...version...3,5 0060: 2c 31 2c 35 32 35 00 00 09 00 00 09 00 00 09 ,1,525......... DEBUG: Invoking _result DEBUG2: RTMP_ReadPacket: fd=4 0000: 02 ff ad 52 00 00 0a 04 00 00 00 00 ...R........ 0000: 00 03 00 00 00 00 00 00 07 d0 .......... DEBUG: ServePacket, received packet type 04, size 10 bytes DEBUG2: RTMP_ReadPacket: fd=4 0000: 43 00 05 82 00 00 1a 11 C....... 0000: 00 02 00 0c 63 72 65 61 74 65 53 74 72 65 61 6d ....createStream 0010: 00 40 00 00 00 00 00 00 00 05 .@........ DEBUG: ServePacket, received packet type 11, size 26 bytes DEBUG: ServePacket, flex message, size 26 bytes, not fully supported DEBUG: (object begin) DEBUG: Property: <Name: no-name., STRING: createStream> DEBUG: Property: <Name: no-name., NUMBER: 2.00> DEBUG: Property: NULL DEBUG: (object end) DEBUG: ServeInvoke, client invoking <createStream> DEBUG2: RTMP_SendPacket: fd=4, size=29 0000: 43 00 00 00 00 00 1d 14 C....... 0000: 02 00 07 5f 72 65 73 75 6c 74 00 40 00 00 00 00 ..._result.@.... 0010: 00 00 00 05 00 3f f0 00 00 00 00 00 00 .....?....... DEBUG: Invoking _result DEBUG2: RTMP_ReadPacket: fd=4 0000: 43 00 00 04 00 00 43 11 C.....C. 0000: 00 02 00 0e 67 65 74 53 74 72 65 61 6d 49 6e 66 ....getStreamInf 0010: 6f 73 00 00 00 00 00 00 00 00 00 05 02 00 13 33 os.............3 0020: 37 30 30 34 32 36 39 30 35 32 32 30 2d 30 31 5f 700426905220-01_ 0030: 30 35 02 00 0e 41 75 64 69 6f 55 6e 6c 69 6d 69 05...AudioUnlimi 0040: 74 65 64 ted DEBUG: ServePacket, received packet type 11, size 67 bytes DEBUG: ServePacket, flex message, size 67 bytes, not fully supported DEBUG: (object begin) DEBUG: Property: <Name: no-name., STRING: getStreamInfos> DEBUG: Property: <Name: no-name., NUMBER: 0.00> DEBUG: Property: NULL DEBUG: Property: <Name: no-name., STRING: 3700426905220-01_05> DEBUG: Property: <Name: no-name., STRING: AudioUnlimited> DEBUG: (object end) DEBUG: ServeInvoke, client invoking <getStreamInfos> DEBUG2: RTMP_ReadPacket: fd=4 0000: 82 00 00 00 .... 0000: 00 03 00 00 00 01 00 00 07 d0 .......... DEBUG: ServePacket, received packet type 04, size 10 bytes DEBUG2: RTMP_ReadPacket: fd=4
Une idée ? ![]()
Hors ligne
Merci pour les gentils mots.
On peut pas telecharger ce dernier stream parce que le serveur attend des parametres etant specifique a cette site la. Je crois que ce sont les deux:
DEBUG: Property: <Name: userID, STRING: v-89d269613f155ba43d15113a055590fb>
DEBUG: Property: <Name: authType, NUMBER: 2.00>
Le developpeur de rtmpdump a ecrit rtmpsuck pour n'ajouter pas le support pour parametres inofficielles. rtmpsuck sauvegarde le stream pendant que tu l'ecoute dans ton navigateur. Ce semble qu'il manque le "play" command. Je crois que c'est a cause de ca:
DEBUG: ServePacket, received packet type 11, size 67 bytes
DEBUG: ServePacket, flex message, size 67 bytes, not fully supported
rtmpsuck ne sait pas comment a traiter le message. Donc le stream arrete. Peut-etre tu peux declarer ce bug dans le mailing list car rtmpsuck faut gerer avec tels serveurs?
Concernant l'autre probleme: Je crois qu'il y a quelque chose comme un "contrôle à l'entrée" et qu'on peux deverouiller soi-meme par lancant les liens:
http://www.morninglive.com/xml/m6configuration.xml
http://www.m6replay.fr/xml/configurationV10.xml
http://www.m6replay.fr/catalogue/catalo … ithPub.xml
Je ne suis pas sur si c'etait exactement que je faisais. Sinon, j'ai pas une idee, ce que je faisais pour amener cela a marcher. Mais ton command fontionne parfaitement ici. ![]()
Hors ligne
Moi qui croyais cela impossible car c t cryptée chez M6??![]()
Hors ligne
En fait c'est très simple:
1) Lancez rtmpsrv dans un terminal (il devrait se lancer sur le port 1935)
2) Ouvrez un autre terminal et se logger en root pour rediriger le flux internet vers le port 1935
a) iptables -t nat -A OUTPUT -p tcp --dport 1935 -j REDIRECT
b) sysctl net.netfilter.nf_conntrack_acct=1
3) Avec votre navigateur, commencez à lire l'émission (et pas seulement les pubs !)
4) Surveillez le terminal avec rtmpsrv, dès qu'il a suffisamment de données, vous allez voir des lignes avec "rtmpdump" apparaître. A ce moment-là interrompez rtmpsrv par Control-C
5) Revenez dans le terminal root (où vous avez fait les manips avec iptables) et annuler la règle:
a) iptables -t nat -X
b) iptables -t nat -F
6) Revenez dans le terminal de "rtmpsrv" et copier la ligne commençant par rtmpdump
7) Coller la ligne et c'est joué !
Il y a sûrement des trucs inutiles dans ce que j'ai donné (en particulier je maîtrise mal iptables) mais ça marche nickel chez moi.
P.S. : testé avec rtmpdump 2.2
Hors ligne
@ tasbin : avec ta manip pour récupérer les flux, n'y aurait-il pas moyen de faire un script comme pour les daylies de c+ ?
voir http://forum.ubuntu-fr.org/viewtopic.php?id=346586
En attendant le script, pour moi c'est Windows en virtualbox et mchichereplay... (canailleplus ne vaut pas les scripts d'olaf10...)
En tout cas, merci pour ton tuto court mais efficace...
Hors ligne