[vlmc-devel] [PATCH 7/7] WorkflowRenderer: Configure a temporary FileTarget
Hugo Beauzée-Luyssen
hugo at beauzee.fr
Sun Apr 17 09:57:31 CEST 2016
On 04/17/2016 09:47 AM, yikei lu wrote:
> Because
>
> PreviewWidget::setRenderer is called once, which setRenderTarget(
> WidgetTarget ). So if we overwrite it with FileTarget, we can't show
> project preview anymore :(
>
> 2016-04-17 16:33 GMT+09:00 Hugo Beauzée-Luyssen <hugo at beauzee.fr>:
>> On 04/16/2016 08:22 AM, Yikai Lu wrote:
>>>
>>> ---
>>> src/Renderer/WorkflowRenderer.cpp | 6 +++++-
>>> 1 file changed, 5 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/src/Renderer/WorkflowRenderer.cpp
>>> b/src/Renderer/WorkflowRenderer.cpp
>>> index 7056555..77d524f 100644
>>> --- a/src/Renderer/WorkflowRenderer.cpp
>>> +++ b/src/Renderer/WorkflowRenderer.cpp
>>> @@ -35,6 +35,7 @@
>>> #include "GenericRenderer.h"
>>> #include "Backend/IBackend.h"
>>> #include "Backend/ISource.h"
>>> +#include "Backend/Target/FileTarget.h"
>>> #include "Workflow/MainWorkflow.h"
>>> #include "Gui/preview/RenderWidget.h"
>>> #include "Settings/Settings.h"
>>> @@ -227,7 +228,10 @@ WorkflowRenderer::startRenderToFile( const QString&
>>> outputFileName, quint32 widt
>>> m_aspectRatio = ar;
>>>
>>> setupRenderer();
>>> - m_sourceRenderer->setOutputFile( qPrintable( outputFileName ) );
>>> +
>>> + Backend::FileTarget fileTarget( qPrintable( outputFileName ) );
>>> + fileTarget.configure( m_sourceRenderer );
>>> +
>>> m_sourceRenderer->setOutputAudioBitrate( abitrate );
>>> m_sourceRenderer->setOutputVideoBitrate( vbitrate );
>>> connect( m_mainWorkflow, &MainWorkflow::mainWorkflowEndReached,
>>> this, &WorkflowRenderer::renderComplete );
>>>
>>
>> Why not using setRenderTarget? I agree that this should work, but it seems
>> inconsistent with your previous commit
>>
>> Regards,
>> _______________________________________________
>> Vlmc-devel mailing list
>> Vlmc-devel at videolan.org
>> https://mailman.videolan.org/listinfo/vlmc-devel
> _______________________________________________
> Vlmc-devel mailing list
> Vlmc-devel at videolan.org
> https://mailman.videolan.org/listinfo/vlmc-devel
>
Actually it's expected not to show the preview. Internally, if you are
rendering to a widget, VLC will pace the output to the required
framerate. If you're rendering to a file, there's is no need to pace,
and the renderer should be allowed to process as fast as possible.
That's why we had the signal with a frame preview when rendering to a file.
More information about the Vlmc-devel
mailing list