ウェブサイトにますます多くのビデオアプリケーションがあり、ますます多くのウェブサーバーが[ビデオトランスコーディング](https://cloud.tencent.com/product/vts?from=10680)、ビデオ圧縮をサポートする必要があります。FFmpegは現在、ほとんどのアプリケーションで最高のウェブサーバーバックグラウンドトランスコーディングプログラムです。 。 FFmpegは、デジタルオーディオとビデオの記録、変換、およびストリームへの変換に使用できるオープンソースのコンピュータープログラムです。 LGPLまたはGPLライセンスを使用します。オーディオとビデオの録音、変換、ストリーミングのための完全なソリューションを提供します。以下に、** Centos7 **でのFFmpegの展開レコードについて説明します。
1 )インストールでは他のリポジトリソースを使用する必要があるため、EPELリリースをインストールします。EPELサポートが必要です。
[ root@qd-vpc-op-snapshot01 ~]# yum install -y epel-release
[ root@qd-vpc-op-snapshot01 ~]# rpm --import/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7//コードプロンプトがない場合は、このコマンドを実行します。[root@qd-vpc-op-snapshot01 ~]# yum repolist //インストールが完了したら、インストールが成功したかどうかを確認できます2)Nuxをインストールします-Dextopソース
[ root@qd-vpc-op-snapshot01 ~]# rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro //コードをインポートする[root@qd-vpc-op-snapshot01 ~]# rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm //nuxをインストールする-dextopソース[root@qd-vpc-op-snapshot01 ~]# yum repolist #リポジトリソースが正常にインストールされているかどうかを確認します
3 )ffmpegをインストールします
[ root@qd-vpc-op-snapshot01 ~]# yum install -y ffmpeg
[ root@qd-vpc-op-snapshot01 ~]# ffmpeg -version
ffmpeg version 2.6.8Copyright(c)2000-2016 the FFmpeg developers
built with gcc 4.8.5(GCC)20150623(Red Hat 4.8.5-4)
configuration:--prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib64 --mandir=/usr/share/man --arch=x86_64 --optflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic'--enable-bzlib --disable-crystalhd --enable-gnutls --enable-ladspa --enable-libass --enable-libcdio --enable-libdc1394 --enable-libfaac --enable-nonfree --enable-libfdk-aac --enable-nonfree --disable-indev=jack --enable-libfreetype --enable-libgsm --enable-libmp3lame --enable-openal --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libv4l2 --enable-libx264 --enable-libx265 --enable-libxvid --enable-x11grab --enable-avfilter --enable-avresample --enable-postproc --enable-pthreads --disable-static--enable-shared --enable-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib64 --enable-runtime-cpudetect
libavutil 54.20.100/54.20.100
libavcodec 56.26.100/56.26.100
libavformat 56.25.101/56.25.101
libavdevice 56.4.100/56.4.100
libavfilter 5.11.102/5.11.102
libavresample 2.1.0/2.1.0
libswscale 3.1.101/3.1.101
libswresample 1.1.100/1.1.100
libpostproc 53.3.100/53.3.100
フォローアップインストールのために、シェルスクリプトはワンクリックインストール用に特別に作成されました**:
[ root@qd-vpc-op-snapshot01 ~]# cat ffmpeg_install.sh
#! /bin/bash
yum install -y vim
yum install -y epel-release
rpm --import/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
yum repolist
rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm
yum repolist
yum update -y
yum install -y ffmpeg
ffmpeg -version
FFmpegで一般的に使用される基本コマンド
1 )ビデオストリームとオーディオストリームを分離する
ffmpeg -i input_file -vcodec copy -an output_file_video //ビデオストリームの分割
ffmpeg -i input_file -acodec copy -vn output_file_audio //個別のオーディオストリーム2)ビデオの逆多重化
ffmpeg –i test.mp4 –vcodec copy –an –f m4v test.264
ffmpeg –i test.avi –vcodec copy –an –f m4v test.2643)ビデオトランスコーディング
ffmpeg –i test.mp4 –vcodec h264 –s 352*278 –an –f m4v test.264//元のファイルにトランスコードする
ffmpeg –i test.mp4 –vcodec h264 –bf 0 –g 25 –s 352*278 –an –f m4v test.264//元のファイルにトランスコードする
ffmpeg –i test.avi -vcodec mpeg4 –vtag xvid –qsame test_xvid.avi //パッケージファイルへのトランスコード//-bf Bフレーム番号制御、-gキーフレーム間隔制御、-■解像度制御4)ビデオパッケージ
ffmpeg –i video_file –i audio_file –vcodec copy –acodec copy output_file
5 )ビデオカット
ffmpeg –i test.avi –r 1 –f image2 image-%3d.jpeg //写真を抽出する
ffmpeg -ss 0:1:30-t 0:0:20-i input.avi -vcodec copy -acodec copy output.avi //ビデオをカット//-r画像抽出の頻度、-ss開始時間、-t期間6)ビデオ録画
ffmpeg –i rtsp://192.168.3.205:5555/test –vcodec copy out.avi
7 )YUVシーケンス再生
ffplay -f rawvideo -video_size 1920x1080 input.yuv
8 )AVIへのYUVシーケンス
ffmpeg –s w*h –pix_fmt yuv420p –i input.yuv –vcodec mpeg4 output.avi
主な一般的なパラメータの説明:
- i入力ストリームを設定します
- f出力フォーマットを設定する
- ss開始時間
ビデオパラメータ:
- bビデオトラフィックを設定します。デフォルトは200Kビットです。/s
- rフレームレートを設定します。デフォルトは25です。-■画面の幅と高さを設定します
- アスペクト画面の比率を設定します
- vnはビデオを処理しません
- vcodecはビデオコーデックを設定します。設定されていない場合は、入力ストリームと同じコーデックが使用されます
オーディオパラメータ:
- arセットサンプリングレート
- acはサウンドチャンネルの数を設定します
- acodecはサウンドコーデックを設定します。設定されていない場合は、入力ストリームと同じコーデックが使用されます。
- オーディオを処理しません
Recommended Posts