[Kdenlive-devel] PATCH for kdenlive Mantis issue #1033

John T. Mertz thatonefilmguy at gmail.com
Thu Mar 18 18:53:04 UTC 2010


Ok I have found one issue with the (big) patch. The DVDWizard is
broken. When trying to run it, kdenlive crashes when DvdWizardChapters
calls resetProfiles() from monitormanager.cpp, which in turn calls
updateTimecodeFormat() from monitor.cpp, which then seems to crash in
the first line:

m_frametimecode = KdenliveSettings::frametimecode();

(I would reference the line number but that would be pointless with my
local edited copy)

If I put a kDebug() before and after that line, the first gets called
but the second doesn't. Not sure why that line causes a crash. Any
thoughts?

Thanks,
-JTM

On 3/18/10, John T. Mertz <thatonefilmguy at gmail.com> wrote:
> Jb
>
> Actually, I just finished the patch.  There might be a couple of spots in
> the GUI that I missed replacing with the "99:99.99:99" DF format, but at a
> glance I did not find any.  If anyone finds areas that have not been
> replaced, please let me know.  It should be easy to fix any missed areas.
>
> The new patch is called "kdenlive_DropFrame_Patch_v2.0.txt" and I attached
> it to bug #1033: http://www.kdenlive.org/mantis/view.php?id=1033
>
> A direct link to the patch:
> http://www.kdenlive.org/mantis/file_download.php?file_id=675&type=bug
>
> The new patch does the following:
>
>    - Replaces the timecode separators in most (if not all) areas of the
>    application including:  Timeline, Project/Clip Monitors, Add Title Clip,
> Add
>    Color Clip, Add Slideshow Clip, and Clip Properties dialogue boxes, as
> well
>    as Keyframe/Effects windows.
>
>
>
>    - Centralizes the inputMask values for DF/NDF into the new function
>    "inputMask()" which is part of the Timecode class.  This function can be
>    called to get the appropriate inputMask QString, based on the timecode
>    object that calls it.  Therefore inputMask for both DF and NDF projects
> can
>    be set using, for example:
>
> m_timePos->setInputMask(m_monitorManager->timecode().inputMask());
>
> instead of setting it manually:
>
> m_timePos->setInputMask("99:99:99:99");
>
>
>    - The patch also implements a simple function to reformat the separators
>    for timecode currently being displayed in the project.  This is useful
>    if/when the user changes the project format to reformat timecode values
>    currently displayed if they are not already being refreshed when the
> project
>    format changes.  It is also useful for pre-processing default timecode
>    duration values (such as Color Clip default length) before setting the
>    default Color Clip duration value in the CC dialogue box.  Supplying the
>    default NDF "00:05:00:00" to the duration dialogue when the inputMask is
> set
>    to DF results in the default duration being improperly set, so
> preprocessing
>    the default duration is required.  The default duration must be set in
> the
>    same format as the input mask.
>
> The new function, "reformatSeparators(QString duration)" is also a part of
> the Timecode class.  So calling:
>
> timecodeObject->reformatSeparators("00:05:00:00");
>
> ...would reformat the timecode from "00:05.00:00" if the project is Drop
> Frame, and will return it in the same format "00:05:00:00" if the project
> is
> NDF.  Likewise, if "00:05.00:00" is supplied to the function and the
> project
> is NDF, then the function will return NDF timecode "00:05:00:00".
>
>
>    - It implements another new function, "df()" as part of the Timecode
>    class, which simply returns a boolean TRUE if the timecode object passed
> to
>    it is drop frame.
>
> if ( timecodeObject->df() ) { ... }
>
>
>    - For slideshow clips, the default transition (luma) duration previously
>    was hard coded to "00:00:00:24".  Not only is this timecode value
> invalid
>    for projects with 24 FPS or less, but it also is variable in duration
> for
>    projects >25 FPS.  This has been revised to always return a value of 1
>    second based on the FPS of the project:
>
> m_view.luma_duration->setText(m_timecode.getTimecodeFromFrames(int(ceil(m_timecode.fps()))));
>
>    - Some other optimizations have also been made to Timecode.cpp which
>    makes it slightly more efficient, as well as accommodates the new DF
> display
>    format.
>
>
> Download it and take a look!
>
> Cheers!
> -JTM
>
>
> On Thu, Mar 18, 2010 at 6:04 AM, John T. Mertz
> <thatonefilmguy at gmail.com>wrote:
>
>> Hi jb,
>>
>> Please note I am working on a pretty massive patch which is a much more
>> thorough fix for issue #1033, in addition to #1511 and #1512.  The
>> patches
>> currently attached to issue #1033 should be ignored for now.  The new
>> patch
>> I am writing replaces the existing patches and should be applied in place
>> of, not on top of, the ones I already uploaded.
>>
>> http://www.kdenlive.org/mantis/view.php?id=1511
>> http://www.kdenlive.org/mantis/view.php?id=1512
>>
>> It will change timecode display to drop frame throughout the application
>> when a DF project is in use, and fixes a number of other various issues I
>> found while going through the code.  I will post a change list when the
>> patch is available.  It is almost done but has taken some time due to the
>> massive amount of changes that were necessary to implement DF timecode
>> throughout.  I've done a fair amount of testing to ensure everything
>> works
>> OK, but needless to say it will definitely need more eyes on it due to
>> the
>> size and scope of the patch.
>>
>> Also, in writing this patch I had to change the DF timecode mask to
>> "99:99.99:99" (display standard typically seen on video cameras and
>> decks)
>> instead of the more standard "99:99:99;99" (display standard typically
>> seen
>> in NLEs) because I found that Qt's inputMask does not support semicolons
>> as
>> separators.  Hopefully this will be resolved in some future version of
>> Qt.
>>
>> -JTM
>>
>>
>>
>> On Thu, Mar 18, 2010 at 5:11 AM, jb <jb at kdenlive.org> wrote:
>>
>>> On Tuesday 16 March 2010 01:48:06 T.J. Mertz wrote:
>>> > Hello,
>>> >
>>> > I've attached a svn diff patch file to issue #1033 in Mantis which
>>> resolves
>>> > this issue.
>>> >
>>> > http://www.kdenlive.org/mantis/view.php?id=1033
>>>
>>> Thanks for the patch. I just moved to a new apartment, so had no time in
>>> the
>>> last weeks. Hope to be able to catch up and check your patch & other
>>> issues in
>>> next week, unless someone else can try it out & commit of course.
>>>
>>> regards
>>>
>>> jb
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Download Intel® Parallel Studio Eval
>>> Try the new software tools for yourself. Speed compiling, find bugs
>>> proactively, and fine-tune applications for parallel performance.
>>> See why Intel Parallel Studio got high marks during beta.
>>> http://p.sf.net/sfu/intel-sw-dev
>>> _______________________________________________
>>> Kdenlive-devel mailing list
>>> Kdenlive-devel at lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/kdenlive-devel
>>>
>>
>>
>

-- 
Sent from my mobile device




More information about the Kdenlive mailing list