1

I'm trying to replace a proprietary video player with ffplay on a Windows 10 workstation. The requirement is that I use a Decklink Mini Recorder card, the video size is 1280x720P, is borderless and opens at a specific position on the screen.

Errors

The video overlays on another app called iControl that changes the video input of the Decklink card. I have this working as a batch file:

@echo off
ffplay -f dshow -video_size 1280x720 -left 631 -top 19 -rtbufsize 75000K -framerate 59.94 -i video="Decklink Video Capture":audio="Decklink Audio Capture" -noborder -hide_banner -alwaysontop

This works great for about 8 to 10 hours but then starts spitting out real-time buffer errors that the video input is too full or near too full and frames start dropping. I can't increase the buffer size as it causes lip sync issues after a few hours. I saw in another post that this was fixed in ffmpeg with a thread_queue_size parameter, but that option does not appear to be available for ffplay and I can't figure out how to use ffmpeg to open a video window with no border, and at a specific X/Y coordinate on the screen.

Any ideas?

Destroy666
  • 12,350

1 Answers1

2
  1. If you must use FFPLAY, update it to the latest version. However, if there is a memory leak in the application, then you, as a user, cannot fix that issue. Developers would need to fix it, and make a new release.
  2. If you have an option to switch players, try some of the many good, free, Windows players, such as VLC, mpc-hc or a plethora of alternatives. My experience is that the first two, and probably many others, do not have memory issues.
  3. A possibility is that Windows OS is not reallocating memory from its Standby List expeditiously. You could try a tools such as WagnardSoft's free Intelligent standby list cleaner (ISLC) to speed memory reallocation. Though it is intended to improve gameplay, I've found it useful for other memory-intensive tasks, such as file conversion and transferring large amounts of data to an e-reader. There is no installation needed, so it's easy to test if it would help.