as the VideoPostData is inside the current document, it's right to retrieve the current document. But as Ferdinand said, that's a common pitfall.
I was able to reproduce the issue. Using the Console automatically add an EventAdd(). That's why it was working using the console. If you send the message with the script manager, it will not work.
So, you have to "force" the UI update with an
EventAdd(). SetDirty only set the VideoPostData dirty but doesn't trigger a UI update.
As it's the end of the render, the scene should not have changed too much and the redraw shouldn't take too much time.
//DLRenderFinished is executed successfully when rendering is finished, but this does not trigger an update on the UI.
_render_started = false;
Just one question, that's strange to launch the render from the render preferences. Is that the final workflow?