오디오 및 비디오] 5.ffmpeg 분류와 명령을 사용하여

GT의
개인 또는 가족의 요구 중 일부 오디오 및 비디오 처리가 일반적으로 사실은, 다음, 소프트웨어에 의해 설명는 FFmpeg에 익숙하지 않는다, 당신은 기본 명령을받을 수 있습니다

G :는 FFmpeg 명령 숙련 된 사용!
T는 : 기억 자연스럽게, 더으로 다시 노크, 기계적하지 마십시오 읽고, 법에 따라 자신을 발견했다. 심지어 _ 나는 그것을 찾아 볼 수 잊지

에서 제공는 FFmpeg 명령 행 도구
정보 쿼리,보기 오디오 및 비디오 파일과 같이 ffprobe
ffplay :는 FFmpeg 및 SDL 라이브러리 미디어 플레이어의 사용은이 ijkplayer의 ffplay이 차 개발의 변화를 기반으로, 일부 하드웨어를 할 작업 디코딩 및 호환성.
는 FFmpeg : 가장 중요한, 가장 중심. 다양한 기능을 포함, 학습이 물건을 배울 주로.
ffserver : 단순 스트리밍 미디어 서버, 클라이언트에 응답은 스트리밍 미디어 데이터 스트림을 요청하고 클라이언트로 전송.
ffprobe의
ffprobe [파일 이름] : 직접 출력 파일 정보는 분명히, 우리는 무엇을 나타내는 지 볼 수 있습니다

# 긴, 시작 비트 레이트
지속 시간 : 00 : 01 : 39.96, 시작 0.000000, 전송률 : 1035 이하 / S

# 비디오 스트림의 부호화 형식 H264 (밀봉 형식 AVC1), 비디오 프레임 포맷 YUV420P, 1000x562의 해상도, 비트 레이트 프레임 레이트는, 기본적으로는 기본 스트림이 복수의 비디오 스트림이있을 수 나타낸다.
스트림 # 0 : 0 (싶게) : 비디오 : H264 (주) (avc1 / 0x31637661) yuv420p, 1000x562 [SAR : 1 DAR 500 : 281], 9백35킬로바이트 / s 24 fps의 24 TBR, 12288 TBN 48 TBC (기본)

# 오디오 스트림, AAC 인코딩 형식 (MP4A 캡슐화 포맷)의 LC 프로파일이 채용되어, 샘플링 레이트는 44.1kHz, 스테레오 사운드, 부동 소수점 포맷의 비트 레이트를 나타내는 데이터
스트림 # 0 : 1 (싶게) : 오디오 : AAC (액정) (MP4A / 0x6134706D) 44,100 Hz에서, 스테레오 fltp 94 킬로바이트 / S (디폴트)
. (1)
(2)
. 3
. 4
. 5
. 6
. 7
. 8
ffprobe의 -show_format [파일 이름]

ffprobe의 -show_packets [파일 이름]

ffprobe의 -show_frames [파일 이름]

ffprobe -print_format JSON -show_streams [파일 이름]

속성 의미
유형 (A, V, 자막 등) MEDIA_TYPE 프레임
pict_type 프레임 타입 (IPB)
이미지의 색상 포맷 pic_fmt 프레임 (YUV420P)
Key_frame 키 프레임이 있는지
ffplay
ffplay [파일 이름] : 플레이어가
직접 파일을 재생하는 플레이어는 계조 인쇄 것 비디오 스트림 정보가 일치 ffprobe하여 상기 참조
1.seek을 : 재생 윈도우 클릭
빨리 감기 2 되감기 : 좌우 키 (10S)를, 키를 1 분
3 오디오 및 비디오 스위칭 : W는
4.frame-STEP : S

루프 : ffplay [파일 이름] -loop [배]

오디오 및 비디오 스트림을 전환 : ffplay [파일 이름] AST / VST [인덱스]

누드 방송의 오디오 및 비디오 데이터를 PCM /를 YUV :
ffplay .PCM -f s161e -channels 2 -Ar 44100
ffplay -f rawvideo뿐만 -pixel_format YUV420P / RGB24 -s 1080 * 1920 [파일 이름]

오디오 / 비디오 / 외부 클록 기준에 오디오 및 비디오 동기
ffplay [파일 이름] -sync 오디오 / 비디오 / EXT

는 FFmpeg : 가장 맛있는 물고기는 가장 가시입니다.
는 FFmpeg -help이 : 매개 변수의 다음과 같은 유형의 테스트 할 수 있습니다
# 1.Global 옵션뿐만 아니라 개별 파일에 대한 전 세계적으로 적용
#의 2.Per 파일의 주요 옵션 : 각 파일의 동작을 개별적으로 시행
-f FMT 지정된 오디오 및 비디오 포맷을
-c 코덱 코덱의 이름을
-codec CODEC CODEC 이름
-pre PRESET PRESET 이름
INFILE [메타 데이터] INFILE에서 OUTFILE의 SET 메타 데이터 정보 : -map_metadata OUTFILE [메타 데이터]
-t 기간이 지정된 길이
-to time_stop STOP 기록 트랜스 코딩 시간 또는
-fs 지정 limit_size 파일을 의 최대 크기
-ss time_off 시작 시간 지정
EOF에 상대의 개시 오프셋 (offset)시 SET time_off -sseof를
활성화 / 정기적으로 타임 스탬프 찾는 해제 -ss -seek_timestamp
(현재 시간에 SET에 '지금') 녹화 시간 타임 스탬프에 SET를 -timestamp
-metadata 문자열 = 문자열은 메타 데이터를 추가
- 프로그램 제목 = 문자열 : 일 = 수는 ... 지정된 스트림으로 프로그램을 추가
대상 파일 형식 ( "VCD", "SVCD", "DVD", "DV"또는 옵션 접두사 "DV50" "PAL-를 지정 -target 유형 ",") "필름 - ntsc-"또는 "
-apad 오디오 패드
수가 출력 프레임 수 설정 -frames
-Filter filter_graph 설정 스트림 filtergraph
-filter_script 파일명을 파일로부터 스트림 filtergraph 정보 판독
입력 파라미터 변경에 -reinit_filter REINIT의 filtergraph을
-discard 폐기
-disposition 배치

# 3 영상 선택해视频参数
-vframes 수의 비디오 프레임의 개수 출력 설정
속도 -r帧率FPS
-s 크기分辨率
-aspect 양태指定视频长宽比(4 : 3,16 : 9或1.3333,1.7777)
RAW 샘플 당 개수 SET -bits_per_raw_sample 비트 수가
비디오 출력 취소 -Vn
(재 인코딩하지 않고 '복사'대표) 코덱 코덱 코덱을 적용 -vcodec
MM : SS -timecode HH [:]. FF의 SET . 타임 코드 값 초기
(.. 1 3) 또한, n SELECT 패스 번호를 -pass
-vf filter_graph의 SET 비디오 필터
-ab 비트 레이트 오디오 비트 레이트 (-b 사용하십시오 : A)
비트 레이트 비디오 비트 레이트 -b (-b 사용하십시오 : V)
-dn 데이터는 비활성화

# 4 오디오 옵션 오디오 파라미터는
오디오 프레임의 수치를 출력하는 설정 -aframes
(지정 코딩) 제공 -aq 품질의 오디오 품질
(Hz 단위) -Ar 레이트 세트 오디오 샘플링 레이트
-ac 채널은 채널의 수를 제공을 모노 2 스테레오
-an 취소 오디오 출력
-acodec 코덱은 오디오 부호화를 지정 ( '사본'직접 복사되지 않은 오디오 트랜스 코딩을 말한다)
-VOL 볼륨 설정 볼륨 레코드 (256 = 정상)
-af filter_graph 오디오 필터 세트

# 5 자막 옵션
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
查询类命令
-version 쇼 버전
-buildconf 쇼 빌드 구성
-formats 가능한 형식 보여
-muxers 쇼 사용할 수 muxers
-demuxers 쇼 가능한을 넣었
- 기기 쇼 가능한 장치
-codecs 쇼 가능한 코덱
-decoders 사용할 디코더를 보여
-encoders 보여 가능한 인코더
-bsfs 쇼 가용 비트 스트림 필터
-protocols 표시 가능한 프로토콜
-filters 가능한 필터 표시
-pix_fmts 표시 가능한 픽셀 포맷
-layouts 표시 표준 채널 레이아웃
-sample_fmts 표시 가능한 오디오 샘플 형식
색상 - 가능한 색 이름 표시는
입력 장치의 장치 목록 소스 -sources
출력 장치의 장치 목록 싱크 -sinks
-hwaccels 가능한 HW 가속 방법을 보여

命令格式
는 FFmpeg [global_options {[input_file_options] input_url -i} - {[output_file_options]} output_url

다중화 및 역 다중화 순서는
오디오 스트림을 추출하는
-i input.mp4 -acodec이 -vn out.aac 복사는 FFmpeg을

추출 비디오 스트림
-an out.h264 복사 -vcodec는 FFmpeg -i input.mp4

포맷 변환
-vcodec 사본 -acodec 복사 out.flv을 input.mp4 -i는 FFmpeg

오디오 및 비디오 병합
는 FFmpeg -i out.h264 -i out.aac -vcodec 복사 -acodec 복사 out.mp4

데이터 처리 베어
#의 YUV 데이터 추출
는 FFmpeg -i input.mp4 -an -c : V rawvideo -pixel_format yuv420p out.yuv

#는 PCM 데이터를 추출
는 FFmpeg -i input.mp5 -vn -ar 44100 -ac 2 -f s16le out.pcm

#yuv转H264
는 FFmpeg -f rawvideo -pix_fmt yuv420p -s 320X240 -r 30 -i out.yuv -c : V libx264 -f rawvideo out.h264

#pcm转WAV
는 FFmpeg -s16le -ar 8000 -ac 2 -acodec pcm_s16le -i input.raw output.wav

필터
영화 로고 지정된 위치에 -vf : # 워터 마크 추가합니다. 지정된 로고 크기를 확장 할 수 있습니다. 로고 오버레이 위치 지정된 표시
-i 1.mp4 -vf "영화 = 2.png는 FFmpeg water.mp4 :; 10 OUT] [watermask] 오버레이 [IN] = 30 30 watermask, 배율 = 30"

# 워터 마크 제거
1. 워터 마크가 발견
ffplay -i water.mp4 -vf delogo = X = 30 : Y = 10 : W = 32 : H = 31이다.보기 1 =
2 워터 마크 제거
는 FFmpeg -i water.mp4 -vf delogo =을 X = 30 : 10, Y = 32 = w : H = 31output.mp4

비디오 1 배 절감 -vf 스케일 간단한 필터 크기를 지정 IW / 2 : 정수 찍은 영상 -1 IW 지정된 폭. -1은 폭을 따라 높이 변동을 나타낸다.
FFmpeg은 -i 1.mp4 -vf 스케일 = IW / 2 -1 scale.mp4

비디오 자르기
자르기 형식 : 작물 = out_w : out_h : X : Y의
out_w : 출력의 폭. In_w 폭을 표 입력 영상을 사용할 수있다.
out_h : 신장 출력. 당신은 매우 in_h 표 입력 비디오를 사용할 수있다.
X : X 좌표
Y를 : Y 좌표
작물 = in_w- -vf는 FFmpeg -i 1.mp4을 200 : in_h -c-200 : V libx264 -c : 복사 -video_size 1280X720 out.mp4

재생 속도
-filter_complex 복소 필터 [0 : V]을 입력으로 비디오 파일 (파일 인덱스 번호는 0이다)을 나타낸다. setpts = 용의 0.5PTS은 절반 이하의 차이를 0.5, 승산 비디오 보여주는 PTS의 각 프레임에 스탬프. [V] 별명 출력을 나타낸다. 마찬가지로 오디오가 설명되지 않는다.
다중화 스트림은, 지정된 복수의 파일로 출력 할 수있는 지정된 출력 파일에 출력 될 수 -map 복소 출력을 사용할 수있다. 출력 파일 스트림에 복잡한 방법으로 "[V]"별명 필터 출력. 사용 위지도는 지정된 출력 파일에 복잡한 필터 비디오 및 오디오 출력됩니다.
FFmpeg은 -i 1.mp4 -filter_complex "[0 : V]의 setpts의 0.5PTS = [V] [0 : A] atempo = 2.0 [A]"-map "[V]"-map "[A]"속도. MP4

대칭 영상 (수평 플립)
는 FFmpeg -i 1.mp4 -filter_complex "[0 : V = PAD의 IW W = 2 * [A] [0 : V] hflip [B] [A] [B] = X 오버레이 w = "duicheng.mp4

비디오 대칭성 (상하 반전)
는 FFmpeg -i 1.mp4 -filter_complex "[0 : V] PAD = H = 2 * IH가 [A] [0 : V] vflip [B] [A] [B] = Y 오버레이 H = "duicheng.mp4

画中画
는 FFmpeg -i -i 1.mp4 2.mp4 -filter_complex '[1 : V] 스케일링 = w = 176 : H = 144 : force_original_aspect_ratio 감소 = [ckout] [0 : V [ckout] = X 오버레이 = WW-10 : Y = 0 [출력] "-map"[출력] "는 FastStart -movflags new.mp4

양 효과
"볼륨 = 0.5 -af는 FFmpeg -i 1.mp4 'out.mp4

접합 및 절단 오디오 및 비디오
자르기
(10) out1.mp4 -t 0시 0분 0초 -SS는 FFmpeg -i 1.mp4을

접합의
텍스트 파일 :
파일 'out1.flv'
'out2.flv'파일
파일 'out3.flv'
는 FFmpeg -f -c CONCAT -i 텍스트 복사 pinjie.mp4

HLS 슬라이스
-strict 오디오 AAC 지정에 사용 -2.
-f HLS는 M3U8 형식으로 설정합니다.
는 FFmpeg -i 1.mp4 -c : V libx264 -c 하십시오 libfdk_aac -strict -2 -f HLS out.m3u8

비디오 영상 시스템 변환
JPEG의에 비디오
1S A : -r 하나
는 FFmpeg -i 1.mp4 -r 1 -f 이미지 2 화상 - % 3d.jpeg

사진은 GIF의 차례
는 FFmpeg을 -i 화상 - % 3d.jpeg -r 5 out.gif

도 지프 비디오
0시 0분 0초 -t 10 out.gif -ss는 FFmpeg -i 1.mp4

이미지 전송 비디오
는 FFmpeg -f 이미지 2 -i 화상 - % 3d.jpeg images.mp4

라이브 관련
플러그인 플로우
는 FFmpeg - 재 -i out.mp4 -c는 -f FLV의 복사 RTMP를 : // 서버 / 라이브 / streamName의

拉流保存
는 FFmpeg -i RTMP : // 서버 / 라이브 / streamName의 -c 복사 dump.flv

转流
는 FFmpeg -i RTMP : // 서버 / 라이브 / originalStream -c : 사본 -c : V 복사 -f FLV의 RTMP : // 서버 / 라이브 / h264Stream

제한, 능력 및 학습 단계에서 학습에 대한 자신의 블로그를 기록하기 위해, 그것은 이해의 차이가 나에게 환영 메시지를 수정하는 것이 불가피하다!
끊임없는 학습을 중단!
--------------------- 

추천

출처www.cnblogs.com/hyhy904/p/10983107.html