Add MPEG 2 vs 4 discrimination for audio extract

This commit is contained in:
df 2020-09-07 14:25:47 +00:00
parent 2d06ec7811
commit 6dc3cc0dc1
1 changed files with 11 additions and 1 deletions

View File

@ -13,6 +13,9 @@ class ts {
title ""
synopsis ""
definition ""
mpeglevel 2
# discriminate between 2=MPEG Video/MP2 and 4=H.264/AAC, say 260kbyte/s vs 150
_mpegLevelThreshold 205000
channel_num 0
channel_name ""
start 0
@ -38,6 +41,7 @@ class ts {
tvdb_data {}
}
ts method bfile {} {
return [file tail [file rootname $file]]
}
@ -67,6 +71,12 @@ ts method _parse {line} {
set synopsis [xconv $synopsis]
set flags [split [string range $flags_list 0 end-1] ,]
# discriminate between MPEG Video/MP2 and H.264/AAC
set len [$self duration 1]
if {$len > 0 && ([$self size]/$len < [[ts] get _mpeglevelThreshold])} {
set mpeglevel 4
}
}
ts method lastmod {} {
@ -393,7 +403,7 @@ ts method mkmp3 {{slow false} {tmp ""} {v 0} {br 128}} {
set ext mp3
} else {
set opts [list -c:a copy]
if {$definition eq "HD"} {
if {$mpeglevel eq 4} {
set ext loas
} else {
set ext mp2