일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- CKA 기출문제
- AI
- kotlin querydsl
- Elasticsearch
- kotlin
- Java
- 정보처리기사실기 기출문제
- Kubernetes
- IntelliJ
- APM
- kotlin spring
- 티스토리챌린지
- MySQL
- minikube
- PETERICA
- 공부
- CKA
- Pinpoint
- AWS EKS
- CloudWatch
- 코틀린 코루틴의 정석
- 오블완
- mysql 튜닝
- 기록으로 실력을 쌓자
- Spring
- 정보처리기사 실기 기출문제
- 정보처리기사 실기
- Linux
- kotlin coroutine
- aws
- Today
- Total
피터의 개발이야기
[FFmpeg] FFprobe 사용법: 멀티미디어 파일 분석하기 본문
ㅁ 들어가며
스트림을 트랜스코드하는 작업을 하면서 FFprobe를 사용하게 되었다. FFprobe는 FFmpeg 프로젝트의 일부로, 멀티미디어 파일의 상세 정보를 분석하고 출력하는 강력한 도구이다. 이 글에서는 FFprobe의 기본 사용법과 유용한 옵션들을 정리하였다.
ㅁ 기본 사용법
ffprobe [옵션] 입력파일
ㅁ 주요 옵션
스트림 정보 표시
ffprobe -show_streams 입력파일
ㅇ 이 명령어는 파일의 모든 스트림(비디오, 오디오, 자막 등)에 대한 상세 정보를 출력한다.
포맷 정보 표시
ffprobe -show_format 입력파일
ㅇ 파일 컨테이너 포맷에 대한 정보를 보여준다.
간단한 정보만 표시
ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 입력파일
ㅇ 이 명령어는 파일의 재생 시간만을 초 단위로 출력한다.
JSON 형식으로 출력
ffprobe -v quiet -print_format json -show_format -show_streams 입력파일
ㅇ 정보를 JSON 형식으로 출력하여 프로그래밍적으로 쉽게 파싱할 수 있게 한다.
ㅁ 활용 예시
비디오 해상도 확인
ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of csv=s=x:p=0 입력파일
오디오 비트레이트 확인
ffprobe -v error -select_streams a:0 -show_entries stream=bit_rate -of default=noprint_wrappers=1:nokey=1 입력파일
파일 생성 시간 확인
ffprobe -v quiet -print_format json -show_format 입력파일 | grep creation_time
네트워크 스트림 분석 시 시간 조절
ffprobe -analyzeduration <value> <input_file>
ㅇ 값은 마이크로초 단위로 지정한다. 예를 들어, 5초는 5000000이다.
ㅇ 기본값은 5000000 마이크로초(5초)이다.
ㅇ 값이 클수록 더 정확한 정보를 얻을 수 있지만, 분석 시간이 길어진다.
ㅇ 일반적으로 10M (10,000,000 마이크로초 = 10초) 정도로 설정하면 충분하다.
ㅇ 복잡한 파일이나 스트리밍 소스의 경우 더 큰 값이 필요할 수 있다.
ffprobe -analyzeduration 10000000 input.mp4
ㅇ input.mp4 파일을 10초 동안 분석한다.
ㅇ 값을 너무 크게 설정하면 분석 시간이 길어져 전체적인 처리 속도가 느려질 수 있으므로 적절한 값을 선택해야 한다
ㅁ 주의사항
ㅇ FFprobe는 파일을 실제로 재생하지 않고 메타데이터만 분석하므로 빠르게 정보를 얻을 수 있다.
ㅇ 그래서 일부 파일 형식이나 손상된 파일의 경우 정확한 정보를 얻지 못할 수 있다.
ㅇ 네트워크 스트림 분석 시 -analyzeduration 옵션을 사용하여 분석 시간을 조절할 수 있다.
ㅁ 마무리
FFprobe는 멀티미디어 파일 처리 워크플로우에서 매우 유용한 도구다. 파일 정보를 빠르게 확인하고 스크립트에 통합하여 자동화된 처리를 구현할 수 있다.
ㅁ 함께 보면 좋은 사이트
ㅇ [탐험] ffmpeg-ffprobe로 AWS S3에 있는 Video 파일 메타데이터 추출: 비디오 스트림, AWS Presigned URL 방식 이해 2
ㅇ [FFMPEG] ffprobe에 나오는 동영상 정보들 php 변수로 만들기
'Linux' 카테고리의 다른 글
[Linux] sudo 명령어의 -E 옵션 알아보기 (0) | 2024.12.04 |
---|---|
[Linux] dig 명령어 사용법 총정리 (0) | 2024.10.17 |
[Linux] 프로세스 백그라운드 실행방법: &, nohub (0) | 2024.10.15 |
traceroute 명령어 사용법 (2) | 2024.10.14 |
[Linux] ssh-keygen 명령어를 사용하여 SSH 키를 생성 (0) | 2024.07.31 |