From 06d04c40c42ee832f409722870eafa184e88d78f Mon Sep 17 00:00:00 2001 From: klarkc Date: Wed, 19 Aug 2015 12:50:01 -0300 Subject: [PATCH] Added manual chapters entry --- data/interface/wfile_properties.ui | 61 +++++++++++++++++++++-------- src/devedeng/dvdauthor_converter.py | 9 +++++ src/devedeng/file_movie.py | 4 +- 3 files changed, 56 insertions(+), 18 deletions(-) diff --git a/data/interface/wfile_properties.ui b/data/interface/wfile_properties.ui index 3b203ea..05d24b8 100644 --- a/data/interface/wfile_properties.ui +++ b/data/interface/wfile_properties.ui @@ -848,23 +848,6 @@ True False - - - Split the file in chapters (for easy seeking) - True - True - False - 0 - True - True - - - 0 - 0 - 2 - 1 - - True @@ -896,6 +879,50 @@ 1 + + + Split the file in chapters (for easy seeking) + True + True + False + 0 + True + True + + + 0 + 0 + 2 + 1 + + + + + True + False + 0 + 4 + Manual chapter list (split by comma in mm:ss format): + + + 0 + 2 + 1 + 1 + + + + + True + True + + + 1 + 2 + 1 + 1 + + diff --git a/src/devedeng/dvdauthor_converter.py b/src/devedeng/dvdauthor_converter.py index 366d85a..3d68b91 100644 --- a/src/devedeng/dvdauthor_converter.py +++ b/src/devedeng/dvdauthor_converter.py @@ -384,9 +384,18 @@ class dvdauthor_converter(devedeng.executor.executor): xml_file.write('chapters="0') if (element.original_length > 5): if (element.divide_in_chapters): # add chapters + if (element.chapter_list_entry): + manual_chapter_list = element.chapter_list_entry.split(",") toadd = element.chapter_size seconds = toadd*60 while seconds < (element.original_length - 4): + # Check manual_chapter_list for manual entries before set next chapter + for idx, m_chapter in enumerate(manual_chapter_list): + m_chapter = m_chapter.split(":") + m_chapter = int(m_chapter[0])*60+int(m_chapter[1]) # Change from mm:ss to seconds + if (m_chapter < seconds): + seconds = m_chapter + del manual_chapter_list[idx] thetime = self.return_time(seconds,False) xml_file.write(","+thetime) seconds += (toadd*60) diff --git a/src/devedeng/file_movie.py b/src/devedeng/file_movie.py index 48dfa30..6209e29 100644 --- a/src/devedeng/file_movie.py +++ b/src/devedeng/file_movie.py @@ -55,6 +55,8 @@ class file_movie(devedeng.interface_manager.interface_manager): self.add_toggle("show_in_menu", True) else: self.original_aspect_ratio = 1.777 # dummy value + + self.add_text("chapter_list_entry", None); self.add_dualtoggle("format_pal","format_ntsc",self.config.PAL) self.add_toggle("video_rate_automatic", True) @@ -107,7 +109,7 @@ class file_movie(devedeng.interface_manager.interface_manager): self.add_show_hide("format_pal", ["size_pal"], ["size_ntsc"]) - self.add_enable_disable("divide_in_chapters", ["chapter_size_spinbutton"], []) + self.add_enable_disable("divide_in_chapters", ["chapter_size_spinbutton", "chapter_list_entry"], []) self.add_enable_disable("video_rate_automatic", [], ["video_spinbutton"]) self.add_enable_disable("audio_rate_automatic", [], ["audio_spinbutton"]) self.add_enable_disable("sound5_1", ["copy_sound"], [])