rdp / virtual-audio-capture-grabber-device

free audio capture device to capture all the "wave out sound" that is playing on your speakers (i.e. record what you hear) for Windows Vista+. Releases downloadable in this package:
https://github.com/rdp/screen-capture-recorder-to-video-windows-free
Other
578 stars 181 forks source link

audiosniffer.dll causing application crash #20

Closed syam38 closed 6 years ago

syam38 commented 7 years ago

I am using ffmpeg to record audio on my windows 7 desktop.The audiosniffer.dll is used to grab the audio from the sound card,this is causing the ffmpeg.exe to crash. The application error log gives the faulting module path as audiosniffer.dll's path and the faulting Application path as the path for ffmpeg.exe. ffmpeg works perfectly most of the times but I am facing this issue some times.

Screenshot of the error log erroredited

I am not able to find the exact reason why audio_sniffer.dll is causing the application to crash.Is it something related to the exceptions thrown by the dll?.The exception code of the error quotes it as Access Violation.

rdp commented 7 years ago

now prompt as to why or assert or anything?

On Fri, Apr 14, 2017 at 12:25 AM, Syam Pradeep Reddy < notifications@github.com> wrote:

I am using ffmpeg to record audio on my windows 7 desktop.The audiosniffer.dll is used to grab the audio from the sound card,this is causing the ffmpeg.exe to crash. The application error log gives the faulting module path as audiosniffer.dll's path and the faulting Application path as the path for ffmpeg.exe. ffmpeg works perfectly most of the times but I am facing this issue some times.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/rdp/virtual-audio-capture-grabber-device/issues/20, or mute the thread https://github.com/notifications/unsubscribe-auth/AAAw0Hhq41wD-o9oHs7FmuPpbI_aZ-Xtks5rvxE9gaJpZM4M9flK .

syam38 commented 7 years ago

Hey,I got the exact reason which is causing the issue. I am using headset with a usb port for recording the audio.When i unplug the headset while the recording is in progress, it is causing the ffmpeg.exe to crash.As the exception code in error report says it as Access Violation, may be the dll is trying to access the source for the audio which is not available.

Is there any work around for that?

rdp commented 7 years ago

any exact message(s)?

On Wed, Apr 19, 2017 at 12:33 AM, Syam Pradeep Reddy < notifications@github.com> wrote:

Hey,I got the exact reason which is causing the issue. I am using headset with a usb port for recording the audio.When i unplug the headset while the recording is in progress, it is causing the ffmpeg.exe to crash.As the exception code in error report says it as Access Violation, may be the dll is trying to access the source for the audio which is not available.

Is there any work around for that?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/rdp/virtual-audio-capture-grabber-device/issues/20#issuecomment-295119845, or mute the thread https://github.com/notifications/unsubscribe-auth/AAAw0Bc_85MirNf8p2sCPmbSuu6E0doJks5rxarCgaJpZM4M9flK .

syam38 commented 7 years ago

This is the error log screenshot which i got.The exception code says it as Access Violation.

erroredited

rdp commented 7 years ago

are you running ffmpeg from the command line? what about ffmpeg_g.exe (there's one here): https://sourceforge.net/projects/ffmpegwindowsbi/files/?source=navbar

On Fri, Apr 21, 2017 at 3:55 AM, Syam Pradeep Reddy < notifications@github.com> wrote:

This is the error log screenshot which i got.The exception code says it as Access Violation.

[image: erroredited] https://cloud.githubusercontent.com/assets/13881107/25272679/6d7a290c-26a6-11e7-8705-a4be527cec3d.JPG

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/rdp/virtual-audio-capture-grabber-device/issues/20#issuecomment-296148345, or mute the thread https://github.com/notifications/unsubscribe-auth/AAAw0DYmVP5G074ckbgII2pRScxn-V4uks5ryHz7gaJpZM4M9flK .

syam38 commented 7 years ago

Yes,through command line.Is ffmpeg_g.exe something different from ffmpeg.exe?

rdp commented 7 years ago

has debug symbols, who knows, maybe it'll matter, what I'm looking for is an assert failure somehow...or a backtrace...

On Sat, Apr 22, 2017 at 4:09 AM, Syam Pradeep Reddy < notifications@github.com> wrote:

Yes,through command line.Is ffmpeg_g.exe something different from ffmpeg.exe?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/rdp/virtual-audio-capture-grabber-device/issues/20#issuecomment-296362870, or mute the thread https://github.com/notifications/unsubscribe-auth/AAAw0DS9BIM2Dz9wtByX001o1lb58Lo6ks5rydHHgaJpZM4M9flK .

wqter-git commented 7 years ago

Manually build the source, register the dll, and you can debug into the code. In my case, after unplugging the default audio device, and quit ffmpeg, the exception will be thrown in loopBackRelease() around pAudioClient->Stop(); I guess the device pAudioClient pointing to becomes invalid.

syam38 commented 7 years ago

I am glad that you too encountered the similar issue.Is there any work around to suppress the exceptions thrown?.

wqter-git commented 7 years ago

HI I just found the lines of code that would throw exception, and commented out the clean-up code to avoid (since the process will exit then). But this is not a reasonable solution, to handle this issue we need to detect the change of default audio device and reset the filter. per my understanding.

------------------ Original ------------------ From: "Syam Pradeep Reddy"notifications@github.com; Date: Tue, May 9, 2017 06:03 PM To: "rdp/virtual-audio-capture-grabber-device"virtual-audio-capture-grabber-device@noreply.github.com; Cc: "wqter-git"qiuting.wang@liminfi.com; "Comment"comment@noreply.github.com; Subject: Re: [rdp/virtual-audio-capture-grabber-device] audiosniffer.dllcausing application crash (#20)

I am glad that you too encountered the similar issue.Is there any work around to suppress the exceptions thrown?.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

rdp commented 7 years ago

at lines were commented out?

On Wed, May 10, 2017 at 1:40 AM, wqter-git notifications@github.com wrote:

HI I just found the lines of code that would throw exception, and commented out the clean-up code to avoid (since the process will exit then). But this is not a reasonable solution, to handle this issue we need to detect the change of default audio device and reset the filter. per my understanding.

------------------ Original ------------------ From: "Syam Pradeep Reddy"notifications@github.com; Date: Tue, May 9, 2017 06:03 PM To: "rdp/virtual-audio-capture-grabber-device"<virtual-audio- capture-grabber-device@noreply.github.com>; Cc: "wqter-git"qiuting.wang@liminfi.com; "Comment"<comment@noreply. github.com>; Subject: Re: [rdp/virtual-audio-capture-grabber-device] audiosniffer.dllcausing application crash (#20)

I am glad that you too encountered the similar issue.Is there any work around to suppress the exceptions thrown?.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/rdp/virtual-audio-capture-grabber-device/issues/20#issuecomment-300401779, or mute the thread https://github.com/notifications/unsubscribe-auth/AAAw0PWpvQTKkvdjaiQYIA60Yr8u0XTcks5r4WoEgaJpZM4M9flK .

rdp commented 6 years ago

OK I was able to repro it and actually kind of fixed it in 4b95810 I wonder if it should "quit feeding" the output (like abort the graph) if this occurs (they unplug headphones)? Today it just pauses. Yeah it probably should...hmm...

rdp commented 6 years ago

OK in f5aae2a made it "interrupt" the recording if it can no longer gather anything, this seemed OK in my head anyway.