편리한 방법으로 ffmpeg 정보 가져오기
ffmpeg를 사용하여 동영상 파일에 대한 정보를 얻으려고 할 때마다 좋은 정보와 함께 쓸모없는 정보가 많이 토해냅니다.
사용하고 있다ffmpeg -i name_of_the_video.mpg.
그것을 우호적으로 입수할 수 있는 방법은 없습니까?즉, JSON은 훌륭합니다(추악한 XML도 상관없습니다.
지금까지 저는 regex로 데이터를 해석하도록 어플리케이션에 시켰습니다만, 일부 비디오 파일에 불쾌한 코너가 많이 있습니다.마주친 건 다 고쳤지만, 더 있을 수도 있어요.
나는 다음과 같은 것을 원했다.
{
"Stream 0": {
"type": "Video",
"codec": "h264",
"resolution": "720x480"
},
"Stream 1": {
"type": "Audio",
"bitrate": "128 kbps",
"channels": 2
}
}
조금 늦었지만 누군가와 관련이 있을 수도 있어요
ffprobe정말 좋은 방법이에요.하지만 주의할 점은ffprobe표시할 정보를 지정합니다.-show_format,-show_packets그리고.-show_streams옵션) 또는 빈 출력으로 표시됩니다(댓글 중 하나에서 언급한 것처럼).
예를들면,ffprobe -v quiet -print_format json -show_format -show_streams somefile.asf다음과 같은 결과를 얻을 수 있습니다.
{
"streams": [{
"index": 0,
"codec_name": "wmv3",
"codec_long_name": "Windows Media Video 9",
"codec_type": "video",
"codec_time_base": "1/1000",
"codec_tag_string": "WMV3",
"codec_tag": "0x33564d57",
"width": 320,
"height": 240,
"has_b_frames": 0,
"pix_fmt": "yuv420p",
"level": -99,
"r_frame_rate": "30000/1001",
"avg_frame_rate": "0/0",
"time_base": "1/1000",
"start_time": "0.000",
"duration": "300.066",
"tags": {
"language": "eng"
}
}],
"format": {
"filename": "somefile.asf",
"nb_streams": 1,
"format_name": "asf",
"format_long_name": "ASF format",
"start_time": "0.000",
"duration": "300.066",
"tags": {
"WMFSDKVersion": "10.00.00.3646",
"WMFSDKNeeded": "0.0.0.0000",
"IsVBR": "0"
}
}
}
이제 사용 가능-progress -형식화된 친근한 정보를 인쇄하다key=value.
ffmpeg -i video.mp4 .......-s 1920x1080 -progress - -y out.mp4
speed=5.75x
frame=697
fps=167.7
stream_0_0_q=39.0
bitrate=2337.0kbits/s
total_size=6979778
out_time_ms=23893333
out_time=00:00:23.893333
dup_frames=0
drop_frames=0
시도해 보세요.JSON 출력을 취득하기 위한 올바른 명령어는 다음과 같습니다.
ffprobe ... -print_format json
의 다른 사용법ffprobe해석할 수 있습니다.
ffprobe -v error -select_streams v:0 -show_entries stream=width,height,r_frame_rate,bit_rate,codec_name,duration -of csv=p=0:s=x video.mp4
결과는 다음과 같습니다.
h264x600x480x25/1x385.680000x542326
-select_streams v:0는 첫 번째 비디오스트림만 선택합니다.이 파라미터를 삭제하면 각 스트림에 대해 1개의 행이 표시됩니다.
언급URL : https://stackoverflow.com/questions/7708373/get-ffmpeg-information-in-friendly-way
'programing' 카테고리의 다른 글
| JsonNode 개체를 맵으로 변환 (0) | 2023.03.16 |
|---|---|
| 형식 스크립트의 svg 파일을 가져올 수 없습니다. (0) | 2023.03.16 |
| 원형 의존성 및 각도 OOP에 관한 문제JS (0) | 2023.03.16 |
| 반응 선택 옵션을 스타일링하는 방법 (0) | 2023.03.16 |
| WordPress 웹 사이트가 아직 이전 스타일을 로드하고 있습니다.css (0) | 2023.03.16 |