LibVLCSharp issueshttps://code.videolan.org/videolan/LibVLCSharp/-/issues2024-03-04T10:25:06Zhttps://code.videolan.org/videolan/LibVLCSharp/-/issues/636Memory Leak when playing and stopping using video filters2024-03-04T10:25:06ZshoeingMemory Leak when playing and stopping using video filters### Summary
When using libvlc with video filters, memory consumption goes to the moon when toggling between play and pause.
### Minimal project and steps to reproduce
I made a small project to demonstrate this behavior.
[VlcMemoryTes...### Summary
When using libvlc with video filters, memory consumption goes to the moon when toggling between play and pause.
### Minimal project and steps to reproduce
I made a small project to demonstrate this behavior.
[VlcMemoryTest Project on GitHub](https://github.com/cactusjack66/VlcMemoryTest)
1. Start the programm and look at the memory consumption in the task manager. It should be around 250 MB.
2. Click Play and then Stop maybe 10 times. The memory consumption will stay at around 250 MB.
3. Go to the MainWindow.xaml.cs in the project and add a video filter by un-commenting line 24.
4. Rebuild the project and start the programm again. Memory consumption should be around 250 MB.
5. Click Play and then Stop maybe 10 times. Memory consumption will rise to 700 MB.
6. Do this ten times more and memory consumption will rise to 1200 MB.
### What is the current *bug* behavior?
Memory rises and is not lowered when clicking play and stop multiple times with active video filters.
### What is the expected *correct* behavior?
Memory does not rise when clicking play and stop multiple times with active video filters.
### Does it work on other plaforms? Does it work with the official VLC apps?
Not tested
### Relevant LibVLC logs and/or screenshots
![VlcMemoryTest1](/uploads/84b80b4265ab30a85362b9662937ecc5/VlcMemoryTest.png)
![VlcMemoryTest2](/uploads/c056dba403101cc1f32bec77dd9f1f3c/VlcMemoryTest2.png)
### Environment
<!-- Please complete the following information. -->
- OS: Windows 11 x64
- VideoLan.Libvlc.Windows version and architecture: 3.0.20
- LibVLCSharp.WPF version: 3.8.2https://code.videolan.org/videolan/LibVLCSharp/-/issues/635Build errors when targeting Windows SDK versions2024-03-04T10:10:35ZBarrett LewisBuild errors when targeting Windows SDK versions### Summary
Including LibVLCSharp in an x86/64 project with a **versioned** windows sdk `<TargetFramework>`, along with windows forms enabled, causes the following errors:
```
Error NETSDK1082 There was no runtime pack for Microsoft.Wi...### Summary
Including LibVLCSharp in an x86/64 project with a **versioned** windows sdk `<TargetFramework>`, along with windows forms enabled, causes the following errors:
```
Error NETSDK1082 There was no runtime pack for Microsoft.WindowsDesktop.App.WindowsForms available for the specified RuntimeIdentifier 'win10-arm-aot'.
Error NETSDK1082 There was no runtime pack for Microsoft.WindowsDesktop.App.WindowsForms available for the specified RuntimeIdentifier 'win10-arm'.
```
When ARM is not used or referenced in the project.
Specifically, I have found that there is a combination of 3 things, that when are the case together, lead to the errors:
1. LibVLCSharp (3.8.2, and some previous) is loaded in the project through Nuget
2. Target framework is _net6.0-windows10.0.19041.0_ (or _net6.0-windows10.0.17763_).
3. `<UseWindowsForms>true</UseWindowsForms>` in the csproj.
If (only) any two of the three is the case, the build succeeds:
- LibVLCSharp works with the desired target framework, until UseWindowsForms is added.
- LibVLCSharp works with UseWindowsForms on _net6.0-windows_, until it's changed to _net6.0-windows10.0.XYZ_.
- The desired target framework works with UseWindowsForms, until LibVLCSharp is added.
It seems that the LibVLCSharp package has some kind of msbuild target setup for this combination of factors that requires an arm runtime/workload installed
Adding `<RuntimeIdentifier>win-x64</RuntimeIdentifier>` does not resolve the issue.
I have tried multiple build environments with the same results.
I primarily work in windows/x86 and troubleshooting cross platform build configurations is not my forte, or I would try to dig deeper.
### Minimal project and steps to reproduce
Start with a blank project with arbitrary main() boilerplate.
- Add LibVLCSharp
- Enable windows forms
- Use a versioned windows SDK target framework
- Try to build.
Sample:
https://code.videolan.org/BarrettLewis/build-issue
NOTE: I started with a functional application using LibVLC (and company), encountered this error when switching target frameworks, and then stripped it down to 10 lines of csproj to repro the issue, that is why other packages like VideoLAN.LibVLC.Windows, LibVLC.Forms, etc, are not linked. This is the bare minimum to get the error.
Functionality can be toggled by (for example) removing the csproj line to enable windows forms. In my case I have to close VS, clear the `bin` and `obj` folders and restart vs. Then it will build until the missing piece of the unholy trinity is added back.
### What is the current *bug* behavior?
Build fails, complaining about missing ARM workload which is not being used.
### What is the expected *correct* behavior?
Build succeeds, does not require ARM workload to build x86/64
### Environment
<!-- Please complete the following information. -->
- OS: Windows
- Version 10 21H2
- Device: PC
- LibVLC version and architecture 3.0.20 (doesn't matter)
- LibVLCSharp version 3.8.2, x64 (desired)
- Visual Studio 2022 17.8.3
- MSBuild version 17.8.3https://code.videolan.org/videolan/LibVLCSharp/-/issues/634Balck Window appears when switching videos in Video View WPF2024-01-25T05:48:16ZParthibanBalck Window appears when switching videos in Video View WPFBlack window is visible on switching videos in WPF VideoView control. this issue is observed with LibVLCSharp.WPF 3.8.2
Steps to reproduce.
Play multiple videos on loop in same VideoView control one after another. Black window can be s...Black window is visible on switching videos in WPF VideoView control. this issue is observed with LibVLCSharp.WPF 3.8.2
Steps to reproduce.
Play multiple videos on loop in same VideoView control one after another. Black window can be seen at before after playing video when player switches from one video to another.
What is the expected *correct* behavior?
switching between videos should be smooth and no black window should be visible on any part of the screen.
Code
https://github.com/Parthiban-P/libvlcWpfTest/tree/main/LibVLCCharpWPF
* OS: Windows
* Version 10
* Device: Intel
* LibVLCSharp.WPF 3.8.2
* VideoLAN.LibVLC.Windows 3.0.10 x86https://code.videolan.org/videolan/LibVLCSharp/-/issues/633WPF The Mute call in a single MediaPlayer causes all MediaPlayer objects to b...2024-01-15T06:18:28ZliufuxinWPF The Mute call in a single MediaPlayer causes all MediaPlayer objects to be muted, in the latest version 3.0.20WPF The Mute call in a single MediaPlayer causes all MediaPlayer objects to be muted, in the latest version 3.0.20
LibVLCSharp.WPF 3.8.2
VideoLAN.LibVLC.Windows 3.0.20
I had this problem after the upgradeWPF The Mute call in a single MediaPlayer causes all MediaPlayer objects to be muted, in the latest version 3.0.20
LibVLCSharp.WPF 3.8.2
VideoLAN.LibVLC.Windows 3.0.20
I had this problem after the upgradehttps://code.videolan.org/videolan/LibVLCSharp/-/issues/632VideoLAN.LibVLC.Windows 3.0.19 (and 3.0.20) make Winui 3 crash2023-12-18T07:16:17ZJean-François LegrixVideoLAN.LibVLC.Windows 3.0.19 (and 3.0.20) make Winui 3 crash### Summary
Winui 3 Application crashes when using VideoLAN.LibVLC.Windows 3.0.19 or 3.0.20.
It works with 3.0.18.
### Minimal project and steps to reproduce
[VlcTester.zip](/uploads/07327e859d85afe53cddc1c461f36910/VlcTester.zip)
###...### Summary
Winui 3 Application crashes when using VideoLAN.LibVLC.Windows 3.0.19 or 3.0.20.
It works with 3.0.18.
### Minimal project and steps to reproduce
[VlcTester.zip](/uploads/07327e859d85afe53cddc1c461f36910/VlcTester.zip)
### What is the current *bug* behavior?
After instanciate a new new LibVlc and a new MediaPlayer, application crashes with an unhandled exception.
### What is the expected *correct* behavior?
Winui 3 App doesn't crash...
### Does it work on other plaforms? Does it work with the official VLC apps?
<!-- Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise. -->
### Relevant LibVLC logs and/or screenshots
From the events viewer :
Nom de l’application défaillante VlcTester.exe, version : 1.0.0.0, horodatage : 0x65310000
Nom du module défaillant : libvlccore.dll, version : 3.0.20.0, horodatage : 0xaae8aae0
Code d’exception : 0xc0000005
Décalage d’erreur : 0x0000000000097be2
ID du processus défaillant : 0x0x2D64
Heure de début de l’application défaillante : 0x0x1DA2D1D2AC1725B
Chemin d’accès de l’application défaillante : C:\Dev\Projets de test\VlcTester\VlcTester\bin\x64\Debug\net6.0-windows10.0.19041.0\win10-x64\AppX\VlcTester.exe
Chemin d’accès du module défaillant: C:\Dev\Projets de test\VlcTester\VlcTester\bin\x64\Debug\net6.0-windows10.0.19041.0\win10-x64\AppX\libvlc\win-x64\libvlccore.dll
ID de rapport : 14794be0-ce3a-4b07-93ee-d19431be4a97
Nom complet du package défaillant : 5bf17ba6-499d-4c65-b04f-5de0636d66dd_1.0.0.0_x64__4dctsdsr7ewvw
ID de l’application relative au package défaillant : App
Application: VlcTester.exe
CoreCLR Version: 6.0.2523.51912
.NET Version: 6.0.25
Description: The process was terminated due to an unhandled exception.
Exception Info: exception code c0000005, exception address 00007FFEB4A37BE2
From Visual Sutdio output :
Le programme '[17752] VlcTester.exe' s'est arrêté avec le code 3221225477 (0xc0000005) 'Access violation'.
### Environment
<!-- Please complete the following information. -->
- OS: Windows
- Version 11
- Device: PC
- LibVLC version and architecture 3.0.8, x64
- VideoLAN.LibVLC.Windows 3.0.19 and 3.0.20
### Possible fixes
<!-- If you can, link to the line of code that might be responsible for the problem -->https://code.videolan.org/videolan/LibVLCSharp/-/issues/631UWP VideoView has opaque subtitle background2023-12-13T09:44:31ZTung HuynhUWP VideoView has opaque subtitle background### Summary
LibVLCSharp v3.8.0+ renders subtitles with a semi-transparent background. This behavior is not there in v3.7.0.
### Minimal project and steps to reproduce
* Open any video file
* Select an embedded subtitle track using `Se...### Summary
LibVLCSharp v3.8.0+ renders subtitles with a semi-transparent background. This behavior is not there in v3.7.0.
### Minimal project and steps to reproduce
* Open any video file
* Select an embedded subtitle track using `SetSpu()` , or
* Add subtitle file (.srt or .ass) using `AddSlave(MediaSlaveType.Subtitle, uri, true)`
### What is the current _bug_ behavior?
Subtitle has a semi-transparent, white bounding box background
### What is the expected _correct_ behavior?
Subtitle with fully transparent background
### Does it work on other plaforms? Does it work with the official VLC apps?
Works on the official VLC app
Works on LibVLCSharp v3.7.0
### Relevant LibVLC logs and/or screenshots
![image.png](/uploads/8bc7e2f3cb23102b2f7362fe5a72e14f/image.png){width="447" height="75"}
![image.png](/uploads/2de1806001ca101e6d9fbc383609d6bf/image.png){width="465" height="214"}
### Environment
- OS: Win 11
- Version 22H2
- Device: PC
- LibVLC UWP v3.3.1
- LibVLCSharp v3.8.2
### Possible fixes
Change [AlphaMode in VideoViewBase](https://code.videolan.org/videolan/LibVLCSharp/-/blame/3.x/src/LibVLCSharp/Platforms/Windows/VideoViewBase.cs#L208) back to Unspecified.https://code.videolan.org/videolan/LibVLCSharp/-/issues/630Segmentation fault when using libVlc.Log2023-12-18T09:59:31ZSimon ŠanderSegmentation fault when using libVlc.Log<!---
Please read this!
Before opening a new issue, make sure to search for keywords in the issues
filtered by "bug" label and verify the issue you're about to submit isn't a duplicate.
If you are using LibVLCSharp commercially, please...<!---
Please read this!
Before opening a new issue, make sure to search for keywords in the issues
filtered by "bug" label and verify the issue you're about to submit isn't a duplicate.
If you are using LibVLCSharp commercially, please consider purchasing a Commercial License: https://videolabs.io/products/libvlcsharp
If this is a question please ask on StackOverflow: https://stackoverflow.com/questions/tagged/libvlcsharp.
Need professional support? Reach out at dotnet@videolabs.io for more info.
--->
### Summary
<!-- Summarize the bug encountered concisely -->
### Minimal project and steps to reproduce
<!-- How one can reproduce the issue - this is very important
https://github.com/sajmons/LibVLCSharp.Avalonia.Sample/tree/master
-->
### What is the current *bug* behavior?
<!-- What actually happens -->
Application crashes upon start with Segmentation fault message.
If you comment out line 12 https://github.com/sajmons/LibVLCSharp.Avalonia.Sample/blob/69b3536f21706d736068357c57273a8e4f04f31a/ViewModels/MainWindowViewModel.cs#L12
from code application starts without problem.
So I guess bug happens when this line is executed: _libVlc.Log += _libVlc_Log;
### What is the expected *correct* behavior?
<!-- What you should see instead -->
Application should start normally.
### Does it work on other plaforms? Does it work with the official VLC apps?
<!-- Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise. -->
This bug only occours on Raspberry PI OS Bullseye ARM64 Linux platform (Raspberry PI 4 B+ 4GB RAM).
On Windows 11 Pro 22H2 x64 (AMD Ryzen 7 3700X 8-Core Processor, 16GB RAM) it works.
### Relevant LibVLC logs and/or screenshots
<!-- Paste any relevant logs from your app and/or from LibVLC (`new LibVLC(enableDebugLogs: true)`).
Please use code blocks (```) to format console output, logs, and code as it's very hard to read otherwise. -->
![image](/uploads/ed84e5c47120fd4d4ceefe76ceb199bd/image.png)
![image](/uploads/af373d57c08f8881744680bf91e7defc/image.png)
```
simon@raspberrypi:~/Downloads/linux-arm64 $ ./LibVLCSharp.Avalonia.Sample
Xlib: sequence lost (0x1002d > 0x2f) in reply type 0x0!
Xlib: sequence lost (0x10032 > 0x34) in reply type 0x0!
Xlib: sequence lost (0x10050 > 0x52) in reply type 0x0!
Xlib: sequence lost (0x10055 > 0x57) in reply type 0x0!
revision `C
VLC media player - `C
`C
configured with ��a�
Segmentation fault
```
```
simon@raspberrypi:~/Downloads/linux-arm64 $ apt show libvlc-dev
Package: libvlc-dev
Version: 1:3.0.20-0+rpt1+deb11u1
Priority: optional
Section: libdevel
Source: vlc
Maintainer: Debian Multimedia Maintainers <debian-multimedia@lists.debian.org>
Installed-Size: 443 kB
Depends: libvlc5 (= 1:3.0.20-0+rpt1+deb11u1)
Homepage: https://www.videolan.org/vlc/
Download-Size: 170 kB
APT-Manual-Installed: yes
APT-Sources: http://archive.raspberrypi.org/debian bullseye/main arm64 Packages
Description: development files for libvlc
This package contains headers and a static library required to build
standalone applications that use VLC features.
.
VLC is the VideoLAN project's media player. It plays MPEG, MPEG-2, MPEG-4,
DivX, MOV, WMV, QuickTime, WebM, FLAC, MP3, Ogg/Vorbis files, DVDs, VCDs,
podcasts, and multimedia streams from various network sources.
```
### Environment
<!-- Please complete the following information. -->
- OS: Raspberry PI OS
- Version Bullseye ARM64 bit
- Device: Raspberry PI 4 B+
- LibVLC version and architecture: libvlc-dev 1:3.0.20-0+rpt1+deb11u1 arm64
- LibVLCSharp: LibVLCSharp.Avalonia 3.8.2https://code.videolan.org/videolan/LibVLCSharp/-/issues/629Crash when trying to get multiple thumbnails from video2023-12-12T06:02:03Zandy.eCrash when trying to get multiple thumbnails from video
### Summary
Multiple consecutive calls to media.GenerateThumbnailAsync results in crash.
### Minimal project and steps to reproduce
Run the unit test in the project.
https://github.com/andreas-eriksson/VideoRepro/
### What is the cu...
### Summary
Multiple consecutive calls to media.GenerateThumbnailAsync results in crash.
### Minimal project and steps to reproduce
Run the unit test in the project.
https://github.com/andreas-eriksson/VideoRepro/
### What is the current *bug* behavior?
The test is aborted as a crash occurs.
### What is the expected *correct* behavior?
It should work to generate multiple thumbnails from the same video.
### Relevant LibVLC logs and/or screenshots
```
The active test run was aborted. Reason: Test host process crashed : [000002e685358ca0] main libvlc debug: VLC media player - 4.0.0-dev Otto Chriek
[000002e685358ca0] main libvlc debug: Copyright © 1996-2023 the VideoLAN team
[000002e685358ca0] main libvlc debug: revision 4.0.0-dev-26405-gd6ffd5bc35
[000002e685358ca0] main libvlc debug: configured with /builds/videolan/vlc/extras/package/win32/../../../configure '--enable-update-check' '--enable-lua' '--enable-flac' '--enable-theora' '--enable-avcodec' '--enable-merge-ffmpeg' '--enable-libass' '--enable-schroedinger' '--enable-shout' '--enable-goom' '--enable-sse' '--enable-libcddb' '--enable-zvbi' '--disable-telx' '--enable-nls' '--host=x86_64-w64-mingw32' '--with-contrib=../contrib/x86_64-w64-mingw32' '' '--enable-live555' '--enable-dca' '--enable-dvdread' '--enable-debug' '--enable-qt' '--enable-skins2' '--enable-caca' 'build_alias=' 'host_alias=x86_64-w64-mingw32' 'target_alias=' 'CFLAGS= -D__MSVCRT_VERSION__=0x700 -D_WIN32_WINNT=0x0601 -DWINVER=0x0601 ' 'CPPFLAGS= -D__MSVCRT_VERSION__=0x700 -D_WIN32_WINNT=0x0601 -DWINVER=0x0601' 'CXXFLAGS= -D__MSVCRT_VERSION__=0x700 -D_WIN32_WINNT=0x0601 -DWINVER=0x0601 ' 'PKG_CONFIG=pkg-config' 'PKG_CONFIG_LIBDIR=/usr/x86_64-w64-mingw32/lib/pkgconfig:/usr/lib/x86_64-w64-mingw32/pkgconfig'
[000002e685358ca0] main libvlc debug: using performance counters as clock source
[000002e685358ca0] main libvlc debug: frequency: 10000000 Hz
[000002e685358ca0] main libvlc debug: searching plug-in modules
[000002e685358ca0] main libvlc debug: loading plugins cache file C:\Users\AndreasEriksson\source\repos\VideoRepro\Video.Test\bin\x64\Debug\net7.0\win-x64\libvlc\win-x64\plugins\plugins.dat
[000002e685358ca0] main libvlc warning: cannot read C:\Users\AndreasEriksson\source\repos\VideoRepro\Video.Test\bin\x64\Debug\net7.0\win-x64\libvlc\win-x64\plugins\plugins.dat: No such file or directory
[000002e685358ca0] main libvlc debug: recursively browsing `C:\Users\AndreasEriksson\source\repos\VideoRepro\Video.Test\bin\x64\Debug\net7.0\win-x64\libvlc\win-x64\plugins'
[000000ee5d33d840] main generic error: cannot load plug-in C:\Users\AndreasEriksson\source\repos\VideoRepro\Video.Test\bin\x64\Debug\net7.0\win-x64\libvlc\win-x64\plugins\video_output\libplacebo_vk_plugin.dll: The specified module could not be found. (error 126)
[000002e685358ca0] main libvlc debug: plug-ins loaded: 553 modules
[000000ee5d33db28] main generic debug: looking for logger module matching "any": 2 candidates
[000000ee5d33db28] main generic debug: using logger module "console"
[000000ee5d33db68] main generic debug: looking for tracer module matching "none": 0 candidates
[000000ee5d33db68] main generic debug: no tracer modules matched with name none
[000002e685358ca0] main libvlc debug: translation test: code is "C"
[000000ee5d33dae8] main generic debug: looking for keystore module matching "memory": 1 candidates
[000000ee5d33dae8] main generic debug: using keystore module "memory"
[000002e685358ca0] main libvlc debug: CPU has capabilities SSE2 SSE3 SSSE3 SSE4.1 FPU
[000002e682511e60] main input debug: Creating an input for thumbnailing 'ElephantsDream.mp4'
[h264 @ 000002e6832d4380] Reinit context to 1280x720, pix_fmt: yuv420p
[000000ee5d4bf378] main generic debug: looking for image encoder module matching "any": 4 candidates
[000000ee5d4bf378] main generic debug: using image encoder module "png"
[000000ee5d4bf378] main generic debug: looking for video converter module matching "any": 22 candidates
[000003271c4c3af0] swscale filter debug: 1280x720 (1280x738) chroma: I420 colorspace: BT709 -> 200x112 (200x112) chroma: RV24 colorspace: BT709 with scaling using Bicubic (good quality)
[000000ee5d4bf378] main generic debug: using video converter module "swscale"
[000003271c4c3af0] main filter debug: removing "video converter" module "swscale"
Assertion failed: prev, file /builds/videolan/vlc/extras/package/win32/../../../include/vlc_atomic.h, line 71
```
### Environment
- OS: Windows
- Version 11
- Device: CPU Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz
- LibVLC version and architecture VideoLAN.LibVLC.Windows 4.0.0-alpha-20231107
- LibVLCSharp version 4.0.0-alpha-20231108-7267
### Possible fixes
-https://code.videolan.org/videolan/LibVLCSharp/-/issues/628When playing short audio (a few seconds), the playback is incomplete.2023-10-27T06:08:34ZQ BigWhen playing short audio (a few seconds), the playback is incomplete.### Summary
When I play short audio (a few seconds) using LibVLCSharp in a C# WPF project, the playback is incomplete. It will automatically stop before the full playback ends. But if you set the cache parameter to 0, it will work fine.
...### Summary
When I play short audio (a few seconds) using LibVLCSharp in a C# WPF project, the playback is incomplete. It will automatically stop before the full playback ends. But if you set the cache parameter to 0, it will work fine.
### Minimal project and steps to reproduce
Run this test project: [LibvlcsharpTest](https://github.com/BigQ517/LibvlcsharpTest)
### What is the current *bug* behavior?
Audio playback stops early.
### What is the expected *correct* behavior?
Effectively enables full playback of media files, including local files and network streams, with caching enabled.
### Does it work on other plaforms? Does it work with the official VLC apps?
It works fine in the official VLC media player (3.0.19).
### Relevant LibVLC logs and/or screenshots
```
main Debug: VLC media player - 3.0.18 Vetinari
main Debug: Copyright ? 1996-2022 the VideoLAN team
main Debug: revision 3.0.18-0-ge9eceaed4d
main Debug: configured with /builds/videolan/vlc/extras/package/win32/../../../configure '--enable-update-check' '--enable-lua' '--enable-faad' '--enable-flac' '--enable-theora' '--enable-avcodec' '--enable-merge-ffmpeg' '--enable-dca' '--enable-mpc' '--enable-libass' '--enable-schroedinger' '--enable-realrtsp' '--enable-live555' '--enable-shout' '--enable-goom' '--enable-sse' '--enable-mmx' '--enable-libcddb' '--enable-zvbi' '--disable-telx' '--enable-nls' '--host=i686-w64-mingw32' '--with-contrib=../contrib/i686-w64-mingw32' '--with-breakpad=https://win.crashes.videolan.org' '--enable-qt' '--enable-skins2' '--enable-dvdread' '--enable-caca' 'host_alias=i686-w64-mingw32' 'CFLAGS= ' 'CXXFLAGS= ' 'PKG_CONFIG=pkg-config' 'PKG_CONFIG_LIBDIR=/usr/i686-w64-mingw32/lib/pkgconfig:/usr/lib/i686-w64-mingw32/pkgconfig'
main Debug: creating audio output
main Debug: looking for audio output module matching "any": 6 candidates
mmdevice Error: cannot initialize COM (error 0x80010106)
directsound Debug: found 4 devices
main Debug: using audio output module "directsound"
main Debug: keeping audio output
main Debug: Creating an input for 'demo.mp3'
main Debug: using timeshift granularity of 50 MiB
main Debug: using timeshift path: C:\Users\bigq5\AppData\Local\Temp
main Debug: creating demux: access='file' demux='any' location='/F:/VSTest/LibvlcsharpTest/VlcTest/bin/Debug/demo.mp3' file='F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\demo.mp3'
main Debug: `file:///F:/VSTest/LibvlcsharpTest/VlcTest/bin/Debug/demo.mp3' gives access `file' demux `any' path `/F:/VSTest/LibvlcsharpTest/VlcTest/bin/Debug/demo.mp3'
main Debug: looking for access_demux module matching "file": 15 candidates
main Debug: no access_demux modules matched
main Debug: creating access: file:///F:/VSTest/LibvlcsharpTest/VlcTest/bin/Debug/demo.mp3
main Debug: (path: F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\demo.mp3)
main Debug: looking for access module matching "file": 27 candidates
main Debug: using access module "filesystem"
main Debug: looking for stream_filter module matching "prefetch,cache_read": 24 candidates
cache_read Debug: Using stream method for AStream*
cache_read Debug: starting pre-buffering
cache_read Debug: received first data after 0 ms
cache_read Debug: pre-buffering done 1024 bytes in 0s - 1000000 KiB/s
main Debug: using stream_filter module "cache_read"
main Debug: looking for stream_filter module matching "any": 24 candidates
lua Debug: Trying Lua scripts in C:\Users\bigq5\AppData\Roaming\vlc\lua\playlist
lua Debug: Trying Lua scripts in F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist\anevia_streams.luac
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist\anevia_xml.luac
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist\appletrailers.luac
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist\bbc_co_uk.luac
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist\cue.luac
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist\dailymotion.luac
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist\jamendo.luac
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist\koreus.luac
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist\liveleak.luac
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist\newgrounds.luac
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist\rockbox_fm_presets.luac
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist\soundcloud.luac
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist\twitch.luac
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist\vimeo.luac
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist\vocaroo.luac
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\playlist\youtube.luac
main Debug: no stream_filter modules matched
main Debug: looking for stream_directory module matching "any": 1 candidates
main Debug: no stream_directory modules matched
main Debug: attachment of directory-extractor failed for file:///F:/VSTest/LibvlcsharpTest/VlcTest/bin/Debug/demo.mp3
main Debug: looking for stream_filter module matching "record": 24 candidates
main Debug: using stream_filter module "record"
main Debug: creating demux: access='file' demux='any' location='/F:/VSTest/LibvlcsharpTest/VlcTest/bin/Debug/demo.mp3' file='F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\demo.mp3'
main Debug: looking for demux module matching "any": 55 candidates
es Debug: detected format mpga
main Debug: looking for packetizer module matching "any": 25 candidates
main Debug: using packetizer module "mpegaudio"
mpegaudio Debug: MPGA channels:1 samplerate:24000 bitrate:160
main Debug: selecting program id=0
main Debug: using demux module "es"
main Debug: looking for a subtitle file in F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\
main Debug: looking for audio decoder module matching "any": 23 candidates
main Debug: using audio decoder module "mpg123"
mpg123 Debug: mpga->f32l, bits per sample: 32
main Debug: looking for meta reader module matching "any": 2 candidates
lua Debug: Trying Lua scripts in C:\Users\bigq5\AppData\Roaming\vlc\lua\meta\reader
lua Debug: Trying Lua scripts in F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\meta\reader
lua Debug: Trying Lua playlist script F:\VSTest\LibvlcsharpTest\VlcTest\bin\Debug\libvlc\win-x86\lua\meta\reader\filename.luac
main Debug: no meta reader modules matched
main Debug: `file:///F:/VSTest/LibvlcsharpTest/VlcTest/bin/Debug/demo.mp3' successfully opened
main Debug: Buffering 0%
main Debug: Buffering 2%
main Debug: Buffering 4%
main Debug: Buffering 7%
main Debug: Buffering 14%
main Debug: Buffering 16%
main Debug: Buffering 12%
main Debug: Buffering 9%
main Debug: Buffering 19%
main Debug: Buffering 21%
main Debug: reusing audio output
main Debug: Buffering 24%
directsound Debug: Opening DirectSound Audio Output
main Debug: Buffering 26%
main Debug: Buffering 28%
main Debug: Buffering 31%
main Debug: Buffering 33%
main Debug: Buffering 36%
main Debug: Buffering 38%
main Debug: Buffering 40%
main Debug: Buffering 43%
main Debug: Buffering 45%
main Debug: Buffering 48%
main Debug: Buffering 50%
main Debug: Buffering 52%
main Debug: Buffering 55%
main Debug: Buffering 57%
main Debug: Buffering 60%
main Debug: Buffering 62%
main Debug: Buffering 64%
main Debug: Buffering 67%
main Debug: Buffering 69%
main Debug: Buffering 72%
main Debug: Buffering 74%
main Debug: Buffering 76%
main Debug: Buffering 79%
main Debug: Buffering 81%
main Debug: Buffering 84%
main Debug: Buffering 86%
main Debug: Buffering 88%
main Debug: Buffering 91%
main Debug: Buffering 96%
main Debug: Buffering 93%
main Debug: Buffering 98%
main Debug: Stream buffering done (1008 ms in 10 ms)
directsound Debug: Windows speaker config: Quad and stream has 1 channels, using 1 channels
main Debug: output 'f32l' 24000 Hz Stereo frame=1 samples/8 bytes
main Debug: looking for audio volume module matching "any": 2 candidates
main Debug: using audio volume module "float_mixer"
main Debug: input 'f32l' 24000 Hz Mono frame=1 samples/4 bytes
scaletempo Debug: format: 24000 rate, 1 nch, 4 bps, fl32
main Debug: looking for audio filter module matching "scaletempo": 16 candidates
scaletempo Debug: params: 30 stride, 0.200 overlap, 14 search
scaletempo Debug: 1.000 scale, 720.000 stride_in, 720 stride_out, 576 standing, 144 overlap, 336 search, 1200 queue, fl32 mode
main Debug: using audio filter module "scaletempo"
main Debug: conversion: 'f32l'->'f32l' 24000 Hz->24000 Hz Mono->Mono
main Debug: conversion pipeline complete
main Debug: conversion: 'f32l'->'f32l' 24000 Hz->24000 Hz Mono->Stereo
main Debug: looking for audio converter module matching "any": 8 candidates
main Debug: using audio converter module "trivial"
main Debug: conversion pipeline complete
main Debug: looking for audio resampler module matching "any": 3 candidates
main Debug: using audio resampler module "samplerate"
main Debug: Decoder wait done in 49 ms
main Warning: playback too late (89791): up-sampling
main Debug: EOF reached
_mediaPlayer_EndReached
main Debug: removing module "mpg123"
线程 0x3984 已退出,返回值为 0 (0x0)。
main Debug: killing decoder fourcc `mpga'
main Debug: removing module "samplerate"
main Debug: removing module "scaletempo"
main Debug: removing module "trivial"
directsound Debug: closing audio device
main Debug: removing module "float_mixer"
main Debug: keeping audio output
main Debug: removing module "es"
main Debug: removing module "record"
main Debug: removing module "mpegaudio"
main Debug: removing module "cache_read"
main Debug: removing module "filesystem"
main Debug: Program doesn't contain anymore ES
_mediaPlayer_Stopped
线程 0x2e64 已退出,返回值为 0 (0x0)。
```
### Environment
- OS: Windows 10
- LibVLC version and architecture 3.0.18,x86
- LibVLCSharp version 3.8.1
### Possible fixes
For local files:
```
new LibVLC("--file-caching=0")
```
For network streams:
```
new LibVLC("--network-caching=0")
```
### Other
I'm not sure if this issue is a LibVLCSharp bug, or a LibVLC/VLC specific issue...https://code.videolan.org/videolan/LibVLCSharp/-/issues/627Support locks for background playback and action buttons - specifically media...2023-09-06T05:34:25ZAndreasSupport locks for background playback and action buttons - specifically media control buttons (play, pause, next, previous)### Problem to solve
To provide flawless playback and streaming, on some platforms it might be necessary to active some locks and hooks to prevent them from falling asleep or just disable playback by turning of wifi.
More details on thi...### Problem to solve
To provide flawless playback and streaming, on some platforms it might be necessary to active some locks and hooks to prevent them from falling asleep or just disable playback by turning of wifi.
More details on this on [a pretty outdated but still useful blog post](https://devblogs.microsoft.com/xamarin/background-audio-streaming-with-xamarin-android/) with [additional code examples for Xamarin](https://github.com/jamesmontemagno/AndroidStreamingAudio).
Most platforms also provide ways to control the playback of media with specific buttons or keys in *locked mode*. Some of them are:
- [Headphone remotes](https://audiocurious.com/ctia-vs-omtp-headphone-jack-standards/) (like Apple Earpods or 1MORE E1010)
- Keyboard Bindings
- Specific media keys (play, pause, etc.)
- Infrared remotes
- Bluetooth controls (double tap, etc.)
These are extra useful on mobile platforms, because you don't have to take out your mobile device to change volume or skip to the next track.
Currently, I did not see any possibility to hook into these background services and media events via libvlc sharp, on any platform.
### Intended users
I think it would be great for all users of LibVLCSharp, if there was a possibility to just activate support for these background playback and media keys in a sane default behaviour. As an extra goal it would be great to add support to change the default behaviour in a flexible way.
### Proposal
I think the most intuitive way to implement this is to take a look at the [XamarinMediaManager](https://github.com/Baseflow/XamarinMediaManager) Project, where everything is handled more or less automatically in the background with sane defaults.
Like stated in https://github.com/Baseflow/XamarinMediaManager/wiki/Initialize-and-setup#important
> This library will automatically request the following permissions: AccessWifiState, AccessNetworkState, Internet, ForegroundService and WakeLock. You do not need to add them to your AndroidManifest.
Code example:
```c#
public enum KeyInput {
PlayPause,
Next,
Previous
}
public class MediaPlayerService: IDisposable
{
private readonly MediaPlayer _mediaPlayer;
private readonly LibVLC _libVlc;
public MediaPlayerService(LibVLC libVlc, MediaPlayer mediaPlayer)
{
_libVlc = libVlc;
_mediaPlayer = mediaPlayer;
_mediaPlayer.EnableKeyInput = true; // maybe this existing property can be extended to support native
_mediaPlayer.KeyInputEmitted += OnKeyInputEmitted;
}
public void Play() => _mediaPlayer.Play();
public void Pause() => _mediaPlayer.Pause();
public void NextChapter() => _mediaPlayer.NextChapter();
public void PreviousChapter() => _mediaPlayer.PreviousChapter();
private void OnKeyInputEmit(object? sender, KeyInputEmittedEventArgs e)
{
// manually handle the input event
switch(e.Key) {
case KeyInput.PlayPause:
_mediaPlayer.IsPlaying ? Pause() : Play();
break;
case KeyInput.Next:
NextChapter();
break;
}
e.Handled = true; // optional: prevent further handling of these events
}
public void Dispose()
{
Pause();
_mediaPlayer.Dispose();
_libVlc.Dispose();
}
}
```
### Documentation
Since this feature is more an *under the hood* one, for the default behaviour it would no additional documentation.
However, since the feature could use *customized* hooks via `KeyInputEmmitted`, this eventhandler should be documented with at least one example like the one above.https://code.videolan.org/videolan/LibVLCSharp/-/issues/626Cannot access embedded album artwork on UWP2023-12-12T06:03:36ZJacksonCannot access embedded album artwork on UWP### Summary
On UWP, attempting to get the embedded album art returns a useless `attachment://` url instead of a URL/path to the image file.
### Minimal project and steps to reproduce
The basic steps are:
```cs
var media = new Media(l...### Summary
On UWP, attempting to get the embedded album art returns a useless `attachment://` url instead of a URL/path to the image file.
### Minimal project and steps to reproduce
The basic steps are:
```cs
var media = new Media(libvlc, file.Path, FromType.FromPath);
await media.Parse(MediaParseOptions.FetchLocal);
Debug.WriteLine("Artwork URL is: " + media.Meta(MetadataType.ArtworkURL));
```
I created a minimal project to reproduce this behavior here: [jl3053/libvlc-sharp-uwp-artwork](https://code.videolan.org/jl3053/libvlc-sharp-uwp-artwork).
### What is the current *bug* behavior?
`media.Meta(MetadataType.ArtworkURL)` returns `attachment://3` instead of the actual artwork file.
### What is the expected *correct* behavior?
I would expect `media.Meta(MetadataType.ArtworkURL)` to return the URL or path to the album artwork image. For a UWP app, I would expect either a `ms-appdata:///` URL or the full path (somewhere in `%LocalAppData%\Packages`).
### Does it work on other platforms? Does it work with the official VLC apps?
On the official VLC Win32 app, ArtworkURL provides the artwork image in a format like `%AppData%\vlc\art\artistalbum\<Artist name>\<Album name>\art.jpg`.
### Relevant LibVLC logs and/or screenshots
![Logs screenshot](/uploads/319db015bc1377a723c5cf3c7e9801b8/Untitled.png)
### Environment
- OS: Windows 11
- Version Version 22H2, Build 22621.1992
- Device: MSI MS-7C91
- LibVLC version and architecture: VideoLAN.LibVLC.UWP version 3.3.2 x64
- LibVLCSharp version: 3.7.0
### Possible fixes
My guess is that the cache directory LibVLC is trying to store the artwork in might not be getting set correctly for UWP apps.https://code.videolan.org/videolan/LibVLCSharp/-/issues/625Snapshot in 360-degree video2023-08-28T05:04:25Ztest firststepSnapshot in 360-degree videoWe have 360 degree video. When we take screenshot, it will contain all direction as I attached screenshot.
![Screenshot](/uploads/0d549c7fa2dfbeac73965fffab02c7f3/Screenshot.jpg)
is there any way to take screenshot of only currently vi...We have 360 degree video. When we take screenshot, it will contain all direction as I attached screenshot.
![Screenshot](/uploads/0d549c7fa2dfbeac73965fffab02c7f3/Screenshot.jpg)
is there any way to take screenshot of only currently visible direction from 360 degree video?
We are using this code:
m_player.TakeSnapshot(stream, snapshotTargetPath, 0, 0);
Your help means a lot to me, and I'm looking forward to your response. Thanks in advance for your assistancehttps://code.videolan.org/videolan/LibVLCSharp/-/issues/624calling .stop removes audio-outputs (.AudioOutputDeviceEnum.count=0)2023-07-05T11:17:02ZPetje1972calling .stop removes audio-outputs (.AudioOutputDeviceEnum.count=0)<!---
Please read this!
Before opening a new issue, make sure to search for keywords in the issues
filtered by "bug" label and verify the issue you're about to submit isn't a duplicate.
If you are using LibVLCSharp commercially, please...<!---
Please read this!
Before opening a new issue, make sure to search for keywords in the issues
filtered by "bug" label and verify the issue you're about to submit isn't a duplicate.
If you are using LibVLCSharp commercially, please consider purchasing a Commercial License: https://videolabs.io/solutions/libvlcsharp
If this is a question please ask on StackOverflow: https://stackoverflow.com/questions/tagged/libvlcsharp.
Need professional support? Reach out at dotnet@videolabs.io for more info.
--->
### Summary
When calling mediaplayer.stop, causes that mediaplayer.AudioOutputDeviceEnum will be cleared.
Also when the audio output was set to a specific soundcard, the audio output will be reset to default output.
### Minimal project and steps to reproduce
Create mediaplayer, get .AudioOutputDeviceEnum, call .stop, get .AudioOutputDeviceEnum
-->
### What is the current *bug* behavior?
mediaplayer.AudioOutputDeviceEnum is cleared/disposed
### What is the expected *correct* behavior?
mediaplayer.AudioOutputDeviceEnum will still be available after calling .stop
### Does it work on other plaforms? Does it work with the official VLC apps?
### Relevant LibVLC logs and/or screenshots
### Environment
<!-- Please complete the following information. -->
- OS: Windows 7 / Windows11
- Version
- Device: Windows desktop
- LibVLC version and architecture 3.0.18 x64
- LibVLCSharp version 3.7
### Possible fixes
<!-- If you can, link to the line of code that might be responsible for the problem -->https://code.videolan.org/videolan/LibVLCSharp/-/issues/623Setting volume for one mediaplayer, changes the volume of other mediaplayers2023-06-29T05:03:13ZPetje1972Setting volume for one mediaplayer, changes the volume of other mediaplayers<!---
Please read this!
Before opening a new issue, make sure to search for keywords in the issues
filtered by "bug" label and verify the issue you're about to submit isn't a duplicate.
If you are using LibVLCSharp commercially, please...<!---
Please read this!
Before opening a new issue, make sure to search for keywords in the issues
filtered by "bug" label and verify the issue you're about to submit isn't a duplicate.
If you are using LibVLCSharp commercially, please consider purchasing a Commercial License: https://videolabs.io/solutions/libvlcsharp
If this is a question please ask on StackOverflow: https://stackoverflow.com/questions/tagged/libvlcsharp.
Need professional support? Reach out at dotnet@videolabs.io for more info.
--->
### Summary
Trying to build a WPF application (DotNet 4.6.2) and creating playlist behaviour playing video files (mp4)
Depending on state when loading media into player, setting volume of another player also sets volume of this player
### Minimal project and steps to reproduce
Project : https://github.com/Petje1972/LibVLC-audio-test
Load files into left and right player, start left and right player.
Change volume for one of the 2 players by sliding the slider.
Volume of both players will change.
Depending on the state of one of the mediaplayers and giving stop command or volume command will result that both mediaplayers will respond on volume command on other mediaplayer
### What is the current *bug* behavior?
Sometimes the mediaplayer will respond on volume settings made to another mediaplayer.
When the control will get into this state, it's hard to reset the situation that setting volume for separate mediaplayers will only control it's "own" mediaplayer
### What is the expected *correct* behavior?
setting volume for one of the mediaplayers will not have any effect on other mediaplayers volume
### Does it work on other plaforms? Does it work with the official VLC apps?
<!-- Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise. -->
### Relevant LibVLC logs and/or screenshots
<!-- Paste any relevant logs from your app and/or from LibVLC (`new LibVLC(enableDebugLogs: true)`).
Please use code blocks (```) to format console output, logs, and code as it's very hard to read otherwise. -->
### Environment
<!-- Please complete the following information. -->
- OS: tested on Windows11 + Windows 7 (64bit)
- Version 3.7
- Device: Windows desktop and IOT
- LibVLC version and architecture 3.0.18 x64
- LibVLCSharp version 3.7
### Possible fixes
<!-- If you can, link to the line of code that might be responsible for the problem -->https://code.videolan.org/videolan/LibVLCSharp/-/issues/622Take snapshot doesnt work while recording and displaying from webcam2023-06-12T06:16:15ZJacek PlacekTake snapshot doesnt work while recording and displaying from webcam
### Summary
I m have to display webcam on screen, record this and allow user to take snapshots.
### Minimal project and steps to reproduce
```csharp
static void Main(string[] args)
{
Core.Init...
### Summary
I m have to display webcam on screen, record this and allow user to take snapshots.
### Minimal project and steps to reproduce
```csharp
static void Main(string[] args)
{
Core.Initialize();
LibVLC libvlc = new LibVLC(enableDebugLogs: true);
var player = new MediaPlayer(libvlc);
var webCamMedia = new Media(libvlc, "dshow://", FromType.FromLocation);
webCamMedia.AddOption(":dshow-vdev=Logitech StreamCam");
// webCamMedia.AddOption(":dshow-adev=Mikrofon (Logitech StreamCam)");
// webCamMedia.AddOption(":live-caching=300");
webCamMedia.AddOption($":sout=#duplicate{{dst=display,dst=\"transcode{{vcodec=h264}}:standard{{access=file,mux=mp4,dst=recording{DateTime.Now.Ticks}.mp4}}\"}}");
player.EnableHardwareDecoding = true;
player.Play(webCamMedia);
for (int i = 0; i < 10; i++)
{
Thread.Sleep(5000);
var res = player.TakeSnapshot(0, $"snapshot{DateTime.Now.Ticks}.png", 0, 0);
}
player.Stop();
}
```
### What is the current *bug* behavior?
takesnapshot return false
### What is the expected *correct* behavior?
there shold be taken snapshot
### Relevant LibVLC logs and/or screenshots
```
[0000019a2e019290] main libvlc debug: VLC media player - 3.0.18 Vetinari
[0000019a2e019290] main libvlc debug: Copyright © 1996-2022 the VideoLAN team
[0000019a2e019290] main libvlc debug: revision 3.0.18-0-ge9eceaed4d
[0000019a2e019290] main libvlc debug: configured with /builds/videolan/vlc/extras/package/win32/../../../configure '--enable-update-check' '--enable-lua' '--enable-faad' '--enable-flac' '--enable-theora' '--enable-avcodec' '--enable-merge-ffmpeg' '--enable-dca' '--enable-mpc' '--enable-libass' '--enable-schroedinger' '--enable-realrtsp' '--enable-live555' '--enable-shout' '--enable-goom' '--enable-sse' '--enable-mmx' '--enable-libcddb' '--enable-zvbi' '--disable-telx' '--enable-nls' '--host=x86_64-w64-mingw32' '--with-contrib=../contrib/x86_64-w64-mingw32' '--with-breakpad=https://win.crashes.videolan.org' '--enable-qt' '--enable-skins2' '--enable-dvdread' '--enable-caca' 'host_alias=x86_64-w64-mingw32' 'CFLAGS= ' 'CXXFLAGS= ' 'PKG_CONFIG=pkg-config' 'PKG_CONFIG_LIBDIR=/usr/x86_64-w64-mingw32/lib/pkgconfig:/usr/lib/x86_64-w64-mingw32/pkgconfig'
[0000019a2e019290] main libvlc debug: using multimedia timers as clock source
[0000019a2e019290] main libvlc debug: min period: 1 ms, max period: 1000000 ms
[0000019a2e019290] main libvlc debug: searching plug-in modules
[0000019a2e019290] main libvlc debug: loading plugins cache file C:\Users\jacek\source\repos\VLCSimpleWebCamViewer\ConsoleWebCamRecorder\bin\Debug\net7.0\libvlc\win-x64\plugins\plugins.dat
[0000019a2e019290] main libvlc warning: cannot read C:\Users\jacek\source\repos\VLCSimpleWebCamViewer\ConsoleWebCamRecorder\bin\Debug\net7.0\libvlc\win-x64\plugins\plugins.dat: No such file or directory
[0000019a2e019290] main libvlc debug: recursively browsing `C:\Users\jacek\source\repos\VLCSimpleWebCamViewer\ConsoleWebCamRecorder\bin\Debug\net7.0\libvlc\win-x64\plugins'
[0000019a2e019290] main libvlc debug: plug-ins loaded: 496 modules
[0000019a2e019510] main logger debug: looking for logger module matching "any": 2 candidates
[0000019a2e019510] main logger debug: using logger module "console"
[0000019a2e019290] main libvlc debug: translation test: code is "pl"
[0000019a029edfa0] main keystore debug: looking for keystore module matching "memory": 3 candidates
[0000019a029edfa0] main keystore debug: using keystore module "memory"
[0000019a2e019290] main libvlc debug: CPU has capabilities MMX MMXEXT SSE SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 FPU
[0000019a2e019630] main generic debug: creating audio output
[0000019a2e019800] main audio output debug: looking for audio output module matching "any": 6 candidates
[0000019a2e019800] mmdevice audio output debug: using default device
[0000019a2e019800] mmdevice audio output debug: display name changed: VLC media player (LibVLC 3.0.18)
[0000019a2e019800] mmdevice audio output debug: version 2 session control unavailable
[0000019a2e019800] mmdevice audio output debug: volume from -96.000000 dB to +0.000000 dB with 1.500000 dB increments
[0000019a2e019800] main audio output debug: using audio output module "mmdevice"
[0000019a2e019630] main generic debug: keeping audio output
[0000019a02e22710] main input debug: Creating an input for 'dshow://'
[0000019a02d7f5c0] main stream output debug: using sout chain=`duplicate{dst=display,dst="transcode{vcodec=h264}:standard{access=file,mux=mp4,dst=recording638217471313757873.mp4}"}'
[0000019a02d7f5c0] main stream output debug: stream=`duplicate'
[0000019a0238aa70] main stream out debug: looking for sout stream module matching "duplicate": 23 candidates
[0000019a0238aa70] duplicate stream out debug: creating 'duplicate'
[0000019a0238aa70] duplicate stream out debug: * adding `display'
[0000019a02d7f5c0] main stream output debug: stream=`display'
[0000019a02a40010] main stream out debug: looking for sout stream module matching "display": 23 candidates
[0000019a02a40010] main stream out debug: using sout stream module "display"
[0000019a0238aa70] duplicate stream out debug: * adding `transcode{vcodec=h264}:standard{access=file,mux=mp4,dst=recording638217471313757873.mp4}'
[0000019a02d7f5c0] main stream output debug: stream=`standard'
[0000019a02d7ef90] main stream out debug: looking for sout stream module matching "standard": 23 candidates
[0000019a02d7ef90] main stream out debug: set config option: sout-standard-access to file
[0000019a02d7ef90] main stream out debug: set config option: sout-standard-mux to mp4
[0000019a02d7ef90] main stream out debug: set config option: sout-standard-dst to recording638217471313757873.mp4
[0000019a02d7fa40] main access out debug: looking for sout access module matching "file": 11 candidates
[0000019a02d7fa40] file access out debug: file access output opened (recording638217471313757873.mp4)
[0000019a02d7fa40] main access out debug: using sout access module "file"
[0000019a029ef1f0] main mux debug: looking for sout mux module matching "mp4": 11 candidates
[0000019a029ef1f0] mp4 mux debug: Mp4 muxer opened
[0000019a029ef1f0] main mux debug: using sout mux module "mp4"
[0000019a02d7ef90] stream_out_standard stream out debug: using `file/mp4://recording638217471313757873.mp4'
[0000019a02d7ef90] main stream out debug: using sout stream module "stream_out_standard"
[0000019a02d7f5c0] main stream output debug: stream=`transcode'
[0000019a02d7f0c0] main stream out debug: looking for sout stream module matching "transcode": 23 candidates
[0000019a02d7f0c0] main stream out debug: set config option: sout-transcode-vcodec to h264
[0000019a02d7f0c0] stream_out_transcode stream out debug: Checking video codec mapping for h264 got h264
[0000019a02d7f0c0] stream_out_transcode stream out debug: codec video=h264 0x0 scaling: 0.000000 0kb/s
[0000019a02d7f0c0] main stream out debug: using sout stream module "stream_out_transcode"
[0000019a0238aa70] main stream out debug: using sout stream module "duplicate"
[0000019a02e22710] main input debug: using timeshift granularity of 50 MiB
[0000019a02e22710] main input debug: using timeshift path: C:\Users\jacek\AppData\Local\Temp
[0000019a02e22710] main input debug: `dshow://' gives access `dshow' demux `any' path `'
[0000019a02d7f6e0] main input source debug: creating demux: access='dshow' demux='any' location='' file='(null)'
[0000019a02d81490] main demux debug: looking for access_demux module matching "dshow": 15 candidates
[0000019a02d81490] dshow demux debug: dshow-vdev: Logitech StreamCam
[0000019a02d81490] dshow demux debug: dshow-adev:
[0000019a02d81490] dshow demux debug: found device: AVerMedia ExtremeCap UVC
[0000019a02d81490] dshow demux debug: found device: Decklink Video Capture
[0000019a02d81490] dshow demux debug: found device: Logitech StreamCam
[0000019a02d81490] dshow demux debug: asking for device: Logitech StreamCam
[0000019a02d81490] dshow demux debug: asked for Logitech StreamCam, binding to Logitech StreamCam
[0000019a02d81490] dshow demux debug: using device: Logitech StreamCam
[0000019a02d81490] dshow demux debug: EnumDeviceCaps: output pin: Capture
[0000019a02d81490] dshow demux debug: EnumDeviceCaps: input pin: Video Camera Terminal
[0000019a02d81490] dshow demux debug: EnumDeviceCaps: trying pin Capture
[0000019a02d81490] dshow demux debug: EnumDeviceCaps: input pin default format configured
[0000019a02d81490] dshow demux debug: EnumDeviceCaps: input pin accepts chroma: YUY2, width:2304, height:1296, fps:5.000000
[0000019a02d81490] dshow demux debug: CaptureFilter::JoinFilterGraph
[0000019a02d81490] dshow demux debug: connecting filters
[0000019a02d81490] dshow demux debug: CaptureFilter::EnumPins
[0000019a02d81490] dshow demux debug: CapturePin::QueryDirection
[0000019a02d81490] dshow demux debug: CapturePin::ConnectedTo [not connected]
[0000019a02d81490] dshow demux debug: CapturePin::QueryPinInfo
[0000019a02d81490] dshow demux debug: CaptureFilter::QueryFilterInfo
[0000019a02d81490] dshow demux debug: CapturePin::QueryPinInfo
[0000019a02d81490] dshow demux debug: CaptureFilter::EnumPins
[0000019a02d81490] dshow demux debug: CapturePin::QueryDirection
[0000019a02d81490] dshow demux debug: CapturePin::QueryDirection
[0000019a02d81490] dshow demux debug: CapturePin::QueryAccept [OK] (width=2304, height=1296, chroma=YUY2, fps=5.000000)
[0000019a02d81490] dshow demux debug: CapturePin::ReceiveConnection [OK]
[0000019a02d81490] dshow demux debug: CapturePin::NotifyAllocator
[0000019a02d81490] dshow demux debug: ConnectFilters: graph_builder2 available.
[0000019a02d81490] dshow demux warning: ConnectFilters: No crossBar routes found (incompatible pin types)
[0000019a02d81490] dshow demux debug: filters connected successfully !
[0000019a02d81490] dshow demux debug: MEDIATYPE_Video
[0000019a02d81490] dshow demux debug: selected video pin accepts format: YUY2
[0000019a02d81490] dshow demux debug: found device: Decklink Audio Capture
[0000019a02d81490] dshow demux debug: found device: Digital Audio Interface (AVerMedia ExtremeCap UAC)
[0000019a02d81490] dshow demux debug: found device: Line In (Blackmagic DeckLink Mini Recorder 4K Audio)
[0000019a02d81490] dshow demux debug: found device: Microphone (High Definition Audio Device)
[0000019a02d81490] dshow demux debug: found device: Microphone (Logitech StreamCam)
[0000019a02d81490] dshow demux debug: found device: Microphone (Steam Streaming Microphone)
[0000019a02d81490] dshow demux debug: asking for default device: Decklink Audio Capture
[0000019a02d81490] dshow demux debug: asked for Decklink Audio Capture, binding to Decklink Audio Capture
[0000019a02d81490] dshow demux debug: using device: Decklink Audio Capture
[0000019a02d81490] dshow demux debug: EnumDeviceCaps: output pin: Capture
[0000019a02d81490] dshow demux debug: EnumDeviceCaps: trying pin Capture
[0000019a02d81490] dshow demux debug: EnumDeviceCaps: input pin accepts format: araw, channels:2, samples/sec:48000 bits/sample:16
[0000019a02d81490] dshow demux debug: CaptureFilter::JoinFilterGraph
[0000019a02d81490] dshow demux debug: connecting filters
[0000019a02d81490] dshow demux debug: CaptureFilter::EnumPins
[0000019a02d81490] dshow demux debug: CapturePin::QueryDirection
[0000019a02d81490] dshow demux debug: CapturePin::ConnectedTo [not connected]
[0000019a02d81490] dshow demux debug: CapturePin::QueryPinInfo
[0000019a02d81490] dshow demux debug: CaptureFilter::QueryFilterInfo
[0000019a02d81490] dshow demux debug: CapturePin::QueryPinInfo
[0000019a02d81490] dshow demux debug: CaptureFilter::EnumPins
[0000019a02d81490] dshow demux debug: CapturePin::QueryDirection
[0000019a02d81490] dshow demux debug: CapturePin::QueryDirection
[0000019a02d81490] dshow demux debug: CapturePin::QueryAccept [OK] (channels=2, samples/sec=48000, bits/samples=16, format=araw)
[0000019a02d81490] dshow demux debug: CapturePin::ReceiveConnection [OK]
[0000019a02d81490] dshow demux debug: CapturePin::NotifyAllocator
[0000019a02d81490] dshow demux debug: filters connected successfully !
[0000019a02d81490] dshow demux debug: MEDIATYPE_Audio
[0000019a02d81490] dshow demux debug: selected audio pin accepts format: araw
[0000019a02d81490] dshow demux debug: Playing...
[0000019a02d81490] dshow demux debug: CapturePin::QueryPinInfo
[0000019a02d81490] dshow demux debug: CaptureFilter::EnumPins
[0000019a02d81490] dshow demux debug: CapturePin::QueryDirection
[0000019a02d81490] dshow demux debug: CaptureFilter::EnumPins
[0000019a02d81490] dshow demux debug: CapturePin::QueryDirection
[0000019a02d81490] dshow demux debug: CapturePin::QueryPinInfo
[0000019a02d81490] dshow demux debug: CaptureFilter::EnumPins
[0000019a02d81490] dshow demux debug: CapturePin::QueryDirection
[0000019a02d81490] dshow demux debug: CapturePin::QueryPinInfo
[0000019a02d81490] dshow demux debug: CaptureFilter::EnumPins
[0000019a02d81490] dshow demux debug: CapturePin::QueryDirection
[0000019a02d81490] dshow demux debug: CaptureFilter::EnumPins
[0000019a02d81490] dshow demux debug: CapturePin::QueryDirection
[0000019a02d81490] dshow demux debug: CapturePin::QueryPinInfo
[0000019a02d81490] dshow demux debug: CaptureFilter::EnumPins
[0000019a02d81490] dshow demux debug: CapturePin::QueryDirection
[0000019a02d81490] dshow demux debug: CaptureFilter::EnumPins
[0000019a02d81490] dshow demux debug: CapturePin::QueryDirection
[0000019a02d81490] dshow demux debug: CapturePin::ConnectedTo [OK]
[0000019a02d81490] dshow demux debug: CaptureFilter::EnumPins
[0000019a02d81490] dshow demux debug: CapturePin::QueryDirection
[0000019a02d81490] dshow demux debug: CapturePin::ConnectedTo [OK]
[0000019a02d81490] dshow demux debug: CaptureFilter::SetSyncSource
[0000019a02d81490] dshow demux debug: CaptureFilter::SetSyncSource
[0000019a02d81490] dshow demux debug: CaptureFilter::Pause
[0000019a02d81490] dshow demux debug: CaptureFilter::Pause
[0000019a02d81490] dshow demux debug: CaptureFilter::QueryFilterInfo
[0000019a02d81490] dshow demux debug: CaptureFilter::QueryFilterInfo
[0000019a02d81490] dshow demux debug: CaptureFilter::Run
[0000019a02d81490] dshow demux debug: CaptureFilter::Run
[0000019a02e22710] main input debug: selecting program id=0
[0000019a02d81490] main demux debug: using access_demux module "dshow"
[0000019a02e32030] main decoder debug: looking for packetizer module matching "any": 25 candidates
[0000019a02e32030] main decoder debug: using packetizer module "rawvideo"
[0000019a02e327f0] main decoder debug: looking for packetizer module matching "any": 25 candidates
[0000019a02e327f0] main decoder debug: using packetizer module "copy"
[0000019a02e22710] main input debug: starting in async mode
[0000019a02d7a0a0] main demux meta debug: looking for meta reader module matching "any": 2 candidates
[0000019a02d7a0a0] lua demux meta debug: Trying Lua scripts in C:\Users\jacek\AppData\Roaming\vlc\lua\meta\reader
[0000019a02d7a0a0] lua demux meta debug: Trying Lua scripts in C:\Users\jacek\source\repos\VLCSimpleWebCamViewer\ConsoleWebCamRecorder\bin\Debug\net7.0\libvlc\win-x64\lua\meta\reader
[0000019a02d7a0a0] lua demux meta debug: Trying Lua playlist script C:\Users\jacek\source\repos\VLCSimpleWebCamViewer\ConsoleWebCamRecorder\bin\Debug\net7.0\libvlc\win-x64\lua\meta\reader\filename.luac
[0000019a02d7a0a0] main demux meta debug: no meta reader modules matched
[0000019a02d81490] dshow demux debug: CapturePin::EndOfStream
[0000019a02e22710] main input debug: `dshow://' successfully opened
[0000019a02e22710] main input debug: Buffering 0%
[0000019a02e22710] main input debug: switching to sync mode
[0000019a02d7f5c0] main stream output debug: adding a new sout input for `YUY2` (sout_input: 0000019a02e2eaa0)
[0000019a0238aa70] duplicate stream out debug: duplicated a new stream codec=YUY2 (es=0 group=0)
[0000019a02e34fc0] main decoder debug: looking for video decoder module matching "any": 19 candidates
[0000019a02e34fc0] main decoder debug: using video decoder module "rawvideo"
[0000019a0238aa70] duplicate stream out debug: - added for output 0
[0000019a02d7f0c0] stream_out_transcode stream out debug: creating video transcoding from fcc=`YUY2' to fcc=`h264'
[0000019a02e35780] main generic debug: looking for video decoder module matching "any": 19 candidates
[0000019a02e35780] main generic debug: using video decoder module "rawvideo"
[0000019a02e35b10] main encoder debug: looking for encoder module matching "any": 24 candidates
[0000019a02e35b10] x264 encoder debug: version x264 0.155.X
[0000019a02e35b10] x264 encoder: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[0000019a02e35b10] x264 encoder: profile High, level 5.0
[0000019a02e35b10] main encoder debug: using encoder module "x264"
[0000019a02e35b10] main encoder debug: removing module "x264"
[0000019a02e35b10] x264 encoder debug: framecount still in libx264 buffer: 0
[0000019a0238aa70] duplicate stream out debug: - added for output 1
[0000019a02e22710] main input debug: Buffering 66%
[0000019a02e22710] main input debug: Stream buffering done (400 ms in 400 ms)
[0000019a02e327f0] main decoder error: buffer deadlock prevented
[0000019a02e22710] main input debug: Decoder wait done in 3 ms
[0000019a02d7f0c0] stream_out_transcode stream out debug: Checking if filter chain YUY2 -> I420 is possible
[0000019a0c92f8f0] main spu text debug: looking for text renderer module matching "any": 3 candidates
[0000019a0c92fea0] main filter debug: looking for video converter module matching "any": 24 candidates
[0000019a0c92f8f0] freetype spu text debug: Using DWrite backend
[0000019a0c92fea0] swscale filter debug: 2304x1296 (2304x1296) chroma: YUY2 -> 2304x1296 (2304x1296) chroma: I420 with scaling using Bicubic (good quality)
[0000019a0c92f8f0] freetype spu text debug: DWrite_GetFamily(): family name: Arial
[0000019a0c92fea0] main filter debug: using video converter module "swscale"
[0000019a0c92f8f0] freetype spu text debug: DWrite_ParseFamily(): using font at index 0 with weight 400 for bold: 0, italic: 0
[0000019a02d7f0c0] main stream out debug: Filter 'Swscale' (0000019a0c92fea0) appended to chain
[0000019a0c92f8f0] freetype spu text debug: DWrite_ParseFamily(): using font at index 1 with weight 700 for bold: 1, italic: 0
[0000019a0c92fea0] main filter debug: removing module "swscale"
[0000019a0c92f8f0] freetype spu text debug: DWrite_ParseFamily(): using font at index 2 with weight 400 for bold: 0, italic: 1
[0000019a02d7f0c0] main stream out debug: Filter 0000019a0c92fea0 removed from chain
[0000019a0c92f8f0] freetype spu text debug: DWrite_ParseFamily(): using font at index 3 with weight 700 for bold: 1, italic: 1
[0000019a02d7f0c0] stream_out_transcode stream out debug: Filter chain testing done, input chroma YUY2 seems to be possible for transcode
[0000019a0c92f8f0] main spu text debug: using text renderer module "freetype"
[0000019a02d7f0c0] stream_out_transcode stream out debug: source fps 5/1, destination 5/1
[0000019a03067e50] main scale debug: looking for video converter module matching "any": 24 candidates
[0000019a02d7f0c0] stream_out_transcode stream out debug: decoder aspect is 1.333333:1
[0000019a03067e50] swscale scale debug: 32x32 (32x32) chroma: YUVA -> 16x16 (16x16) chroma: RGBA with scaling using Bicubic (good quality)
[0000019a02d7f0c0] stream_out_transcode stream out debug: source pixel aspect is 0.750000:1
[0000019a03067e50] main scale debug: using video converter module "swscale"
[0000019a02d7f0c0] stream_out_transcode stream out debug: scaled pixel aspect is 0.750000:1
[0000019a03067b00] main scale debug: looking for video converter module matching "any": 24 candidates
[0000019a02d7f0c0] stream_out_transcode stream out debug: source 2304x1296, destination 2304x1296
[0000019a03067b00] yuvp scale debug: YUVP to YUVA converter
[0000019a02d7f0c0] stream_out_transcode stream out debug: encoder aspect is 6912:5184
[0000019a03067b00] main scale debug: using video converter module "yuvp"
[0000019a02d7f0c0] stream_out_transcode stream out debug: source chroma: YUY2, destination I420
[0000019a02e35e30] main video output debug: Deinterlacing available
[0000019a02e55b80] main filter debug: looking for video converter module matching "any": 24 candidates
[0000019a02e35e30] main video output debug: deinterlace -1, mode auto, is_needed 0
[0000019a02e55b80] swscale filter debug: 2304x1296 (2304x1296) chroma: YUY2 -> 2304x1296 (2304x1296) chroma: I420 with scaling using Bicubic (good quality)
[0000019a0c7fda70] main window debug: looking for vout window module matching "any": 3 candidates
[0000019a02e55b80] main filter debug: using video converter module "swscale"
[0000019a0c7fda70] main window debug: no vout window modules matched
[0000019a02d7f0c0] main stream out debug: Filter 'Swscale' (0000019a02e55b80) appended to chain
[0000019a02e35e30] main video output debug: Opening vout display wrapper
[0000019a02d7f0c0] stream_out_transcode stream out debug: destination (after video filters) 2304x1296
[0000019a0c7fdf30] main vout display debug: looking for vout display module matching "any": 12 candidates
[0000019a02e35b10] main encoder debug: looking for encoder module matching "any": 24 candidates
[0000019a0c7fdf30] direct3d11 vout display debug: creating Vout EventThread
[0000019a02e35b10] x264 encoder debug: version x264 0.155.X
[0000019a0c7fdf30] direct3d11 vout display debug: Win32VoutCreateWindow
[0000019a02e35b10] x264 encoder: using SAR=3/4
[0000019a02e35b10] x264 encoder: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[0000019a02e35b10] x264 encoder: profile High, level 5.0
[0000019a02e35b10] main encoder debug: using encoder module "x264"
[0000019a029ef1f0] main mux debug: adding a new input
[0000019a029ef1f0] mp4 mux debug: adding input
[0000019a0c7fdf30] direct3d11 vout display debug: inclinometer not found. (hr=0x80070490)
[0000019a0c7fdf30] direct3d11 vout display debug: created video sub-window
[0000019a0c7fdf30] direct3d11 vout display debug: Vout EventThread running
[0000019a0c7fdf30] direct3d11 vout display debug: Created the D3D11 device type 1 level b100.
[0000019a0c7fdf30] direct3d11 vout display debug: NVIDIA WDDM driver 31.0.15.2686
[0000019a0c7fdf30] direct3d11 vout display debug: supports colorspace RGB Rec.709 gamma:22 range:FULL
[0000019a0c7fdf30] direct3d11 vout display debug: supports colorspace RGB Rec.709 gamma:22 range:STUDIO
[0000019a0c7fdf30] direct3d11 vout display debug: supports colorspace RGB Rec.2020 gamma:22 range:STUDIO
[0000019a0c7fdf30] direct3d11 vout display debug: supports colorspace RGB Rec.2020 gamma:22 range:FULL
[0000019a0c7fdf30] direct3d11 vout display debug: supports colorspace RGB Rec.2020 gamma:2084 range:FULL
[0000019a0c7fdf30] direct3d11 vout display debug: supports colorspace RGB Rec.2020 gamma:2084 range:STUDIO
[0000019a0c7fdf30] direct3d11 vout display debug: Output max luminance: 400.0, colorspace RGB Rec.709 gamma:22 range:FULL, bits per pixel 8
[0000019a0c7fdf30] direct3d11 vout display debug: using colorspace RGB Rec.709 gamma:22 range:FULL
[0000019a0c7fdf30] direct3d11 vout display debug: Using pixel format YUY2 for chroma YUY2
[0000019a0c7fdf30] main vout display debug: VoutDisplayEvent 'resize' 2304x1428
[0000019a0c7fdf30] direct3d11 vout display debug: using GPU render fence
[0000019a0c7fdf30] direct3d11 vout display debug: Direct3D11 resources created
[0000019a0c7fdf30] direct3d11 vout display debug: Direct3D11 device adapter successfully initialized
[0000019a0c7fdf30] direct3d11 vout display debug: Direct3D11 Open Succeeded
[0000019a0c7fdf30] main vout display debug: using vout display module "direct3d11"
[0000019a0c7fdf30] direct3d11 vout display debug: D3D11 pool succeed with 1 surfaces (2304x1296) context 0x0000019a03bc7068
[0000019a02e35e30] main video output debug: original format sz 2304x1296, of (0,0), vsz 2304x1296, 4cc YUY2, sar 3:4, msk r0x0 g0x0 b0x0
[0000019a0c7fdf30] main vout display debug: VoutDisplayEvent 'window state' 0
[0000019a0c7fdf30] main vout display debug: VoutDisplayEvent 'window state' 0
[0000019a0c7fdf30] main vout display debug: VoutDisplayEvent 'resize' 2304x1728
[0000019a02e35e30] main video output warning: picture is too late to be displayed (missing 326 ms)
[0000019a02e35e30] main video output warning: picture is too late to be displayed (missing 130 ms)
[0000019a0c7fdf30] main vout display debug: VoutDisplayEvent 'resize' 2560x1417
[0000019a0c7fdf30] direct3d11 vout display debug: Detected size change 1889x1417
[0000019a0c7fdf30] main vout display debug: auto hiding mouse cursor
[0000019a0c7fdf30] main vout display debug: VoutDisplayEvent 'resize' 0x0
[0000019a0c7fdf30] direct3d11 vout display debug: Detected size change 0x0
[0000019a0c7fdf30] direct3d11 vout display error: Could not create the depth stencil texture. (hr=0x80070057)
[0000019a02e32030] main decoder debug: killing decoder fourcc `YUY2'
[0000019a02e32030] main decoder debug: removing module "rawvideo"
[0000019a02d7f5c0] main stream output debug: removing a sout input (sout_input: 0000019a02e2eaa0)
[0000019a02e34fc0] main decoder debug: killing decoder fourcc `YUY2'
[0000019a02e34fc0] main decoder debug: removing module "rawvideo"
[0000019a02a40010] main stream out debug: saving a free vout
[0000019a02a40010] main stream out debug: reusing provided vout
[0000019a02e35780] main generic debug: removing module "rawvideo"
[0000019a02e35b10] main encoder debug: removing module "x264"
[0000019a02e35b10] x264 encoder debug: framecount still in libx264 buffer: 67
[0000019a02e55b80] main filter debug: removing module "swscale"
[0000019a02d7f0c0] main stream out debug: Filter 0000019a02e55b80 removed from chain
[0000019a029ef1f0] mp4 mux debug: tk 1 elst media time 0 duration 0 offset 0
[0000019a029ef1f0] mp4 mux debug: removing input
[0000019a029ef1f0] main mux warning: no more input streams for this mux
[0000019a02e327f0] main decoder debug: killing decoder fourcc `s16l'
[0000019a02e327f0] main decoder debug: removing module "copy"
[0000019a02d81490] main demux debug: removing module "dshow"
[0000019a02d81490] dshow demux debug: CaptureFilter::Pause
[0000019a02d81490] dshow demux debug: CaptureFilter::Pause
[0000019a02d81490] dshow demux debug: CaptureFilter::Stop
[0000019a02d81490] dshow demux debug: CapturePin::EndFlush
[0000019a02d81490] dshow demux debug: CaptureFilter::Stop
[0000019a02d81490] dshow demux debug: CapturePin::EndFlush
[0000019a02d81490] dshow demux debug: releasing DirectShow
[0000019a02d81490] dshow demux debug: DeleteDirectShowGraph: Removing filters
[0000019a02d81490] dshow demux debug: DeleteDirectShowGraph: Removing capture filter
[0000019a02d81490] dshow demux debug: CaptureFilter::EnumPins
[0000019a02d81490] dshow demux debug: CapturePin::QueryDirection
[0000019a02d81490] dshow demux debug: CapturePin::ConnectedTo [OK]
[0000019a02d81490] dshow demux debug: CapturePin::Disconnect [OK]
[0000019a02d81490] dshow demux debug: CaptureFilter::SetSyncSource
[0000019a02d81490] dshow demux debug: CaptureFilter::JoinFilterGraph
[0000019a02d81490] dshow demux debug: CaptureFilter::GetState 0
[0000019a02d81490] dshow demux debug: CaptureFilter::~CaptureFilter
[0000019a02d81490] dshow demux debug: CapturePin::~CapturePin
[0000019a02d81490] dshow demux debug: DeleteDirectShowGraph: Removing device filter
[0000019a02d81490] dshow demux debug: DeleteDirectShowGraph: Removing capture filter
[0000019a02d81490] dshow demux debug: CaptureFilter::EnumPins
[0000019a02d81490] dshow demux debug: CapturePin::QueryDirection
[0000019a02d81490] dshow demux debug: CapturePin::ConnectedTo [OK]
[0000019a02d81490] dshow demux debug: CapturePin::Disconnect [OK]
[0000019a02d81490] dshow demux debug: CaptureFilter::SetSyncSource
[0000019a02d81490] dshow demux debug: CaptureFilter::JoinFilterGraph
[0000019a02d81490] dshow demux debug: CaptureFilter::GetState 0
[0000019a02d81490] dshow demux debug: CaptureFilter::~CaptureFilter
[0000019a02d81490] dshow demux debug: CapturePin::~CapturePin
[0000019a02d81490] dshow demux debug: DeleteDirectShowGraph: Removing device filter
[0000019a02e22710] main input debug: Program doesn't contain anymore ES
[0000019a02d7f5c0] main stream output debug: destroying useless sout
[0000019a0238aa70] main stream out debug: destroying chain... (name=duplicate)
[0000019a0238aa70] main stream out debug: removing module "duplicate"
[0000019a0238aa70] duplicate stream out debug: closing a duplication
[0000019a02a40010] main stream out debug: destroying chain... (name=display)
[0000019a02a40010] main stream out debug: removing module "display"
[0000019a02e35e30] main video output debug: destroying useless vout
[0000019a0c7fdf30] main vout display debug: removing module "direct3d11"
[0000019a0c7fdf30] direct3d11 vout display debug: Direct3D11 resources destroyed
[0000019a0c7fdf30] direct3d11 vout display debug: Direct3D11 device adapter closed
[0000019a0c7fdf30] direct3d11 vout display error: SetThumbNailClip failed: 0x800706f4
[0000019a0c7fdf30] direct3d11 vout display debug: Win32 Vout EventThread terminating
[0000019a0c7fdf30] direct3d11 vout display debug: Win32VoutCloseWindow
[0000019a0c7fdf30] direct3d11 vout display debug: WinProc WM_DESTROY
[0000019a0c92f8f0] main spu text debug: removing module "freetype"
[0000019a03067b00] main scale debug: removing module "yuvp"
[0000019a03067e50] main scale debug: removing module "swscale"
[0000019a02a40010] main stream out debug: destroying chain done
[0000019a02d7f0c0] main stream out debug: destroying chain... (name=transcode)
[0000019a02d7f0c0] main stream out debug: removing module "stream_out_transcode"
[0000019a02d7f0c0] main stream out debug: destroying chain done
[0000019a02d7ef90] main stream out debug: destroying chain... (name=standard)
[0000019a02d7ef90] main stream out debug: removing module "stream_out_standard"
[0000019a029ef1f0] main mux debug: removing module "mp4"
[0000019a029ef1f0] mp4 mux debug: Close
[0000019a029ef1f0] mp4 mux debug: movie duration 0s
[0000019a029ef1f0] mp4 mux debug: created 0 chunks (stco)
[0000019a02d7fa40] main access out debug: removing module "file"
[0000019a02d7fa40] file access out debug: file access output closed
[0000019a02d7ef90] main stream out debug: destroying chain done
[0000019a0238aa70] main stream out debug: destroying chain done
[0000019a2e019800] main audio output debug: removing module "mmdevice"
```
### Environment
- OS: Windows10, 11
- LibVLC version and architecture 3.7.0 x64
- LibVLCSharp version 3.0.18https://code.videolan.org/videolan/LibVLCSharp/-/issues/621How to optimize CPU usage by running multiple vlcs in a single process in Ava...2023-06-07T06:03:01Zplmm016How to optimize CPU usage by running multiple vlcs in a single process in Avalonia### Summary
It consumes a lot of CPU by running multiple vlcs in a single process, but it consumes very little when Use multiple processes and one process only uses one vlc
### Minimal project and steps to reproduce
1. run multiple vl...### Summary
It consumes a lot of CPU by running multiple vlcs in a single process, but it consumes very little when Use multiple processes and one process only uses one vlc
### Minimal project and steps to reproduce
1. run multiple vlcs in a single process:
use official demo: https://code.videolan.org/videolan/LibVLCSharp/-/tree/3.7.0/samples/LibVLCSharp.Avalonia.Sample and do the loop
> for(var i=0; i<16; i++)
{
var window = new MainWindow();
window.Show();
}
2. run a vlc in multiple process:
just use official demo and run Application.exe many times
### What is the current *bug* behavior?
high CPU usage by running multiple vlcs in a single process in Avalonia
### What is the expected *correct* behavior?
low CPU usage by running multiple vlcs in a single process in Avalonia
### Does it work on other plaforms? Does it work with the official VLC apps?
My plaform is window10 and haven’t test on other platforms. Yes, it work with the official VLC apps
### Relevant LibVLC logs and/or screenshots
### Environment
- OS: window10
- Version: 1809(17763.437)
- CPU: Intel(R) Core(TM) i5-8500 CPu @3.00GHz 3.00 GHz
- GPU: Intel(R) UHD Graphics 630
- RAM: 16G
- LibVLC version and architecture: VideoLAN.LibVLC.Windows:3.0.18
- LibVLCSharp version: LibVLCSharp.Avalonia:3.7.0
### Possible fixes
without the ability to achieve ithttps://code.videolan.org/videolan/LibVLCSharp/-/issues/620High CPU usage for Avalonia2023-06-05T04:35:32Zplmm016High CPU usage for Avalonia![20230602-163545](/uploads/7eeb1124703f7bf6d85f3863dacc8dd9/20230602-163545.jpg)
![20230602-163551](/uploads/fdab592e7124784c7d53194861686417/20230602-163551.jpg)
It consumes a lot of CPU when I play 12 videos in Avalonia's libvlc at ...![20230602-163545](/uploads/7eeb1124703f7bf6d85f3863dacc8dd9/20230602-163545.jpg)
![20230602-163551](/uploads/fdab592e7124784c7d53194861686417/20230602-163551.jpg)
It consumes a lot of CPU when I play 12 videos in Avalonia's libvlc at the same time. But it consumes very little CPU with the same video in 12 vlc meida player.
So what is the problem, and how to optimize cpu usage for Avalonia's libvlc
Here is my LibVLC setting:
1. Nuget: LibVLCSharp.Avalonia:3.7.0
2. LibVLC? _libVLC = new LibVLC(
"--cr-average=10000", "--avcodec-hw=vaapi", "--network-caching=300"
);https://code.videolan.org/videolan/LibVLCSharp/-/issues/619An error occurred upgrading to LibVLCSharp.WPF(3.7.0)2023-05-31T10:04:58ZliufuxinAn error occurred upgrading to LibVLCSharp.WPF(3.7.0)I upgraded LibVLCSharp.WPF 3.6.8 to 3.7.0 and found incompatibility. I am using net6.0-windows10.0.18362.0 as the target framework
![image](/uploads/2d575f34bed43ecc51ba9b87daaaaf04/image.png)
![image](/uploads/3097f4db458bd36883edd91bff...I upgraded LibVLCSharp.WPF 3.6.8 to 3.7.0 and found incompatibility. I am using net6.0-windows10.0.18362.0 as the target framework
![image](/uploads/2d575f34bed43ecc51ba9b87daaaaf04/image.png)
![image](/uploads/3097f4db458bd36883edd91bffb304e4/image.png)https://code.videolan.org/videolan/LibVLCSharp/-/issues/618LibVlcSharp select only default webcam2023-06-10T08:47:17ZJacek PlacekLibVlcSharp select only default webcamI have to record selected webcam to file but i get video from default webcam (no matter which i describe in media option)
When i use VlcPlayer to record any of existing camera i get proper camera, but when try do the same from my applic...I have to record selected webcam to file but i get video from default webcam (no matter which i describe in media option)
When i use VlcPlayer to record any of existing camera i get proper camera, but when try do the same from my application i get video from default webcam. What i do wrong ?
parameters from VlcPlayer: `:dshow-vdev=Logitech StreamCam :dshow-adev= :live-caching=100`
my app code:
```csharp
Core.Initialize();
using var libVLC = new LibVLC(enableDebugLogs: true);
using var media = new Media(libVLC, "dshow://",FromType.FromLocation);
using var mediaPlayer = new MediaPlayer(libVLC);
// :dshow-vdev=Logitech StreamCam :dshow-adev= :live-caching=100 - copied from VlcVideoPlayer
media.AddOption(" :dshow-vdev=Logitech StreamCam :dshow-adev= :live-caching=100");
// i also try this format without success
// media.AddOption(" :dshow-vdev=\"Logitech StreamCam\" :dshow-adev=none :live-caching=100");
// media.AddOption(" :dshow-vdev='Logitech StreamCam' :dshow-adev=none :live-caching=100");
// media.AddOption(" :dshow-vdev=Integrated Camera :dshow-adev=none :live-caching=100");
media.AddOption(":sout=#duplicate{dst=display,dst=transcode{vcodec=mp4v,acodec=mpga,vb=800,ab = 128,deinterlace},dst=std{access=file,mux=asf,dst=xyz.mp4}}");
mediaPlayer.Play(media);
System.Threading.Thread.Sleep(10000);
mediaPlayer.Stop();
```
The second question - recorded file is very large (2 GB per 10 seconds), how to set transcoding to get it compressed but good quality ?
the question was sent to stack overflow few days ago but I get no reply [](https://stackoverflow.com/posts/76333690/edit)
### What is the current *bug* behavior?
every time when I start recording webcam. the default webcam is selected even if I set another device
i.e. : `:dshow-vdev=Logitech StreamCam `
### What is the expected *correct* behavior?
there should be captured vide from Logitech webcam instead default i.e. Integrated Camera
### Does it work on other plaforms? Does it work with the official VLC apps?
Working with parameters from VlcPlayer: `:dshow-vdev=Logitech StreamCam :dshow-adev= :live-caching=100`
### Environment
- OS: Windows 11
- Version [e.g. 22]
- Device: pc amd
- LibVLC version and architecture [e.g. 3.7, x64]
- LibVLCSharp version 3.0.18https://code.videolan.org/videolan/LibVLCSharp/-/issues/617media discoverers doesn't display webcams2023-06-12T06:16:54ZJacek Placekmedia discoverers doesn't display webcams
### Summary
Media discoverer doesn't find video capture devices
### Minimal project and steps to reproduce
```csharp
Core.Initialize();
using var libvlc = new LibVLC();
var mds = libvlc.MediaDis...
### Summary
Media discoverer doesn't find video capture devices
### Minimal project and steps to reproduce
```csharp
Core.Initialize();
using var libvlc = new LibVLC();
var mds = libvlc.MediaDiscoverers(MediaDiscovererCategory.Devices);
Console.WriteLine($" number of mds: {mds.Count()}");
foreach (var dm in mds)
{
Console.WriteLine($"{dm.Category} {dm.Name} {dm.LongName}");
//display only disc
}
if (mds.Any(x => x.LongName == "Video capture"))
{
var devices = mds.First(x => x.LongName == "Video capture");
var md = new MediaDiscoverer(libvlc, devices.Name);
md.Start();
foreach (var media in md.MediaList)
{
Console.WriteLine($" _ {media.Mrl}");
}
}
```
### What is the current *bug* behavior?
I get only devices disc in code above
### What is the expected *correct* behavior?
list of devices disc, video capture, audio capture etc
### Does it work on other plaforms? Does it work with the official VLC apps?
in VLC player I can select 2 other webcams and one video grabber
### Environment
- OS: Windows 11
- Version [e.g. 22]
- Device: pc amd
- LibVLC version and architecture [e.g. 3.7, x64]
- LibVLCSharp version 3.0.18