ffmpegならこちらへ 5

■ このスレッドは過去ログ倉庫に格納されています
2020/08/13(木) 19:43:45.34ID:j48XP1pP0
公式サイト
http://ffmpeg.org/

エンコード、ストリーミング配信を高画質高音質で行えるffmpeg。
OSに拘らず対応コーデックが多い。
対応コーデックが多く、多彩なオプションを使用可能。
コマンドラインから使用することができる。
ffmpegならこちらへ 4
https://egg.5ch.net/test/read.cgi/software/1555776689/
2021/02/23(火) 09:14:05.59ID:rxRq49yr0
全く同じシーンが繰り返されても、これは何秒前と同じ、みたいな圧縮はせずに
律儀に毎回圧縮するからな
テキストの圧縮だったらそういうのは異様に縮むけど、動画はまだ無理
2021/02/23(火) 10:40:37.09ID:i9kqxH+I0
>>691
同期取れない訳無い
何の為にDTSとPTSがあると思うの
2021/02/24(水) 00:37:29.55ID:YAC9mWqf0
>>690
早送りや巻き戻しができなくなる。
キャッシュが不足して再生できなくなる場合もある。
2021/02/24(水) 08:43:38.18ID:onpqpzOz0
一部が動画で大半が静止画、みたいなソースに対応できない
馬鹿正直に同じIフレームを並べるしかない
2021/02/24(水) 10:49:22.08ID:zx+xeYzm0
自動では対応しにくいだけで手動なら対応できる
2021/02/24(水) 13:29:27.81ID:u1em0TfI0
>>694
それプレーヤー側の実装の問題でしょ?
映像と音声の多重化の設計的に、適切に実装されたプレーヤーでシークに不具合が生まれるとは思えない

そもそも一般的なフレームレート・サンプリングレートの動画でさえ、映像の標本数より音声の標本数の方が圧倒的に大きいんだから
低フレームレート指定で同期不具合出てたら普段の再生でも不具合出てるよ
2021/02/24(水) 13:43:04.74ID:yKtIxPWa0
映像のフレームをもとにシークしてるプレイヤーが大半だと思うが
0.1FPSの動画作って試してみてよ
2021/02/24(水) 14:07:08.57ID:u1em0TfI0
そうだね
よくある30fps/48kHzの動画でも動作は同じ
フレームレート小さくするとシークできないってのは(1フレームのみに調整するエッジケースを除いた全ての場合において)間違いでしょ
2021/02/24(水) 14:30:12.20ID:u1em0TfI0
シークできる箇所が間引かれるって事ならそうだけど
それ気にするならマクロブロック最大・動き予測無効とか指定しながらシーク欲しい頻度までの範囲でフレームレート下げるくらいになるか
2021/02/25(木) 02:14:04.90ID:nZLFh2I20
n4.3.2出てるやん!
気づかなかった
2021/02/26(金) 10:46:41.58ID:hxJ6s3Rl0
>>701
>>448の状態が公式でずっと続いて、やっと20日付で4.3.2の情報が出たからな…
2021/02/26(金) 11:35:01.31ID:tHW6ZZEh0
hevc_nvencは再配布ok?
2021/03/02(火) 23:23:37.69ID:lfod3uYC0
レトロゲーム動画の編集講座でavisynthでseparatefieldsというフィルタを使うと良いというのを知り
ffmpegで同じようなことが出来ないかと「ffmpeg separate fields」と検索してしまったばっかりにまともな検索結果が出なくて
目的のフィルタに辿り着くまでだいぶ遠回りしてしまった
同名のseparatefieldsフィルタがあるオチだった
2021/03/07(日) 10:12:12.57ID:g5bQX4Qt0
tsを保存すると program.txt が一緒に出来て、
いろいろ書いてあって便利なんだけど、わざわざ別に保存する程でもない
mkvに添付しておいて簡単に見られるといいんだけど、いい方法ある?
2021/03/07(日) 16:59:12.41ID:H/S+8JIC0
metadataの中にコメント欄としてフィールド無いっけ
2021/03/15(月) 10:40:53.63ID:YJDoiJJw0
tsから一部を切り出して保存する用にassの時間をずらすスクリプト作ったった
2021/03/15(月) 11:31:44.94ID:32Z70eY20
字幕付きの映像ソースがないわ
2021/03/17(水) 13:26:30.86ID:Vhk3sXaD0
DVDからエンコードする時、-i dvd.iso でいきなりできちゃうけど、
チャプター毎に飛べる用にしたい時はどうすればいい?
2021/03/17(水) 14:41:53.26ID:xyUtnJyv0
自分はmp4chapsでチャプターつけてる
テキストでチャプターリスト作ってコマンド実行するだけだから
やり方のURLはNGで貼れないからぐぐって
2021/03/17(水) 15:14:32.44ID:tctRAhNR0
DVDにも使えるの?
2021/03/17(水) 15:15:28.36ID:tctRAhNR0
すみません。DVDからmp4にした後か。
2021/03/17(水) 20:16:20.48ID:vPZnUvsi0
youtubeのライブ動画で、ライブの途中からでも最初から保存ってできますか?
youtube dlと合わせて使ってます。
2021/03/17(水) 21:03:54.90ID:Vhk3sXaD0
なんでここで聞くねん
という気もするけど、普通に諦めてるな
そんな大事なライブは開始前から保存開始
715名無しさん@お腹いっぱい。
垢版 |
2021/03/17(水) 23:06:35.08ID:NXJLIjCd0
ある動画ファイルが
15-235で撮影されたものか、0-255で撮影されたものか
FFmpegで確認することってできますか??
2021/03/19(金) 15:13:55.42ID:5ezSpLTr0
>>715
ヒストグラムを表示してみたらどう?
2021/03/20(土) 11:41:10.58ID:vzo7g7T40
Free MP4 to AVI Converterっていうフロントエンドソフトで
拡張子をavi以外にする方法を誰か知らないか?

エンコーダーのスレが全然無いから他に場所が無いんだ
2021/03/20(土) 12:02:39.01ID:qVUutZb10
まずコマンドプロンプトを開きます
2021/03/20(土) 12:18:29.78ID:u4jhbpPf0
rename
2021/03/20(土) 13:25:24.38ID:26eYuInT0
ソフトの名前とコンセプト全否定w
721名無しさん@お腹いっぱい。
垢版 |
2021/03/20(土) 14:14:33.27ID:xcwdLqGd0
>>716
ヒストグラムをとるって、スクリーンショットを撮って
画像ビューアでヒストグラム表示するという意味ですか?
この方法を試してみましたが、
フルであってもリミテッドであっても0-255の全領域に輝度情報が含まれているので
判別できませんでした。・・
2021/03/20(土) 15:12:00.10ID:Lu8LKhfp0
>>721
たしかffmpegのフィルターにヒストグラム表示するやつあったよ
ffmpeg ヒストグラム Histogram
あたりでググれば見つからない?
で実際ググってみたらそのものズバリ"histogram"というフィルターらしいですな

うちではaviutlのヒストグラム表示を便利に使ってる
他の動画編集ソフトでもありそうな気がするけど
どうなんだろう
723名無しさん@お腹いっぱい。
垢版 |
2021/03/20(土) 15:42:24.41ID:xcwdLqGd0
>>722
aviutlを使ってみましたが、
リミテッドであっても
0〜255の全領域が使われており判別できないようです
2021/03/20(土) 16:36:40.51ID:Lu8LKhfp0
>>723
たとえリミテッドでも0-255まで使われるんじゃないの?
このへんは映像作ったアプリによるんだろうけど
映像と一緒にヒストグラム表示して概ね16〜235に収まる分布ならリミテッド認定でいいんじゃないかな?
わかり易いのは白とか黒の映像を表示した時に輝度の最も大きな山が16と235あたりに出来るかどうか
2021/03/20(土) 18:15:31.29ID:kO1OWqnf0
レンジって、レンダラの段階で考慮されるものじゃないの?
ソースの段階で制限するってあんまり意味がないような
2021/03/20(土) 19:39:33.69ID:J5B3uad60
test
2021/03/20(土) 19:46:40.27ID:J5B3uad60
音声が原因で変換エラーになるようなのですが、何かオプションを追加しないとダメなのでしょうか?
-c:a copyだと正常に変換されるので、その後に-vcodec copyで音声だけ変換という方法はあると思いますが、
一発で変換したいです。
728名無しさん@お腹いっぱい。
垢版 |
2021/03/20(土) 19:47:39.90ID:J5B3uad60
こうなります。Windows10です。
ffmpeg -i test.mp4 -map 0:v:0 -map 0:a:0 -c:v hevc_qsv -load_plugin hevc_hw -preset 1 -profile:v main -global_quality 22 -c:a libfdk_aac -b:a 64k output.mp4

Too many packets buffered for output stream 0:0.577014:32:22.77 bitrate= -0.0kbits/s speed=N/A
Conversion failed!
2021/03/20(土) 19:53:05.47ID:16Q8Ukgs0
エラーメッセージで検索した?
このオプション追加すると直ることもあるらしい
-max_muxing_queue_size 9999
2021/03/20(土) 20:38:00.94ID:t96NzC2H0
どういう環境なんだ
2021/03/20(土) 20:44:48.23ID:26eYuInT0
5.1chオーディオを2chでエンコードしようとしてるとか
732名無しさん@お腹いっぱい。
垢版 |
2021/03/20(土) 22:38:51.39ID:xcwdLqGd0
>>725
レンダラ、ソースって何ですか??
2021/03/20(土) 23:46:41.03ID:QxnoNODQ0
>>729
そのオプションでいけました。ありがとうございました。

音声が6.38kb/sと表示されますが、実際は128kbs位のmkvファイルです。
真空波動研Lite 210101
720x480 0.00kb/s Progressive 59.94fps AVC/H.264 8Bit
AAC 48.00kHz 2.0ch(2/0 L+R) HE(LC) 6.38kb/s
2021/03/21(日) 07:18:29.38ID:odwTpwrI0
AACをAACに変換するくらいならcopyの方がいいのでは
2021/03/21(日) 11:37:56.41ID:i4nNGF3s0
せやな
2021/03/22(月) 09:18:30.39ID:0bNTXua40
>>734
batファイルでまとめて再エンコしているので。

元動画の音声はmp3だったり、AAC 320kbpsだったりと様々だけれども、
どうせ480pの糞画質なので、音声は最低レベルの64kbpsにしたい
2021/03/22(月) 09:47:57.56ID:0bNTXua40
AVC 10bit→HEVC 8bitに変換しようとすると、ffmpegがエラーを吐いて終了するのですが、
強引に変換するオプションとかあるのでしょうか?

現状、仕方なくHEVC 10bitに変換していますが、
10bitはAndroidメディアプレイヤーでシークが遅いので、あまり使いたくないです。
2021/03/22(月) 10:16:16.36ID:FQ1XuEDq0
うちのエンコードスクリプトは、再圧縮不要ならcopyにしてる
PCMだったり可逆圧縮だったらopus
2021/03/22(月) 20:48:18.63ID:0bNTXua40
>>738
凄い。どうやってやるんですか?
使ったことはないですが、ffprobeで判定?

それが出来るなら、元動画の解像度(480p, 720p等)+30/60fps+プログレ/インタレとかで、
コマンドを分岐させられるので、是非知りたいです。
2021/03/22(月) 21:07:08.21ID:FQ1XuEDq0
まさにそう
ffprobeの結果をいろいろ解析して、何をするか決める
字幕が付いててmp4では無理だったらmkvにしたり
5.1chの音声は要らないから削除したり
でも、唯一の音声トラックが5.1chなら仕方ないから2chに変換したり
2021/03/23(火) 18:27:30.12ID:/Aan+LcJ0
>>740
おぉ凄い。
とてもbatファイルで出来ると思えないのですが、cygwinとかでしょうか?
差し支えなければ、シェルスクリプトが欲しいです。分岐処理部分だけでも十分です。
2021/03/23(火) 18:40:37.31ID:L1Tf4EY10
batファイルでもffprobeの結果を変数に入れてif文で色々やるっていうのは出来るだろう
安定性から言うと他ので書いたほうがいいかもしれんけど
2021/03/23(火) 18:47:07.20ID:n7zXiTR60
-mapとか-cとか書かなくても動くんだけど、
ちゃんとやると結局全部書く、になるんだよな
2021/03/23(火) 20:55:24.82ID:+mNPSrL40
標準出力から取得するんだろうからbatでもpsでもwshでもできるでしょ
batならforかな、最悪でも一時ファイルとか
2021/03/23(火) 22:05:25.15ID:xYUQSP4u0
>>743
各オプションでデフォルト値が定まっているので、全部書く必要はないけど、
デフォルト値が変更されることがないわけではないので、
その場合、明示的にオプションを指定しておくというだけの話だな

例えば、aviやmp4コンテナに出力した場合、新旧ffmpegでデフォルトのコーデックが異なる
2021/03/25(木) 08:27:46.08ID:SPIQS8oY0
[aac_adtstoasc @ 000000c2d83d4300] PCE-based channel configuration without PCE as first syntax element is not implemented.
Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented.
[matroska @ 000000c2d71ff600] Error applying bitstream filters to an output packet for stream #1: Not yet implemented in FFmpeg, patches welcome
av_interleaved_write_frame(): Not yet implemented in FFmpeg, patches welcome

これはなんで出るの?
#1はただのaacをcopyしてるだけなのに
2021/03/25(木) 09:31:42.04ID:0sMqbwi30
チャンネル構成が途中で変わってるんじゃね?
2021/03/25(木) 12:03:19.99ID:DQGyvTBp0
>>747
正解っぽい
どうやらcopyでかつstream内容がチャンネル切り替わるものの場合、bitstream filterの適用についてチャンネル切り替わりを扱えない(想定してない)らしい

少なくともQSVEncCっていうソフトはそういう情報だった
https://rigaya34589.blog.fc2;.com/blog-entry-846.html
2021/03/25(木) 14:19:28.48ID:SPIQS8oY0
前もって判ればopusか何かで再エンコードするけど、どうやって検出するんだろう
2021/03/26(金) 10:19:11.66ID:NJs3cg0s0
ffmpegでm3u8のファイルをダウンロードして勝手に結合してくれるのすごく便利なんだけどサーバ側の不調でファイルが抜けた場合にログをチェックしないと分からないのが不便。
落としたファイル側を何らか検証してエラーを発見する方法ってあるのかな?
ちなみに中身はエロいmp4です。
2021/03/26(金) 10:34:06.41ID:/iazsppL0
そんなの勝手にリトライしてるんじゃないの?
2021/03/26(金) 13:42:00.22ID:3FeasGo70
ffmpeg -v error -i FILE -f null -
みたいな感じでファイルを検証するとか
2021/03/26(金) 19:28:15.54ID:NJs3cg0s0
>>752
こんなんあるんか。
ありがとう。
リトライの方は挙動がわからん。
全くしてないこともないかも知れんけど上限はあるだろうからそれを検知できるとありがたい。
2021/03/27(土) 01:59:06.34ID:9TOOGa9x0
youtube-dlにお任せした方が良さそうな予感
2021/03/27(土) 05:54:58.18ID:kDL7anZb0
あれも結合はffmpeg使ってるけど、ダウンロード部分は任せないということは、
何か自前でやった方がいい理由があるんだろう
2021/03/27(土) 19:09:36.92ID:K/wPaHbD0
rate指定だと糞画質になるので
hevc_qsv+Q値指定でエンコしていますが
出来上がりのrateを予測するために、冒頭数分をエンコしてrateを見る→Q値調整を繰り返しています。

面倒なので
ffmpegがランダムにサンプルした箇所をエンコしてrateを予測してくれるオプションって無いでしょうか?
2021/03/27(土) 21:04:02.52ID:kDL7anZb0
予測しなくても出来上がりから計算すればいいだけのような
2021/03/28(日) 02:24:28.45ID:0AHLhkon0
>>757
膨大なの数のファイルにそれはキツイ

出力ファイルをブツ切りにせずに
10分後から2分間+20分後から2分間+・・・
みたいなのを一発で出来れば、出力ファイルからrateの推測に役立てられるんだが
2021/03/28(日) 02:27:17.78ID:z7gI940m0
諦めてスクリプトを書こうな
2021/03/30(火) 21:30:10.23ID:JQl9i1Lp0
URL貼れないけど「MP4 コンテナに収納された H.264 ファイルの色情報に関する調査」
これChromeが色情報をコーデックのビットストリームから読むって記事。
MP4&H.264はわかったけどVP9がわからない。なぜならVP9はビットストリームにcolor_spaceしか持たないって仕様書に書いてあるから。
color_primariesとcolor_transferがどこから読んでいるのか。特にHDR。

ffprobe -i vp9.mkv -select_streams v:0 -show_entries frame=color_space,color_primaries,color_transfer
するとcolor_primariesとcolor_transferはMKVコンテナを読んでるようだけど
動画の途中でソースが変わって色情報の変えなければいけないときとか無いの?困らないの?PQ-HDRとかモニタの最大輝度とかもどうしてるの?
だれか知らないだろうか。
2021/03/31(水) 20:08:36.19ID:dYFfDoPz0
具体的な詳細は知らないけどモニタの物理的な最大輝度が一切関係無いのは分かる
2021/03/31(水) 21:43:16.42ID:/H4tjChh0
>>750の件で>>752の方法を試してみた。
抜ける時は抜けるらしい。
やはりm3u8をバラして汎用のダウンローダで落とすのが確実っぽい。
ただ相対パスで書かれてるからスクリプトでひと手間かける必要があるんだよな。
GitHub探したら何か良いものありそうだけど。
2021/03/31(水) 21:59:32.82ID:PD6nYS6y0
youtube-dlで失敗したことない
2021/03/31(水) 22:37:29.16ID:bzvxoMMf0
>>761
HDRの知識が無いのに書いた。すまん。
VP9がフレームごとにcolor_primaries,color_transferの情報をもてないのか知りたかった。
もし不可能なら困ることないか疑問に思ったし、困るってそもそもビットストリームに色情報を含ませるのは
どういう場面で使うのかも知りたかった。
2021/04/03(土) 17:06:49.40ID:Ey8WVX9+0
配信じゃないか?カラコレスレか次世代ビデオコーデックスレできいてくれ
2021/04/08(木) 09:56:42.84ID:yDdfbZBH0
>>702
トップも4.2から4.3のことがやっと載ったな…しかも去年の6月だって…
2021/04/09(金) 18:18:43.66ID:2vS51mBr0
4.4だと・・・
2021/04/09(金) 18:20:26.39ID:3hKB5MxH0
時々解除されるザ・ワールドをおまちください
2021/04/09(金) 18:33:05.88ID:XsEavvlu0
なるほど
2021/04/09(金) 18:57:15.56ID:GGOf4Myw0
マジで4.4来てるじゃん
よくわかんないけど
2021/04/09(金) 19:00:13.56ID:2vS51mBr0
ぱっとみAV1関係が多いな
2021/04/13(火) 06:05:14.74ID:FstpUVOY0
最近の趣味、fdk_aacを使えるffmpeg4.4をビルド。
2021/04/13(火) 08:34:05.55ID:7eAqsI9w0
aacは使わないのでどうでもいいけど、scale_nppを使いたい
2021/04/13(火) 10:34:57.99ID:zbblRVJs0
サイドバイサイドのVR動画って普通の動画と同じようにリサイズしても再生できるのかね。
2021/04/13(火) 10:44:15.26ID:7eAqsI9w0
VRだからって何も特殊なことはしてない
単に横長なだけの普通の動画
2021/04/14(水) 08:56:12.01ID:UQhL+HmV0
やっとfdk_aacがMPEG2AACに対応してくれたね
2021/04/14(水) 12:52:37.99ID:WVgr1ZUM0
7777777
2021/04/14(水) 14:24:54.57ID:HWr+tPlg0
778
2021/04/14(水) 19:07:50.41ID:ErfU2FKX0
abematvのLIVE配信をstreamlinkで落としたファイル
(所謂ch切り替えを含むTSファイル)って今ffmpegで無劣化(-c copy)編集出来るようになってる?
昔は結局無理って事になってた気がするんだけど
2021/04/15(木) 17:32:39.82ID:MuPiAzrp0
モバイル端末に動画を配信したいんだけどワンセグでも312kbps使うんだな
128kbpsなら快適に見れそうだが流石に無理かねー
2021/04/17(土) 03:49:23.79ID:nxSnTR/+0
128kbpsの頃はQVGA 15fpsくらいで見てたような気がするが
なにせbitWarp PDAとかの時代だから記憶が薄れてるわ
2021/04/18(日) 08:48:01.06ID:se/SfVz+0
5Gの時代に意味はないなあ。
J-フォンQVGA端末用にMPEG-4 SPで256kbpsでエンコしていた気がする。
最近のcodecなら128もいけるかもしれないが、まあ無意味。
普通にモバイルでもYouTubeやアマプラを観ているからね。
783名無しさん@お腹いっぱい。
垢版 |
2021/04/22(木) 18:21:21.80ID:nz0x7ghv0
mp4をconcatで結合していたのですが
Non-monotonous DTS in output stream 0:0; 〜〜〜
のようなエラーが出ました。出来上がった動画は後半が音声のみで映像は真っ暗でした。解決方法はありますか?
結合前に映像は同じコーデック、FPS、音声は同じサンプルレート、ビットレートに変換してみても変わりませんでした
よろしくおねがいします
2021/04/22(木) 20:35:50.91ID:nB9iwGOC0
まずはそのエロ動画をここに共有することから始めようじゃ無いか。
2021/04/24(土) 22:46:53.76ID:ZO3PrT/B0
ffmpegって映像のみ/音声のみダウンロードするコマンドってある?
ダウンロードした後に分離するしか無いのかな
2021/04/24(土) 23:16:49.42ID:LmwR+vrJ0
>>785
動画と音声が1つのファイルになってたら無理
-vnとか-anつければ片方だけを保存ということはできるけども
2021/04/24(土) 23:43:46.13ID:ZO3PrT/B0
>>786
ありがとう
mpdのダウンロードだから映像と音声は別々に来てるんだけど、片方ずつDLするっていうのは無理なのか
そのコマンドも使ってみたけど映像と音声両方DLした後にどっちか一方だけ出力する、みたいな処理になってるみたいで駄目だった
2021/04/24(土) 23:55:12.07ID:GMSLBUfz0
できるよ
2021/04/28(水) 20:42:07.71ID:V/jLvxmD0
音ズレなおすコマンドみたいのってないの?
一回音声分割して
音声をずらして結合するって感じ?
2021/04/28(水) 22:30:26.47ID:5k60rMQ30
>>787
mapを指定すれば、一つでもマルチでも、任意のストリームを保存できるよ。
2021/04/29(木) 01:36:33.02ID:cGrHBBpQ0
>>789
音ずれとかいう主観的なものを簡単に直すコマンドがあると思う?
そんな魔法みたいなのあったらYouTubeに売り込みたい
2021/04/29(木) 01:53:37.17ID:nt33Z93j0
>>791
ん?
主観的なの?
■ このスレッドは過去ログ倉庫に格納されています
16歳の水野カイトが封印の刀を見つけ、時間が裂けて黒い風と亡霊の侍が現れ、霊の時雨と契約して呪われた刀の継承者となる場面

ニューススポーツなんでも実況