Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#2076 Le 11/08/2012, à 19:52

chaoswizard

Re : TVDownloader: télécharger les médias du net !

ffmpeg reconstruit l'en-tête de la vidéo ?
Avec quelles options ?

EDIT : et ce n'est pas Windows qui est mal (quoique), ce sont les logiciels non libres !

Dernière modification par chaoswizard (Le 11/08/2012, à 19:54)


Ubuntu ==> Debian ==> Archlinux

Hors ligne

#2077 Le 11/08/2012, à 20:17

czed

Re : TVDownloader: télécharger les médias du net !

czed a écrit :

Dans ma petite appli Windows (oui je sais c'est pas bien Windows tongue ), après avoir télécharger le fichier TS je l'index avec ffmpeg et après je peux me déplacer sans problème dans la vidéo (à priori pas de problème d'entête).

En fait je ne sais pas si ça reconstruit l'entête mais en tout cas ça crée un fichier 100% lisible alors qu'avant je ne peux pas me déplacer dedans et je ne vois pas sa durée.

Ça donne quelque chose comme ça

ffmpeg -i x.ts -vcodec copy -acodec copy x.mkv

A+

Hors ligne

#2078 Le 11/08/2012, à 20:24

chaoswizard

Re : TVDownloader: télécharger les médias du net !

Ok, merci, je vais essayer.
Moi, le fichier fonctionne avec VLC mais pas avec les autres lecteurs.

La vidéo est vraiment du MKV ?


Ubuntu ==> Debian ==> Archlinux

Hors ligne

#2079 Le 11/08/2012, à 22:55

bibichouchou

Re : TVDownloader: télécharger les médias du net !

@ chaoswizard
la ligne de commande ffmpeg proposée par czed ne re-code pas la piste vidéo ou la piste audio. Le codec utilisé est "copy". Je pense que l'index est reconstruit par ffmpeg lors de l'opération (reconstruire un index ne nécessite pas de coder, seulement de parcourir le flux) ; ce qui explique pourquoi la vidéo devient explorable. Ce sera une vraie vidéo mkv si les pistes audio et vidéo sont codés avec les codecs listés dans l'article Wikipédia.

Je pense qu'il doit y avoir l'entête qui indique le codec audio/vidéo quelque part dans les fichiers, sinon que vlc ou ffmpeg refuseraient de fonctionner. J'ai déjà eu des vidéos sans en-têtes, donc aucune info sur les codecs et vlc, et mplayer, ffmpeg et mencoder ont tous échoué.

Hors ligne

#2080 Le 12/08/2012, à 01:50

pascal92

Re : TVDownloader: télécharger les médias du net !

@ bibichouchou
Juste une remarque technique :
On ne peut pas vraiment parler ici d'indexation mais plutôt d'encapsulation.
La ligne de commande précédente intègre dans un container MKV les flux A/V qui sont respectivement en AAC/H264 et fort logiquement FFMPEG fait son travail et crée une entête correspondant à ces flux.
Et vu le type de flux, l'on peut faire la même chose en MP4 ou TS (même si je préfère le MKV).
A souligner qu'il n'est pas de codecs véritablement dédié "MKV", ce container ayant l'avantage de part sa conception d'accepter de nombreux codecs pour les flux qu'il intègre (voir ton lien).

Maintenant,
Quitte à employer FFMPEG, le plus simple est encore d'utiliser directement celui-ci pour le téléchargement en imposant directement le container désiré pour la vidéo résultat. smile
En fin de téléchargement, FFMPEG écrira l'entête nécessaire.
Une version récente d'FFMPEG vous procurera des MKVs (ou des MP4) propres et ça en une seule opération.

Concernant, la capacité des lecteurs à lire des entêtes corrompus... ça dépend des lecteurs... mais à ce jeu c'est encore MPlayer qui s'en tire le mieux... et après VLC.
Pourquoi ?
Car tous 2 utilisent la LibavCodec d'FFMPEG (et de ce fait, n'utilisent pas uniquement l'entête présente dans le fichier pour analyser une vidéo à lire).

Hors ligne

#2081 Le 12/08/2012, à 08:50

chaoswizard

Re : TVDownloader: télécharger les médias du net !

Bon, ben c'est vrai qu'après un petit coup de ffmpeg, la vidéo marche niquel !

EDIT : bon ben la prochaine version à l'air ok.
Si certain peuvent la tester avant que je fasse le paquet, ça serait bien !

Dernière modification par chaoswizard (Le 12/08/2012, à 10:12)


Ubuntu ==> Debian ==> Archlinux

Hors ligne

#2082 Le 12/08/2012, à 10:37

czed

Re : TVDownloader: télécharger les médias du net !

pascal92 a écrit :

Maintenant,
Quitte à employer FFMPEG, le plus simple est encore d'utiliser directement celui-ci pour le téléchargement en imposant directement le container désiré pour la vidéo résultat. smile
En fin de téléchargement, FFMPEG écrira l'entête nécessaire.
Une version récente d'FFMPEG vous procurera des MKVs (ou des MP4) propres et ça en une seule opération.

C'est vrai que ça peut simplifier pas mal les choses, mais pas sûr qu'il soit possible de gérer la reprise du téléchargement avec.

bibichouchou a écrit :

la ligne de commande ffmpeg proposée par czed ne re-code pas la piste vidéo ou la piste audio. Le codec utilisé est "copy". Je pense que l'index est reconstruit par ffmpeg lors de l'opération

Mon but n'était pas de recoder mais simplement de rendre le fichier "propre", après avec ffmpeg les possibilités de conversion sont infinies, mais cette méthode a l'avantage d'être rapide (une conversion le sera beaucoup moins)

A+

Dernière modification par czed (Le 12/08/2012, à 10:38)

Hors ligne

#2083 Le 12/08/2012, à 11:24

bibichouchou

Re : TVDownloader: télécharger les médias du net !

czed a écrit :

Mon but n'était pas de recoder mais simplement de rendre le fichier "propre", après avec ffmpeg les possibilités de conversion sont infinies, mais cette méthode a l'avantage d'être rapide (une conversion le sera beaucoup moins)

oui j'avais bien compris... je m'y serais pris exactement de la même manière que toi, d'ailleurs. c'était juste pour répondre à chaoswizard qui demandait si c'était vraiment du mkv. et donc le but de mon message était de dire que oui ce serait du mkv, si les flux audio vidéo sont codés avec les codecs acceptés par ce conteneur... Et comme l'a précisé pascal92 dans son intéressant post, la liste de codecs acceptés dans un conteneur mkv est plutôt grande.

@ pascal92
merci d'avoir précisé/rectifié mes propos. effectivement, c'est de l'encapsulation. mais dont la conséquence est l'indexation, n'est-ce pas ?
à propos de mplayer et vlc, je me doutais bien qu'ils n'inventaient pas l'info sur les codecs à partir de rien smile merci d'avoir confirmé qu'ils analysent les flux de manière intelligente. big_smile

@ chaoswizard et les autres contributeurs
comme d'habitude, merci !

Dernière modification par bibichouchou (Le 12/08/2012, à 11:26)

Hors ligne

#2084 Le 12/08/2012, à 12:51

bibichouchou

Re : TVDownloader: télécharger les médias du net !

@ chaoswizard
j'ai testé la nouvelle version avec deux émissions, l'une normalement, l'autre avec interruption et reprise.
Lors du téléchargement, un fichier .ts apparaît et les impatients peuvent commencer à regarder l'émission avec mplayer ou vlc. On peut même se déplacer dans la vidéo. Se déplacer marche dans la vidéo marche mieux avec mplayer ; avec vlc, les premières images deviennent pixélisées temporairement.
Seul problème, à la fin, lors de l'étape "Création du fichier MKV", le fichier ts est supprimé avant que la conversion ne se fasse ! Donc plus de ts, et pas de mkv non plus.

Dernière modification par bibichouchou (Le 12/08/2012, à 13:57)

Hors ligne

#2085 Le 12/08/2012, à 13:22

pascal92

Re : TVDownloader: télécharger les médias du net !

@ bibichouchou
Ces "HLS" sont à l'origine dans un container TS, seulement vu que ce format est destiné au Transport Stream comme son nom l'indique, et même si l'entête est bien présente en début de fichier celui-ci est non "seekable", ce qui pose problème à certains lecteurs.
Une nouvelle encapsulation introduit la durée du flux et permet donc de se positionner au niveau du time code.
Donc  je pourrais dire...
1) Il est nécessaire d'avoir un lecteur apte à utiliser ce container (même WMP sous Windows est capable de le faire avec les bons codecs).
2) Ce fichier n'est pas spécialement indexé (comme pourrait l'être un WMV), mais il est rendu Seekable big_smile
En gros l'on peut se déplacer car le lecteur connait non seulement la taille du fichier mais aussi la durée de la vidéo correspondante... si tu veux te déplacer de X minutes, il sait "a peu près" le faire rapidement.
Sans cette indication de durée, comment peut-on faire ? Compter les Frames ? MPlayer (Mencoder) possède une telle fonction de déplacement mais c'est pas classique (et pas rapide).

D'un autre coté, on peut très bien imaginer reconstruire à la volée une entête FLV grâce aux infos disponibles dans le smil des f4m.. la "Duration" est disponible et les flux primaires sont bien entendu les mêmes.
Utilité toute relative cependant.. le plus simple reste encore de changer de container en fin de téléchargement, que ce soit en tout auto en téléchargeant directement avec FFMPEG, que ce soit en "manuel" en ne l'utilisant que pour l'encapsulage final.

@+

Hors ligne

#2086 Le 12/08/2012, à 13:30

chaoswizard

Re : TVDownloader: télécharger les médias du net !

Seul problème, à la fin, lors de l'étape "Création du fichier MKV", le fichier ts est supprimé avant que la conversion se fasse !

Quoi ?!
C'est pas plutôt que tu n'as pas ffmpeg d'installé ?!


Ubuntu ==> Debian ==> Archlinux

Hors ligne

#2087 Le 12/08/2012, à 13:54

bibichouchou

Re : TVDownloader: télécharger les médias du net !

@ chaoswizard
suite de mon message que j'ai dû interrompre précipitamment...

alors oui j'ai ffmpeg d'installé. c'est un de mes logiciels chouchou pour l'audio et la vidéo... avec mplayer/mencoder et vlc bien sûr big_smile big_smile d'ailleurs j'ai le début du log de ffmpeg qui apparaît...
j'ai regardé la source :
1/ le

/dev/null

je pense qu'il faut rediriger stdout et stderr donc marquer

1>/dev/null 2>/dev/null

pour enlever tous les message de ffmpeg. mais c'est de la cosmétique.
2/ tu mets le processus en arrière plan et je crois que le programme python se poursuit sans attendre la fin et donc efface le fichier ts avant la fin de l'encapsulation. Corrige-moi si je me trompe sur le fonctionnement de python.

sinon, la fonction reprise marche !
bravo !

Dernière modification par bibichouchou (Le 12/08/2012, à 14:00)

Hors ligne

#2088 Le 12/08/2012, à 14:23

chaoswizard

Re : TVDownloader: télécharger les médias du net !

Mince, ça doit être différent sous Ubuntu...
Je vais regarder ça !


Ubuntu ==> Debian ==> Archlinux

Hors ligne

#2089 Le 12/08/2012, à 14:36

bibichouchou

Re : TVDownloader: télécharger les médias du net !

enlève juste l'esperluette dans la ligne de commande ffmpeg et rajoute le bout de code qui redirige stdout et stderr vers /dev/null pour nettoyer la sortie de pluzzdl
tu devrais afficher un petit mot juste après "Création du fichier MKV" qui invite les gens à patienter quelques instants...

voici le journal de pluzzdl :

[INFO    ]  PluzzDL.py          Fin du téléchargement
[INFO    ]  PluzzDL.py          Création du fichier MKV (vidéo finale)
[DEBUG   ]  Historique.py       Historique sauvé
FFmpeg version 0.6-4:0.6-2ubuntu6.3, Copyright (c) 2000-2010 the FFmpeg developers
  built on Dec 21 2011 18:37:43 with gcc 4.4.5
  configuration: --extra-version=4:0.6-2ubuntu6.3 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-vaapi --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-x11grab --enable-libdc1394 --enable-shared --disable-static
  WARNING: library configuration mismatch
  libavutil   configuration: --extra-version=4:0.6-2ubuntu6.3 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-vaapi --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-x11grab --enable-libdc1394 --shlibdir=/usr/lib/i686/cmov --cpu=i686 --enable-shared --disable-static --disable-ffmpeg --disable-ffplay
  libavcodec  configuration: --extra-version=4:0.6-2ubuntu6.3 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-vaapi --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-x11grab --enable-libdc1394 --shlibdir=/usr/lib/i686/cmov --cpu=i686 --enable-shared --disable-static --disable-ffmpeg --disable-ffplay
  libavformat configuration: --extra-version=4:0.6-2ubuntu6.3 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-vaapi --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-x11grab --enable-libdc1394 --shlibdir=/usr/lib/i686/cmov --cpu=i686 --enable-shared --disable-static --disable-ffmpeg --disable-ffplay
  libavdevice configuration: --extra-version=4:0.6-2ubuntu6.3 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-vaapi --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-x11grab --enable-libdc1394 --shlibdir=/usr/lib/i686/cmov --cpu=i686 --enable-shared --disable-static --disable-ffmpeg --disable-ffplay
  libavfilter configuration: --extra-version=4:0.6-2ubuntu6.3 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-vaapi --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-x11grab --enable-libdc1394 --shlibdir=/usr/lib/i686/cmov --cpu=i686 --enable-shared --disable-static --disable-ffmpeg --disable-ffplay
  libswscale  configuration: --extra-version=4:0.6-2ubuntu6.3 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-vaapi --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-x11grab --enable-libdc1394 --shlibdir=/usr/lib/i686/cmov --cpu=i686 --enable-shared --disable-static --disable-ffmpeg --disable-ffplay
  libpostproc configuration: --extra-version=4:0.6-2ubuntu6.3 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-vaapi --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-x11grab --enable-libdc1394 --shlibdir=/usr/lib/i686/cmov --cpu=i686 --enable-shared --disable-static --disable-ffmpeg --disable-ffplay
  libavutil     50.15. 1 / 50.15. 1
  libavcodec    52.72. 2 / 52.72. 2
  libavformat   52.64. 2 / 52.64. 2
  libavdevice   52. 2. 0 / 52. 2. 0
  libavfilter    1.19. 0 /  1.19. 0
  libswscale     0.11. 0 /  0.11. 0
  libpostproc   51. 2. 0 / 51. 2. 0
./avengers-l-equipe-des-heros-2012-08-12-08h20.ts: No such file or directory

tu vois sur la dernière ligne, que le fichier ts a disparu avant que ffmpeg ne fasse son boulot.
ps : je sais mon ffmpeg est un peu daté...


Dans ipython:
si je tape

import os
command = "(date;sleep 1m;date)&"
def attend():
    os.system(command)
    print "fini"
attend()

et si je remplace command par

command = "(date;sleep 1m;date)"

je n'obtiens pas la même chose. Un coup, j'ai le mot "fini" qui s'affiche immédiatement, puis j'ai les sorties de date à 1 min d'écart. Dans l'autre cas, j'ai le premier date, une minute plus tard le deuxième date, suivi de "fini".

Hors ligne

#2090 Le 12/08/2012, à 14:37

bibichouchou

Re : TVDownloader: télécharger les médias du net !

ok, je viens d'essayer les modifs que je t'indique dans le message précédent. et c'est ok, j'ai une belle vidéo mkv !

voici la sortie à présent:

[DEBUG   ]  Navigateur.py       GET http://ftvodhd-i.akamaihd.net/i/streaming-adaptatif_france-dom-tom/2012/S32/J7/67711553-20120812-,398,632,934,k.mp4.csmil/segment132_2_av.ts?e=00000000&id=
[DEBUG   ]  Navigateur.py       GET http://ftvodhd-i.akamaihd.net/i/streaming-adaptatif_france-dom-tom/2012/S32/J7/67711553-20120812-,398,632,934,k.mp4.csmil/segment133_2_av.ts?e=00000000&id=
[INFO    ]  PluzzDL.py          Fin du téléchargement
[INFO    ]  PluzzDL.py          Création du fichier MKV (vidéo finale)
[DEBUG   ]  Historique.py       Historique sauvé

Dernière modification par bibichouchou (Le 12/08/2012, à 14:39)

Hors ligne

#2091 Le 12/08/2012, à 14:40

chaoswizard

Re : TVDownloader: télécharger les médias du net !

Effectivement, le "&>" ne semble pas faire la même chose...
Bizarre.

Merci pour la correction !

Dis moi si tout roule maintenant.

Dernière modification par chaoswizard (Le 12/08/2012, à 14:41)


Ubuntu ==> Debian ==> Archlinux

Hors ligne

#2092 Le 12/08/2012, à 15:04

bibichouchou

Re : TVDownloader: télécharger les médias du net !

Ça a l'air bon wink Encore merci !

Hors ligne

#2093 Le 12/08/2012, à 18:43

grandtoubab

Re : TVDownloader: télécharger les médias du net !

Bonsoir
Version 0.9 nickel

@ubuntu-desktop:~/Videos$ pluzzdl http://www.pluzz.fr/nolwenn-leroy-nuit-bretonne.html
[INFO    ]  PluzzDL.py          Début du téléchargement des fragments
[INFO    ]  PluzzDL.py          Fin du téléchargement
[INFO    ]  PluzzDL.py          Création du fichier MKV (vidéo finale) ; veuillez attendre quelques instants
[INFO    ]  PluzzDL.py          Fin !

1344793253.png
Il ya un leger décalage son/image mais ça vient peut-être de chez moi.
Par contre le mkv, je ne sais pas si ça va passer pour le mediacenter SFR.

Merci encore big_smile

Dernière modification par grandtoubab (Le 12/08/2012, à 18:46)


Linux tout seul sur HP Pavilion DV7 et Acer Aspire T650, Canon MG3650 en wifi
Debian 11 Bullseye Gnome/Xorg, Gnome/Wayland avec SDDM
https://bidouilledebian.wordpress.com/
ON M'A VU DANS LE VERCORS, SAUTER A L'ELASTIQUE..... J'AI DANS LES BOTTES DES MONTAGNES DE QUESTIONS....

Hors ligne

#2094 Le 12/08/2012, à 18:53

chaoswizard

Re : TVDownloader: télécharger les médias du net !

Profitez en vite ; vu les dernières fois, ça ne devrait marcher qu'un jour ou deux tongue


Ubuntu ==> Debian ==> Archlinux

Hors ligne

#2095 Le 13/08/2012, à 09:03

whoies

Re : TVDownloader: télécharger les médias du net !

chaoswizard a écrit :

Profitez en vite ; vu les dernières fois, ça ne devrait marcher qu'un jour ou deux tongue

et pourquoi que ça change si vite ?!
pur hasard ou pour obliger les gens à se servir de captv  sous Windows dont on ne connait même pas le code source ?

Hors ligne

#2096 Le 13/08/2012, à 09:18

Regenesis

Re : TVDownloader: télécharger les médias du net !

Parce que n'importe quel développeur de chez pluzz peut venir voir comment fonctionne pluzzdl et donc comment le rendre inopérant.

Et sinon du nouveau du côté de M6 et W9 ?

Hors ligne

#2097 Le 13/08/2012, à 10:18

Xun

Re : TVDownloader: télécharger les médias du net !

Franchement, c'est un scandale ... Quand je vois la BBC et son BBC player (iPlayer, dans les dépôts ubuntu) où on peut y télécharger ce que l'on veut (vraiment tout en ayant une IP anglaise), France Télévision passe pour des bouseux ...

Hors ligne

#2098 Le 13/08/2012, à 16:19

k3c

Re : TVDownloader: télécharger les médias du net !

Et sur la Bbc les emissions restent 5 semaines disponibles...


Debian 12 sur Thinkpad reconditionné

Hors ligne

#2099 Le 13/08/2012, à 17:16

chaoswizard

Re : TVDownloader: télécharger les médias du net !

Et sinon du nouveau du côté de M6 et W9 ?

Ben en théorie, je crois qu'on a tout ce qu'il faut.
En pratique, je n'ai toujours pas réussi à faire fonctionner correctement (sur 64 bits) la version de rtmpdump qui supporte le handshake 10.

et pourquoi que ça change si vite ?!
pur hasard ou pour obliger les gens à se servir de captv  sous Windows dont on ne connait même pas le code source ?

Je ne sais pas trop ; les gens de FT doivent s'ennuyer...

Je pense que ça n'a rien à voir avec le programme Windows (qui par ailleurs passe par le player flash pour récupérer la chaîne HMAC pour la vidéo).
Heureusement, pluzzdl ne dépend pas du flash !


Ubuntu ==> Debian ==> Archlinux

Hors ligne

#2100 Le 13/08/2012, à 17:27

Xun

Re : TVDownloader: télécharger les médias du net !

À quand une MAJ de tvdownloader ? roll

Hors ligne