Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit343ef4e

Browse files
author
Valentin Noel
committed
Test: add a new python test for audio channels muxing
Audio channels are extracted from different file format sources, tostereo and 5.1 output audio streams.
1 parent2dcdc1c commit343ef4e

File tree

1 file changed

+101
-0
lines changed

1 file changed

+101
-0
lines changed

‎test/pyTest/testMuxAudioChannels.py

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
importos
2+
3+
# Check if environment is setup to run the tests
4+
ifos.environ.get('AVTRANSCODER_TEST_AUDIO_WAVE_FILE')isNoneor \
5+
os.environ.get('AVTRANSCODER_TEST_AUDIO_MOV_FILE')isNone:
6+
fromnose.plugins.skipimportSkipTest
7+
raiseSkipTest("Need to define environment variables "
8+
"AVTRANSCODER_TEST_AUDIO_WAVE_FILE and "
9+
"AVTRANSCODER_TEST_AUDIO_MOV_FILE")
10+
11+
fromnose.toolsimport*
12+
13+
frompyAvTranscoderimportavtranscoderasav
14+
15+
deftestMuxAudioChannelsFromDifferentFormatInputs_20():
16+
"""
17+
Mux audio channels from different formats files, and generate one audio stereo stream
18+
"""
19+
# inputs
20+
inputFileName1=os.environ['AVTRANSCODER_TEST_AUDIO_MOV_FILE']
21+
inputFileName2=os.environ['AVTRANSCODER_TEST_AUDIO_WAVE_FILE']
22+
assert_not_equals(inputFileName1,inputFileName2)
23+
24+
inputs=av.InputStreamDescVector()
25+
inputs.append(av.InputStreamDesc(inputFileName1,1,1))
26+
inputs.append(av.InputStreamDesc(inputFileName2,0,2))
27+
28+
# output
29+
outputFileName="testMuxAudioChannelsFromDifferentFormatInputs_20.wav"
30+
ouputFile=av.OutputFile(outputFileName)
31+
32+
transcoder=av.Transcoder(ouputFile)
33+
transcoder.addStream(inputs,"wave24b48kstereo")
34+
35+
progress=av.ConsoleProgress()
36+
processStat=transcoder.process(progress )
37+
38+
# check process stat returned
39+
audioStat=processStat.getAudioStat(0)
40+
41+
inputFile1=av.InputFile(inputFileName1)
42+
inputFile2=av.InputFile(inputFileName2)
43+
44+
src_audioStream1=inputFile1.getProperties().getAudioProperties()[0]
45+
src_audioStream2=inputFile2.getProperties().getAudioProperties()[0]
46+
47+
min_src_duration=min(src_audioStream1.getDuration(),src_audioStream2.getDuration())
48+
49+
assert_equals(min_src_duration,audioStat.getDuration())
50+
51+
# check dst audio streams
52+
dst_inputFile=av.InputFile(outputFileName)
53+
dst_audioProperties=dst_inputFile.getProperties().getAudioProperties()
54+
assert_equals(1,len(dst_audioProperties))
55+
assert_equals(2,dst_audioProperties[0].getNbChannels())
56+
57+
deftestMuxAudioChannelsFromDifferentFormatInputs_51():
58+
"""
59+
Mux audio channels from different formats files, and generate one audio stereo stream
60+
"""
61+
# inputs
62+
inputFileName1=os.environ['AVTRANSCODER_TEST_AUDIO_MOV_FILE']
63+
inputFileName2=os.environ['AVTRANSCODER_TEST_AUDIO_WAVE_FILE']
64+
assert_not_equals(inputFileName1,inputFileName2)
65+
66+
inputs=av.InputStreamDescVector()
67+
inputs.append(av.InputStreamDesc(inputFileName1,1,1))
68+
inputs.append(av.InputStreamDesc(inputFileName1,1,0))
69+
inputs.append(av.InputStreamDesc(inputFileName2,0,2))
70+
inputs.append(av.InputStreamDesc(inputFileName2,0,5))
71+
inputs.append(av.InputStreamDesc(inputFileName2,0,1))
72+
inputs.append(av.InputStreamDesc(inputFileName2,0,3))
73+
74+
# output
75+
outputFileName="testMuxAudioChannelsFromDifferentFormatInputs_51.wav"
76+
ouputFile=av.OutputFile(outputFileName)
77+
78+
transcoder=av.Transcoder(ouputFile)
79+
transcoder.addStream(inputs,"wave24b48k5_1")
80+
81+
progress=av.ConsoleProgress()
82+
processStat=transcoder.process(progress )
83+
84+
# check process stat returned
85+
audioStat=processStat.getAudioStat(0)
86+
87+
inputFile1=av.InputFile(inputFileName1)
88+
inputFile2=av.InputFile(inputFileName2)
89+
90+
src_audioStream1=inputFile1.getProperties().getAudioProperties()[0]
91+
src_audioStream2=inputFile2.getProperties().getAudioProperties()[0]
92+
93+
min_src_duration=min(src_audioStream1.getDuration(),src_audioStream2.getDuration())
94+
95+
assert_equals(min_src_duration,audioStat.getDuration())
96+
97+
# check dst audio streams
98+
dst_inputFile=av.InputFile(outputFileName)
99+
dst_audioProperties=dst_inputFile.getProperties().getAudioProperties()
100+
assert_equals(1,len(dst_audioProperties))
101+
assert_equals(6,dst_audioProperties[0].getNbChannels())

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp