summaryrefslogtreecommitdiffstats
path: root/media/test/data/README
blob: 4b85fe39dff39c307799522b1583d6893593c1a7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

bear-320x240.webm - WebM encode of bear.1280x720.mp4 resized to 320x240.
bear-320x240-video-only.webm - The video track of bear-320x240.webm.
bear-320x240-audio-only.webm - The audio track of bear-320x240.webm.
bear-vp9.webm - VP9 video only WebM file.
bear-vp9-opus.webm - VP9 Video with Opus Audio.
bear-vp8-webvtt.webm - WebM VP8 video with WebVTT subtitle track.
bear-vp8a.webm - WebM VP8 video with alpha channel.
bear-vp8a-odd-dimensions.webm - WebM VP8 video with alpha channel and odd dimensions.
bear-opus.webm - Opus Audio only WebM file.
bear-opus-end-trimming.webm - File to test end trimming. It has one byte
                              artificially added so that there is maximum
                              padding at the end. It is an Opus Audio only WebM
                              file.
no_streams.webm - Header, Info, & Tracks element from bear-320x240.webm slightly corrupted so it looks
                  like there are no tracks.
nonzero-start-time.webm - Has the same headers as bear-320x240.webm but the first cluster of this file
                          is the second cluster of bear-320x240.webm. This creates the situation where
                          the media data doesn't start at time 0.
bear-320x240-live.webm - bear-320x240.webm remuxed w/o a duration and using clusters with unknown sizes.
                         ffmpeg -i bear-320x240.webm -acodec copy -vcodec copy -f webm pipe:1 > bear-320x240-live.webm
vp8-I-frame-160x240 - The first I frame of a 160x240 reencode of bear-320x240.webm.
vp8-I-frame-320x120 - The first I frame of a 320x120 reencode of bear-320x240.webm.
vp8-I-frame-320x240 - The first I frame of bear-320x240.webm.
vp8-I-frame-320x480 - The first I frame of a 320x480 reencode of bear-320x240.webm.
vp8-I-frame-640x240 - The first I frame of a 640x240 reencode of bear-320x240.webm.
vp8-corrupt-I-frame - A copy of vp8-I-frame-320x240 w/ all bytes XORed w/ 0xA5.

AAC test data from MPEG-DASH demoplayer (44100 Hz, stereo)
Duration of each packet is (1024/44100 Hz), approximately 23.22 ms.
aac-44100-packet-0  - timestamp: 0ms
aac-44100-packet-1  - timestamp: 23.22ms
aac-44100-packet-2  - timestamp: 46.44ms
aac-44100-packet-3  - timestamp: 69.66ms

Vorbis test data from bear.ogv (44100 Hz, 16 bits, stereo)
vorbis-extradata - Vorbis extradata section
vorbis-packet-0  - timestamp: 0ms, duration: 0ms
vorbis-packet-1  - timestamp: 0ms, duration: 0ms
vorbis-packet-2  - timestamp: 0ms, duration: 0ms
vorbis-packet-3  - timestamp: 2902ms, duration: 0ms

// 10-bit test file(s)
bear-320x180-hi10p.mp4

// Encrypted Files
bear-1280x720-a_frag-cenc.mp4 - A fragmented MP4 version of the audio track of bear-1280x720.mp4 encrypted (ISO CENC) using key ID [1] and key [2].
bear-1280x720-a_frag-cenc-key_rotation.mp4 - A fragmented MP4 version of the audio track of bear-1280x720.mp4 encrypted (ISO CENC) using key ID [1] and key [2] with key rotation [3].
bear-1280x720-a_frag-cenc_clear-all.mp4 - Same as bear-1280x720-a_frag-cenc.mp4 but no fragments are encrypted.
bear-1280x720-v_frag-cenc.mp4 - A fragmented MP4 version of the video track of bear-1280x720.mp4 encrypted (ISO CENC) using key ID [1] and key [2].
bear-1280x720-v_frag-cenc-key_rotation.mp4 - A fragmented MP4 version of the video track of bear-1280x720.mp4 encrypted (ISO CENC) using key ID [1] and key [2] with key rotation [3].
bear-1280x720-v_frag-cenc_clear-all.mp4 - Same as bear-1280x720-v_frag-cenc.mp4 but no fragments are encrypted.
bear-1280x720-a_frag-cenc_missing-saiz-saio.mp4 - An invalid file similar to bear-1280x720-a_frag-cenc.mp4 but has no saiz and saio boxes. To save space, it has only one encrypted sample.
bear-320x240-16x9-aspect-av_enc-av.webm - bear-320x240-16x9-aspect.webm with audio & video encrypted using key ID [1] and key [2]
bear-320x240-av_enc-av.webm - bear-320x240.webm with audio & video encrypted using key ID [1] and key [2].
bear-320x240-av_enc-av_clear-1s.webm - Same as bear-320x240-av_enc-av.webm but with no frames in the first second encrypted.
bear-320x240-av_enc-av_clear-all.webm - Same as bear-320x240-av_enc-av.webm but with no frames encrypted.
bear-640x360-av_enc-av.webm - bear-640x360.webm with audio & video encrypted using key ID [1] and key [2].
bear-320x240-av_enc-v.webm - bear-320x240.webm with video track encrypted using key ID [1] and key [2].
bear-320x240-av_enc-a.webm - bear-320x240.webm with audio track encrypted using key ID [1] and key [2].
bear-320x240-v_enc-v.webm - bear-320x240-video-only.webm encrypted using key ID [1] and key [2].
bear-320x240-v-vp9_enc-v.webm - bear-vp9.webm VP9 video only encrypted using key ID [1] and key [2].
bear-320x240-opus-a_enc-a.webm - bear-opus.webm encrypted using key ID [1] and key[2].
bear-320x240-opus-av_enc-av.webm - bear-vp9-opus.webm with audio & video encrypted using key ID [1] and key[2].
bear-320x240-opus-av_enc-v.webm - bear-vp9-opus.webm with video track encrypted using key ID [1] and key[2].
bear-640x360-a_frag-cenc.mp4 - A fragmented MP4 version of the audio track of bear-640x360.mp4 encrypted (ISO CENC) using key ID [1] and key [2].
bear-640x360-a_frag-cenc-key_rotation.mp4 - A fragmented MP4 version of the audio track of bear-640x360.mp4 encrypted (ISO CENC) using key ID [1] and key [2] with key rotation [3].
bear-640x360-v_frag-cenc.mp4 - A fragmented MP4 version of the video track of bear-640x360.mp4 encrypted (ISO CENC) using key ID [1] and key [2].
bear-640x360-v_frag-cenc-key_rotation.mp4 - A fragmented MP4 version of the video track of bear-640x360.mp4 encrypted (ISO CENC) using key ID [1] and key [2] with key rotation [3].
bear-a_enc-a.webm - bear-320x240-audio-only.webm encrypted using key ID [1] and key [2].
frame_size_change-av_enc-v.webm - third_party/WebKit/LayoutTests/media/resources/frame_size_change.webm encrypted using key ID [1] and key [2].


[1] 30313233343536373839303132333435
[2] ebdd62f16814d27b68ef122afce4ae3c
[3] KeyIds and Keys are created by left rotating key ID [1] and key [2] using
    std::rotate for every new crypto period. This is only for testing. The
    actual key rotation algorithm is often much more complicated.

// Container Tests (additional containers derived from bear.ogv)
bear.ac3    -- created using "avconv -i bear.ogv -f ac3 -b 192k bear.ac3".
bear.adts   -- created using "avconv -i bear.ogv -f adts -strict experimental bear.adts".
bear.aiff   -- created using "avconv -i bear.ogv -f aiff bear.aiff".
bear.asf    -- created using "avconv -i bear.ogv -f asf bear.asf".
bear.avi    -- created using "avconv -i bear.ogv -f avi -b 192k bear.avi".
bear.eac3   -- created using "avconv -i bear.ogv -f eac3 bear.eac3".
bear.flac   -- created using "avconv -i bear.ogv -f flac bear.flac".
bear.flv    -- created using "avconv -i bear.ogv -f flv bear.flv".
bear.h261   -- created using "avconv -i bear.ogv -f h261 -s:0 cif bear.h261".
bear.h263   -- created using "avconv -i bear.ogv -f h263 -s:0 cif bear.h263".
bear.m2ts   -- created using "avconv -i bear.ogv -f mpegts bear.m2ts".
bear.mjpeg  -- created using "avconv -i bear.ogv -f mjpeg bear.mjpeg".
bear.mpeg   -- created using "avconv -i bear.ogv -f mpeg bear.mpeg".
bear.rm     -- created using "avconv -i bear.ogv -f rm -b 192k bear.rm".
bear.swf    -- created using "avconv -i bear.ogv -f swf -an bear.swf".

// VDA test files: test-25fps
test-25fps.h264:
  Using ffmpeg SVN-r0.5.9-4:0.5.9-0ubuntu0.10.04.1 @ WebKit r122718, generated
  with:
  ffmpeg -i third_party/WebKit/LayoutTests/media/content/test-25fps.mp4 \
      -vcodec copy -vbsf h264_mp4toannexb -an test-25fps.h264

test-25fps.h264.md5:
  MD5s of RGB thumbnail rendered version of test-25fps.h264 decoded with Intel
  VAAPI on Haswell, Ivy Bridge, Sandy Bridge and V4L2VDA on Exynos.
  Written out by video_decode_accelerator_unittest.
  These differ between implementations because color space-converted frames are
  not specified to the last bit and GLES shader/texture filtering
  precision varies.

test-25fps.vp8:
  ffmpeg git-2012-07-19-a8d8e86, libvpx ToT 7/19, chromium r147247,
  mkvextract v5.0.1
  ffmpeg -i test-25fps.h264 -vcodec libvpx -an test-25fps.webm && \
      mkvextract tracks test-25fps.webm 1:test-25fps.vp8 && rm test-25fps.webm

test-25fps.vp8.md5:
  MD5 of RGB thumbnail rendered version of test-25fps.vp8 decoded with V4L2VDA
  on Exynos. Written out by video_decode_accelerator_unittest.

test-25fps.vp9:
  avconv 9.16-6:9.16-0ubuntu0.14.04.1, vpxenc v1.3.0
  avconv -i test-25fps.h264 -c:v rawvideo -pix_fmt yuv420p test-25fps_i420.yuv
  vpxenc test-25fps_i420.yuv -o test-25fps.vp9 --codec=vp9 -w 320 -h 240 --ivf \
      --profile=0 --kf-min-dist=0 --kf-max-dist=150 --lag-in-frames=24 \
      --drop-frame=0 --target-bitrate=140 --cq-level=23 --min-q=4 --max-q=56 \
      --static-thresh=1000 --arnr-maxframes=7 --arnr-strength=5 --arnr-type=3 \
      --cpu-used=1 --good --tile-columns=1 --passes=2 --threads=1 --fps=25/1 \
      --end-usage=cq --auto-alt-ref=1 --bias-pct=50 --minsection-pct=0 \
      --maxsection-pct=2000 --undershoot-pct=100

test-25fps.vp9.md5:
  MD5 of RGB thumbnail rendered version of test-25fps.vp9. Written out by
  video_decode_accelerator_unittest.

// VDA test files: bear
bear.h264:
  Using ffmpeg version 0.8.6-4:0.8.6-0ubuntu0.12.04.1, generated with
  bear.mp4 (https://chromiumcodereview.appspot.com/10805089):
  ffmpeg -i bear.mp4 -vcodec copy -vbsf h264_mp4toannexb \
      -an bear.h264

bear.h264.md5:
  MD5s of RGB thumbnail rendered version of bear.h264 decoded with Intel
  VAAPI on Ivy Bridge and Sandy Bridge and V4L2VDA on Exynos.
  Written out by video_decode_accelerator_unittest.
  These differ between implementations because color space-converted frames are
  not specified to the last bit and GLES shader/texture filtering
  precision varies.

// VDA test files: npot-video
npot-video.h264:
  Using ffmpeg version 0.8.6-4:0.8.6-0ubuntu0.12.04.1, generated with
  npot-video.mp4 (https://codereview.chromium.org/8342021):
  ffmpeg -i npot-video.mp4 -vcodec copy -vbsf h264_mp4toannexb \
      -an npot-video.h264

npot-video.h264.md5:
  MD5s of RGB thumbnail rendered version of npot-video.h264 decoded with Intel
  VAAPI on Ivy Bridge and Sandy Bridge and V4L2VDA on Exynos.
  Written out by video_decode_accelerator_unittest.
  These differ between implementations because color space-converted frames are
  not specified to the last bit and GLES shader/texture filtering
  precision varies.

// VDA test files: red-green
red-green.h264:
  Using ffmpeg version 0.8.6-4:0.8.6-0ubuntu0.12.04.1, generated with
  red-green.mp4 (https://codereview.chromium.org/8342021):
  ffmpeg -i red-green.mp4 -vcodec copy -vbsf h264_mp4toannexb \
      -an red-green.h264

red-green.h264.md5:
  MD5s of RGB thumbnail rendered version of red-green.h264 decoded with Intel
  VAAPI on Ivy Bridge and Sandy Bridge and V4L2VDA on Exynos.
  Written out by video_decode_accelerator_unittest.
  These differ between implementations because color space-converted frames are
  not specified to the last bit and GLES shader/texture filtering
  precision varies.

// VEA test files:
bear_320x192_40frames.yuv
  First 40 raw i420 frames of bear-1280x720.mp4 scaled down to 320x192 for
  video_encode_accelerator_unittest.

// JPEG test files:
pixel-1280x720.jpg - Single MJEPG encoded frame of 1280x720, captured on Chromebook Pixel. This image does not have Huffman table.
peach_pi-1280x720.jpg - Single MJPEG encoded frame of 1280x720, captured on Samsung Chromebook 2(13"). This image has Huffman table.
blank-1x1.jpg - 1x1 small picture to test special cases.

// MP4 files with non-square pixels.
media/test/data/bear-640x360-non_square_pixel-with_pasp.mp4
  Size in TKHD is (639.2x360) and size in STSD is (470x360). A PASP box is
  present with hSpacing=34 and vSpacing=25. Note that 470.0 * 34 / 25 = 639.2.

media/test/data/bear-640x360-non_square_pixel-without_pasp.mp4
  Size in TKHD is (639.2x360) and size in STSD is (470x360). No PASP box is
  present.

// MP4 files with AC3 and EAC3 audio
media/test/data/bear-ac3-only-frag.mp4
  AC3 audio in framented MP4, generated with
  ffmpeg -i bear.ac3 -acodec copy -movflags frag_keyframe bear-ac3-only-frag.mp4

media/test/data/bear-eac3-only-frag.mp4
  EAC3 audio in framented MP4, generated with
  ffmpeg -i bear.eac3 -acodec copy -movflags frag_keyframe bear-eac3-only-frag.mp4