Motion Tracking Funscript Generator v0.5.x

Definitely separate monitored regions for each. Depending on the angle of the video, the two points can end up in some odd places

1 Like

Trying to test this out and I followed the install guide and keep getting this error:

ā€¦"]:14: attempt to concatenate a nil value (local ā€˜videoā€™)

Looks like the problem is coming from OFS. The Variable VideoFilePath in lua is nil (is not set). At the moment i donā€™t have enough time to debug the problem in OFS. But you could open a issue on github. Maybe the code to set the variable was not executed due to an incorrect implementation.

Other helpful noted to debug the problem:

  • Use getVideoPath to set the value.
  • The memory source is a pointer to a pointer of an string of the mpv event object. This does not look very safe. For me the lifetime of this pointer is not clear. Why is the string not copied?
1 Like

After unzipping and following the installation instructions, whenever I open this in OFS or the standalone exe a blank cmd terminal pops up and nothing happens. Any ideas?

@burtreynolds to debug this, open the standalone application and wait at least 60 seconds once the black window is open (on slower computers the application takes a long time to load!). Check your CPU usage in the task manager. Is there anything unusual here? Is the blank cmd window still open after 60 seconds without any output in the window? If you use an antivirus program, try to start the application when the protection is turned off.

1 Like

Thanks! Iā€™ll try all of this and get back to you. Iā€™m really looking forward to using this incredible tool youā€™ve created.

I havenā€™t had a chance to actually try it out yet, but it looks like just waiting a long time fixed the issue lol. I feel pretty dumb just not being patient in the first place since I am well aware that my computer is slow as shit. Thanks!

Hi,

Thanks for this tool but I canā€™t make it workā€¦
I can open a video but the tracking window is never shown nor the modal ā€œDo you want to track the Menā€.

Need to press any key to launch this feature ?

And I donā€™t see the settings dialogā€¦

Iā€™m on linux. Any idea ?

Thanks :wink:

@lestyxx Can you give me the exact Linux distribution name, then i can debug it from my side. The problem is that each linux distribution provides different packages. E.g. in Ubuntu the OpenCV package do not include the Qt fronted, therefore tracking does not work there with the standard repository package (see Ubuntu 20.04 setup for more details).

Need to press any key to launch this feature ?

The shortcut Ctrl + g should open the tracking window

@mchyxnaaiorxfwrivv Thanks. I have the settings dialog first but the tracking window doesnā€™t work.

FunscriptGenerator

2021-08-31 11:00:41 lestyxx-pc root[14900] INFO Python Funscript Editor 0.0.0
2021-08-31 11:00:54 lestyxx-pc funscript_editor.ui.funscript_editor_window[14900] INFO Stop at 942961
2021-08-31 11:00:55 lestyxx-pc funscript_editor.ui.funscript_generator_window[14900] INFO Set End Time to Frame Number 28289
2021-08-31 11:00:58 lestyxx-pc funscript_editor.ui.funscript_generator_window[14900] INFO settings: {'videoType': 'vr_he_sbs', 'trackingMetric': 'y', 'trackingMethod': 'Woman'}

(process:14900): GLib-CRITICAL **: 11:00:59.042: g_main_context_push_thread_default: assertion 'acquired_context' failed
QObject::moveToThread: Current thread (0x7fadd9c346b0) is not the object's thread (0x56335a895520).
Cannot move to target thread (0x7fadd9c346b0)

QObject::moveToThread: Current thread (0x7fadd9c346b0) is not the object's thread (0x56335a895520).
Cannot move to target thread (0x7fadd9c346b0)

...

QObject::moveToThread: Current thread (0x7fadd9c346b0) is not the object's thread (0x7faec4008040).
Cannot move to target thread (0x7fadd9c346b0)

QObject::killTimer: Timers cannot be stopped from another thread
QBasicTimer::start: QBasicTimer can only be used with threads started with QThread
QObject::startTimer: Timers cannot be started from another thread
QObject::killTimer: Timers cannot be stopped from another thread
QBasicTimer::start: QBasicTimer can only be used with threads started with QThread
...
QBasicTimer::start: QBasicTimer can only be used with threads started with QThread

Iā€™m on ā€œDebian testingā€ and installing your script with miniconda (except ffmpeg, Iā€™m using ffmpeg from debian repo, v4.3.1, but Iā€™ve the problem with 2D video)

Do you prefer I use Github for this issue ?

Is there some type of setting that could be added so the tracking doesnā€™t stop when the video goes black for 1-2 seconds and the positions donā€™t change? Some videos do this to simulate blinking or when they have edited something. Thanks!

@lestyxx The issue looks similar to issue #3 on github. But the suggested solution on this github issue do not work! I have created the install instruction with miniconda to solve this problem.

For 2D Videos FFmpeg v4.3.1 should work. The problem is the OpenCV package. Itā€™s probably like in Ubuntu only compiled with GTK frontend. Can you check that the python3-opencv and the pip opencv-contrib-python package is not installed on the system and only the opencv and py-opencv package is installed in the miniconda environment.

I will have a closer look at the problem on Sunday - What desktop environment are you using XFCE, OpenBox, Lxqt, Gnome, KDE ā€¦?

Do you prefer to use Github for this issue ?

If you have a github account that would be preferable.

I will have a look at the idea in the next weeks and try to create an implementation (but i am not sure if this can be solved easily without degrading the tracking quality).

Maybe you could add a setting that lets you determine for how many seconds the tracking continues after it has lost itā€™s target, 1-5 seconds should be enough, that way you donā€™t have to alter the actual tracking. Just an idea, not sure if itā€™s easy to implement. :slightly_smiling_face:

1 Like

@mchyxnaaiorxfwrivv Thanks for the help. Iā€™ve created new issue : Not working on Debian Ā· Issue #8 Ā· michael-mueller-git/Python-Funscript-Editor Ā· GitHub

desktop environment : Gnome.
I confirm python3-opencv and the pip opencv-contrib-python package is not installed on the system.

I have a feature request which I believe could be a time saver for some.

On the initial page where you specify a Min and Max, maybe add the option to add a value to the up and down strokes and then have the resultant data plotted out accordingly. I often find moving one up/down (if I had the sensors plotted properly that is :slight_smile: ) and one frame back when going through on a manual edit.

Awesome work, by the way, thanks so much!

Could you make a optional time stop feature aswell please. Thank for your work.

Such a GUI would be very time-consuming to implement. Would it not be sufficient to perform this functions directly in OFS with Lua scripts? - If I have understood it correctly, it is only about the shifting of the points in the time direction and in the height with a visual feedback.

Can you describe in more detail what you have in mind? Currently there is already the possibility that the tracking stops automatically at the next existing action point.

In the next release there will also a supervised tracking function in which you can select the area in which the searched feature must be located. As soon as the predicted tracking box leaves this area the tracking stops.

1 Like

What you have explained i think is basicaly the problem i was on about. Basicaly when the cammera slowely moves to another position which changes the tracking angle the third box should stop the tracking.