Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Nochmal Filmliste leider

Mitglied: Scoorpyn

Scoorpyn (Level 1) - Jetzt verbinden

09.12.2013, aktualisiert 10:50 Uhr, 1374 Aufrufe, 2 Kommentare

Hallo ich habe leider jetzt gerade das Problem bei meiner Filmliste, dass ich die Bildhöhe und Bildbreite nicht anzeigen lassen kann, weil das Format der Filme Apple Quicktime Format ist und diese nicht in den Eigenschaften Details angezeigt werden. Die Filmliste soll den Namen des Filmes, den relativen Pfad (falls vorhanden) sowie die Bildhöhe und Breite des Films in eine .TXT Datei eintragen.
Vielen Dank an colinardo das er mir so gut geholfen hat :D

Nun habe ich diese Details mit dem Programm MediaInfo ausgelesen, mir immer von einem Film anzeigen lassen, wie kann ich den Code:
01.
 function Add-ExtendedFileProperties{
02.
  <#
03.
      .SYNOPSIS
04.
         Fügt erweiterte Eigenschaften von Dateien an das Objekt in der Pipline hinzu
05.
      .DESCRIPTION
06.
         Extrahiert erweiterte Eigenschaften von Dateien wie z.B. Exif-Daten, Musik- bzw. Filmdetails
07.
      .EXAMPLE 
08.
             Get-ChildItem "C:\Temp" | Add-ExtendedFileProperties -PropertyExtended
09.
 "Bildhöhe","Bildbreite","Bitrate" | ft Name,Bildhöhe,Bildbreite,Bitrate
10.
             Fügt alle nur die Eigenschaften "Bildhöhe","Bildbreite","Bitrate" als
11.
 zusätzliche Spalten dem Objekt in der Pipline hinzu
12.
      .EXAMPLE
13.
             Get-ChildItem "C:\Temp" | Add-ExtendedFileProperties | fl *
14.
             Fügt alle verfügbaren erweiterten Eigenschaften dem Objekt in der Pipline hinzu
15.
      .PARAMETER PropertyExtended
16.
         Mit diesem Parameter geben sie eine Komma-Separierte Liste von Eigenschaften an welche sie erhalten möchten.
17.
             -PropertyExtended "Bildhöhe","Bildbreite","Bitrate"
18.
 #>
19.
     param(
20.
         [Parameter(Mandatory=$true,ValueFromPipeline=$True,ValueFromPipelineByPropertyName=$True)]
21.
         $fileItem,
22.
         [String[]] $PropertyExtended = "ALL"
23.
     )
24.
     begin
25.
     {
26.
         $shellObject = New-Object -Com Shell.Application
27.
         $itemProperties = $null
28.
     }
29.
 
30.
     process
31.
     {
32.
         if($fileItem.PsIsContainer)
33.
         {
34.
             $fileItem
35.
             return
36.
         }
37.
         $directoryName = $fileItem.DirectoryName
38.
         $filename = $fileItem.Name
39.
 
40.
         $folderObject = $shellObject.NameSpace($directoryName)
41.
         $item = $folderObject.ParseName($filename)
42.
 
43.
         if(-not $itemProperties)
44.
         {
45.
             $itemProperties = @{}
46.
             $counter = 0
47.
             $columnName = ""
48.
             if ($PropertyExtended -eq "ALL"){
49.
                  #get all properties
50.
                 do {
51.
                     $columnName = $folderObject.GetDetailsOf($folderObject.Items, $counter)
52.
                     if($columnName) { $itemProperties[$counter] = $columnName }
53.
                     $counter++
54.
                 }while($columnName)
55.
             }else{
56.
                 #get user defined properties
57.
                 do {
58.
                     $columnName = $folderObject.GetDetailsOf($folderObject.Items, $counter)
59.
                     foreach($name in $PropertyExtended){
60.
                         if ($columnName.toLower() -eq $name.toLower()){
61.
                             $itemProperties[$counter] = $columnName
62.
                         }
63.
                     }
64.
                     $counter++
65.
                 }while($columnName)
66.
             }
67.
         }
68.
 
69.
         foreach($itemProperty in $itemProperties.Keys)
70.
         {
71.
             $fileItem | Add-Member NoteProperty $itemProperties[$itemProperty] `
72.
                 $folderObject.GetDetailsOf($item, $itemProperty) -ErrorAction `
73.
                 SilentlyContinue
74.
         }
75.
         $fileItem
76.
     }
77.
 }
78.
 
79.
 $startDir = "\\Server\Freigabe"
80.
 $filmliste = "C:\filmliste.txt"
81.
 Get-ChildItem $startDir -Recurse | ?{$_.PSIsContainer -eq $false} | Add-ExtendedFileProperties -PropertyExtended
82.
 "Bildhöhe","Bildbreite" | select Name,@{Name="Relativer Pfad";e={$relDir =
83.
 $_.DirectoryName.Replace($startDir,""); if ($relDir -ne ""){echo
84.
 ".$relDir"}}},Bildhöhe,Bildbreite | out-file $filmliste -Encoding UTF8
So umändern, dass das die werte von Bildhöhe und Bildbreite mit MediaInfo ausliest und diese dann mit in die Filmliste einträgt?
Mitglied: colinardo
09.12.2013, aktualisiert um 11:16 Uhr
Hello again scoorpyn,
habe mir mal die MediaInfo-Ausgabe angesehen und ein paar Zeilen dazu geschrieben.
Zuerst lädst du dir die CommandLine-Version von MediaInfo hier herunter:http://mediaarea.net/download/binary/mediainfo/0.7.65/MediaInfo_CLI_0.7 ...
Dann musst du in Zeile 83 des folgenden Scripts den Pfad zur heruntergeladenen "MediaInfo.exe" eintragen, und deine Pfad natürlich anpassen.
01.
function Add-ExtendedFileProperties{
02.
 <#
03.
     .SYNOPSIS
04.
        Fügt erweiterte Eigenschaften von Dateien an das Objekt in der Pipline hinzu
05.
     .DESCRIPTION
06.
        Extrahiert erweiterte Eigenschaften von Dateien wie z.B. Exif-Daten, Musik- bzw. Filmdetails
07.
     .EXAMPLE 
08.
            Get-ChildItem "C:\Temp" | Add-ExtendedFileProperties -PropertyExtended "Bildhöhe","Bildbreite","Bitrate" | ft Name,Bildhöhe,Bildbreite,Bitrate
09.
            Fügt alle nur die Eigenschaften "Bildhöhe","Bildbreite","Bitrate" als zusätzliche Spalten dem Objekt in der Pipline hinzu
10.
     .EXAMPLE
11.
            Get-ChildItem "C:\Temp" | Add-ExtendedFileProperties | fl *
12.
            Fügt alle verfügbaren erweiterten Eigenschaften dem Objekt in der Pipline hinzu
13.
     .PARAMETER PropertyExtended
14.
        Mit diesem Parameter geben sie eine Komma-Separierte Liste von Eigenschaften an welche sie erhalten möchten.
15.
            -PropertyExtended "Bildhöhe","Bildbreite","Bitrate"
16.
#>
17.
    param(
18.
        [Parameter(Mandatory=$true,ValueFromPipeline=$True,ValueFromPipelineByPropertyName=$True)]
19.
        $fileItem,
20.
        [String[]] $PropertyExtended = "ALL"
21.
    )
22.
    begin
23.
    {
24.
        $shellObject = New-Object -Com Shell.Application
25.
        $itemProperties = $null
26.
    }
27.

28.
    process
29.
    {
30.
        if($fileItem.PsIsContainer)
31.
        {
32.
            $fileItem
33.
            return
34.
        }
35.
        $directoryName = $fileItem.DirectoryName
36.
        $filename = $fileItem.Name
37.

38.
        $folderObject = $shellObject.NameSpace($directoryName)
39.
        $item = $folderObject.ParseName($filename)
40.

41.
        if(-not $itemProperties)
42.
        {
43.
            $itemProperties = @{}
44.
            $counter = 0
45.
            $columnName = ""
46.
            if ($PropertyExtended -eq "ALL"){
47.
                 #get all properties
48.
                do {
49.
                    $columnName = $folderObject.GetDetailsOf($folderObject.Items, $counter)
50.
                    if($columnName) { $itemProperties[$counter] = $columnName }
51.
                    $counter++
52.
                }while($columnName)
53.
            }else{
54.
                #get user defined properties
55.
                do {
56.
                    $columnName = $folderObject.GetDetailsOf($folderObject.Items, $counter)
57.
                    foreach($name in $PropertyExtended){
58.
                        if ($columnName.toLower() -eq $name.toLower()){
59.
                            $itemProperties[$counter] = $columnName
60.
                        }
61.
                    }
62.
                    $counter++
63.
                }while($columnName)
64.
            }
65.
        }
66.

67.
        foreach($itemProperty in $itemProperties.Keys)
68.
        {
69.
            $fileItem | Add-Member NoteProperty $itemProperties[$itemProperty] `
70.
                $folderObject.GetDetailsOf($item, $itemProperty) -ErrorAction `
71.
                SilentlyContinue
72.
        }
73.
        $fileItem
74.
    }
75.
}
76.

77.
Function getMediaInfo($strPath){
78.
    $info = & $mediaInfoPath $strPath | ?{$_ -match "(Width|Height)"} | select -First 2 | %{$_.Split(":")[1].trim().Split(" ")[0]}
79.
    $obj = New-Object PSObject -Property @{"Bildbreite"=$info[0];"Bildhöhe"=$info[1]} -ErrorAction SilentlyContinue
80.
    $obj
81.
}
82.

83.
$mediaInfoPath = "C:\Program Files (x86)\K-Lite Codec Pack\Tools\cmd\mediainfo.exe"
84.
$startDir = "\\Server\Freigabe"
85.
$filmliste = "C:\filmliste.txt"
86.
$list = Get-ChildItem $startDir -Recurse | ?{$_.PSIsContainer -eq $false} | Add-ExtendedFileProperties -PropertyExtended "Bildhöhe","Bildbreite" | select Name,Fullname,@{Name="Relativer Pfad";e={$relDir = $_.DirectoryName.Replace($startDir,""); if ($relDir -ne ""){echo ".$relDir"}}},Bildhöhe,Bildbreite
87.
$list | %{if($_.Bildbreite -eq ""){$objInfo = getMediaInfo $_.FullName;$_.Bildbreite = $objInfo.Bildbreite;$_.Bildhöhe = $objInfo.Bildhöhe};$_} | select "Name","Relativer Pfad","Bildhöhe","Bildbreite" | ft -AutoSize | out-file $filmliste -Encoding UTF8
probiers mal aus...

Grüße Uwe
Bitte warten ..
Mitglied: Endoro
09.12.2013 um 13:44 Uhr
Hey, nur der Vollständigkeit halber- es geht auch als einfache Batch:
01.
@ECHO OFF &SETLOCAL
02.
cd videofolder
03.
for %%a in (*) do (
04.
	set "fname=%%~a"
05.
	for /f "delims=" %%b in ('mediainfo "--inform=General;%%Movie%%" "%%~a"') do set "title=%%b"
06.
	for /f "delims=" %%b in ('mediainfo "--inform=Video;%%Width%%x%%Height%%" "%%~a"') do set "resolution=%%b"
07.
	SETLOCAL ENABLEDELAYEDEXPANSION
08.
	echo("!fname!","%cd%","!resolution!","!title!"
09.
	endlocal
10.
)
lg.
Bitte warten ..
Ähnliche Inhalte
Windows Server

Nochmal: Konfiguration einer RDP-Verbindung

gelöst Frage von raba34Windows Server6 Kommentare

Ich komme mit den Benutzernamen bei einer Verbindung nicht klar, die durch Klicken auf das rechte Icon im folgenden ...

Windows 10

Leider nochmal: Probleme mit GPO (glaube ich)

gelöst Frage von Dave-BowmanWindows 103 Kommentare

Hallo, letzte Woche habe ich das Update KB3163018 eingespielt, anschließend bekam ich keine Datenbank-Verbindung mehr zu Remote-Servern, dies betraf ...

Windows Server

Bereits bekanntes Computerkonto nach Löschung nochmal zu AD hinzufügen

gelöst Frage von DeathNoteWindows Server3 Kommentare

Hallo. Ich habe bei nem WIN7 Client den Computername geändert. Danach habe ich das Computerkonto gelöscht (im moment egal ...

Batch & Shell

Service nochmal starten, wenn automatischer Start nicht funktioniert?

gelöst Frage von FISIStewBatch & Shell7 Kommentare

Hallo zusammen, ich bräuchte nochmal eine kleine Hilfestellung, da ich hierzu nichts verwertbares gefunden habe. Da es vorkommen kann, ...

Neue Wissensbeiträge
Datenschutz

SiSyPHuS Win10: Analyse der Telemetriekomponenten in Windows 10

Tipp von freesolo vor 2 TagenDatenschutz1 Kommentar

Alle die sich detailliert für die Datensammlung interessieren die unter Windows 10 stattfindet, sollten sich folgende Analyse des BSI ...

Sicherheit
Adminrechte dank Intel-Grafikkarte
Information von DerWoWusste vor 2 TagenSicherheit1 Kommentar

ist das Advisory, welches beschreibt, welche Intel HD Graphics Modelle Sicherheitslücken haben, mit denen sich schwache Nutzer zu Admins ...

Internet

EU Urheberrechtsreform: Eingriff in die Internetkultur

Information von Frank vor 3 TagenInternet1 Kommentar

Liebe Besucherin, lieber Besucher, warum erscheint das obere Banner in allen Beiträgen? Aus Protest gegen Teile der geplanten EU-Urheberrechtsreform ...

Windows Server
Windows Backup - FilterManager Event 3
Tipp von NixVerstehen vor 4 TagenWindows Server

Hallo zusammen, ich bin kein gelernter ITler und auch beruflich nicht in dem Feld tätig. Wir setzen in unserem ...

Heiß diskutierte Inhalte
Hyper-V
Hyper-V Manager startet, jedoch keine VM
Frage von NaleorHyper-V14 Kommentare

Hallo zusammen, auf meinem Windows 10 (Build 1703) Notebook von der Arbeit scheint Hyper-V plötzliche nicht mehr zu funktionieren. ...

Windows Server
Sonntagsfrage: Welchen Sinn seht Ihr noch im Server 2019 Essentials
Frage von ashnodWindows Server13 Kommentare

Guten Morgen, ich habe gestern den Windows Server 2019 Essentials als Trial in einer VM installiert um mir das ...

DNS
50 EUR für Telekom-, Unitymedia- und Vodafone-Kunden
Frage von Zorro1199DNS13 Kommentare

Hallo zusammen, wie evaluieren gerade das korrekte Einhalten von DNS-TTLs durch verschiedene Provider. Aktuell suchen wir noch Kunden der ...

Windows 10
Windows 10 PC kein Ping möglich von anderen PCs
Frage von babylon05Windows 108 Kommentare

Hallo, ich habe 2 neue PC's in einer Windows 2008 Domän. Diese haben Windows 10. Die anderen PC's sind ...