]> git.parisson.com Git - telecaster-server.git/commitdiff
add input and output formats args
authorGuillaume Pellerin <guillaume.pellerin@free.fr>
Tue, 23 Apr 2024 15:39:56 +0000 (17:39 +0200)
committerGuillaume Pellerin <yomguy@parisson.com>
Fri, 13 Sep 2024 10:03:38 +0000 (12:03 +0200)
bin/mastering/mastering.py
bin/publishing/telecaster_master-ae.sh
bin/publishing/telecaster_master-crfpa-mp4-staging.sh
bin/publishing/telecaster_master-crfpa-mp4.sh
bin/publishing/telecaster_master-pro.sh

index 88503d9c5f74fa385d6eca4211d68ed230205d7c..2bb22964816937c1f3a18ee7f01f69838a220818 100755 (executable)
@@ -27,9 +27,9 @@ class Logger:
 class TeleCasterMastering(object):
     """docstring for TelemetaTranscode"""
 
-    source_formats = ['webm',]
+    source_formats = ['webm', 'mp4']
     dest_formats = {
-                   'mp3' : {'in': '', 'out': '-vn -acodec libmp3lame -aq 6'},
+                   'mp3' : {'in': '', 'out': '-vn -acodec libmp3lame -aq 6'},
                    'mp4' : {'in': '', 'out': '-c:v libx264-c:a aac -b:a 96k'},
                    'jpg' : {'in': '-ss 0:0:10', 'out': '-frames:v 1 -y'}
                   }
@@ -47,24 +47,43 @@ class TeleCasterMastering(object):
             auto_offset_mode=False,
             dry_run=False,
             force_mode=False,
-            verbose_mode=False):
+            verbose_mode=False,
+            input_formats=None,
+            output_formats=None,
+            ):
 
         self.log_file = log_file
         self.logger = Logger(self.log_file)
         self.root_dir = root_dir
+
         self.nvidia_mode = nvidia_mode
         if self.nvidia_mode:
             for f in self.nvidia_formats:
                 self.dest_formats[f] = self.nvidia_formats[f]
+
         self.vaapi_mode = vaapi_mode
         if self.vaapi_mode:
             for f in self.vaapi_formats:
                 self.dest_formats[f] = self.vaapi_formats[f]
+
         self.auto_offset_mode = auto_offset_mode
         self.dry_run = dry_run
         self.force_mode = force_mode
         self.verbose_mode = verbose_mode
 
+        if input_formats:
+            self.input_formats = input_formats
+        else:
+            self.input_formats = self.source_formats
+
+        if output_formats:
+            self.output_formats = output_formats
+        else:
+            self.output_formats = self.dest_formats
+
+        print(self.input_formats)
+        print(self.output_formats)
+
     def get_ext_in_dir(self, extension, root):
         files = os.listdir(root)
         exts = []
@@ -160,6 +179,9 @@ class TeleCasterMastering(object):
                     if ext[1:] in self.source_formats:
                         source_files.append(path + os.sep + file)
 
+                if self.verbose_mode:
+                    print(source_files)
+
                 if source_files:
                     offsets = {}
                     if len(source_files) > 1 and self.auto_offset_mode:
@@ -183,15 +205,19 @@ class TeleCasterMastering(object):
 
 def main():
     parser = argparse.ArgumentParser()
-    parser.add_argument('--dir', metavar='directory', type=str, help='media directory')
-    parser.add_argument('--log', metavar='logfile', type=str, help='log file', default='/tmp/telecaster.log')
-    parser.add_argument('--nvidia', help='use GPU nvidia encoder', action="store_true")
-    parser.add_argument('--vaapi', help='use VAAPI encoder', action="store_true")
-    parser.add_argument('--auto_offset', help='add auto offset based on audio correlation', action="store_true")
-    parser.add_argument('--dry_run', help='dry run', action="store_true")
-    parser.add_argument('--force', help='force mode', action="store_true")
-    parser.add_argument('--verbose', help='verbose mode', action="store_true")
+    parser.add_argument('-d', '--dir', metavar='directory', type=str, help='media directory')
+    parser.add_argument('-l', '--log', metavar='logfile', type=str, help='log file', default='/tmp/telecaster.log')
+    parser.add_argument('-nv', '--nvidia', help='use GPU nvidia encoder', action="store_true")
+    parser.add_argument('-va', '--vaapi', help='use VAAPI encoder', action="store_true")
+    parser.add_argument('-ao', '--auto_offset', help='add auto offset based on audio correlation', action="store_true")
+    parser.add_argument('-dr', '--dry_run', help='dry run', action="store_true")
+    parser.add_argument('-f', '--force', help='force mode', action="store_true")
+    parser.add_argument('-v', '--verbose', help='verbose mode', action="store_true")
+    parser.add_argument('-i','--input_formats', nargs='+', help='Required input formats', required=True)
+    parser.add_argument('-o','--output_formats', nargs='+', help='Required output formats', required=True)
+
     args = parser.parse_args()
+
     t = TeleCasterMastering(
         args.dir,
         log_file=args.log,
@@ -199,8 +225,11 @@ def main():
         vaapi_mode=args.vaapi,
         auto_offset_mode=args.auto_offset,
         dry_run=args.dry_run,
-        verbose_mode=args.verbose
+        verbose_mode=args.verbose,
+        input_formats=args.input_formats,
+        output_formats=args.output_formats,
         )
+
     t.run()
 
 
index ddc9f5c8a3f015a87a18c6e5c7381f1b2b5e9386..5eaa0d82e9497d163d1147dc91b45d9ee5a5c0ec 100755 (executable)
@@ -20,7 +20,7 @@ emails="webmaster@parisson.com,jeannot@parisson.com"
 subject="TeleCaster remux ($departement)"
 bwlimit=20000
 
-python3 $telecaster_server/bin/mastering/mastering.py --nvidia --dir $media_dir --log $mastering_log
+python3 $telecaster_server/bin/mastering/mastering.py --nvidia --dir $media_dir --log $mastering_log -i webm -o mp4 jpg
 
 rsync -auLKr --bwlimit=$bwlimit --include="*/" --include="$year/**"  --include="$year2/**" --exclude="*.webm" --exclude="@eaDir" $media_dir $media_server:$server_media_dir
 
index 9c82abfbc687bd9dcb5b26ffbad20d88e66366ce..cd798b3729a73e6c7785a38ae2cdfba1df63e1f0 100755 (executable)
@@ -16,7 +16,7 @@ emails="webmaster@parisson.com,jeannot@parisson.com"
 subject="TeleCaster remux (CRFPA)"
 bwlimit=20000
 
-python3 $telecaster_server/bin/mastering/mastering.py --nvidia --dir $local_media_dir --log $mastering_log
+python3 $telecaster_server/bin/mastering/mastering.py --nvidia --dir $local_media_dir --log $mastering_log  -i webm -o mp4 jpg
 
 #find $backup_dir -type d -exec chmod 755 {} \;
 #find $backup_dir -type f -exec chmod 644 {} \;
index 1191a4655beee3c7438cae4cacd2daa17077e23e..789f8a3a667df4e248198eefcd7bcfb1d1009b9d 100755 (executable)
@@ -16,7 +16,7 @@ emails="webmaster@parisson.com,jeannot@parisson.com"
 subject="TeleCaster remux (CRFPA)"
 bwlimit=20000
 
-python3 $telecaster_server/bin/mastering/mastering.py --nvidia --dir $local_media_dir --log $mastering_log
+python3 $telecaster_server/bin/mastering/mastering.py --nvidia --dir $local_media_dir --log $mastering_log  -i webm -o mp4 jpg
 
 #find $backup_dir -type d -exec chmod 755 {} \;
 #find $backup_dir -type f -exec chmod 644 {} \;
index 9afabc9a5eb0dc4c3a21b4c8c50dc93bc689ff1d..d29b7df801d1389142764f441518c3dbfe162a28 100755 (executable)
@@ -18,9 +18,12 @@ for y in `seq $(($year)) $(($year+1))`; do
  server_media_dir="/mnt/prob-videos/Pre-Barreau/Pro-Barreau/Final/$y/"
  archives_media_dir="/home/telecaster/archives/Pre-Barreau/Pro-Barreau/$y/"
 
-  python3 $telecaster_server/bin/mastering/mastering.py --nvidia --auto_offset --dir $archives_media_dir --log $mastering_log
+  python3 $telecaster_server/bin/mastering/mastering.py --nvidia --auto_offset --dir $archives_media_dir --log $mastering_log  -i webm -o mp4 jpg
+
+  python3 $telecaster_server/bin/mastering/mastering.py --dir $local_media_dir --log $mastering_log  -i mp4 -o mp3 jpg
 
   chmod -fR 664 $local_media_dir; chmod -fR +rX $local_media_dir
+
   rsync -aquLKP --bwlimit=15000 --delete --exclude="@eaDir" $local_media_dir $server:$server_media_dir
 
   #ssh $server chmod -R 664 $server_media_dir