タグ付けされた質問 「ffmpeg」

FFmpegは、マルチメディアデータを処理するためのライブラリとプログラムを作成するフリーソフトウェアプロジェクトです。FFmpegの最も注目すべき部分は、libavcodec、他のいくつかのプロジェクトで使用されるオーディオ/ビデオコーデックライブラリ、libavformat、オーディオ/ビデオコンテナーmuxおよびdemuxライブラリ、およびマルチメディアファイルをトランスコーディングするためのffmpegコマンドラインプログラムです。

2
ffmpegを使用して同じビデオのクリップを連結する方法
さまざまなシーンを含む長いビデオがあります。ffmpeg 2.1.4を使用して、ビデオから2つのシーン(Iフレームで開始しない)を抽出して連結したい。 引数として、01:00と02:00から5秒が欲しいと言います。 私がすることができます: ffmpeg -ss 01:00 -i in.mkv -ss 02:00 -i in.mkv -filter_complex " [0:v]select='lt(t,5)'[v0]; [0:a]aselect='lt(t,5)'[a0]; [v0][a0][1:v][1:a]concat=n=2:v=1:a=1 " -c:a libvorbis -t 10 out.mkv それは私に欲しい映画を提供しますが、selectは実際にffmpegに映画の残り全体をデコードさせます。だから、最初の映画をデコードする代わりに切り捨てるようにするにはどうすればいいですか? 可能であれば、ffmpeg複合フィルターを使用してこれを行うことをお勧めします。-t最初に別々のムービーを再コーディングするためだけに使用できることを知っていますが、私の場合、余分なエンコーディング手順は非常に遅く、このビデオの品質もかなり低下します。 蒸気の長さを切り捨てるフィルターが見つからないようです。-tまたは-ssパラメータに対応するフィルターノードはありますか?
15 ffmpeg 

7
FFmpegエンコーディングを一時停止および再開する方法はありますか?
私は毎日数時間のビデオ映像を記録し、それをエンコードのためにキューに設定しましたffmpeg。veryslowプリセットをx265で使用するため、1時間のビデオでエンコードするのに最大20時間以上かかる場合があります。 私のコンピューターは昼夜を問わず稼働しているので、エンコードffmpegを一時停止して再開する方法があるのだろうか?TerminalOS Xに使用しています。 その場合、ターミナルをシャットダウンしてコンピューターを再起動した後でもエンコードを続行できますか?OS Xに再度ログインすると、ターミナルセッションが復元されると思います。少なくともターミナルの履歴は復元されます。
13 ffmpeg  osx 

1
リバースビデオにFFmpegコマンドを使用するには?
私は逆ビデオのためにアンドロイドのFFmpegライブラリを使用しています。ビデオから画像をダンプできますが、すべての画像を反転してビデオを作成する方法を教えてください。このリンクを参照してください。私はグラドルのライブラリを使用しています。ライブラリはcompile 'com.github.hiteshsondhi88.libffmpeg:FFmpegAndroid:0.2.5'コマンドの一部を使用でき、一部は使用できません。以下のようなコマンドを使用します -i /storage/emulated/0/ffvid/frameCount.mp4 -an -qscale 1 /storage/emulated/0/ffimg/revi%06d.jpg 上記のコマンドは、ビデオから画像をダンプするために使用します。私はリキのようなコマンドを使用することはできません$ffmpeg、$soxと$cat 私は多くのリンクを紹介しましたが、いくつかのリンクを参照してくださいで成功していません... /unix/214327/how-can-i-reverse-a-video-clip http://jiaxihu.blogspot.in/2012/05/reverse-video-clip-with-ffmpeg.html だから私を助けて私に解決策を与えてください。他のライブラリが利用可能な場合は、私に提案してください。よろしくお願いします
13 video  ffmpeg 

2
ffprobeを使用してmp4 / h.264ファイルに関する特定の情報を取得する方法
私は、数十万のビデオファイルに関する基本的な情報を取得するという任務を負った、ささいなPHP開発者です。私は抽出ffmpegのを使用して、いくつかの運を持っていたvideo bitrate、video width、video height、duration、およびaspect ratioそれらからが、約5%の誤差率で、これはまだ私が対処する方法がわからないこと、ファイルの膨大な数を私に残します。ビデオは再生されますが、ffmpegが返す大量のデータは、返されたXMLを解析して、発生していると思われるすべての条件で必要なものを見つける方法について困惑しています。(ファイルは過去15年程度のコレクションで、一部は新しくエンコードされ、他は数年前に変換されたものです) いずれにせよ、ffprobe期間を取得するために次の使用法を見つけました。ffmpegとffprobeの使用の複雑さを理解している誰かが、私よりももっと簡単な方法で必要な他の値を見つけるのを助けてくれることを望んでいましたクレイジーなコードffmpegのすべての結果を乗り越えるために自分で作成していることに気付きました。 ffprobe -i "video.mp4" -show_entries format=duration -v quiet -of csv="p=0" 事前に感謝します。 明確化: 私はそれを以下のcmdで追加する必要があり、必要なものを「見る」ことができますが、必要なものを抽出する方法がわかりません。たとえば、VIDEOビットレートの取得、AUDIOビットレートの抑制/無視、2使用するさまざまな期間(オーディオ/ビデオの期間?) C:\>ffprobe -v error -show_entries stream=width,height,bit_rate,duration -of default=noprint_wrappers=1 input.mp4 duration=1712.000000 bit_rate=64000 width=320 height=240 duration=1711.946113 bit_rate=359827 duration=1712.000000 bit_rate=N/A duration=1712.000000 bit_rate=N/A
12 ffmpeg 

1
ffmpeg:未指定のままにするのではなく、h.264をbt.601として明示的にタグ付けしますか?
「未指定」ではなく、明示的にbt.601としてビデオにタグを付けたい。プレーヤーは通常、幅が1280ピクセル未満のビデオのデフォルトとしてbt.601を選択することを知っていますが、bt.601がビデオの正しいカラーマトリックスであることを明示的にしたいと思います。 問題は、bt601ffmpegやlibx264 にはオプションがなく、bt709とその他のオプションのみであるということです。 HDからダウンスケールされたビデオがいくつかありますが、まだbt.709のままですが、適切にタグ付けされていません。そのため、ビデオを見るときに、プレーヤーを手動でbt.709に切り替える必要がある場合があります。bt.601として明示的にタグを付けると、将来の視聴者(たとえば、私)に、それがbt.601であることは間違いありませんmediainfo。 これのもう1つの使用例は、(を使用して-vf colormatrix)カラーマトリックス変換を行わずにbt.601ビデオを1280以上に拡大した場合、色情報を指定しないままにしておくと、プレーヤーはbt.709を誤って想定します。 FFMpegのcolormatrixビデオフィルターはbt601、入力または出力のカラーマトリックスとしてサポートしますが、タグも設定しません。(ffmpegのカラーオプションを設定する副作用がないため、のようにsrcとdestで操作することさえ拒否されてい-vf colormatrix=bt601:bt601ます。) ffmpg in -color_primaries bt709 -color_trc bt709 -colorspace bt709 out 出力ビデオに、yuv <-> rgbのbt.709を使用するタグを付けます。タグは、コンテナー内だけでなく、ビデオビットストリーム自体の内部にあります(これは、少なくともmp4およびmkvコンテナーでは、コンテナー固有のものではなく、コーデック固有のもののようです)。 例:mediainfo出力: Complete name : out.mkv ... Writing application : Lavf57.14.100 Writing library : Lavf57.14.100 Video ID : 1 Format : AVC ... Writing library : x264 core 148 r2638+4 afcf21c …

1
ハンドブレーキを使用してビデオを高速化することは可能ですか?
ハンドブレーキを使用してビデオを高速化することは可能ですか? 再生を高速化するためにビデオを変換するハンドブレーキのようなソフトウェアを探しています。それはビデオを30倍までスピードアップするはずです。 ハンドブレーキで可能ですか、それとも同様のツールはありますか?
12 video  ffmpeg  playback 

1
ffmpegでインターレース解除する方法は?
次のVOBファイルがあります。 → ffmpeg -i input.vob出力: ffmpeg version N-77455-g4707497 Copyright (c) 2000-2015 the FFmpeg developers built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04) configuration: --extra-libs=-ldl --prefix=/opt/ffmpeg --mandir=/usr/share/man --enable-avresample --disable-debug --enable-nonfree --enable-gpl --enable-version3 --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-decoder=amrnb --disable-decoder=amrwb --enable-libpulse --enable-libdcadec --enable-libfreetype --enable-libx264 --enable-libx265 --enable-libfdk-aac --enable-libvorbis --enable-libmp3lame --enable-libopus --enable-libvpx --enable-libspeex --enable-libass --enable-avisynth --enable-libsoxr --enable-libxvid --enable-libvo-aacenc --enable-libvidstab …
12 ffmpeg  filter 

2
ffmpeg drawtextフィルター-テキストで透明な背景を作成します
現在、drawtextフィルターを使用しています。これまでのところdrawtext、適切なフォントを使用してテキストを水平方向の中央に配置するオプション構成でのみ成功しています。drawtext以下に示すように、ビデオにテキストを表示するにはどうすればよいですか? ffmpeg ffmpeg -i "/media/test/test.mp4" -vf drawtext="fontfile=/usr/share/fonts/truetype/open-sans/OpenSans-Regular.ttf:text='Title of this Video':x=(w-tw)/2:y=(h-th)/2" /media/test_edited.mp4"
11 video  ffmpeg 

1
FFMPEGでは、時間の経過とともにスケールを変更できますか?
わかりましたので、オーバーレイフィルターを使用して、「t」変数を使用することで、時間の経過とともにビデオのx / y位置を変更できます。たとえば、overlay=x='if(gte(t,2), -w+(t-2)*20, NAN)':y=02秒が経過した後、オーバーレイされた要素を左上から右上にスライドし始めるために使用できます。 私がやりたいことは、要素のスケーリングに同様の原則を使用することです。表現(など、scale=w=iw*tその行に沿ったもの)を使用して、時間の経過とともにビデオのスケールを変更できるようにしたいと思います。 これは可能ですか? その式を-filter_complexで実行すると、 式 'iw * t'の評価中にエラーが発生しました。 たぶん、out_w: 'iw * t'またはout_h: '-1'の式は自己参照です。 この機能を使用したい場合は、FFMpegにパッチを適用する必要がある可能性がかなりあるように感じますが、この種のことを誰かが知っているかどうかを確認するために、最初に質問したいと思いました! そのようなタスクがどのように達成されるかを誰かが知っていますか? 助けてくれてありがとう!

1
ロスレスモードでh264を使用すると、予期しない小さな結果が生じます
私はffmpegの画面キャプチャ機能に興味を持ち、h264の簡単なリアルタイムキャプチャテストをいじり始めました。 ffmpeg -f dshow -i video="screen-capture-recorder" -video_size 1920x1080 -framerate 30 -c:v libx264 -crf 0 -preset ultrafast capture.mkv -qp 0または-crf 0オプションlibx264を使用したffmpeg h264のドキュメントに記載されている内容は、ロスレスモードで動作するはずです。 -qp 0または-crf 0を使用して、ロスレス出力をエンコードできます。ロスレスでは-crfよりも-qpを使用することをお勧めします。これは、8ビットと10ビットのx264がロスレスで異なる-crf値を使用するためです。 これは、リアルタイムキャプチャセクションのヘルプでも繰り返され、オプションの再エンコードを低速のプリセットで行ってサイズを節約しようとしています。 最初の録音はロスレスであり、再エンコードもロスレスなので、このプロセスで品質が失われることはありません。 これに基づいて、ガイドを信頼し、-qp 0を使用すると想定して、完全にロスレスのワークフローを実現します;) ただし、特定の状況で損失が発生することがわかりました。 だから私はこのコードでhuffyuvコーデックで別のテストを行いました: ffmpeg -f dshow -i video="screen-capture-recorder" -video_size 1920x1080 -framerate 30 -c:v huffyuv capture.mkv 結果: 画面1:ロスレスモードのh264 画面2:huffyuv 画面ベースhuffyuvは完璧ですが、真のロスレスコーデックですが、h264代わりにここで何かを圧縮します。なぜロスレスモードでセットアップする必要があるのか​​理解できません。 (huffyuvはデスクトップのビットマップスクリーンショットと同じです。h264でも同じです) 誰かがそれを理解するのを手伝ってくれる? 編集:コメントで必要に応じていくつかのffmpegダンプを追加します;) h264実行: …

3
OGV形式は私のコンピューターで適切に再生されますが、トランスコーディングはフレームを(ドロップ?
ubuntu 12.10でrecordmydesktopを使用して一連のスクリーンキャストを作成しました。出力はogvファイルです。デフォルトのムービープレーヤー(トーテム)を使用してogvファイルを見ると、問題なく見えます。オーディオとビデオは同期しています。(私またはyoutubeによって)トランスコードされると、オーディオとビデオが同期しなくなります。ナレーション中に1〜2枚のスライドをスキップしているようです。 更新 この問題は、トランスコーディング中に重複フレームをドロップすることでより適切に特徴付けられると思います。マウスが動いているビデオの変換は、通常は正常に機能するようです。しかし、スライドの最中に話していると、これらの重複するフレームが削除されます。 私はこれを見ましたが、それは私の状況ではありません(ogv->何かから移動しようとしています)/superuser/436187/ffmpeg-convert-video-w-dropped-frames-out-of-sync AVIファイルは正しく翻訳されているようです!これは誰かにとって大きなヒントになると思います。根本的な問題を追跡したいのですが。以前のビデオからAVIへの変換をテストしていますが、各トランジションを確認する必要があるため、これにはしばらく時間がかかります。 例 これはGTK-recordmydesktopから元OGVファイルです: http://dl.dropbox.com/u/64693533/sync_test/sync_test1.ogv ビデオは10秒間のスライドで始まり、さらに5秒間ずつ3枚のスライドに進みます。スライドを進めるたびに、マイクもタップします(10秒、15秒、20秒、25秒)。 実行されたいくつかの変換を以下に示します(それぞれに独自のビデオタイミングの問題が表示されます)。 http://dl.dropbox.com/u/64693533/sync_test/sync_test1.mp4 これは最初のフレームの最初のスライドを示していますが、すぐに先に進みます これは、ストックffmpegを使用して行われました http://dl.dropbox.com/u/64693533/sync_test/sync_test1.ffmpeg-static.mp4 これはかなり近いです-何らかの理由で13代でそれは前進することを決定します これは数日前のffmpegの静的ビルドを使用して行われました ここにそれがyoutubeにあります-あなたは13秒頃にそれが早く進むのを見ることができます(スライド1->スライド2から): 以下は、OGVファイルが正しく機能することの証明です。 ffmpegの翻訳 ffmpegまたはavconvを使用すると、YouTubeと同様の結果が得られるようです(移行は早期に発生するようですが、必ずしも同時に発生するわけではありません)。 これが私が使用するコマンド(最近のffmpegの静的ビルドで)と出力です。 $〜/ ffmpeg / ffmpeg -i JSP.ogv JSP.mp4 ffmpegバージョンN-50025-gb8bb661 Copyright(c)2000-2013 FFmpeg開発者 2013年2月17日05:23:03にgcc 4.6(Debian 4.6.3-1)でビルド 設定:--prefix = / root / ffmpeg-static / 64bit --extra-cflags = '-I / root / ffmpeg-static …

1
ffmpeg:ビデオの頭と尾に3秒の黒を追加
あらゆるサイズまたはコーデック(例:mp4)を持つことができるビデオがあり、その頭に3秒の黒いフレームを追加したいとします。 1つのフレームを追加することに関するこの質問の他のバリエーション、およびビデオの幅と高さを指定する回答も見ました。ただし、ビデオの幅と高さは任意であり、これらの値を変更したくありません。黒を追加するだけです。別のコマンドで、尾に黒の秒も追加したいと思います。 黒のセクションにはオーディオがありません-黒は単に前後に連結されている必要があります。また、可能であれば動画の再エンコードを避け、結果を新しいファイルにコピーしたいと思います。 任意の助けいただければ幸いです。
11 ffmpeg 

1
ffmpegでファイルサイズを制限する方法
60秒の長さのビデオを、ターゲットサイズまたは最大サイズ10 MBにエンコードしたいと考えています。 私が知っている2つのアプローチがあります。1つはFFMPEG-Wikiで説明され、もう1つはドキュメントで見つかりました。残念ながら、どの方法をいつ使用するかについての説明はありません。 これらの方法のいずれかが推奨されますか?そうでない場合、各メソッドの利点/欠点は何ですか? 1)ffmpeg-wikiで説明されているように、ビデオの長さに合わせてビットレートを計算および設定します (10 MB * 8192 [MBをキロビットに変換])/ 60秒=〜1365 kbits / s総ビットレート1365k-128k(必要なオーディオビットレート)= 1237kビデオビットレート ffmpeg -y -i input -c:v copy -preset medium -b:v 1237k -pass 1 -c:a copy -b:a 128k -f mp4 /dev/null && \ ffmpeg -i input -c:v libx264 -preset medium -b:v 1237k -pass 2 -c:a libfdk_aac -b:a …
10 ffmpeg 

1
TSからMP4にh.264ビデオをコピーすると、フレームレートと時間が変更されます
次のコマンドを使用してMP4に変換する大きなMPEG-TSファイルがあります。MP4とTSファイルの両方のビデオで同じ時間をシークすると、MP4はTSファイルの数フレーム遅れます。これは、私が探しているビデオに進むにつれて次第に悪化します。 c:\>ffmpeg -y -r 30 -i full-ts.ts -c:v copy -r 30 -an full.mp4 ffmpeg version N-69040-gb23a866 Copyright (c) 2000-2015 the FFmpeg developers built on Jan 12 2015 22:02:37 with gcc 4.9.2 (GCC) configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca -- enable-libfreetype --enable-libgme --enable-libgsm …
10 ffmpeg  mp4  h.264 

1
ffmpegによる「レベル調整」と同様の輝度改善
16ビットのtiff画像のセットからビデオを作成しています。写真は非常に暗く、明るくする必要があります。現在-vf "mp=eq2=1.0:1.0:0.3:1.0:1.0:1.0:1.0:1.0" 、ここで述べたように、写真を明るくするためにフィルターを適用していますが、「色あせ」てしまいます。 以前は画像エディターで「レベル調整」操作を使用してヒストグラムを再スケーリングして明るくしたが、今度は1つの画像ファイルではなくビデオを作成する必要がある。また、そのような操作を画像に適用する好ましい方法は、最初に異なる輝度属性を持っているため、各色バンドに個別に適用することです。 ffmpegで同様のことができますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.