1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

# LibVLCSharpでVLC(RTSP)と戦った時のメモ

Last updated at Posted at 2019-12-11

LibVLCSharpでVLC(RTSP)と戦った時のメモ

使ったのはここら辺

  • LibVLCSharp.Form 3.3.1
    • VideoLan.LibVLC.iOS 3.1.5.1
    • VideoLan.LibVLC.Android 3.2.0
  • Visual Studio 2017 15.9.17
    • Xamarin.Android SDK 9.1.7.0 (HEAD/ba9da7a76)
    • Xamarin.iOS and Xamarin.Mac SDK 12.4.0.64 (9c8d8e0)

libvlc

LibVLCSharp

  • スリープ時に再生停止が必要

    MediaPlayer 作り直しが良さげ
  • Media.Parse() iOS でよく固まる

    MediaPlayer に Media 渡して任す方がよい (事前にメディア情報取れんがな...)
  • MediaPlayer, Media (LibVLC も?) の IDisposable.Dispose() 呼ばずに GC 回収の方が安全

    リソース速攻破棄している副作用で例外?
  • Android でハードウェアアクセラレーションを有効化すると例外が起きる端末がある

    iOS は大丈夫
  • MediaPlayer.Stop() で固まる

    Xamarin.Android のバグ? https://code.videolan.org/videolan/LibVLCSharp/issues/123

    RTSPは仕様上長い
  • MediaPlayer.EndReached iOSで複数再生時に不適切なイベントが発生するAndroidでは起きない

    別のイベントにやってきているかファイルの扱いが微妙に違うかも
  • バッファが小さいと iOS で例外

    2000ms 以上必要?
  • MediaPlayer.IsMute を制御すると iOS で例外

    iOS の音声周り怪しい?

Media.Parse() MediaPlayer.Dispose() を呼んでいた時の出会いが混じっているので呼ばなければ幾分大丈夫なのかもしれない

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?