Removed minrate during second pass when using two-pass encoding because it fails with ffmpeg
This commit is contained in:
parent
46da595b05
commit
0b677edd1c
4 changed files with 67 additions and 56 deletions
|
|
@ -1,4 +1,7 @@
|
||||||
## History of versions ##
|
## History of versions ##
|
||||||
|
* version 4.8.10 (2017-11-26)
|
||||||
|
* Removed minrate during second pass when using two-pass encoding because it fails with ffmpeg
|
||||||
|
|
||||||
* version 4.8.9 (2017-07-10)
|
* version 4.8.9 (2017-07-10)
|
||||||
* Fixed bug when there are no CD burner installed
|
* Fixed bug when there are no CD burner installed
|
||||||
|
|
||||||
|
|
|
||||||
2
setup.py
2
setup.py
|
|
@ -72,7 +72,7 @@ except:
|
||||||
setup(
|
setup(
|
||||||
name='devedeng',
|
name='devedeng',
|
||||||
|
|
||||||
version='4.8.9',
|
version='4.8.10',
|
||||||
|
|
||||||
description='A video DVD creator',
|
description='A video DVD creator',
|
||||||
long_description="A program that allows to create video DVDs",
|
long_description="A program that allows to create video DVDs",
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,7 @@ import os
|
||||||
import devedeng.configuration_data
|
import devedeng.configuration_data
|
||||||
import devedeng.avbase
|
import devedeng.avbase
|
||||||
import devedeng.mux_dvd_menu
|
import devedeng.mux_dvd_menu
|
||||||
|
import devedeng.project
|
||||||
|
|
||||||
|
|
||||||
class avconv(devedeng.avbase.avbase):
|
class avconv(devedeng.avbase.avbase):
|
||||||
|
|
@ -242,6 +243,7 @@ class avconv(devedeng.avbase.avbase):
|
||||||
self.command_var.append("libmp3lame")
|
self.command_var.append("libmp3lame")
|
||||||
self.command_var.append("-f")
|
self.command_var.append("-f")
|
||||||
self.command_var.append("avi")
|
self.command_var.append("avi")
|
||||||
|
if not pass2:
|
||||||
self.command_var.append("-maxrate:v")
|
self.command_var.append("-maxrate:v")
|
||||||
self.command_var.append(str(maxrate))
|
self.command_var.append(str(maxrate))
|
||||||
self.command_var.append("-minrate:v")
|
self.command_var.append("-minrate:v")
|
||||||
|
|
@ -255,6 +257,7 @@ class avconv(devedeng.avbase.avbase):
|
||||||
self.command_var.append("libmp3lame")
|
self.command_var.append("libmp3lame")
|
||||||
self.command_var.append("-f")
|
self.command_var.append("-f")
|
||||||
self.command_var.append("matroska")
|
self.command_var.append("matroska")
|
||||||
|
if not pass2:
|
||||||
self.command_var.append("-maxrate:v")
|
self.command_var.append("-maxrate:v")
|
||||||
self.command_var.append(str(maxrate))
|
self.command_var.append(str(maxrate))
|
||||||
self.command_var.append("-minrate:v")
|
self.command_var.append("-minrate:v")
|
||||||
|
|
@ -289,9 +292,9 @@ class avconv(devedeng.avbase.avbase):
|
||||||
self.command_var.append("yuv420p")
|
self.command_var.append("yuv420p")
|
||||||
self.command_var.append("-maxrate:v")
|
self.command_var.append("-maxrate:v")
|
||||||
if maxrate > (devedeng.project.devede_project.dvd_max_bps_base[0] * 1000):
|
if maxrate > (devedeng.project.devede_project.dvd_max_bps_base[0] * 1000):
|
||||||
maxrate = devedeng.project.devede_project.dvd_max_bps_base[
|
maxrate = devedeng.project.devede_project.dvd_max_bps_base[0] * 1000
|
||||||
0] * 1000
|
|
||||||
self.command_var.append(str(maxrate))
|
self.command_var.append(str(maxrate))
|
||||||
|
if not pass2:
|
||||||
self.command_var.append("-minrate:v")
|
self.command_var.append("-minrate:v")
|
||||||
if minrate < (devedeng.project.devede_project.dvd_min_bps * 1000):
|
if minrate < (devedeng.project.devede_project.dvd_min_bps * 1000):
|
||||||
minrate = devedeng.project.devede_project.dvd_min_bps * 1000
|
minrate = devedeng.project.devede_project.dvd_min_bps * 1000
|
||||||
|
|
@ -385,9 +388,9 @@ class avconv(devedeng.avbase.avbase):
|
||||||
self.command_var.append("yuv420p")
|
self.command_var.append("yuv420p")
|
||||||
self.command_var.append("-maxrate:v")
|
self.command_var.append("-maxrate:v")
|
||||||
if maxrate > (devedeng.project.devede_project.svcd_max_bps_base[0] * 1000):
|
if maxrate > (devedeng.project.devede_project.svcd_max_bps_base[0] * 1000):
|
||||||
maxrate = devedeng.project.devede_project.svcd_max_bps_base[
|
maxrate = devedeng.project.devede_project.svcd_max_bps_base[0] * 1000
|
||||||
0] * 1000
|
|
||||||
self.command_var.append(str(maxrate))
|
self.command_var.append(str(maxrate))
|
||||||
|
if not pass2:
|
||||||
self.command_var.append("-minrate:v")
|
self.command_var.append("-minrate:v")
|
||||||
if minrate < (devedeng.project.devede_project.svcd_min_bps * 1000):
|
if minrate < (devedeng.project.devede_project.svcd_min_bps * 1000):
|
||||||
minrate = (devedeng.project.devede_project.svcd_min_bps * 1000)
|
minrate = (devedeng.project.devede_project.svcd_min_bps * 1000)
|
||||||
|
|
@ -428,7 +431,7 @@ class avconv(devedeng.avbase.avbase):
|
||||||
if (self.config.disc_type == "divx") or (self.config.disc_type == "mkv"):
|
if (self.config.disc_type == "divx") or (self.config.disc_type == "mkv"):
|
||||||
self.command_var.append("-g")
|
self.command_var.append("-g")
|
||||||
self.command_var.append("300")
|
self.command_var.append("300")
|
||||||
elif file_project.gop12 and (file_project.no_reencode_audio_video == False):
|
elif file_project.gop12 and (not file_project.no_reencode_audio_video):
|
||||||
self.command_var.append("-g")
|
self.command_var.append("-g")
|
||||||
self.command_var.append("12")
|
self.command_var.append("12")
|
||||||
|
|
||||||
|
|
@ -475,10 +478,10 @@ class avconv(devedeng.avbase.avbase):
|
||||||
|
|
||||||
if (vcd == False) and (file_project.no_reencode_audio_video == False):
|
if (vcd == False) and (file_project.no_reencode_audio_video == False):
|
||||||
self.command_var.append("-b:a")
|
self.command_var.append("-b:a")
|
||||||
self.command_var.append(str(file_project.audio_rate_final) + "k")
|
self.command_var.append(str(file_project.audio_rate_final*1000))
|
||||||
|
|
||||||
self.command_var.append("-b:v")
|
self.command_var.append("-b:v")
|
||||||
self.command_var.append(str(file_project.video_rate_final) + "k")
|
self.command_var.append(str(file_project.video_rate_final*1000))
|
||||||
|
|
||||||
if file_project.two_pass_encoding == True:
|
if file_project.two_pass_encoding == True:
|
||||||
self.command_var.append("-passlogfile")
|
self.command_var.append("-passlogfile")
|
||||||
|
|
@ -518,7 +521,7 @@ class avconv(devedeng.avbase.avbase):
|
||||||
else:
|
else:
|
||||||
self.command_var.append("ntsc-dvd")
|
self.command_var.append("ntsc-dvd")
|
||||||
self.command_var.append("-acodec")
|
self.command_var.append("-acodec")
|
||||||
if (use_mp2):
|
if use_mp2:
|
||||||
self.command_var.append("mp2")
|
self.command_var.append("mp2")
|
||||||
if (audio_rate > 384):
|
if (audio_rate > 384):
|
||||||
audio_rate = 384 # max bitrate for mp2
|
audio_rate = 384 # max bitrate for mp2
|
||||||
|
|
|
||||||
|
|
@ -107,6 +107,7 @@ class ffmpeg(devedeng.executor.executor):
|
||||||
devedeng.executor.executor.__init__(self)
|
devedeng.executor.executor.__init__(self)
|
||||||
self.config = devedeng.configuration_data.configuration.get_config()
|
self.config = devedeng.configuration_data.configuration.get_config()
|
||||||
|
|
||||||
|
|
||||||
def convert_file(self, file_project, output_file, video_length, pass2=False):
|
def convert_file(self, file_project, output_file, video_length, pass2=False):
|
||||||
|
|
||||||
if file_project.two_pass_encoding:
|
if file_project.two_pass_encoding:
|
||||||
|
|
@ -237,6 +238,7 @@ class ffmpeg(devedeng.executor.executor):
|
||||||
self.command_var.append("libmp3lame")
|
self.command_var.append("libmp3lame")
|
||||||
self.command_var.append("-f")
|
self.command_var.append("-f")
|
||||||
self.command_var.append("avi")
|
self.command_var.append("avi")
|
||||||
|
if not pass2:
|
||||||
self.command_var.append("-maxrate:v")
|
self.command_var.append("-maxrate:v")
|
||||||
self.command_var.append(str(maxrate))
|
self.command_var.append(str(maxrate))
|
||||||
self.command_var.append("-minrate:v")
|
self.command_var.append("-minrate:v")
|
||||||
|
|
@ -250,6 +252,7 @@ class ffmpeg(devedeng.executor.executor):
|
||||||
self.command_var.append("libmp3lame")
|
self.command_var.append("libmp3lame")
|
||||||
self.command_var.append("-f")
|
self.command_var.append("-f")
|
||||||
self.command_var.append("matroska")
|
self.command_var.append("matroska")
|
||||||
|
if not pass2:
|
||||||
self.command_var.append("-maxrate:v")
|
self.command_var.append("-maxrate:v")
|
||||||
self.command_var.append(str(maxrate))
|
self.command_var.append(str(maxrate))
|
||||||
self.command_var.append("-minrate:v")
|
self.command_var.append("-minrate:v")
|
||||||
|
|
@ -284,9 +287,9 @@ class ffmpeg(devedeng.executor.executor):
|
||||||
self.command_var.append("yuv420p")
|
self.command_var.append("yuv420p")
|
||||||
self.command_var.append("-maxrate:v")
|
self.command_var.append("-maxrate:v")
|
||||||
if maxrate > (devedeng.project.devede_project.dvd_max_bps_base[0] * 1000):
|
if maxrate > (devedeng.project.devede_project.dvd_max_bps_base[0] * 1000):
|
||||||
maxrate = devedeng.project.devede_project.dvd_max_bps_base[
|
maxrate = devedeng.project.devede_project.dvd_max_bps_base[0] * 1000
|
||||||
0] * 1000
|
|
||||||
self.command_var.append(str(maxrate))
|
self.command_var.append(str(maxrate))
|
||||||
|
if not pass2:
|
||||||
self.command_var.append("-minrate:v")
|
self.command_var.append("-minrate:v")
|
||||||
if minrate < (devedeng.project.devede_project.dvd_min_bps * 1000):
|
if minrate < (devedeng.project.devede_project.dvd_min_bps * 1000):
|
||||||
minrate = devedeng.project.devede_project.dvd_min_bps * 1000
|
minrate = devedeng.project.devede_project.dvd_min_bps * 1000
|
||||||
|
|
@ -380,9 +383,9 @@ class ffmpeg(devedeng.executor.executor):
|
||||||
self.command_var.append("yuv420p")
|
self.command_var.append("yuv420p")
|
||||||
self.command_var.append("-maxrate:v")
|
self.command_var.append("-maxrate:v")
|
||||||
if maxrate > (devedeng.project.devede_project.svcd_max_bps_base[0] * 1000):
|
if maxrate > (devedeng.project.devede_project.svcd_max_bps_base[0] * 1000):
|
||||||
maxrate = devedeng.project.devede_project.svcd_max_bps_base[
|
maxrate = devedeng.project.devede_project.svcd_max_bps_base[0] * 1000
|
||||||
0] * 1000
|
|
||||||
self.command_var.append(str(maxrate))
|
self.command_var.append(str(maxrate))
|
||||||
|
if not pass2:
|
||||||
self.command_var.append("-minrate:v")
|
self.command_var.append("-minrate:v")
|
||||||
if minrate < (devedeng.project.devede_project.svcd_min_bps * 1000):
|
if minrate < (devedeng.project.devede_project.svcd_min_bps * 1000):
|
||||||
minrate = (devedeng.project.devede_project.svcd_min_bps * 1000)
|
minrate = (devedeng.project.devede_project.svcd_min_bps * 1000)
|
||||||
|
|
@ -470,14 +473,14 @@ class ffmpeg(devedeng.executor.executor):
|
||||||
|
|
||||||
if (vcd == False) and (file_project.no_reencode_audio_video == False):
|
if (vcd == False) and (file_project.no_reencode_audio_video == False):
|
||||||
self.command_var.append("-b:a")
|
self.command_var.append("-b:a")
|
||||||
self.command_var.append(str(file_project.audio_rate_final) + "k")
|
self.command_var.append(str(file_project.audio_rate_final*1000))
|
||||||
|
|
||||||
self.command_var.append("-b:v")
|
self.command_var.append("-b:v")
|
||||||
self.command_var.append(str(file_project.video_rate_final) + "k")
|
self.command_var.append(str(file_project.video_rate_final*1000))
|
||||||
|
|
||||||
if file_project.two_pass_encoding == True:
|
if file_project.two_pass_encoding == True:
|
||||||
self.command_var.append("-passlogfile")
|
self.command_var.append("-passlogfile")
|
||||||
self.command_var.append(output_file)
|
self.command_var.append(output_file + ".passlog")
|
||||||
self.command_var.append("-pass")
|
self.command_var.append("-pass")
|
||||||
if pass2:
|
if pass2:
|
||||||
self.command_var.append("2")
|
self.command_var.append("2")
|
||||||
|
|
@ -515,6 +518,8 @@ class ffmpeg(devedeng.executor.executor):
|
||||||
self.command_var.append("-acodec")
|
self.command_var.append("-acodec")
|
||||||
if use_mp2:
|
if use_mp2:
|
||||||
self.command_var.append("mp2")
|
self.command_var.append("mp2")
|
||||||
|
if (audio_rate > 384):
|
||||||
|
audio_rate = 384 # max bitrate for mp2
|
||||||
else:
|
else:
|
||||||
self.command_var.append("ac3")
|
self.command_var.append("ac3")
|
||||||
self.command_var.append("-s")
|
self.command_var.append("-s")
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue