問題タブ [darwin]
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.
javascript - HTML5またはJavaScriptでRTSPリクエストを作成する方法は?
「rtsp://localhost:554/sample_100kbit.mp4」をリクエストするには?(HTML5 または Javascript で) ソースが Darwin サーバーに存在するビデオ ストリーミング データにアクセスしたい
macos - Mac の system() 関数はマルチスレッドをサポートしていませんでしたか?
system()
Macで関数ごとに異なるサーバーに ping を実行するためのスレッドをいくつか作成しようとしています。コードは次のようになります。
しかし、サーバーが利用できない場合、最後のスレッドは、このサーバーに ping を実行するのに 3 秒以上かかる必要があることがわかりました。また、このサーバーが利用可能であっても同様です。system()
したがって、関数はマルチスレッドをサポートしていないと思います。内部にロッカーがあるようで、同時に別のスレッドで呼び出しても、1つずつしかジョブを実行できません。
それが正しいか?
kernel - カーネルを別のアーキテクチャに移植しますか?
xnu
Qemu内で完全なカーネルを実行できるようにするという最終的な目標を持って、カーネルをARMアーキテクチャに移植したいと思います。これは非常に難しい作業だとは思いますが、それでもやってみたいと思います。
私の知る限り、カーネルのエントリポイント(osfmk/arm/start.s
)を記述して、一般的な初期化(MMUおよびPlatformExpert)を実行した後、Kext / IOKitサブシステムを起動し、CPU固有の拡張機能(トラップ、 GPIO、クロック)バイナリに事前リンクされているか、ブートローダーによってロードされます(NAND拡張機能がまだ利用できないため、カーネルがファイルシステムと対話できないため)。
ARM CPUがどのように機能するかについての一般的な考えはありますが、ポートをどこから始めればよいかさえわかりません。これは、次のxnu
方法が完全にはわからないためです。
- 低レベルのデバッグを実行します(起動中の早い段階でカーネルデバッグ機能を使用できないため)。
- ARMブランチを残りのカーネルソースツリーと統合します(つまり、中のもの
osfmk/kern
が機能していることを確認します)。 - プラットフォームに依存しないカーネルを開始するための適切な環境を作成します(
machine_startup()
); - メインカーネルコード内のいくつかのプラットフォーム固有のコードを修正します(プラットフォームコードのほとんどはに制限されて
osfmk/platform_name
いますが、一部は他のコードに統合する必要がosfmk/kern
あります)。
Linuxガイドと同じように、 XNU(または少なくともMach )カーネルをさまざまなプラットフォームに移植するための適切なガイドはありますか?
macos - Mac OSX で gdb をコンパイルする際のエラー
Mac OSX で GDB 7.4 (gdb Web サイトにあるバージョン) をコンパイルしようとすると、次のエラーが表示されます。
mach-oc: 関数 'bfd_mach_o_header_p' 内: mach-oc2978: 警告: 'header.reserved' は、この関数で初期化されていない状態で使用される可能性があります
この問題の原因を突き止めようとしているときに、次の記事に出くわしました。
http://www.puredarwin.org/blockers
この問題の原因は、gdb の通常のバージョンが Darwin OS で動作しないことであると主張しています (./configure を実行すると、「システム タイプ」が i386-apple-darwin9.8.0 として表示されます)。これは正しいですか? もしそうなら、Mac OSX で動作する「Apple バージョン」はどこで入手できますか?
python - ctypes を使用して stdout ファイル記述子を確実に見つけるためのクロスプラットフォームの方法はありますか?
ctypes を使用して、 が指すファイルsys.stdout
が実際に stdout
であるかどうかを判断しようとするコードがあります。POSIX準拠のシステム、さらにはWindowsでも、これが真であると仮定しても安全であることを知っているsys.stdout.fileno() == 1
ので、私の質問は一般的にこれを行う方法ではありません。
私のコード(私の質問とは関係のないものにすでにctypesを使用しています)では、不注意に次のようなものがありました:
これは Linux では問題なく動作するので、あまり考えていませんでした。1
ファイル記述子としてハードコーディングするよりも見栄えがよく、読みやすくなりました。しかし、数日後、私のコードが OSX で動作していないことがわかりました。
OSX の libc は「stdout」と呼ばれるシンボルをエクスポートしていないことがわかりました。代わりに、その stdio.h には stdout が次のように定義されています。
コードを自分のコードに変更すると、c_void_p.in_dll(libc, '__stdoutp')
期待どおりに動作しますが、もちろんそれは OSX のみです。Windows にも同様の問題があることが判明しました (少なくとも MSVC を使用している場合)。
私はおそらく自分のコードを use に変更するだけですが、POSIX準拠の記述子を使用していると仮定せずにポインター1
を取得するクロスプラットフォームの方法がある場合、私の質問は好奇心から立っています(同様に and ) ?stdio
stdin
stderr
ios - iOS SDK の tcp.h で定義されていない TCP_KEEPINTVL および TCP_KEEPCNT
ソケットで tcp キープアライブ パケットを有効にしようとして、壁にぶつかりました。これは tcp.h の 201 行目で定義されています。
...しかし、TCP_KEEPINTVL と TCP_KEEPCNT はありません。また、それらについて言及しているマニュアル ページもまだ見つけていません。これらは別の場所で定義されており、別の名前が付けられている可能性がありますか? iOS では無効になっていますか?
linux - Rsyncの包含および除外オプションを使用して、ディレクトリとファイルをパターンごとに含める
構文を正しく理解するのに問題がrsync
あり、シナリオを実際にで処理できるかどうか疑問に思っていますrsync
。まず、rsync
ローカルホストとリモートホストの間で正常に機能していることを確認しました。ディレクトリで直接同期を実行すると成功します。
私のファイルシステムは次のようになります。
私がやりたいのは、サブディレクトリで「file_11_」で始まるファイルに対してのみrsyncを実行することです。また、サブディレクトリ内のこれらすべてのファイルを同期するために1つのrsyncジョブのみを実行できるようにしたいです。
これが私が試しているコマンドです:
rsync -nrv --include="**/file_11*.jpg" --exclude="*" /Storage/uploads/ /website/uploads/
これにより、ドライランで0
ファイルが転送対象としてマークされます。--include
とステートメントの他のさまざまな組み合わせを試しまし--exclude
たが、結果が得られないか、包含または除外オプションが設定されていないかのようにすべてが得られました。
誰かがこれを行う方法を知っていますか?
ffmpeg - Darwin Streaming Server の ffmpeg SDP ファイル
モバイル デバイスでウェブカメラのライブ ビデオ フィードを表示するストリーミング サーバーを作成しています。
私は ffmpeg 、 VLC 、 DSS の使用を検討し、次の設定を行いましたが、フレームはスキップされました:-
video4linux2 > ffserver > VLC トランスコーディング > DSS
(RAW から ffserver) > (SDP リンクへの出力) > (SDP ファイルへの SDP リンク) > (SDP ファイルからモバイルへのライブ ストリーミング)
後で VLC をテストしたところ、ネットブック (Intel Atom N480) では多くのフレームがスキップされるため、非常に非効率的で遅いことがわかりました。
DSS は、/usr/local/movies (デフォルト) から SDP ファイルをストリーミングできます。
同時に、ffmpeg の ffserver モジュールはライブ フィードを SDP リンク (SDP ファイルではない) にストリーミングできます。
私の要件は、ストリーミング用にこの DSS を渡すために、DSS の /usr/local/movies ディレクトリに SDP ファイルを作成する必要があることです。
したがって、ffmpeg から sdp ファイルを作成する方法、または SDP リンクから SDP ファイルを作成する方法 (VLC のトランスコーディングを使用せずに)。
どうやってするか ?
android - Android での RTSP 再生ビデオ (エンコード)
Darwin Serverがあり、サンプル ビデオ (Darwin のインストールから) が動作しています (Android Media Player で再生できます)。それらのエンコーディング (Android ログ経由) は
ただし、ビデオを(同じサーバーから)ストリーミングしようとすると、機能しません(ヒントとエンコードが行われます)。ここにログがあります:/
それを適切にエンコードする方法は?
数秒後、私は得る
これは(私は信じています)-エンコードエラーです。