問題タブ [avconv]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - コマンドがffmpegの終了を待つとbashスクリプトが失敗する
ubuntu 13.04 では、特定のイベントに対して起動する node.js サーバーがあり、次のようなスクリプトです。
avconv (ffmpeg) が小さなファイル (30 分未満のエンコード) を処理する場合、スクリプトは正常に動作しますが、avconv が数時間実行される場合、次のコマンド「...youtube-uploader...」(これは Python ベースのアプリケーション) は動作しません (ただし、手動で起動しようとするとうまくいきます)。
また、変数「$y_uid」が空かどうかを確認するループ内で次のコマンドを起動しようとしたため、正しい値が見つかるまで youtube-uploader を繰り返しますが、引き続きバックグラウンドに留まり、永遠に試してみてください..(コマンドを手動で起動しようとすると、うまく動作するので奇妙です..)。
要約すると、avconv を何時間も実行すると、avconv プロセスは、認識されていない、またはロックされていないファイル、または同じスクリプトのゴースト ファイルを生成します (ただし、コマンドがスクリプトの外部で起動された場合は認識されます)。小さなエンコーディング、それはうまくいきます。
残念ながら、デバッグやテストが困難です。毎回何時間も待つ必要があるため、助けてください!
アップデート
この問題は、node.js のバッファー サイズまたは ffmpeg の標準出力を格納する他のバッファーに関連していると思います。ただ正しい
の
したがって、すべてのffmpeg出力がバッファメモリをいっぱいにすることはなく、すべてがうまくいきます
bash - 時間単位でビデオをファイルに記録 (avconv/ffmpeg)
現在、avconv (ffmpeg) を使用して、IP カメラからディスクにビデオを記録しています。
ただし、フォローする必要があり、bash スクリプトまたは cron から正常に実行できませんでした。
- 1時間ごとに新しいファイルを作成し、それに応じて名前を付けます
- 複数のカメラをサポートする必要がある
- 1週間分の録音に制限する必要があり、その後は最も古いものが削除されます.
- 可能な限り、bash スクリプトや cron ジョブを使用してこれを管理したいと考えています。
ありがとうジョン
linux - avconv の負荷と速度を改善しますか?
avconv
95% 以上の割合でビデオを変換する場合、変換時間を短縮する方法はありますか?
node.js - NodeJs WebSockets を介して avconv から AudioContext を使用して Chrome にオーディオをストリーミングする
ブラウザで (Chrome を使用して) ストリーミング オーディオを再生する際に問題が発生しています。
一部のポートのudpでオーディオ(インターネットラジオなど)をストリーミングするプロセスがあります。avconv( avconv -y -i SOMEURL -f alaw udp://localhost:PORT
)です。このオーディオ ストリームを受信し、WebSocket 経由で接続された複数のクライアントに転送する NodeJs サーバーがあります。NodeJs が受信するオーディオ ストリームは、0 から 255 までの数値の配列であるバッファーにラップされます。データは問題なくブラウザーに送信され、AudioContext を使用してブラウザーでオーディオ ストリームを再生します (コードAudioStreamer に基づいています - https://github.com/agektmr/AudioStreamer )。
最初は、この時点で得られたのは静的なものだけでした。AudioStreamer コードを調べたところ、オーディオ ストリーム データは -1 から 1 の範囲である必要があることがわかりました。この知識をもとに、バッファ内の各値を次の式で変更してみましたx = (x/128) - 1
。何が起こるかを確認するためだけに行ったところ、驚くべきことに、雑音が少し軽減されました。音声が音声の場合は、歌や言葉のメロディーを聞き分けることさえできました。しかし、それでも非常に悪く、多くの静的であるため、これは明らかに解決策ではありませんが、ランダムなデータだけでなく、Websocket を介して実際にオーディオ ストリームを受信していることを示しています。
問題は、私たちが何を間違っているのかということです。使用すべきコーデック/フォーマットはありますか? もちろん、すべてのコード (avconv、NodeJ、およびクライアント側) は自由に変更できます。必要に応じて別のブラウザーを使用することもできますが、ここでは問題ではないと思います。私たちが知っている唯一のことは、WebSocket を介して機能するためにこれが本当に必要だということです。
avconv と NodeJs を実行している OS は Ubuntu (さまざまなバージョン 10-13) です。
何か案は?すべての助けをいただければ幸いです。
ありがとう!トーマス
avconv - avconv を使用して一定のビットレートを設定する際の問題
一定の出力ビットレートの設定に問題があります。試行するたびに、入力と同じビットレートが得られます (ファイルをダウンレートしたい)
入力として、VBR 10Mb の MPEG2/MPEG-A file.mpg があります 出力として、CBR 8Mb の MPEG2/MPEG-A file.ts が必要です
そこに何か問題がありますか?より良い出力品質を得るために、より良いパラメータを提案してもらえますか?