blog :: dejan @ fejst.net

Osebni spletni dnevnik z zaznamki in dogodki s potovanja moje življenske poti.

Nokia N95 urejanje videa  


Problem:
Ko sem nekega dne posnel en video z n95ko, sem hotel malo dodati teksta in uporabiti film s slikami za DVD. Ker nimam posebnih orodij za urejanje DVD filmov sem uporabil kar MS WindowsMovieMaker, ki pride z Visto. Vse sem lahko pripravil in v predogledu gledal filmsko umetnino, apmak... ko sem hotel zadevo zapakirati se je pojavila težava s kodekom MPEG4, ki ga uporablja nokia in publish ni nikoli dokončal na določenem procentu se je proces zaustavil in ni šel dalje.

Rešitev:
Problem sem rešil tako, da sem izluščil film in zvok iz mp4 datoteke ter v MS WindowsMovieMaker-ju ponovno vse skupaj zložil in uredil.
Za to sem potreboval naslednja orodja:

  • pc4UI :: http://mp4ui.sourceforge.net/
  • VLC :: http://www.videolan.org/
  • K-Lite Codec Pack :: http://www.free-codecs.com/

    Postopek:
    1. Prekopiraj video mp4 format datotek iz n95 na računalnik;
    - uporabi Nokia PC suite ali datotečni prenos
    2. Izlušči (extract) video v AVI s pc4UI programom;
    - Odpri datoteko mp4 in
    - izlušči video
    3. izlušči (extract) audio v AAC s pc4UI programom;
    - datoteko ki smo odprli (mp4)
    - izluščimo še zvok.
    4. pretvori audio v MP3 s programom VLC.
    - odpri zvokovno datoteko .aac
    - zaženi: >Datoteka>Čarovnik
    - izberi: Prekodiraj/shrani v datoteko (Next)
    - izberi: "Obstoječ predmet seznama predvajanja"
    - odkljukaj: Prekodiranje zvoka in izberi bitrate (jaz sem dal na 96kbps); kodec pustiš MPEG Audio.
    - Dokončaj z Next in Finish v izbrano izhodno datoteko mp3.
    To je v bistvu vse. Po pretvarjanju sledi le še zabava z video editorjem, kjer si uredimo zvok in sliko po svojem okusu in scenariju.

    Read More...
  • AddThis Social Bookmark Button

    AD telefonski imenik (rekurzivno)  

    Kar nekaj časa sem porabil, da sem doumel, da se z enostavnimi triki da iskati tudi rekurzivno po AD imeniku. Problem sem imel, ko sem hotel z getObject pridobivati atribute, ki pa na enostaven način ne pozna rekurzive. Torej najlažje to dosežemo tako, da za rekuzivno iskanje uporabimo ADO, kjer določimo iskalne kriterije in s subtree določimo rekurzivnost iskanja ter na to posredujemo dn (distinguished name) loop zanki, ki za vsak najden objekt naredi getObject.

    Primer skripte je spodaj:


    Option Explicit
    Dim adoCommand, adoConnection, strBase, strFilter, strAttributes
    Dim objRootDSE, strDNSDomain, strQuery, adoRecordset

    Set adoCommand = CreateObject("ADODB.Command")
    Set adoConnection = CreateObject("ADODB.Connection")
    adoConnection.Provider = "ADsDSOObject"
    adoConnection.Open "Active Directory Provider"
    adoCommand.ActiveConnection = adoConnection

    Set objRootDSE = GetObject("LDAP://RootDSE")
    strDNSDomain = objRootDSE.Get("defaultNamingContext")
    strBase = ""

    Dim srchUser
    srchUser = "*"
    strFilter = "(&(objectCategory=user)(telephoneNumber=*)(cn=" & srchUser & "))"
    strAttributes = "sAMAccountName,cn,distinguishedName"

    strQuery = strBase & ";" & strFilter & ";" & strAttributes & ";subtree"
    adoCommand.CommandText = strQuery
    adoCommand.Properties("Page Size") = 500
    adoCommand.Properties("Timeout") = 30
    adoCommand.Properties("Cache Results") = False

    Dim strName, strCN, arrGroups, strGroup
    Dim strUserDN
    Set adoRecordset = adoCommand.Execute
    adoRecordset.MoveFirst
    Dim strFile, objFSO, objFile
    strFile = "c:\temp\interni-imenik.csv"
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    If objFSO.FileExists(strFile) THEN
    On Error Resume Next
    objFSO.DeleteFile(strFileName)
    Set objFile = objFSO.CreateTextFile(strFile)
    Else
    Set objFile = objFSO.CreateTextFile(strFile)
    End If
    Do Until adoRecordset.EOF
    strName = adoRecordset.Fields("sAMAccountName").Value
    strCN = adoRecordset.Fields("cn").value
    Wscript.Echo "Izpis: " & strName & ", " & strCN
    strUserDN = adoRecordset.Fields("distinguishedName").Value
    strUserDN = Replace(strUserDN, "/", "\/")
    Dim strLine
    strLine = retriveuserDetails(strUserDN)
    Wscript.echo strLine
    'ForAppending = 8 ForReading = 1, ForWriting = 2
    Const ForAppending = 8
    Set objFile = objFSO.OpenTextFile(strFile, ForAppending, True)
    objFile.Write strLine
    objFile.Write vbcrlf
    objFile.Close
    adoRecordset.MoveNext
    Loop
    adoRecordset.Close
    adoConnection.Close

    Function retriveUserDetails(strDN)
    Dim objUser
    Set objRootDSE = GetObject("LDAP://RootDSE")
    strDNSDomain = objRootDSE.Get("DefaultNamingContext")
    Set objUser = GetObject("LDAP://" & strDN)
    retriveUserDetails = Chr(34) & _
    objUser.FullName & """,""" & _
    objUser.sn & """,""" & _
    objUser.middleName & """,""" & _
    objUser.givenName & """,""" & _
    objUser.telephoneNumber & """,""" & _
    objUser.mobile & """,""" & _
    objUser.ipPhone & """,""" & _
    objUser.facsimileTelephoneNumber & """,""" & _
    objUser.description & """,""" & _
    objUser.title & """,""" & _
    objUser.department & """,""" & _
    objUser.physicalDeliveryOfficeName & """,""" & _
    objUser.mail & chr(34)
    End Function
    WScript.Quit

    Read More...
    AddThis Social Bookmark Button