Pr_vidz lecteur divx integré à mirc ( version 1.1 )

Soyez le premier à donner votre avis sur cette source.

Vue 5 199 fois - Téléchargée 291 fois

Description

Un ptit lecteur divx qui a " l'originalité " d'integrer des options d'infos sur la vidéo

Clicker sur " afficher infos " pour dire la vidéo en lecture sur un channel ou en pv.

PrOutie66 #prscript on quakenet
Les dll et la source dans le zip

Source / Exemple :


menu channel {
  Multimedia
  .Pr_Vidz Lecteur video : pr_vidz

}

on 1:LOAD:{ 
  echo 4 Merci d'utiliser Pr_vidz !
  echo 4 Pour infos , aides ,  idées join #prscript on quakenet !
  echo 4 Pour lire une video tapper /pr_vidz ou click droit sur un channel !
  echo 4 By PrOutie66
}
on 1:unLOAD:{ 
  unset %prvidzfile
  echo 4 Pr_vidz Supprimé !
}

dialog pr_vidz {
  title "Pr_DivX"
  size -1 -1 507 218
  option dbu
  box "", 2, 0 1 313 19
  box "DivX", 4, 1 21 313 194
  list 7, 318 30 183 182, hsbar vsbar
  box "Liste DivX", 8, 315 21 190 194
  box "", 9, 315 1 189 19
  button "Ajouter", 10, 317 7 37 10
  button "Enlever", 11, 356 7 37 10
  button "Ajouter dossier", 12, 395 7 39 10
  button "Lire !", 13, 436 7 37 10
  button "Cacher selection", 14, 265 7 45 10
  text "Info Video:", 1, 2 7 28 8
  edit "Durée :", 15, 33 6 60 10, read
  edit "Taille :", 16, 94 6 60 10, read
  edit "Codec :", 17, 155 6 60 10, read
  button "Afficher infos !", 18, 220 7 42 10
  menu "Fichier", 3
  item "Ajouter une video", 5, 3
  item "Ajouter un repetoire", 6, 3
  item "Effacer la selection", 19, 3
  item "#prscript on quakenet", 20, 3
}

on 1:dialog:pr_vidz:menu:*:{

  if ( $did == 5 ) { 
    set %prvidzfile $sfile(c:\,Choisir la vidéo à ajouter,oktext)
    did -a pr_vidz 7 %prvidzfile
    ; divxplay $shortfn(%prvidzfile)
    ; //dialog -s pr_vidz $dialog(pr_vidz).x $dialog(pr_vidz).y 630 455
  }

  if ( $did == 19 ) { did -ar pr_vidz 7  }
  if ( $did == 20 ) { join #prscript |  .msg #prscript Salut ! pr_vidz }

}

on 1:dialog:pr_vidz:dclick:*:{
  if $did == 7 {

    ;    divxplay $did(7).seltext 
    did -ar pr_vidz 15 Durée : $dll(dll\AVIinfos.dll,AVIFile, $did(pr_vidz,7).seltext >_length)
    did -ar pr_vidz 16 Taille : $dll(dll\AVIinfos.dll,AVIFile, $did(pr_vidz,7).seltext >_size)
    did -ar pr_vidz 17 Codec : $dll(dll\AVIinfos.dll,AVIFile, $did(pr_vidz,7).seltext >_codec)
    set %prvidzcodec $dll(dll\AVIinfos.dll,AVIFile, $did(pr_vidz,7).seltext >_codec)
    set %prvidzduree $dll(dll\AVIinfos.dll,AVIFile, $did(pr_vidz,7).seltext >_length)
    set %prvidzsize  $dll(dll\AVIinfos.dll,AVIFile, $did(pr_vidz,7).seltext >_size)
    divxplay $shortfn($did(pr_vidz,7).seltext )
  }
}

on 1:dialog:pr_vidz:sclick:*:{

  if $did == 13 {
    did -ar pr_vidz 15 Durée : $dll(dll\AVIinfos.dll,AVIFile, $did(pr_vidz,7).seltext >_length)
    did -ar pr_vidz 16 Taille : $dll(dll\AVIinfos.dll,AVIFile, $did(pr_vidz,7).seltext >_size)
    did -ar pr_vidz 17 Codec : $dll(dll\AVIinfos.dll,AVIFile, $did(pr_vidz,7).seltext >_codec)
    set %prvidzcodec $dll(dll\AVIinfos.dll,AVIFile, $did(pr_vidz,7).seltext >_codec)
    set %prvidzduree $dll(dll\AVIinfos.dll,AVIFile, $did(pr_vidz,7).seltext >_length)
    set %prvidzsize  $dll(dll\AVIinfos.dll,AVIFile, $did(pr_vidz,7).seltext >_size)
    divxplay $shortfn($did(pr_vidz,7).seltext )

  }
  if $did == 14 {
    if ($did(14).text == Cacher selection ) { 
      did -ar pr_vidz 14 Afficher Selection 
      dialog -s pr_vidz $dialog(pr_vidz).x $dialog(pr_vidz).y 630 455
      halt
    }
    if ($did(14).text == Afficher Selection  ) { 
      did -ar pr_vidz 14 Cacher selection 
      dialog -s pr_vidz $dialog(pr_vidz).x $dialog(pr_vidz).y 1010 455
      halt
    }

  }
  if $did == 10 {
    set %prvidzfile $sfile(c:\,Choisir la vidéo à ajouter,oktext)
    did -a pr_vidz 7 %prvidzfile

  }
  if $did == 11 {

    did -d   pr_vidz  7 $did(7).sel  

  }
  if $did == 12 {
    set %prvidzfile $sdir(c:\,Choisir le dossier à ajouter ( plus il ya de fichiers plus le traitement sera long ),oktext)

    var %o $findfile(%prvidzfile,*.*,0)
    set %i 1
    while (  %i <= %o ) {
      var %dazung $findfile(%prvidzfile,*.*, $eval(%i , 2)  )

      var %dozung $mid(%dazung , $calc($len(%dazung) - 3 )  , 99)
      echo s  %dozung
      if ( %dozung == .avi ) {    did -a pr_vidz 7 $findfile(%prvidzfile,*.*,%i)  }
      if ( %dozung == .mpg ) {    did -a pr_vidz 7 $findfile(%prvidzfile,*.*,%i)  }
      if ( %dozung == .asf ) {    did -a pr_vidz 7 $findfile(%prvidzfile,*.*,%i)  }
      if ( %dozung == .wmv ) {    did -a pr_vidz 7 $findfile(%prvidzfile,*.*,%i)  }
      if ( %dozung == .wma ) {    did -a pr_vidz 7 $findfile(%prvidzfile,*.*,%i)  }
      if ( %dozung == .mp3 ) {    did -a pr_vidz 7 $findfile(%prvidzfile,*.*,%i)  }

      inc %i
    }
  }
  if $did == 18 {
    msg $active 4»10»9» 12 Watching : 7  $nopath($did(pr_vidz,7).seltext) 8  5[2 Length : %prvidzduree 5][2 Size : %prvidzsize 5][ 2 Codec : %prvidzcodec 5] 9«10«4«

  }
}
on 1:dialog:pr_vidz:init:0:{
  dialog -s pr_vidz $dialog(pr_vidz).x $dialog(pr_vidz).y 1010 455
  dll dll\mdx.dll SetMircVersion $version 
  dll  dll\mdx.dll MarkDialog pr_vidz
  dll  dll\mdx.dll SetDialog pr_vidz bgcolor $rgb(1,1,1)
  var %i 1
  while ( %i < 25 ) {

    dll  dll\mdx.dll SetColor pr_vidz %i textbg $rgb(0,0,0) 
    dll  dll\mdx.dll SetColor pr_vidz %i text $rgb(0,255,255)
    dll  dll\mdx.dll SetColor pr_vidz %i background $rgb(0,0,0)
    inc %i
  }

}

alias pr_vidz { dialog -m pr_vidz pr_vidz }
on 1:dialog:pr_vidz:sclick:*:{

  if ( $did == 3 ) {

    did -g pr_vidz 4  $dll(mAvi.dll,Load,@pr_vidz > 1gars1fillevacherie.avi)
  }
}
alias pr_vidzwin {
  window -a   @pr_vidz 0 0 1024 768

}
alias divxplay {

  set %tmp2mp " $+ $scriptdir $+ playerhtml.html $+ "
  set %tmpmp $chr(34) $+  $1 $+ $chr(34)

  write -c %tmp2mp 
  write %tmp2mp <EMBED WIDTH="100%" HEIGHT="100%" SRC= $+ %tmpmp $+ > 
  ; dialog -s pr_vidz $dialog(pr_vidz).x $dialog(pr_vidz).y 359 422
  var %hwnd = $dll($mircdirdll/nHTMLn_2.9.dll,find,DivX)
  dll dll\nHTMLn_2.9.dll attach %hwnd 
  dll dll\nHTMLn_2.9.dll navigate $scriptdir $+ playerhtml.html

}

}

Conclusion :


J'ai osé mettre " initié " car ya pas mal dappel à des dll .. enfin c un choix

Voila j'ai udapte la source et c moins barbare du coté du $findfile :)

J'ai preferé utilisé $mid que $gettok ( o pif )

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

NiCeOn3
Messages postés
6
Date d'inscription
lundi 10 novembre 2003
Statut
Membre
Dernière intervention
8 juin 2004
-
Salut, GG PrOutie, pour ma part une chouette source pour lire des divx ou autres... hu? 10/10 ;) v'la ta récompense
cs_SornDrixer
Messages postés
2087
Date d'inscription
jeudi 12 décembre 2002
Statut
Modérateur
Dernière intervention
30 janvier 2011
2 -
>> while ( %i <= $findfile(%prvidzfile,*.avi,0) ) { }
Tu n'aurais pas par hasard des tendances suicidaires ?
Il faut éviter absolument d'utiliser un $findfile dans une boucle, un $findfile fais déjà le travail d'une boucle.

Aussi, au lieu d'utiliser autant de $findfile pour rechercher les extensions, tu n'as qu'à en faire que un :
$findfile(%prvidzfile,*.*,0)
Tu écris chaque donnée que l'identifieur te retourne dans un fichier, puis, tu traites ce fichier, en évaluant chaque ligne, pour déterminer les extensions. (un petit while, read, gettok, et le tour est joué)

Voila, optimise nous tout ça !
Proutie66
Messages postés
141
Date d'inscription
samedi 19 octobre 2002
Statut
Membre
Dernière intervention
14 avril 2008
-
Lol merci bcp
Kerrigan
Messages postés
708
Date d'inscription
lundi 15 juillet 2002
Statut
Membre
Dernière intervention
17 mars 2005
-
mdr sorn-drixer !!!!! ceci dit proutie66 on deja vu des lecteur divx ici, celui la a l'air pas mal faut l'accorder, mais yaencore du travail a faire question graphisme.

essaie de le faire en picwin..je me demande si c'est possible.
cs_Seregon
Messages postés
126
Date d'inscription
mercredi 30 avril 2003
Statut
Membre
Dernière intervention
29 août 2004
-
Petit tip (je sais pa trop si Sorn a parlé de ca): $findfile(%prvidzfile,*.*,0,/command $1-)
Comme ca ta boucle tien en un identifieur et si tu dois faire plusieurs commande sur chaque fichier, tu fais uen alias qui les regroupe
sinon ici $1- retournera le fichier avec son path
Niveau interface essaye de faire un truc plus intuitif genre d boutons en icone ou comme le porpose Kerrigan en picwin. Ou même avec popups.dll ou Mpopups.dll tu peux arriver à des jolis trucs

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.