things
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
$ffprobe = 'D:\yt-dlp\ffprobe.exe'
|
||||
$FolderToReview = 'Q:\Web-RegulationPodcast\Unsorted'
|
||||
|
||||
if (-not (Test-Path $ffprobe)) {
|
||||
Write-Error "ffprobe.exe not found at '$ffprobe'. Please verify the path."
|
||||
exit 1
|
||||
}
|
||||
|
||||
$results = Get-ChildItem -Path $FolderToReview -Recurse -Filter *.mp4 | ForEach-Object {
|
||||
$file = $_.FullName
|
||||
Write-Verbose "Processing: $file" -Verbose
|
||||
|
||||
# Run ffprobe, suppress stderr, capture stdout
|
||||
$rawOutput = & $ffprobe -v error `
|
||||
-select_streams v:0 `
|
||||
-show_entries stream=width,height `
|
||||
-of csv=p=0:s=x `
|
||||
$file 2>$null
|
||||
|
||||
# Clean up output and handle missing/invalid streams
|
||||
$resolution = $rawOutput.Trim()
|
||||
if ([string]::IsNullOrWhiteSpace($resolution)) {
|
||||
$resolution = 'No video stream or unreadable'
|
||||
}
|
||||
|
||||
[PSCustomObject]@{
|
||||
File = $file
|
||||
Resolution = $resolution
|
||||
}
|
||||
}
|
||||
|
||||
$results | Format-Table -AutoSize
|
||||
|
||||
# Optional: Export to CSV
|
||||
# $results | Export-Csv -Path 'Q:\Web-RegulationPodcast\video_resolutions.csv' -NoTypeInformation
|
||||
Reference in New Issue
Block a user