VLC dotnet VlcMediaPlayer快照

时间:2016-08-03 09:27:43

标签: c# .net video vlc snapshot

我正在使用C#开发包含4个快照Win软件的视频列表。 VLC dotnet声音可以很好地捕获不同的视频格式快照。

我想为每个视频拍摄4张快照。不幸的是, player.GetMedia()。Duration.TotalSeconds 总是-0.001,这意味着媒体尚未设置为播放器。

但是我使用 player.play()这是有效的,并提示新表单来播放我的视频。怎么会?

我从VS 2015 NuGet Package Manager中提取Vlc dotnet。在互联网上找不到参考,以便在这个平台上寻求帮助。希望有人帮我一把。

这是我的代码

            Vlc.DotNet.Core.VlcMediaPlayer player = new Vlc.DotNet.Core.VlcMediaPlayer(new System.IO.DirectoryInfo("C:\\Program Files (x86)\\VideoLAN\\VLC"));
            Vlc.DotNet.Core.VlcMedia media = player.SetMedia(new System.IO.FileInfo(videoFullPath));
            double len = player.GetMedia().Duration.TotalSeconds;
            interval = (int)(len * 0.95) / 4;
            int counter = 0;
            for (int i = 0; i < len; i = i + interval)
            {
                player.Position = i;
                counter++;
                player.TakeSnapshot(
                    new System.IO.FileInfo(
                        storagePath + "\\" + screenShotPrefix
                                 + System.IO.Path.GetFileNameWithoutExtension(fileName)
                                 + "\\screenshot_" + counter.ToString() + counter.ToString() + ".jpg"
                  ), 320, 240);
            }

0 个答案:

没有答案