하단 광고


C# libVLC player takesnapshot by 설악이

vlc play 도중 특정 시점에서 이미지 캡쳐 하는 방법 

 string _rtspEndpoint = "rtsp://admin:password@192.168.1.108:554/channel=1&stream=0.sdp"; Core.Initialize(); LibVLC libVLC = new LibVLC();             libVLC.SetLogFile("c:\\temp\\vlc.log"); MediaPlayer player = new MediaPlayer(libVLC); player.Play(new Media(libVLC, _rtspEndpoint, FromType.FromLocation)); player.TakeSnapshot(0, "c:\\temp\\pic.jpeg", 0, 0);



                mediaPlayer.SetMedia(
                    new Uri("http://download.blender.org/peach/bigbuckbunny_movies/big_buck_bunny_480p_h264.mov"));


                TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>();

                var lastSnapshot = 0L;
                mediaPlayer.TimeChanged += (sender, e) =>
                {
                    // Maps the time to a 5-seconds interval to take a snapshot every 5 seconds
                    var snapshotInterval = e.NewTime / 5000;

                    // Take a snapshot every 5 seconds
                    if (snapshotInterval > lastSnapshot)
                    {
                        lastSnapshot = snapshotInterval;
                        ThreadPool.QueueUserWorkItem(_ =>
                        {
                            mediaPlayer.TakeSnapshot(0, Path.Combine(destinationFolder, $"{snapshotInterval}.png"), 1024, 0);
                        });
                    }
                };

덧글

댓글 입력 영역