pmd a écritplmegalo a écritPar contre, actuellement, je cherche un moyen de calculer la taille du stream à partir des tags FLV (datasize), Si quelqu'un sait faire, je suis interressé.
Tu veux savoir si le fichier est téléchargé en entier, c'est ça ?
Pour faire ça, tu peux regarder la date de modification. Si le fichier n'a pas été modifié depuis 3secondes, il est complètement téléchargé. Par exemple 🙂
Non, je veux connaître la taille du fichier avant la fin du téléchargement pour gérer la barre de progression.
Pour le test sur le fichier téléchargé en entier, j'utilise un autre truc : je teste le contenu des 256 derniers caratères du fichier sur trois cycles de 0.5 secondes et la présence de tag de fin de FLV. C'est plus sûr que la date en cas de blocage du téléchargement.
Pour le reste c'est bon, ça marche déjà chez moi.
Pour l'instant le prog principal est fait pour KDE 3.5.9/kdialog (j'utilise un framework de développement que j'avais écrit pour d'autres applications, mais qui n'est pas super adapté au packaging pour l'instant, une veille croute de code pour faire vite, quoi 🙂 ), et appelle une version simplifiée du code d'erwan (pour gnome/gtkdialog). Pour pouvoir packager tout ça, il faut que j'uniformise le code (sinon, ça marchera jamais ailleurs que sur ma bécane 🙂 )
C'est pas pour vous faire baver, juste j'ai pas le temps de packager le truc pour l'instant.
Les spécifs actuelles :
saraKonor tourne en tache de fond (cpu négligeable grace à boucle sur une commande sleep)
Deux types de lancements (choix au démarrage de saraKonor) :
1- entièrement automatique avec dialogue d'interruption dans un coin de l'écran et titres non reconnus stockés dans "Artiste Inconnu/Album Inconnu"
2- avec intervention simplifiée lors du taggage si le morceau n'est pas reconnu (pas de CDDB, seulement intervention manuelle).
To do (un jour) :
1 - proposer le choix multiple pour le taggage (comme sous amarok !) => avis éclairés bienvenus
2 - gérer une config (ça, je vais me débrouiller)
3 - traduire complètement en version gnome/gtkdialog ou alors complètement en KDE 3.5.9/kdialog avec Kommander (?)
4 - packager (une fois tout uniformisé)
Dés que ça me semble tenir la route pour être installé sur d'autres bécanes je fais signe ici...
A plus
en exemple le contenu de la log avec deux morceaux taggés et rangés :
20090124_11:36:53.262383_INFO : new instance starting...
20090124_11:36:53.262687_INFO : process is automated !
20090124_11:36:53.266525_INFO : idle processing : waiting for a stream to be up
20090124_11:38:20.555559_INFO : stream's up : gonna record it !
DCOPRef(kdialog-26796,ProgressDialog)
20090124_11:38:26.544216_INFO : wait for stream completion duration (s) : 5.5
20090124_11:38:26.564805_INFO : stream's complete : gonna tag it !
MPlayer dev-SVN-r27637-4.3-openSUSE Linux 11.0 (i686)-Packman (C) 2000-2008 MPlayer Team
CPU: Intel(R) Core(TM)2 Duo CPU E6750 @ 2.66GHz (Family: 6, Model: 15, Stepping: 11)
CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
...
[lavf] Audio stream found, -aid 0
[flv @ 0x8d5d970]skipping flv packet: type 87, size 7942265, flags 0
[flv @ 0x8d5d970]skipping flv packet: type 120, size 4801605, flags 0
Core dumped ;)
Exiting... (End of file)
--2009-01-24 11:38:32-- http://musicbrainz.org/show/puid/?puid=de17a6ca-b149-da42-b79c-70a8b27fd885
Résolution de musicbrainz.org... 72.29.166.157
Connexion vers musicbrainz.org|72.29.166.157|:80...connecté.
requête HTTP transmise, en attente de la réponse...200 OK
Longueur: non spécifié [text/html]
Saving to: `/home/pl/MP3/conv/.PUID'
0K .......... .......... .......... .... 57,5K=0,6s
2009-01-24 11:38:33 (57,5 KB/s) - « /home/pl/MP3/conv/.PUID » sauvegardé [35679]
[31mNo ID3 v1.x/v2.x tag found![0m
[33mSetting artist: a-ha[0m
[33mSetting album: East of the Sun West of the Moon[0m
[33mSetting title: Crying in the Rain[0m
[33mSetting track: 1[0m
[33mSetting track genre: [0m
[33mWriting tag...[0m
[1m[32mFlashM4WXYI.mp3[0m [32m[ 4.05 MB ][0m
-------------------------------------------------------------------------------
[1mTime: [0m04:25 MPEG1, Layer III [ 128 kb/s @ 44100 Hz - Joint stereo ]
-------------------------------------------------------------------------------
ID3 v2.4:
[1mtitle[0m: Crying in the Rain [1martist[0m: a-ha
[1malbum[0m: East of the Sun West of the Moon [1myear[0m: None
[1mtrack[0m: 1
[33mRenaming file to 'a-hasupr1East of the Sun West of the Moonsupr2Crying in the Rain'[0m
[1m[32mFlashM4WXYI.mp3[0m [32m[ 4.05 MB ][0m
-------------------------------------------------------------------------------
[1mTime: [0m04:25 MPEG1, Layer III [ 128 kb/s @ 44100 Hz - Joint stereo ]
-------------------------------------------------------------------------------
ID3 v2.4:
[1mtitle[0m: Crying in the Rain [1martist[0m: a-ha
[1malbum[0m: East of the Sun West of the Moon [1myear[0m: None
[1mtrack[0m: 1
20090124_11:38:34.262883_INFO : end of tag processing !
20090124_11:38:34.279760_INFO : launching of next instance of saraKonor !
20090124_11:38:34.282988_INFO : launched ! End of the current instance !
20090124_11:38:34.334626_INFO : new instance starting...
20090124_11:38:34.334947_INFO : process is automated !
20090124_11:38:34.338760_INFO : idle processing : waiting for a stream to be up
20090124_11:39:32.128973_INFO : stream's up : gonna record it !
DCOPRef(kdialog-27674,ProgressDialog)
20090124_11:39:40.951859_INFO : wait for stream completion duration (s) : 8
20090124_11:39:40.968348_INFO : stream's complete : gonna tag it !
MPlayer dev-SVN-r27637-4.3-openSUSE Linux 11.0 (i686)-Packman (C) 2000-2008 MPlayer Team
CPU: Intel(R) Core(TM)2 Duo CPU E6750 @ 2.66GHz (Family: 6, Model: 15, Stepping: 11)
CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
...
[lavf] Audio stream found, -aid 0
[flv @ 0x8d5d980]skipping flv packet: type 87, size 7942265, flags 0
[flv @ 0x8d5d980]skipping flv packet: type 120, size 4801605, flags 0
Core dumped ;)
Exiting... (End of file)
--2009-01-24 11:39:46-- http://musicbrainz.org/show/puid/?puid=316d1509-90dc-1a80-bc7d-20f1871d3e17
Résolution de musicbrainz.org... 72.29.166.157
Connexion vers musicbrainz.org|72.29.166.157|:80...connecté.
requête HTTP transmise, en attente de la réponse...200 OK
Longueur: non spécifié [text/html]
Saving to: `/home/pl/MP3/conv/.PUID'
0K .......... .......... .... 58,1K=0,4s
2009-01-24 11:39:47 (58,1 KB/s) - « /home/pl/MP3/conv/.PUID » sauvegardé [25316]
[31mNo ID3 v1.x/v2.x tag found![0m
[33mSetting artist: a-ha[0m
[33mSetting album: East of the Sun West of the Moon[0m
[33mSetting title: Rolling Thunder[0m
[33mSetting track: 10[0m
[33mSetting track genre: [0m
[33mWriting tag...[0m
[1m[32mFlashyEVDqJ.mp3[0m [32m[ 5.24 MB ][0m
-------------------------------------------------------------------------------
[1mTime: [0m05:44 MPEG1, Layer III [ 128 kb/s @ 44100 Hz - Joint stereo ]
-------------------------------------------------------------------------------
ID3 v2.4:
[1mtitle[0m: Rolling Thunder [1martist[0m: a-ha
[1malbum[0m: East of the Sun West of the Moon [1myear[0m: None
[1mtrack[0m: 10
[33mRenaming file to 'a-hasupr1East of the Sun West of the Moonsupr2Rolling Thunder'[0m
[1m[32mFlashyEVDqJ.mp3[0m [32m[ 5.24 MB ][0m
-------------------------------------------------------------------------------
[1mTime: [0m05:44 MPEG1, Layer III [ 128 kb/s @ 44100 Hz - Joint stereo ]
-------------------------------------------------------------------------------
ID3 v2.4:
[1mtitle[0m: Rolling Thunder [1martist[0m: a-ha
[1malbum[0m: East of the Sun West of the Moon [1myear[0m: None
[1mtrack[0m: 10
20090124_11:39:48.115058_INFO : end of tag processing !
20090124_11:39:48.163520_INFO : launching of next instance of saraKonor !
20090124_11:39:48.169010_INFO : launched ! End of the current instance !
20090124_11:39:48.215776_INFO : new instance starting...
20090124_11:39:48.216037_INFO : process is automated !
20090124_11:39:48.219838_INFO : idle processing : waiting for a stream to be up