[..] Extraire les chapîtres d'une playlist AVCHD

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Avatar du membre
Anthony
Niveau 7
Niveau 7
Messages : 321
Enregistré le : lun. 17 janv. 2011 14:08
Localisation : France
Status : Hors ligne

[..] Extraire les chapîtres d'une playlist AVCHD

#1

Message par Anthony »

Bonjour à tous :wink:

Voilà en fait je cherche à récupérer la liste des chapîtres qui ont l'air de se trouver dans le fichier PLAYLIST\00000.mpls affiché par TSmuxer comme ceci:

Code : Tout sélectionner

00:00:00.000[color=#8000FF]@CRLF[/color]
00:01:24.375[color=#8000FF]@CRLF[/color]
00:04:39.987[color=#8000FF]@CRLF[/color]
00:08:26.129[color=#8000FF]@CRLF[/color]
00:10:46.770[color=#8000FF]@CRLF[/color]
00:12:52.645[color=#8000FF]@CRLF[/color]
00:16:52.427[color=#8000FF]@CRLF[/color]
00:20:07.748[color=#8000FF]@CRLF[/color]
00:23:38.875[color=#8000FF]@CRLF[/color]
Le tout étant de ne pas utiliser TSmuxer ou autre, uniquement en code AutoIt enfin si c'est faisable
Inclu:
PLAYLIST\00000.mpls
STREAM\00000.m2ts

Dossier BDMV - Pour extraction Chapitres.rar => http://ul.to/j6izjc75

Merci d'avance
Je suis diagnostiqué pour trouble de la concentration, soyez indulgent
Merci à tous pour votre aide.
UDF: GuiStatusBarEx --- 2025/03/17 --- Une StatusBar complète, rapide et simple
Code: Code-Texte fusion --- Une GUI pour fusionner des GCodes pour CNC 3018
Cool: Base64 Compression Tool --- des fichiers dans vos scripts
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#2

Message par mikell »

AMHA pas moyen sans soft externe
The details of BluRay and the AVCHD structures are not highly publicized
since the BluRay Consortium is more interested in discouraging pirating than
they are in assisting people who wish to write their own authoring programs.
There is a formal spec which has been published and updated but it is
expensive and limited in its distribution to members of the Consortium.
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
Anthony
Niveau 7
Niveau 7
Messages : 321
Enregistré le : lun. 17 janv. 2011 14:08
Localisation : France
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#3

Message par Anthony »

Voici sous Hedit la playlist 00000.mpls
Pour moi les infos commencent à partir de 00000000A8, 00000000B6, etc... je compte 9 FF FF comme 9 chapîtres :roll:
çà serai pas une conversion genre hexa,ascii, etc............ :?:

Code : Tout sélectionner

00:00:00.000
00:01:24.375
00:04:39.987
00:08:26.129
00:10:46.770
00:12:52.645
00:16:52.427
00:20:07.748
00:23:38.875
Image
Modifié en dernier par Anthony le jeu. 11 oct. 2012 19:14, modifié 2 fois.
Je suis diagnostiqué pour trouble de la concentration, soyez indulgent
Merci à tous pour votre aide.
UDF: GuiStatusBarEx --- 2025/03/17 --- Une StatusBar complète, rapide et simple
Code: Code-Texte fusion --- Une GUI pour fusionner des GCodes pour CNC 3018
Cool: Base64 Compression Tool --- des fichiers dans vos scripts
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#4

Message par mikell »

Très probablement Image
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
Anthony
Niveau 7
Niveau 7
Messages : 321
Enregistré le : lun. 17 janv. 2011 14:08
Localisation : France
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#5

Message par Anthony »

Une idée ? :lol:
Je suis diagnostiqué pour trouble de la concentration, soyez indulgent
Merci à tous pour votre aide.
UDF: GuiStatusBarEx --- 2025/03/17 --- Une StatusBar complète, rapide et simple
Code: Code-Texte fusion --- Une GUI pour fusionner des GCodes pour CNC 3018
Cool: Base64 Compression Tool --- des fichiers dans vos scripts
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#6

Message par mikell »

Absolument pas Image
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
Anthony
Niveau 7
Niveau 7
Messages : 321
Enregistré le : lun. 17 janv. 2011 14:08
Localisation : France
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#7

Message par Anthony »

Bon bah si quelqu'un à une idée je suis preneur :roll:
Je suis diagnostiqué pour trouble de la concentration, soyez indulgent
Merci à tous pour votre aide.
UDF: GuiStatusBarEx --- 2025/03/17 --- Une StatusBar complète, rapide et simple
Code: Code-Texte fusion --- Une GUI pour fusionner des GCodes pour CNC 3018
Cool: Base64 Compression Tool --- des fichiers dans vos scripts
Avatar du membre
Anthony
Niveau 7
Niveau 7
Messages : 321
Enregistré le : lun. 17 janv. 2011 14:08
Localisation : France
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#8

Message par Anthony »

Bon j'ai éssayé de décrypter les millisecondes 00:00:00.999 :lol:

Code : Tout sélectionner

00 9B FC C0  à  00 9B FC EC  = 00:00:00.[color=#0000FF]000[/color]     Différence 2C     soit 44
00 9B FC ED  à  00 9B FD 19  = 00:00:00.[color=#0000FF]001[/color]     Différence 2C     soit 44
00 9B FD 1A  à  00 9B FD 46  = 00:00:00.[color=#0000FF]002[/color]     Différence 2C     soit 44
00 9B FD 47  à  00 9B FD 73  = 00:00:00.[color=#0000FF]003[/color]     Différence 2C     soit 44
00 9B FD 74  à  00 9B FD A0  = 00:00:00.[color=#0000FF]004[/color]     Différence 2C     soit 44
00 9B FD A1  à  00 9B FD CD  = 00:00:00.[color=#0000FF]005[/color]     Différence 2C     soit 44
00 9B FD CE  à  00 9B FD FA  = 00:00:00.[color=#0000FF]006[/color]     Différence 2C     soit 44
00 9B FD FB  à  00 9B FE 27  = 00:00:00.[color=#0000FF]007[/color]     Différence 2C     soit 44
00 9B FE 28  à  00 9B FE 54  = 00:00:00.[color=#0000FF]008[/color]     Différence 2C     soit 44
00 9B FE 55  à  00 9B FE 81  = 00:00:00.[color=#0000FF]009[/color]     Différence 2C     soit 44
00 9B FE 82  à  00 9B FE AE  = 00:00:00.[color=#0000FF]010[/color]     Différence 2C     soit 44
00 9B FE AF  à  00 9B FE DB  = 00:00:00.[color=#0000FF]011[/color]     Différence 2C     soit 44
00 9C AC 5B                  = 00:00:00.[color=#0000FF]999[/color]     etc...
Je suis diagnostiqué pour trouble de la concentration, soyez indulgent
Merci à tous pour votre aide.
UDF: GuiStatusBarEx --- 2025/03/17 --- Une StatusBar complète, rapide et simple
Code: Code-Texte fusion --- Une GUI pour fusionner des GCodes pour CNC 3018
Cool: Base64 Compression Tool --- des fichiers dans vos scripts
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#9

Message par mikell »

Tin, tu me fais faire des trucs impossibles :twisted:
ça va que j'aime bien les challenges et que là j'ai un peu de temps...
Celle-là oui, tu peux la mettre dans les exemples de script, tu pourrais même sans rougir la poster sur le forum US ^^ :mrgreen:
► Afficher le texte
Tu remarqueras que le point d'entrée n'étant pas mis à 0 par tsmuxer, il faut en tenir compte pour l'affichage de valeurs corrigées de chapitres
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
Anthony
Niveau 7
Niveau 7
Messages : 321
Enregistré le : lun. 17 janv. 2011 14:08
Localisation : France
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#10

Message par Anthony »

Ouahhhh c'est faisable :o merci mikell
Par contre c'est sur une playlist au hazard ou venant de TSmuxer et si TSmuxer es-ce en format AVCHD disk ou Blu-ray disk ?
En fait j'ai éssayé sur une playlist de Bluray et Scite me retourne:

Code : Tout sélectionner

C:\Test\Include\_Include_Extract_Chapters_List.au3 (47) : ==> Unknown function name.:
FileSetPos($file, $pos, 0)
^ ERROR
_Include_Extract_Chapters_List.au3
► Afficher le texte
Je suis diagnostiqué pour trouble de la concentration, soyez indulgent
Merci à tous pour votre aide.
UDF: GuiStatusBarEx --- 2025/03/17 --- Une StatusBar complète, rapide et simple
Code: Code-Texte fusion --- Une GUI pour fusionner des GCodes pour CNC 3018
Cool: Base64 Compression Tool --- des fichiers dans vos scripts
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#11

Message par mikell »

J'ai travaillé sur ta liste qui apparemment sort de tsmuxer en AVCHD
Pour l'erreur "Unknown function name", passe à la version autoit 3.3.6.1 (la fonction FileSetPos n'est pas dans ta 3.3.0.0)
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
Anthony
Niveau 7
Niveau 7
Messages : 321
Enregistré le : lun. 17 janv. 2011 14:08
Localisation : France
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#12

Message par Anthony »

Tout à fait, une mise à jour à résolu le problème. :wink:
Je te passe une playlist de bluray 3D 00800.mpls dont la durée totale = 01:47:59.846 sous TSmuxer
00800.rar
00800.mpls (rar)
(495 Octets) Téléchargé 159 fois
00001.m2ts 01:47:58.846
00003.m2ts 00:00:01.000 (Il peut aussi avoir plus de m2ts sur certaines playlist)
00002.M2TS et 00004.M2TS sont pour la 3D
Les chapîtres de 00800.mpls sous TSmuxer sont:
► Afficher le texte
00800.mpls Sous eac3to
► Afficher le texte
Les Chapîtes avec le code AutoIt qui sont en rouge ne sont pas présent avec TSmuxer ni eac3to
► Afficher le texte
[EDIT] mise à jour des informations sur 00800.mpls
Je suis diagnostiqué pour trouble de la concentration, soyez indulgent
Merci à tous pour votre aide.
UDF: GuiStatusBarEx --- 2025/03/17 --- Une StatusBar complète, rapide et simple
Code: Code-Texte fusion --- Une GUI pour fusionner des GCodes pour CNC 3018
Cool: Base64 Compression Tool --- des fichiers dans vos scripts
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#13

Message par mikell »

En effet, le format de la playlist est MPLS0200, il faudrait adapter le code qui est construit pour une playlist MPLS0100
Tout à fait faisable, mais moi je vais arrêter là parce que ça commence à faire trop de boulot et ma famille commence à faire la gueule
Pour continuer, dans mon code précédent ya toutes les bases qu'il te faut concernant lecture, retranscription et conversion des valeurs du fichier :P
Suffit de t'inspirer de ce code, ici , apparemment en C# (ou C quelque chose) et de le convertir en autoit
Bon courage :wink:
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
Anthony
Niveau 7
Niveau 7
Messages : 321
Enregistré le : lun. 17 janv. 2011 14:08
Localisation : France
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#14

Message par Anthony »

OK merci mikell pour tes éfforts et ce défi je vais regarder çà, qui pour moi est du chinoix :shock:
Mes éxcuses à ta famille :?
Je suis diagnostiqué pour trouble de la concentration, soyez indulgent
Merci à tous pour votre aide.
UDF: GuiStatusBarEx --- 2025/03/17 --- Une StatusBar complète, rapide et simple
Code: Code-Texte fusion --- Une GUI pour fusionner des GCodes pour CNC 3018
Cool: Base64 Compression Tool --- des fichiers dans vos scripts
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#15

Message par mikell »

Bah elle commence un peu à avoir l'habitude la famille
Blasée quoi :mrgreen:
Bon OK en fait pour trier les chapitres il faut juste prendre une ref supplémentaire (et code optimisé en passant)
► Afficher le texte
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
Anthony
Niveau 7
Niveau 7
Messages : 321
Enregistré le : lun. 17 janv. 2011 14:08
Localisation : France
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#16

Message par Anthony »

Merci la prise en charge MPLS0100 et MPLS0200 et un grand succés et fonctionne à la perféction :D
Heuuu.. çà m'embète de te demander çà mais la prise en charge de 00003.m2ts etc.. n'est pas prise en charge :?
Il en découle une durée érronée et chapîtres manquants.
Ce sera beaucoup plus facile de voir avec cette nouvelle playlist.
00800.rar
Nouveau 00800.mpls
(464 Octets) Téléchargé 187 fois
Chapîtres avec TSmuxer
► Afficher le texte
Et avec le code AutoIt
► Afficher le texte
Je suis diagnostiqué pour trouble de la concentration, soyez indulgent
Merci à tous pour votre aide.
UDF: GuiStatusBarEx --- 2025/03/17 --- Une StatusBar complète, rapide et simple
Code: Code-Texte fusion --- Une GUI pour fusionner des GCodes pour CNC 3018
Cool: Base64 Compression Tool --- des fichiers dans vos scripts
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#17

Message par mikell »

Demain je reprends le boulot, faudra te débrouiller pour extraire la durée totale
en attendant amuse-toi avec ça :wink:
► Afficher le texte
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
Anthony
Niveau 7
Niveau 7
Messages : 321
Enregistré le : lun. 17 janv. 2011 14:08
Localisation : France
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#18

Message par Anthony »

Yeah génial et encore merci, je verai çà quand j'aurai un peu de temps :wink:
Je suis diagnostiqué pour trouble de la concentration, soyez indulgent
Merci à tous pour votre aide.
UDF: GuiStatusBarEx --- 2025/03/17 --- Une StatusBar complète, rapide et simple
Code: Code-Texte fusion --- Une GUI pour fusionner des GCodes pour CNC 3018
Cool: Base64 Compression Tool --- des fichiers dans vos scripts
Avatar du membre
Anthony
Niveau 7
Niveau 7
Messages : 321
Enregistré le : lun. 17 janv. 2011 14:08
Localisation : France
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#19

Message par Anthony »

Re, depuis longtemps :lol:
Voilà je n'arrive pas à mettre Total m2ts à la fin de chaque fichier m2ts, il passe en deuxième ligne, avez-vous une idée de comment le résoudre ?
Je pense qu'en repartant sur ce code je résoudrai 2 topic :P
Merci d'avance :wink:
En pièce jointe un mpls à mettre dans le même dossier que le code au3
Code:
► Afficher le texte
00003.rar
00003.mpls
(521 Octets) Téléchargé 144 fois
Je suis diagnostiqué pour trouble de la concentration, soyez indulgent
Merci à tous pour votre aide.
UDF: GuiStatusBarEx --- 2025/03/17 --- Une StatusBar complète, rapide et simple
Code: Code-Texte fusion --- Une GUI pour fusionner des GCodes pour CNC 3018
Cool: Base64 Compression Tool --- des fichiers dans vos scripts
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Extraire les chapîtres d'une playlist AVCHD

#20

Message par mikell »

Alors là t'as vraiment pas réfléchi :twisted: suffit évidemment de faire ça en dehors de la boucle For qui liste les chapitres (de suite après)
Je te mets juste la partie concernée

Code : Tout sélectionner

.....
        Else
            $m2tsFile = ""
         EndIf
         $info &= @TAB & "Chapitre " & StringFormat("%02i", $ch) & @TAB & _Display($chap[$ch][0]-$in) & @CRLF
      EndIf
   Next     
[color=#BF0000]; là on est sorti de la boucle For ^^[/color]
   $info &= @TAB & "Total m2ts" & @TAB & $dureeM2TS & @CRLF
   Msgbox(0, $mfile, $info)
EndFunc
J'imagine que maintenant tu vas pouvoir mettre un [R] :mrgreen:

NB : puisque tu es toujours là-dedans, si ça t'intéresse je peux te filer les 2 outils que je m'étais faits à l'époque pour résoudre le pb précédent :
- un convertisseur temps-hexa (exemple: 0F 5E F2 9F <=> 01:35:30.683 )
- un pour faire addition-soustraction de 2 temps au format hh:mm:ss:xxx
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Répondre