@@ -99,21 +99,27 @@ def encoder_details(self, encoder):
9999 provides = self .provides ()
100100 return provides .get (encoder , {})
101101
102- def stream_args (self , stream_id , filter_state = None ):
103- stream_encoding = []
102+ def stream_args (self , stream_info , stream_id , encoder_name , filter_state = None ):
103+ encoder_args = []
104+ stream_args = []
104105
105106 # Use defaults for basic mode
106107 if self .settings .get_setting ('mode' ) in ['basic' ]:
107108 defaults = self .options ()
108- stream_encoding += [
109+ stream_args += [
109110 '-preset' , str (defaults .get ('preset' )),
110111 ]
111112 # TODO: Calculate best crf based on source bitrate
112113 default_crf = defaults .get ('constant_quality_scale' )
113114 if self .settings .get_setting ('video_encoder' ) in ['libsvtav1' ]:
114115 default_crf = 23
115- stream_encoding += ['-crf' , str (default_crf )]
116- return stream_encoding
116+ stream_args += ['-crf' , str (default_crf )]
117+ return {
118+ "generic_kwargs" : {},
119+ "advanced_kwargs" : {},
120+ "encoder_args" : encoder_args ,
121+ "stream_args" : stream_args ,
122+ }
117123
118124 stav1_params = ["enable-stat-report=1" ]
119125 stav1_params += ['tune=' + str (self .settings .get_setting ('tune_stvav1' ))]
@@ -136,23 +142,28 @@ def stream_args(self, stream_id, filter_state=None):
136142 # Add additional parameters for SVT-AV1
137143 stav1_params += self .settings .get_setting ('encoder_svtav1_additional_params' )
138144
139- stream_encoding += ['-svtav1-params' , ":" .join (stav1_params )]
145+ stream_args += ['-svtav1-params' , ":" .join (stav1_params )]
140146
141147 # Add the preset
142148 if self .settings .get_setting ('preset' ):
143- stream_encoding += ['-preset' , str (self .settings .get_setting ('preset' ))]
149+ stream_args += ['-preset' , str (self .settings .get_setting ('preset' ))]
144150
145151 if self .settings .get_setting ('encoder_ratecontrol_method' ) in ['CRF' ]:
146152 # Set values for constant quantizer scale
147- stream_encoding += [
153+ stream_args += [
148154 '-crf' , str (self .settings .get_setting ('constant_quality_scale' )),
149155 ]
150156
151157 if self .settings .get_setting ('video_pix_fmt' ) not in ['auto' ]:
152158 # Set the pixel format
153- stream_encoding += ['-pix_fmt' , str (self .settings .get_setting ('video_pix_fmt' ))]
159+ stream_args += ['-pix_fmt' , str (self .settings .get_setting ('video_pix_fmt' ))]
154160
155- return stream_encoding
161+ return {
162+ "generic_kwargs" : {},
163+ "advanced_kwargs" : {},
164+ "encoder_args" : encoder_args ,
165+ "stream_args" : stream_args ,
166+ }
156167
157168 def __set_default_option (self , select_options , key , default_option = None ):
158169 """
0 commit comments