スポンサード リンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« 録画がエラーするので・・・ | トップページ | QuickTime Playerもフリーズ »

問題の一つは解決

ここの所開発してきたTiExtender Ver1.3.0は、MacBook Pro 15インチ 2016モデルで、新規機能のカメラからの録画を行うと録画が不安定なので、調査を行ったり、対策を打ったりしているのだが、本質的な問題の一つは解決できた感じだ。

昨日書いた様に、MacBook Pro 15インチ 2016モデルに外付けWebカメラを接続して録画を行うと、数分後には、録画が失敗する現象が出ていたのだが、この問題に対する対策は打てたかもしれない。
 
少なくとも、対策後には、同じ現象は出なくなったのだが、それでは、どういう対策を打ったのか、というと、録画映像の各フレームをエンコーダーに渡す時に同時に渡しているタイムスタンプの内容を変えた。
 
具体的には、元々は、AVFoundationがカメラ撮影時にデータを渡してくる処理ルーチンが呼ばれた時点で、その時刻を計測してタイムスタンプにしていたのだが、新しい処理では、AVFoundationが渡してくるデータに含まれていたタイムスタンプを使う様にした。
 
これは何故なのか、というと、作者的には、上記の処理ルーチンは、カメラからのデータが取得されたタイミングで遅滞なく呼ばれていると思っていたのだが、実際には、結構な遅延があったりして、その結果として、30FPSでの撮影時にも、あるフレームの処理が遅延した場合等では、1mSecで二つのフレームが送られてくる事もあった訳だ。
 
多分、その結果として、AV Foundationのエンコーダーは、30FPSでの録画の筈なのに、ほぼ同一時間のタイムスタンプがあるデータが頻繁に送られてきたりして、可笑しくなってしまった、というのが、録画が失敗してしまった原因と推定される訳だ。 
 
と、言う事で、上記の問題については、タイムスタンプをデータに埋め込まれているモノに変更する事で解決できた感じなのだが、MacBook Proの内蔵カメラで発生する、たまに、カメラ映像が停止した状態で送られてきたり、音声が転送されなくなったりする現象の原因については不明だ。
 
なので、上記の現象が発生しているのは、OSをHigh Sierraのままにしてあるからかもしれないので、外付けHDDにMojaveをインストールし、そこから起動した環境でもテストしてみたのだが、この環境では、また別の現象が出ている。
 
具体的には、6時間半くらいの連続録画自体は成功しているのだが、その内容を見てみると、1,2時間に1回くらいの頻度で、音声転送は継続されつつ、映像転送が行われない期間が数分続いたりしている。
 
なので、出力された動画ファイルのフレームレートは、Webカメラのフレームレートである30FPSよりも少し少ない28FPS程度になってしまっているのだが、諸々の対処が効いているので、録画自体はエラー終了していないし、上記期間以外では音ズレ等の問題もない状況だ。
 
と、言う事なので、もうこれ以上は作者的にはどうしようもないかなあ、と、思ったりもしているのだが、もう一日だけ、様子を見てみる事にする。
 
ちなみに、最初、外付けHDDから起動しようとすると起動せず、Optionキーを押しながら起動して起動ドライブを自分で選択しようとしても、外付けHDDが表示されない現象が発生した。
 
上記の外付けHDDを使った別OSでの起動テストは、以前、行っていたので、変だなあ、と、思った作者としては、一般的な対処方法として、他の接続デバイスを取り去ってみたのだが、そうすると、HDDが認識される様になった。
 
具体的には、USBハブとイーサーネットが一体化されたデバイスを接続していたのだが、それを外すとHDDが認識された。
 
と、言う事で、ここの所の問題は、このUSBハブとの相性になるかもしれないので、このデバイスを外した状態で、再度、High Sierra上での録画テストを行ってみているのだが、1時間くらい経過した現時点で、問題は発生していない感じだ。
 
なので、High Sierra上での問題は、これが原因だったのかもしれないのだが、Mojave上でのテスト時には、USBハブは外してあったので、たまに映像が送られてこなくなる要因は別にある筈だ。
 
Mojave環境の問題は、インストール直後に録画を行ったので、スリープ設定なんかもデフォルトのままだった事から、録画終了時に見に行くと、画面のスリープなんかも勝手に行われていたので、こちらについては、スリープ設定の問題もあるのかもしれないのだが・・・

« 録画がエラーするので・・・ | トップページ | QuickTime Playerもフリーズ »

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/534482/67471718

この記事へのトラックバック一覧です: 問題の一つは解決:

« 録画がエラーするので・・・ | トップページ | QuickTime Playerもフリーズ »

2019年1月
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

広告

プライバシーポリシー

  • 当サイトでは、第三者配信による広告(Google Adsense)サービスを利用しています。

    Google を含む第三者配信事業者は、Cookie を使用して、ユーザーのウェブサイトでの閲覧履歴に基づく広告を配信します。 Google 広告 Cookie を使用することにより、Google や Google のパートナーは当サイトや他のサイトへのアクセス情報に基づく広告をユーザーに表示できます。

    収集された情報がGoogleによってどの様に使用されるか、収集される情報をユーザーが管理する方法については、以下のリンクを参照下さい。

    ポリシーと規約 - Google