Skip to content

Commit b08bead

Browse files
author
Clement Champetier
committed
pyTest testTranscoderRewrap: clean testRewrap Video/Audio stream
* After audio rewrap, check: * format * the audio stream * After video rewrap, check: * format * the video stream
1 parent 5d1ebfd commit b08bead

File tree

1 file changed

+36
-103
lines changed

1 file changed

+36
-103
lines changed

test/pyTest/testTranscoderRewrap.py

Lines changed: 36 additions & 103 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44

55
from pyAvTranscoder import avtranscoder as av
66

7-
87
def testRewrapAudioStream():
98
"""
109
Rewrap one audio stream.
@@ -32,39 +31,16 @@ def testRewrapAudioStream():
3231
dst_properties = dst_inputFile.getProperties()
3332
dst_audioStream = dst_properties.audioStreams[0]
3433

34+
# check format
3535
assert_equals( src_properties.formatName, dst_properties.formatName )
3636
assert_equals( src_properties.formatLongName, dst_properties.formatLongName )
37-
assert_equals( src_properties.streamsCount, dst_properties.streamsCount )
3837
assert_equals( src_properties.startTime, dst_properties.startTime )
3938
assert_equals( src_properties.duration, dst_properties.duration )
40-
assert_almost_equals( src_properties.bitRate, dst_properties.bitRate, delta=10 )
39+
deltaBitRateAudio = 10
40+
assert_almost_equals( src_properties.bitRate, dst_properties.bitRate, delta=deltaBitRateAudio )
4141
assert_equals( src_properties.packetSize, dst_properties.packetSize )
4242

43-
assert_equals( len( src_properties.audioStreams ), len( dst_properties.audioStreams ) )
44-
for stream in range( 0, len( src_properties.audioStreams ) ):
45-
src_audioStream = src_properties.audioStreams[stream]
46-
dst_audioStream = dst_properties.audioStreams[stream]
47-
48-
assert_equals( src_audioStream.codecName, dst_audioStream.codecName )
49-
assert_equals( src_audioStream.codecLongName, dst_audioStream.codecLongName )
50-
assert_equals( src_audioStream.sampleFormat, dst_audioStream.sampleFormat )
51-
#assert_equals( src_audioStream.channelLayout, dst_audioStream.channelLayout )
52-
assert_equals( src_audioStream.channelName, dst_audioStream.channelName )
53-
assert_equals( src_audioStream.channelDescription, dst_audioStream.channelDescription )
54-
assert_equals( src_audioStream.streamId, dst_audioStream.streamId )
55-
assert_equals( src_audioStream.codecId, dst_audioStream.codecId )
56-
assert_equals( src_audioStream.sampleRate, dst_audioStream.sampleRate )
57-
assert_equals( src_audioStream.channels, dst_audioStream.channels )
58-
assert_equals( src_audioStream.bit_rate, dst_audioStream.bit_rate )
59-
assert_equals( src_audioStream.codecId, dst_audioStream.codecId )
60-
61-
assert_equals( len( src_audioStream.metadatas ), len( dst_audioStream.metadatas ) )
62-
for metadata in range( 0, len( src_audioStream.metadatas ) ):
63-
src_metadata = src_audioStream.metadatas[metadata]
64-
dst_metadata = dst_audioStream.metadatas[metadata]
65-
66-
assert_equals( src_metadata, dst_metadata )
67-
43+
# check audio stream
6844
assert_equals( src_audioStream.codecName, dst_audioStream.codecName )
6945
assert_equals( src_audioStream.codecLongName, dst_audioStream.codecLongName )
7046
assert_equals( src_audioStream.sampleFormat, dst_audioStream.sampleFormat )
@@ -78,6 +54,11 @@ def testRewrapAudioStream():
7854
assert_equals( src_audioStream.bit_rate, dst_audioStream.bit_rate )
7955

8056
assert_equals( len( src_audioStream.metadatas ), len( dst_audioStream.metadatas ) )
57+
for metadata in range( 0, len( src_audioStream.metadatas ) ):
58+
src_metadata = src_audioStream.metadatas[metadata]
59+
dst_metadata = dst_audioStream.metadatas[metadata]
60+
61+
assert_equals( src_metadata, dst_metadata )
8162

8263
def testRewrapVideoStream():
8364
"""
@@ -106,77 +87,16 @@ def testRewrapVideoStream():
10687
dst_properties = dst_inputFile.getProperties()
10788
dst_videoStream = dst_properties.videoStreams[0]
10889

109-
assert_equals( len( src_properties.videoStreams ), len( dst_properties.videoStreams ) )
110-
for stream in range( 0, len( src_properties.videoStreams ) ):
111-
src_videoStream = src_properties.videoStreams[stream]
112-
dst_videoStream = dst_properties.videoStreams[stream]
113-
114-
assert_equals( src_videoStream.codecName, dst_videoStream.codecName )
115-
assert_equals( src_videoStream.codecLongName, dst_videoStream.codecLongName )
116-
assert_equals( src_videoStream.profileName, dst_videoStream.profileName )
117-
assert_equals( src_videoStream.colorTransfert, dst_videoStream.colorTransfert )
118-
assert_equals( src_videoStream.colorspace, dst_videoStream.colorspace )
119-
assert_equals( src_videoStream.colorRange, dst_videoStream.colorRange )
120-
assert_equals( src_videoStream.colorPrimaries, dst_videoStream.colorPrimaries )
121-
assert_equals( src_videoStream.chromaSampleLocation, dst_videoStream.chromaSampleLocation )
122-
assert_equals( src_videoStream.fieldOrder, dst_videoStream.fieldOrder )
123-
assert_equals( src_videoStream.pixelName, dst_videoStream.pixelName )
124-
assert_equals( src_videoStream.endianess, dst_videoStream.endianess )
125-
assert_equals( src_videoStream.startTimecode, dst_videoStream.startTimecode )
126-
#assert_equals( src_videoStream.timeBase, dst_videoStream.timeBase )
127-
#assert_equals( src_videoStream.sar, dst_videoStream.sar )
128-
#assert_equals( src_videoStream.dar, dst_videoStream.dar )
129-
assert_equals( src_videoStream.streamId, dst_videoStream.streamId )
130-
assert_equals( src_videoStream.codecId, dst_videoStream.codecId )
131-
assert_equals( src_videoStream.bitRate, dst_videoStream.bitRate )
132-
assert_equals( src_videoStream.maxBitRate, dst_videoStream.maxBitRate )
133-
assert_equals( src_videoStream.minBitRate, dst_videoStream.minBitRate )
134-
assert_equals( src_videoStream.ticksPerFrame, dst_videoStream.ticksPerFrame )
135-
assert_equals( src_videoStream.width, dst_videoStream.width )
136-
assert_equals( src_videoStream.height, dst_videoStream.height )
137-
assert_equals( src_videoStream.gopSize, dst_videoStream.gopSize )
138-
assert_equals( src_videoStream.dtgActiveFormat, dst_videoStream.dtgActiveFormat )
139-
assert_equals( src_videoStream.referencesFrames, dst_videoStream.referencesFrames )
140-
assert_equals( src_videoStream.profile, dst_videoStream.profile )
141-
assert_equals( src_videoStream.level, dst_videoStream.level )
142-
assert_equals( src_videoStream.componentsCount, dst_videoStream.componentsCount )
143-
assert_equals( src_videoStream.chromaWidth, dst_videoStream.chromaWidth )
144-
assert_equals( src_videoStream.chromaHeight, dst_videoStream.chromaHeight )
145-
assert_equals( src_videoStream.fps, dst_videoStream.fps )
146-
assert_equals( src_videoStream.hasBFrames, dst_videoStream.hasBFrames )
147-
assert_equals( src_videoStream.indexedColors, dst_videoStream.indexedColors )
148-
assert_equals( src_videoStream.bitWisePacked, dst_videoStream.bitWisePacked )
149-
assert_equals( src_videoStream.hardwareAcceleration, dst_videoStream.hardwareAcceleration )
150-
assert_equals( src_videoStream.notFirstPlane, dst_videoStream.notFirstPlane )
151-
assert_equals( src_videoStream.rgbPixelData, dst_videoStream.rgbPixelData )
152-
assert_equals( src_videoStream.pseudoPaletted, dst_videoStream.pseudoPaletted )
153-
assert_equals( src_videoStream.asAlpha, dst_videoStream.asAlpha )
154-
assert_equals( src_videoStream.isInterlaced, dst_videoStream.isInterlaced )
155-
assert_equals( src_videoStream.topFieldFirst, dst_videoStream.topFieldFirst )
156-
157-
assert_equals( len( src_videoStream.gopStructure ), len( dst_videoStream.gopStructure ) )
158-
for gop in range( 0, len( src_videoStream.gopStructure ) ):
159-
src_gop = src_videoStream.gopStructure[gop]
160-
dst_gop = dst_videoStream.gopStructure[gop]
161-
162-
assert_equals( src_gop, dst_gop )
163-
164-
assert_equals( len( src_videoStream.channels ), len( dst_videoStream.channels ) )
165-
for channel in range( 0, len( src_videoStream.channels ) ):
166-
src_channel = src_videoStream.channels[channel]
167-
dst_channel = dst_videoStream.channels[channel]
168-
169-
assert_equals( src_channel.id, dst_channel.id )
170-
assert_equals( src_channel.chromaHeight, dst_channel.chromaHeight )
171-
assert_equals( src_channel.bitStep, dst_channel.bitStep )
172-
173-
assert_equals( len( src_videoStream.metadatas ), len( dst_videoStream.metadatas ) )
174-
for metadata in range( 0, len( src_videoStream.metadatas ) ):
175-
src_metadata = src_videoStream.metadatas[metadata]
176-
dst_metadata = dst_videoStream.metadatas[metadata]
177-
178-
assert_equals( src_metadata, dst_metadata )
90+
# check format
91+
assert_equals( src_properties.formatName, dst_properties.formatName )
92+
assert_equals( src_properties.formatLongName, dst_properties.formatLongName )
93+
assert_equals( src_properties.startTime, dst_properties.startTime )
94+
assert_equals( src_properties.duration, dst_properties.duration )
95+
deltaBitRateVideo = 500000
96+
assert_almost_equals( src_properties.bitRate, dst_properties.bitRate, delta=deltaBitRateVideo )
97+
assert_equals( src_properties.packetSize, dst_properties.packetSize )
17998

99+
# check video stream
180100
assert_equals( src_videoStream.codecName, dst_videoStream.codecName )
181101
assert_equals( src_videoStream.codecLongName, dst_videoStream.codecLongName )
182102
assert_equals( src_videoStream.profileName, dst_videoStream.profileName )
@@ -186,10 +106,8 @@ def testRewrapVideoStream():
186106
assert_equals( src_videoStream.colorPrimaries, dst_videoStream.colorPrimaries )
187107
assert_equals( src_videoStream.chromaSampleLocation, dst_videoStream.chromaSampleLocation )
188108
assert_equals( src_videoStream.fieldOrder, dst_videoStream.fieldOrder )
189-
190109
assert_equals( src_videoStream.pixelName, dst_videoStream.pixelName )
191110
assert_equals( src_videoStream.endianess, dst_videoStream.endianess )
192-
193111
assert_equals( src_videoStream.startTimecode, dst_videoStream.startTimecode )
194112

195113
#assert_equals( src_videoStream.timeBase.num, dst_videoStream.timeBase.num )
@@ -215,9 +133,7 @@ def testRewrapVideoStream():
215133
assert_equals( src_videoStream.componentsCount, dst_videoStream.componentsCount )
216134
assert_equals( src_videoStream.chromaWidth, dst_videoStream.chromaWidth )
217135
assert_equals( src_videoStream.chromaHeight, dst_videoStream.chromaHeight )
218-
219136
assert_equals( src_videoStream.fps, dst_videoStream.fps )
220-
221137
assert_equals( src_videoStream.hasBFrames, dst_videoStream.hasBFrames )
222138
assert_equals( src_videoStream.indexedColors, dst_videoStream.indexedColors )
223139
assert_equals( src_videoStream.bitWisePacked, dst_videoStream.bitWisePacked )
@@ -228,9 +144,26 @@ def testRewrapVideoStream():
228144
assert_equals( src_videoStream.asAlpha, dst_videoStream.asAlpha )
229145
assert_equals( src_videoStream.isInterlaced, dst_videoStream.isInterlaced )
230146
assert_equals( src_videoStream.topFieldFirst, dst_videoStream.topFieldFirst )
231-
232147

233148
assert_equals( len( src_videoStream.gopStructure ), len( dst_videoStream.gopStructure ) )
149+
for gop in range( 0, len( src_videoStream.gopStructure ) ):
150+
src_gop = src_videoStream.gopStructure[gop]
151+
dst_gop = dst_videoStream.gopStructure[gop]
152+
153+
assert_equals( src_gop, dst_gop )
154+
234155
assert_equals( len( src_videoStream.channels ), len( dst_videoStream.channels ) )
156+
for channel in range( 0, len( src_videoStream.channels ) ):
157+
src_channel = src_videoStream.channels[channel]
158+
dst_channel = dst_videoStream.channels[channel]
159+
160+
assert_equals( src_channel.id, dst_channel.id )
161+
assert_equals( src_channel.chromaHeight, dst_channel.chromaHeight )
162+
assert_equals( src_channel.bitStep, dst_channel.bitStep )
235163

236164
assert_equals( len( src_videoStream.metadatas ), len( dst_videoStream.metadatas ) )
165+
for metadata in range( 0, len( src_videoStream.metadatas ) ):
166+
src_metadata = src_videoStream.metadatas[metadata]
167+
dst_metadata = dst_videoStream.metadatas[metadata]
168+
169+
assert_equals( src_metadata, dst_metadata )

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy