2012-04-19 2 views
2

모두
Mac OS X에서 mdls 명령을 사용하여 모든 미디어 파일 (mp3, mov 등)에 대한 총 비트 전송률 메타 속성을 가져 오는 쉘 스크립트가 있습니다. m4v 등). 출력을 설정된 임계 값 (XY Kbps)과 비교하고 비트율이 미디어 파일의 XY를 초과하면 플래그를 올리려고합니다. 문제는 출력이 Kbps 또는 초당 비트인지 여부를 나타내지 않는다는 것입니다.mdls 명령 : "kMDItemTotalBitRate"속성 값과 관련된 문제

iTunes에서 확인에
mdls -name kMDItemTotalBitRate test1.m4a 
    Output -> kMDItemTotalBitRate = 249 


    mdls -name kMDItemTotalBitRate test2.mp3 
    Output -> kMDItemTotalBitRate = 192000 

, 내가 수는 전 249 kbps의 후자에 대한 192 kbps의 것을보고 예를 들어 나는 mdls 2 오디오 파일 test1.m4a 및 test2.mp3에 명령을 실행했습니다. mdls 명령을 사용하여 kMDItemTotalBitRate를 초당 비트 단위로만 출력하도록하면 출력이 모든 파일에 대해 균일하고 혼동을 없앨 수 있습니까?

+1

나는 할 수 있을지 의심 스럽다. mdls가 가지고있는 데이터를 제공하고 있습니다. Spotlight 수입업자가 .m4a 파일을 분석 한 내용의 버그와 같이 보입니다. –

답변

3

Ken Thomases은 자신의 의견에서 Spotlight 속성을 사용하여 작업 할 때 값을 저장하는 Spotlight 가져 오기 도구가 적절하다고 말합니다. 참고 Apple’s MDItem documentation은 원시 숫자 인 kMDItemTotalBitRate을 측정해야하는 단위의 모든 표시를 생략합니다. 논리적으로 이것이 bps라고 기대할 수 있습니다. bps는 기본 비트 전송률 단위이지만, Importer가 달리 결정하면 저장된 값을 bps로 정규화 할 방법이 없습니다.

Spotlight를 사용하는 대신 MediaInfo (homebrew을 사용하여 설치할 수 있음) 유틸리티를 사용하여 파일을 분석 할 수 있습니다. 명령

mediainfo '--Inform=General;%BitRate%' "/path/to/your/media file" 

supported media file의 비트 전송률은 안정적으로 bps로 반환됩니다.