問題タブ [seek]
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.
flash - Flv 再生プレイヘッドの更新間隔 (ミリ秒単位)、つまり非キーフレームへのシーク
ミリ秒の範囲で再生ヘッドの更新のイベントをキャッチするのに問題があります。これは、読み込まれた flv ムービーの FLV 再生に関するものです。ドキュメントによると、 seek() 関数はキーフレームをシークしますが、ミリ秒の精度で入力として時間がかかります。次のフレームと呼ばれる関数があり、ビデオを一時停止して、指定された playheadTime をシークしようとします
また、シークごとに更新されるのではなく、flv ビデオでキー フレームが発生したときにのみ更新されるシーク イベントもあります。
再生ヘッドの動きを追跡するための再生ヘッド更新イベントもありますが、これは次のフレーム機能を使用しても更新されません。ビデオが正常に再生されている場合にのみ機能します。
私の質問は
- ビデオが一時停止/停止され、時間までシークされたときに、再生ヘッドをミリ秒の精度で更新するにはどうすればよいですか。
- シークがキーフレームに対してのみ機能しているように見える場合、最初に再生ヘッドを更新するにはどうすればよいですか。非キーフレーム時間へのシークを取得するにはどうすればよいですか?
これに関する関連する議論ですが、解決策も提供していません
更新: netstream.seek() を使用しても、関数を連続して呼び出すたびに、video.playheadtime の変化は表示されません。これは、video.seek() と同じように機能します。
この種の割り当ても、再生ヘッドのプロパティを変更/更新する際には機能しません。
早送り/早戻しアクションを実現するにはどうすればよいですか?
c# - Windows Phone 7:MediaElementを探しています
私はMediaElement
forWindowsPhone 7を使用していますが、ユーザーがmp3ファイル内を検索できるようにする簡単なスライダーを作成したいと思います。しかし、私は自分が望む振る舞いを完全に得ることができません。少し前方を探すとうまくいきます。しかし、私がメディアの遠端を探そうとすると、それはもはや再生されず、沈黙しません。長距離を探すのを妨げているボンネットの下で発生しているある種のバッファリングはありますか?誰かがこの問題を克服したり、解決策を見つけたりしましたか?
私は情報を得るためにmsdnでこの投稿を参照していますが、私のURIはxapファイルに含まれているメディアから直接取得されており、ネットワークプロトコルを介して転送されていません。私もそのMediaElement.Position
物件を使って探しています。
sql-server - Index Seekによって返された結果の並べ替えを回避するには?
問題は、ビジネス ロジックで必要とされるソートを「回避する方法」ではなく、外出先ではなく、インデックスを使用して予備的に行う方法です。
私はクエリプランを持っています:
ご覧のとおり、Index Seek 操作は一連の行を返します。Query Optimizer は Key Lookup を実行して行全体を取得し (とにかく返す必要があるため)、DateAdded 列ですべての行を並べ替えます。これは明白で完全に有効な動作です。しかし、Index Seek によって返される行数 (最大 30k) を考慮すると、非常に低速です (最大 40 秒かかる場合があります)。
このクエリを高速化し、この移動中の並べ替えを回避するにはどうすればよいですか?
PS: クエリ対象のテーブルには約 300 万行あり、頻繁に更新されます。これによりページがロックされる可能性がありますが、それらのロックが 40 秒続くとは思えません。
クエリ:
sqlite - SQLiteは質問を求めます
次のコードを実行するためにSQLiteバージョン3を使用しています。
しかし、何らかの理由で、私が取得するデータの最初のバッチはすべて0です。上記のコードで何が正しく行われていないのですか?
perl - perl で wget を使用してダウンロードする
Perl は初めてなので、このコードに関連する次の質問について誰かが親切に説明してくれることを願っています:
- the second
-
in とは-O-
どういう意味ですか? |
とはどういう$url |
意味ですか?- 次のようにFHでシークを試みました:
しかし、位置を でエコーするとecho tell(FH)
、0 が返されます。なぜ FH を求められなかったのか、誰にもわかりませんか? ありがとう
c - パイプから読み取るときにポータブル C で前方にシークする方法
fseek()
パイプでは機能しないため、前方シークをシミュレートするためにどのような方法が存在しますか? 素朴なアプローチはfread()
、メモリ バッファに読み込まれた内容を使用して破棄することです。巨大なバッファを回避するための巨大なシークでは、バッファの一部だけを使用して、最終的な読み取りで同じバッファを何度も使用します。
しかし、これが唯一のアプローチですか?バッファと潜在的な複数読み取りを回避する別の方法はありますか?
c++ - バイナリ ファイルは C++ の最初の行のみを上書きします
そのため、作成して初期化するバイナリ ファイルがあります。ポインターをseekg = 0
またはに設定seekp = 0
すると、テキスト行をうまく上書きできます。ただし、26 バイト先にジャンプすると (ファイルの 1 行のサイズであり、確かに確認したことです)、上書きを拒否します。代わりに、バイナリ データの前にそれを追加し、古いデータをさらに行にプッシュします。データを完全に上書きしたい。
はCarHashFile
、create file が呼び出されたときに次の内容でいっぱいのバイナリ ファイルを作成する外部クラスです: "Free, "
1900
", Black, $"
0.00f
. 引用符で囲まれたものはすべて文字列として追加され、1900 は int として追加され、0.00f は明らかに float として追加されました。これらはすべて write で追加したので、実際のバイナリ ファイルであると確信しています。最初の行だけを上書きすることを選択する理由がわかりません。ファイルサイズが正しいことはわかっています。設定seekp = 26
すると、2行目の先頭に印刷されて押し下げられるからです。space
「、」コンボをファイルに簡単に追加するために作成されました。簡単にするためのchar dol[1] = '$'
配列とchar nl[1] = '\n'
、バイナリファイルに新しい行を追加できる もあります(そのバイナリ追加を削除しようとしたところ、すべてが 1 つの行に強制されたので、私の知る限り、それが必要です)。
編集:わかりました、それはずっと行を消去していました、それは新しい行を入れていませんでした(ちょっと恥ずかしい)。しかし、ファイルに改行を挿入する方法がわかりません。元のやり方で書いてみましたchar nl[1] = { '\n' }
。ファイルを最初に作成したときは機能しましたが、その後は機能しません。行を追加する他の方法はありますか? 私も試しin << endl
てみましたが、何も得られませんでした。
http - HTTP 経由で (ストリーム内で) シークするための標準はありますか?
現在、HTML5 ビデオ互換ブラウザーがAccept-Rangesヘッダーを使用してストリーム内をシークしていることは知っていますが、理想的なソリューションとはほど遠いものです。ブラウザは、これを効果的に行うためにファイルの完全なインデックス情報を必要とします。これは、断片化された mp4やチャンク化された mkv (または WebM) などのライブ ストリームに最適化された形式では不可能です。
HTTP の機能、または(バイトではなく)タイムスタンプで動作する拡張機能はありますか。
これらの初期の実装では、そのような標準がまだブラウザーでサポートされている可能性が低いことはわかっています。そのような基準や命題さえあれば、私はただ興味があります。
ios - 特定のタイムラインをシークした後の MPMoviePlayerController の空白のフレーム
MPMoviePlayerControllerを使用してビデオを再生する iPhone アプリケーションを開発しています。カスタム コントロールを使用してビデオを再生します。
ビデオのタイムラインを表示するスライダーがあります。このユーザーを使用すると、ムービーの任意のタイムラインにムービーをシークできます。
ユーザーがスライダーを連続的に動かした場合:
- 初めてビデオを一時停止します。
[MPMoviePlayerController-obj pause]
MPMoviePlayerController-obj.currentPlaybackTime = slider.value
スライダーのアクションが終了すると:
- ビデオを再生します。
[MPMoviePlayerController-obj play]
これにより、ユーザーがスライダーを離れた位置からムービーが再生されます。ただし、ムービーの再生が完了すると、空白のフレームにつながります。この欠陥はランダムに発生します。つまり、すべてのシーク時間ではありません。
空白のフレームを取得する理由は何ですか? これを解決するにはどうすればよいですか?
c++ - Qファイルシーク性能
通常のファイル (特別な Linux I/O デバイス ファイルではない) を操作する場合、QFileはランダム アクセスであると思われます。つまり、シーク操作は一定時間の複雑さ O(1) を持つことを意味します。
ただし、これを確認することはできませんでした。一般に、(書き込みまたは読み取りのために) ファイル内の特定の位置にジャンプするとき、一定時間の実行時間の複雑さstd::fstream
を提供しますか?QFile