Detect AV1 in MKV
This commit is contained in:
parent
a2ff0f418f
commit
1dc8fb4839
|
@ -94,6 +94,8 @@ MediaFormat MatroskaTrack::codecIdToMediaFormat(const string &codecId)
|
||||||
fmt.general = GeneralMediaFormat::Vp8;
|
fmt.general = GeneralMediaFormat::Vp8;
|
||||||
} else if (part1 == "V_VP9") {
|
} else if (part1 == "V_VP9") {
|
||||||
fmt.general = GeneralMediaFormat::Vp9;
|
fmt.general = GeneralMediaFormat::Vp9;
|
||||||
|
} else if (part1 == "V_AV1") {
|
||||||
|
fmt.general = GeneralMediaFormat::Av1;
|
||||||
} else if (part1 == "A_MPEG") {
|
} else if (part1 == "A_MPEG") {
|
||||||
fmt.general = GeneralMediaFormat::Mpeg1Audio;
|
fmt.general = GeneralMediaFormat::Mpeg1Audio;
|
||||||
if (part2 == "L1") {
|
if (part2 == "L1") {
|
||||||
|
|
|
@ -93,6 +93,8 @@ const char *MediaFormat::name() const
|
||||||
default:
|
default:
|
||||||
return "Advanced Video Coding";
|
return "Advanced Video Coding";
|
||||||
}
|
}
|
||||||
|
case GeneralMediaFormat::Av1:
|
||||||
|
return "AOMedia Video 1";
|
||||||
case GeneralMediaFormat::Bitmap:
|
case GeneralMediaFormat::Bitmap:
|
||||||
return "Windows Bitmap";
|
return "Windows Bitmap";
|
||||||
case GeneralMediaFormat::Daala:
|
case GeneralMediaFormat::Daala:
|
||||||
|
@ -489,6 +491,8 @@ const char *MediaFormat::abbreviation() const
|
||||||
return "AMR";
|
return "AMR";
|
||||||
case GeneralMediaFormat::Avc:
|
case GeneralMediaFormat::Avc:
|
||||||
return "H.264";
|
return "H.264";
|
||||||
|
case GeneralMediaFormat::Av1:
|
||||||
|
return "AV1";
|
||||||
case GeneralMediaFormat::Bitmap:
|
case GeneralMediaFormat::Bitmap:
|
||||||
return "BMP";
|
return "BMP";
|
||||||
case GeneralMediaFormat::Daala:
|
case GeneralMediaFormat::Daala:
|
||||||
|
@ -774,6 +778,8 @@ const char *MediaFormat::shortAbbreviation() const
|
||||||
return "AMR";
|
return "AMR";
|
||||||
case GeneralMediaFormat::Avc:
|
case GeneralMediaFormat::Avc:
|
||||||
return "H.264";
|
return "H.264";
|
||||||
|
case GeneralMediaFormat::Av1:
|
||||||
|
return "AV1";
|
||||||
case GeneralMediaFormat::Bitmap:
|
case GeneralMediaFormat::Bitmap:
|
||||||
return "BMP";
|
return "BMP";
|
||||||
case GeneralMediaFormat::Daala:
|
case GeneralMediaFormat::Daala:
|
||||||
|
|
|
@ -36,6 +36,7 @@ enum class GeneralMediaFormat : unsigned int {
|
||||||
Als, /**< ALS */
|
Als, /**< ALS */
|
||||||
Amr, /**< AMR */
|
Amr, /**< AMR */
|
||||||
Avc, /**< Advanced Video Coding */
|
Avc, /**< Advanced Video Coding */
|
||||||
|
Av1, /**< AOMedia Video 1 (AV1) */
|
||||||
Bitmap, /**< Windows Bitmap */
|
Bitmap, /**< Windows Bitmap */
|
||||||
Daala, /**< Daala ("next-generation video codec" by Xiph) */
|
Daala, /**< Daala ("next-generation video codec" by Xiph) */
|
||||||
Dirac, /**< Dirac */
|
Dirac, /**< Dirac */
|
||||||
|
|
|
@ -31,6 +31,7 @@ if [[ -z $testfilespath ]] || [[ -z $testfileurl ]]; then
|
||||||
echo "Usage: testfilepath testfileurl"
|
echo "Usage: testfilepath testfileurl"
|
||||||
echo " testfilepath specifies the directory to store the downloaded files"
|
echo " testfilepath specifies the directory to store the downloaded files"
|
||||||
echo " testfileurl specifies the URL to the server hosting the test files"
|
echo " testfileurl specifies the URL to the server hosting the test files"
|
||||||
|
exit -1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# enter testfiles directory
|
# enter testfiles directory
|
||||||
|
@ -100,31 +101,31 @@ if [[ ! -z $missing ]]; then
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# convert FLAC files for FLAC tests with ffmpeg
|
# convert more testfiles from the downloaded ones (FIXME: use a Makefile)
|
||||||
inform "Creating further testfiles with ffmpeg"
|
inform "Creating further testfiles with ffmpeg and mkvtoolnix"
|
||||||
mkdir -p flac
|
mkdir -p flac
|
||||||
# raw FLAC stream
|
mkdir -p mkv
|
||||||
[[ ! -f flac/test.flac ]] \
|
convert() {
|
||||||
&& ffmpeg -i mtx-test-data/alac/othertest-itunes.m4a -c:a flac flac/test.flac \
|
local filename=$1 && shift
|
||||||
|| inform "Skipping already existing flac/test.flac"
|
if [[ -f $filename ]]; then
|
||||||
# FLAC in Ogg
|
inform "Skipping already existing $filename"
|
||||||
[[ ! -f flac/test.ogg ]] \
|
return
|
||||||
&& ffmpeg -i flac/test.flac -vn -c:a copy flac/test.ogg \
|
fi
|
||||||
|| inform "Skipping already existing flac/test.ogg"
|
"$@"
|
||||||
|
}
|
||||||
# convert further Mkv files mkvmerge
|
convert flac/test.flac ffmpeg -i mtx-test-data/alac/othertest-itunes.m4a -c:a flac flac/test.flac
|
||||||
inform "Creating further testfiles with mkvmerge"
|
convert flac/test.ogg ffmpeg -i flac/test.flac -vn -c:a copy flac/test.ogg
|
||||||
[[ ! -f mkv/nested-tags.mkv ]] \
|
convert mkv/av1_test.mkv ffmpeg -i matroska_wave1/test1.mkv -t 1 -c:v libaom-av1 -crf 30 -cpu-used 5 -an -strict experimental mkv/av1_test.mkv
|
||||||
&& mkvmerge --ui-language en_US \
|
convert mkv/nested-tags.mkv \
|
||||||
--output 'mkv/nested-tags.mkv' \
|
mkvmerge --ui-language en_US \
|
||||||
--no-global-tags \
|
--output 'mkv/nested-tags.mkv' \
|
||||||
--language '0:und' \
|
--no-global-tags \
|
||||||
--default-track '0:yes' \
|
--language '0:und' \
|
||||||
--language '1:und' \
|
--default-track '0:yes' \
|
||||||
--default-track '1:yes' \
|
--language '1:und' \
|
||||||
\( 'mtx-test-data/mkv/tags.mkv' \) \
|
--default-track '1:yes' \
|
||||||
--global-tags "$srcdir/testfiles/mkv/nested-tags.xml" \
|
\( 'mtx-test-data/mkv/tags.mkv' \) \
|
||||||
--track-order '0:0,0:1' \
|
--global-tags "$srcdir/testfiles/mkv/nested-tags.xml" \
|
||||||
|| inform "Skipping already existing mkv/nested-tags.mkv"
|
--track-order '0:0,0:1'
|
||||||
|
|
||||||
success "All testfiles downloaded/converted!"
|
success "All testfiles downloaded/converted!"
|
||||||
|
|
Loading…
Reference in New Issue