記錄多個媒體檔案的詳細資訊(如果可能,還包括錯誤)

記錄多個媒體檔案的詳細資訊(如果可能,還包括錯誤)

首先,讓我說這實際上是對腳本的請求,所以如果我發佈在錯誤的位置,請告訴我,我會要求關閉此內容並轉到那裡 - 我剛剛發現阿庫本圖成為最有幫助最少的居高臨下我訪問的論壇最多,所以我想先在這裡嘗試一下。

我正在運行 Ubuntu LTS 16.04 Destop,如果這很重要的話。

我要求的是.bash 文件它不一定是bash,我只是更有可能理解它是如何運作的,這樣我就可以從經驗中學習),它將遍歷一個充滿媒體文件(特別是電影;mp4, mkv, avi,mpg是唯一的擴展名)的特定目錄,並生成一個名為"0.log"(因此更容易在列表頂部找到)的日誌文件,並在中提供以下資訊易於閱讀的格式:

  • 檔案名稱
  • 擴大
  • 電影長度
  • 影片尺寸(寬x高)
  • 文件是否有錯誤
  • 如果可能的話,錯誤是什麼

我可以使用 ffmpeg 函數收集所有這些信息,但我一次只能執行一項操作,手動將信息放入電子表格中,我相信您可以理解,這需要無限*的時間。

*不是嚴格地真的

輸入時:

ffmpeg -i filename.ext

所需的資訊出現在所使用的庫列表下,例如,輸出可以讀取:

.......
other stuff that i don't need
.......
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  2.101 /  1.  2.101
  libpostproc    53.  3.100 / 53.  3.100
    [aac @ 0x142fc20] element type mismatch 3 != 0
    Input #0, matroska,webm, from '13 (2010).mkv':
      Metadata:
        encoder         : libebml v1.2.0 + libmatroska v1.1.0
        creation_time   : 2011-07-29 21:37:53
      Duration: 01:37:12.19, start: 0.000000, bitrate: 1999 kb/s
        Stream #0:0: Video: h264 (High), yuv420p, 1280x536 [SAR 1:1 DAR 160:67], 24 fps, 24 tbr, 1k tbn, 48 tbc (default)
        Stream #0:1: Audio: aac (HE-AAC), 48000 Hz, 5.1, fltp (default)
        Stream #0:2: Subtitle: subrip (default)

庫列表之後的第一行是文件可能存在錯誤的示例,當文件簽出時,它被省略*沒有“這個文件沒問題”替換,它只是不存在。可能會發生許多錯誤,所以我猜您只需檢查最終的庫(在本例中為 libpostproc; 和輸入 #0; 之間)以查看是否有任何內容。

您可以看到持續時間(在本例中為 01:37:12.19)和尺寸(在本例中為 1280x536)。

任何人都可以為我做這件事,或向我指出可以做到這一點的現有軟體。最終輸出將被放入電子表格中,但我自己可以輕鬆處理格式和內容,我真的只需要原始資料即可使用。或告訴我如何自己做。我患有輕度腦損傷,這已經殺死了我的短期記憶,所以我正在努力使用線上教學來嘗試解決它。

先感謝您,

丹尼

相關內容