aboutsummaryrefslogtreecommitdiffstats
path: root/lvc
diff options
context:
space:
mode:
Diffstat (limited to 'lvc')
-rw-r--r--lvc/basicconverters.py63
1 files changed, 50 insertions, 13 deletions
diff --git a/lvc/basicconverters.py b/lvc/basicconverters.py
index b51e1b6..71f0f92 100644
--- a/lvc/basicconverters.py
+++ b/lvc/basicconverters.py
@@ -4,7 +4,7 @@ import re
from lvc import converter
-class WebM_UHD(converter.FFmpegConverterInfo1080p):
+class WebM_UHD_VP8(converter.FFmpegConverterInfo1080p):
media_type = 'format'
extension = 'webm'
parameters = ('-f webm -vcodec libvpx -g 120 -lag-in-frames 23 '
@@ -14,7 +14,7 @@ class WebM_UHD(converter.FFmpegConverterInfo1080p):
'-ar 44100')
-class WebM_HD(converter.FFmpegConverterInfo720p):
+class WebM_HD_VP8(converter.FFmpegConverterInfo720p):
media_type = 'format'
extension = 'webm'
parameters = ('-f webm -vcodec libvpx -g 120 -lag-in-frames 16 '
@@ -24,7 +24,7 @@ class WebM_HD(converter.FFmpegConverterInfo720p):
'-ar 44100')
-class WebM_SD(converter.FFmpegConverterInfo480p):
+class WebM_SD_VP8(converter.FFmpegConverterInfo480p):
media_type = 'format'
extension = 'webm'
parameters = ('-f webm -vcodec libvpx -g 120 -lag-in-frames 16 '
@@ -33,10 +33,39 @@ class WebM_SD(converter.FFmpegConverterInfo480p):
'-ar 44100')
+class WebM_UHD_VP9(converter.FFmpegConverterInfo1080p):
+ media_type = 'format'
+ extension = 'webm'
+ parameters = ('-f webm -vcodec libvpx-vp9 -g 120 -lag-in-frames 23 '
+ '-deadline good -cpu-used 0 -vprofile 0 -qmax 51 -qmin 11 '
+ '-slices 4 -b:v 4M -acodec libopus -ab 128k '
+ '-map_metadata -1 '
+ '-ar 44100')
+
+
+class WebM_HD_VP9(converter.FFmpegConverterInfo720p):
+ media_type = 'format'
+ extension = 'webm'
+ parameters = ('-f webm -vcodec libvpx-vp9 -g 120 -lag-in-frames 16 '
+ '-deadline good -cpu-used 0 -vprofile 0 -qmax 51 -qmin 11 '
+ '-slices 4 -b:v 2M -acodec libopus -ab 112k '
+ '-map_metadata -1 '
+ '-ar 44100')
+
+
+class WebM_SD_VP9(converter.FFmpegConverterInfo480p):
+ media_type = 'format'
+ extension = 'webm'
+ parameters = ('-f webm -vcodec libvpx-vp9 -g 120 -lag-in-frames 16 '
+ '-deadline good -cpu-used 0 -vprofile 0 -qmax 53 -qmin 0 '
+ '-b:v 768k -acodec libopus -ab 112k -map_metadata -1 '
+ '-ar 44100')
+
+
class WebM_VP9(converter.FFmpegConverterInfo):
media_type = 'format'
extension = 'webm'
- parameters = ('-f webm -vcodec libvpx-vp9 -g 240 -threads 8 '
+ parameters = ('-f webm -vcodec libvpx-vp9 -g 240 -threads 4 '
'-quality good -crf 32 '
'-b:v 0 -acodec libopus -map_metadata -1')
@@ -44,7 +73,7 @@ class WebM_VP9(converter.FFmpegConverterInfo):
class WebM_VP8(converter.FFmpegConverterInfo):
media_type = 'format'
extension = 'webm'
- parameters = ('-f webm -vcodec libvpx -g 240 -threads 8 '
+ parameters = ('-f webm -vcodec libvpx -g 240 -threads 4 '
'-quality good -crf 32 '
'-b:v 0 -acodec libvorbis -map_metadata -1')
@@ -154,21 +183,29 @@ mp3 = MP3('MP3')
ogg_vorbis = OggVorbis('Ogg Vorbis')
audio_formats = ('Audio', [mp3, ogg_vorbis])
-webm_uhd = WebM_UHD('WebM UHD 1080p')
-webm_hd = WebM_HD('WebM HD 720p')
-webm_sd = WebM_SD('WebM SD 480p')
-webm_vp9 = WebM_VP9('WebM VP9')
+webm_uhd_vp8 = WebM_UHD_VP8('WebM 1080p VP8')
+webm_hd_vp8 = WebM_HD_VP8('WebM 720p VP8')
+webm_sd_vp8 = WebM_SD_VP8('WebM 480p VP8')
webm_vp8 = WebM_VP8('WebM VP8')
+
+webm_uhd_vp9 = WebM_UHD_VP9('WebM 1080p VP9')
+webm_hd_vp9 = WebM_HD_VP9('WebM 720p VP9')
+webm_sd_vp9 = WebM_SD_VP9('WebM 480p VP9')
+webm_vp9 = WebM_VP9('WebM VP9')
+
mp4 = MP4('MP4')
theora = OggTheora('Ogg Theora')
video_formats = ('Video',
[
- webm_uhd,
- webm_hd,
- webm_sd,
- webm_vp9,
+ webm_uhd_vp8,
+ webm_hd_vp8,
+ webm_sd_vp8,
webm_vp8,
+ webm_uhd_vp9,
+ webm_hd_vp9,
+ webm_sd_vp9,
+ webm_vp9,
mp4,
theora
])