問題タブ [jcodec]
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.
android - Android の Jcodec 0.1.9 に getFrame メソッドがありません
アプリケーションにJcodecを使用しています。
これをgradleに追加しました:
ただし、そのページの例に従おうとすると、Android Studio は getFrame() メソッドを解決できません。コードを見てみると、そのような方法はまったくありません。代わりに getNativeFrame があります。
しかし、私がスタックオーバーフローのほとんどのサンプルで見たものから、彼らは getFrame を使用しています。
何がうまくいかなかったのでしょうか?ここにコンポーネントがありませんか?グラドルの依存関係は間違っていますか? Android 用の Jcodec をどのようにセットアップしますか?
java - Java から Android へのビデオ ストリーミング
JCodec + webcam-capture ( https://github.com/sarxos/webcam-capture ) を使用しています。ウェブカメラから画像を取得し、(エンコード後に) 直接 Android に送信します。問題は、画像をエンコードするだけで送信すると、Android の VideoView でエラーが発生することです。SequenceEncoder (JCodec から) を使用し、送信時にメソッド .finish (ファイルを作成しています) を使用すると、VideoView はうまく機能します。どうすれば解決できますか?私が試した別の解決策は、たくさんの小さなファイルを作成して Android に送信することです。動作しますが、遅すぎます。
java - Javaでフレーム数(mp4)を取得するには?
mp4 ファイルからのフレーム抽出に jcodec を使用し、画像から新しいビデオ ファイルを作成しています。
ただし、jcodec で総フレーム数を取得するのに苦労しています。(そして、jcodecのソースを調べましたが、見つかりません..)
jcodec はこれを提供しますか? または、他のライブラリを使用する必要がありますか?
android - JCODEC を使用した画像のビデオへのエンコードが機能しない
たとえば、出力を取得するために 1 つの画像のみをエンコードしています。以下は私がやったことです。機能していません。クラッシュもありません。
android - jcodec ライブラリを使用して、画像のリストから mp4 ファイルを生成します
JCodec ライブラリを使用して、ビットマップ イメージのリストを mp4 ファイルに変換しています。すべて正常に動作しますが、生成された mp4 ファイルは最初の画像を正しく再生し、残りの画像は正しくレンダリングされません。
ここに私のエンコーダーコードがあります
どこが間違っているのか教えてください
java - mp4 ファイルからの回転メタデータの抽出
ビデオからサムネイルを生成するには、私が書いているソフトウェアが必要です。iPhone ユーザーは、ポートレート モードでビデオを録画して、私に送信できます。そのようなビデオを VLC などのビデオ プレーヤーで開くと、すべて問題ありません。xuggler
問題は、またはのようなツールを使用してそのようなビデオから静止フレームを生成しようとすると、jCodec
回転メタデータを無視するように見えることです。私はいくつかのチェックを行い、cli ツールのようなmediainfo
、またはffmpeg
実際にそのメタ情報を読み取って表示することができます。Xuggler
そのような情報のように見えるものを探すために、Stream プロパティを反復処理しようとしましたが、運が悪かったのです。
そのようなタスクに jCodec、Xuggler、または Humble-video を使用する可能性はありますか? そうでない場合 - そのようなメタ情報の存在を報告できる別のライブラリはありますか?
java - プログラムで作成したビデオ (JCodec) がブラウザーで再生されません (ただし、VLC では再生されます)
HTML ファイルはダブルクリックで開きます。プレイヤー画面が真っ黒で、再生ボタンを押すとそのまま最後まで飛んでしまう。ただし、ビデオ プレーヤーのハンドルをドラッグすると、ビデオの一部のショットが画面に表示されます。
これは HTML ファイルです。
そして、これはビデオ生成 Java コードです:
java - 動画の特定の部分をストリーミングして動画ファイルをダウンロードする
オンライン リンクでブラウザにビデオが返され、それがストリーミングされます。私のブラウザーでは、視覚化するためにビデオ全体をダウンロードする必要はありません。特定の部分にスキップして、その部分を視覚化し、最後まで視聴を停止することもできます。
まったく同じリンクから、特定の時間から別の特定の時間までストリーミングを開始し、受信したすべてのフレームをビデオ ファイルに保存するにはどうすればよいですか?
取得したデータをデコードする必要があることはわかっています。また、動画ファイルのメタデータにアクセスする必要があることもわかっています。しかし、私は実際にそれに対処する方法がわかりません。
JCodec を試してみましたが、ファイルを開く代わりにインターネット ストリームを処理する方法が見つかりませんでした。ビデオの全長、解像度、FPS などのメタデータにアクセスしながら、オンライン ビデオの一部をフレームごとに適切にストリーミングするにはどうすればよいですか?
java - Robot を使用した Java スクリーン キャプチャと、Sockets を介した圧縮ビデオ (JCodec) のストリーミング
デスクトップ画面のビデオをソケット (WebSocket、クライアントがブラウザーを使用しているため) 経由で他のユーザーに送信する必要がある Java アプリ (デスクトップ - Windows & Mac) が必要です。
今のところ、私はなんとかできました:
- を使用してスクリーンショットを取得し
Robot.getImageWritersByFormatName
ます(それほど高速ではありませんが、私が知る限り、他のクロスプラットフォームソリューションはありません) - ソケット通信のセットアップに成功しました
java socket client -> screenshare/socket server -> client(browser)
- JPEG 圧縮画像を送信してからブラウザでレンダリングしようとしましたが、ローカル ネットワークでは許容できましたが、WAN については非常に低速です (3/4fps で、ストリームは既に 350kbps を超えています)。
- ビデオ圧縮(JPEGのような静止画像ではない)、キーフレーム、iframeなどが必要であることがわかりました.ビデオのエンコード/デコードの経験はあまりありません
- JCodecライブラリが見つかりました(Java用の純粋なコーデックを備えた非常に優れたライブラリ、素晴らしい仕事ですが、ドキュメントはありません)
- サンプル コードのおかげで、BufferedImage 画像のシーケンスを h264/mp4 にエンコードすることができましたが、ファイルに保存することしかできませんでした
FileChannelWrapper (両方とも SeekableByteChannel を実装)の代わりにByteBufferSeekableByteChannelを使用し、ByteBufferを使用してデータをメモリに格納できる場合、ループ内で呼び出してバイト配列をソケット経由で送信できますが、ゼロでいっぱいの配列を取得できます。channel.read(someOtherByteBuffer)
誰かがこれを機能させる方法を知っていますか? 他のアドバイスや、このアプリを作成する方法についての他のアイデアは大歓迎です。