-
Notifications
You must be signed in to change notification settings - Fork 2.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
A way to pass arbitrary user data to VapourSynth script #14214
Comments
…ry data to script. Fixes mpv-player#14214
…ry data to script. Fixes mpv-player#14214
…ry data to script. Currently the vapoursynth video filter does not accept any argument for passing arbitrary user data. This limits what the VS script can do. Ideally, the vapoursynth filter has an user-data parameter that contains string value. mpv passes that value to the VS script just like container_fps and others. Once the VS script gets the data, it can do all sorts of data extraction and transformation. Another benefit is that instead of mpv always have to [catch up to user needs for this filter](mpv-player#11510), with this users can just pass whatever needed themselves, thus becomes more future-proof. Fixes mpv-player#14214
…ry data to script. Currently the vapoursynth video filter does not accept any argument for passing arbitrary user data. This limits what the VS script can do. Ideally, the vapoursynth filter has an user-data parameter that contains string value. mpv passes that value to the VS script just like container_fps and others. Once the VS script gets the data, it can do all sorts of data extraction and transformation. Another benefit is that instead of mpv always have to catch up to user needs for this filter, with this users can just pass whatever needed themselves, thus becomes more future-proof. Fixes mpv-player#14214
…ry data to script. Currently the vapoursynth video filter does not accept any argument for passing arbitrary user data. This limits what the VS script can do. Ideally, the vapoursynth filter has an user-data parameter that contains string value. mpv passes that value to the VS script just like container_fps and others. Once the VS script gets the data, it can do all sorts of data extraction and transformation. Another benefit is that instead of mpv always have to catch up to user needs for this filter, with this users can just pass whatever needed themselves, thus becomes more future-proof. Fixes mpv-player#14214
Currently the vapoursynth video filter does not accept any argument for passing arbitrary user data. This limits what the VS script can do. Ideally, the vapoursynth filter has an user-data parameter that contains string value. mpv passes that value to the VS script just like container_fps and others. Once the VS script gets the data, it can do all sorts of data extraction and transformation. Another benefit is that instead of mpv always have to catch up to user needs for this filter, with this users can just pass whatever needed themselves, thus becomes more future-proof. Fixes mpv-player#14214
For documentation purpose, I still encounter some issues when I try to build mpv on Windows after following the up-to-date instructions, specifically the "Native Compilation with Clang (Windows SDK Build)" route:
|
I agree with you on those points.
Feel free to send PR with your suggestions, it is good to have someone else to validate the workflow and identify issues like you did. |
Currently the vapoursynth video filter does not accept any argument for passing arbitrary user data. This limits what the VS script can do. Ideally, the vapoursynth filter has an user-data parameter that contains string value. mpv passes that value to the VS script just like container_fps and others. Once the VS script gets the data, it can do all sorts of data extraction and transformation. Another benefit is that instead of mpv always have to catch up to user needs for this filter, with this users can just pass whatever needed themselves, thus becomes more future-proof. Fixes mpv-player#14214
Currently the vapoursynth video filter does not accept any argument for passing arbitrary user data. This limits what the VS script can do. Ideally, the vapoursynth filter has an user-data parameter that contains string value. mpv passes that value to the VS script just like container_fps and others. Once the VS script gets the data, it can do all sorts of data extraction and transformation. Another benefit is that instead of mpv always have to catch up to user needs for this filter, with this users can just pass whatever needed themselves, thus becomes more future-proof. Fixes mpv-player#14214
Currently the vapoursynth video filter does not accept any argument for passing arbitrary user data. This limits what the VS script can do. Ideally, the vapoursynth filter has an user-data parameter that contain string value. mpv passes that value to the VS script just like container_fps and others. Once the VS script gets the data, it can do all sorts of data extraction and transformation. Another benefit is that instead of mpv always have to catch up to user needs for this filter, with this users can just pass whatever needed themselves, thus becomes more future-proof. Fixes mpv-player#14214
Currently the documentation for building on Windows, specifically the "Native Compilation with Clang (Windows SDK Build)" route, could use a few minor improvement to make the development onboarding experience more smoothly. Fixes mpv-player#14214
Here you are: #14315 |
Currently the vapoursynth video filter does not accept any argument for passing arbitrary user data. This limits what the VS script can do. Ideally, the vapoursynth filter has an user-data parameter that contain string value. mpv passes that value to the VS script just like container_fps and others. Once the VS script gets the data, it can do all sorts of data extraction and transformation. Another benefit is that instead of mpv always have to catch up to user needs for this filter, with this users can just pass whatever needed themselves, thus becomes more future-proof. Fixes mpv-player#14214
Currently the documentation for building on Windows, specifically the "Native Compilation with Clang (Windows SDK Build)" route, could use a few minor improvement to make the development onboarding experience more smoothly. Fixes mpv-player#14214
Currently the documentation for building on Windows, specifically the "Native Compilation with Clang (Windows SDK Build)" route, could use a few minor improvement to make the development onboarding experience more smoothly. Fixes #14214
Currently the vapoursynth video filter does not accept any argument for passing arbitrary user data. This limits what the VS script can do. Ideally, the vapoursynth filter has an user-data parameter that contain string value. mpv passes that value to the VS script just like container_fps and others. Once the VS script gets the data, it can do all sorts of data extraction and transformation. Another benefit is that instead of mpv always have to catch up to user needs for this filter, with this users can just pass whatever needed themselves, thus becomes more future-proof. Fixes mpv-player#14214
Currently the vapoursynth video filter does not accept any argument for passing arbitrary user data. This limits what the VS script can do. Ideally, the vapoursynth filter has an user-data parameter that contain string value. mpv passes that value to the VS script just like container_fps and others. Once the VS script gets the data, it can do all sorts of data extraction and transformation. Another benefit is that instead of mpv always have to catch up to user needs for this filter, with this users can just pass whatever needed themselves, thus becomes more future-proof. Fixes #14214
Expected behavior of the wanted feature
Currently the
vapoursynth
video filter does not accept any argument for passing arbitrary user data. This still limits what the VS script can do.Ideally,
vapoursynth
can have anuser-data
option that contains string value. mpv passes that value to the VS script just likecontainer_fps
and others. There could be a reasonable cap of the data size like 100. Once the VS script gets the data, it can do all sorts of data extraction and transformation.Another benefit is that instead of mpv always have to catch up to user needs for this filter, with this users can just pass whatever needed themselves, thus future requests to add more properties can reduce.
Alternative behavior of the wanted feature
Main reason I'm asking this that the current alternatives are lacking. I've tried
winapi
for Windows), set environment variable from Lua side, thenmp.commandv('set', 'vf', 'vapoursynth=mpv.vpy')
. Then in mpv.vpy, try to retrieve that data withos.environ
. I noticed that even the variable is correctly present in Process Explorer,os.environ
doesn't have that variable. I guess even thoughos.environ
says it captured the mapping first time theos
module is imported, mpv probably loads VapourSynth and thus theos
module before my Lua script, so changing the process environment variables in Lua doesn't work.C:\test
), then load file in VS script. This works, but then 1) someone has to cleanup that file; 2) what happens if multiple mpv instances with my scripts concurrently access that file? Ideally the file name should have the current process ID in it to avoid collision, but then that further complicates the task.Log File
No response
Sample Files
No response
The text was updated successfully, but these errors were encountered: