TheoraTestsuite: Difference between revisions

From XiphWiki
Jump to navigation Jump to search
(fix png link)
(+see also.)
 
(20 intermediate revisions by 5 users not shown)
Line 1: Line 1:
== some samples to test your theora decoder ==
== Some samples to test your Theora decoder ==


a decoder must play all these files without problems to comply with the theora specification.
a decoder must play all these files without problems to comply with the theora specification.
Line 5: Line 5:
[http://v2v.cc/~j/theora_testsuite/320x240.ogg 320x240.ogg] [0.3 MB]
[http://v2v.cc/~j/theora_testsuite/320x240.ogg 320x240.ogg] [0.3 MB]


* simple example
* simplest example
 


[http://v2v.cc/~j/theora_testsuite/320x240.ogv 320x240.ogv] [0.3 MB]
[http://v2v.cc/~j/theora_testsuite/320x240.ogv 320x240.ogv] [0.3 MB]


* simple example with Skeleton Stream
* simple example with '''Skeleton Stream'''
 


[http://v2v.cc/~j/theora_testsuite/320x240.skeleton+cmml.ogv 320x240.skeleton+cmml.ogv] [0.3 MB]
[http://v2v.cc/~j/theora_testsuite/320x240.skeleton+cmml.ogv 320x240.skeleton+cmml.ogv] [0.3 MB]


* simple example with Skeleton and CMML Stream
* simple example with '''Skeleton and CMML Stream'''; decoders should read the Skeleton stream to identify the other streams in Ogg and ignore those that are not supported by the application
 


[http://v2v.cc/~j/theora_testsuite/pixel_aspect_ratio.ogg pixel_aspect_ratio.ogg] - Frame Aspect Ratio: 1.82/1 [1.8 MB]
[http://v2v.cc/~j/theora_testsuite/pixel_aspect_ratio.ogg pixel_aspect_ratio.ogg] [1.8 MB]  


* defined pixel aspect ratio in header, it also has a theora comment header
* '''Aspect Ratio defined in header''' to 1.82/1 , it also has a theora '''comment header'''


[http://v2v.cc/~j/theora_testsuite/videotestsrc-720x576-16-15.ogg videotestsrc-720x576-16-15.ogg] - PAL DVD format / Frame Aspect Ratio: 1.33/1 [422K]


* defined pixel aspect ratio in header
[http://v2v.cc/~j/theora_testsuite/videotestsrc-720x576-16-15.ogg videotestsrc-720x576-16-15.ogg] [422K]
 
* '''Aspect Ratio defined in header''' to 1.33/1 (PAL DVD format)
 


[http://v2v.cc/~j/theora_testsuite/322x242_not-divisible-by-sixteen-framesize.ogg 322x242_not-divisible-by-sixteen-framesize.ogg] [0.3 MB]
[http://v2v.cc/~j/theora_testsuite/322x242_not-divisible-by-sixteen-framesize.ogg 322x242_not-divisible-by-sixteen-framesize.ogg] [0.3 MB]


* if you see a black border around the testimage you should have a look at the Spec/2.2 on page 22, to see how to use: ti.width, ti.height, ti.frame_width, ti.frame_height, ti.offset_x, ti.offset_y
* '''both dimensions not divisible by 16''' but still even - if you see a black border around the testimage you should have a look at the Spec/2.2 on page 22, to see how to use: ti.width, ti.height, ti.frame_width, ti.frame_height, ti.offset_x, ti.offset_y
 
 
[...]
 
* '''one dimension divisible by 16 while the other one isn't'''
 
 
[...]
 
* '''odd dimensions'''
 


[http://v2v.cc/~j/theora_testsuite/chained_streams.ogg chained_streams.ogg] [2.4 MB]
[http://v2v.cc/~j/theora_testsuite/chained_streams.ogg chained_streams.ogg] [2.4 MB]


* all other samples as a chained stream. (see Spec/A.3.1 on page 157)
* all other samples as a '''chained stream'''. (see Spec/A.3.1 on page 157)
 


[http://v2v.cc/~j/theora_testsuite/multi2.ogg multi2.ogg] [171 K]
[http://v2v.cc/~j/theora_testsuite/multi2.ogg multi2.ogg] [171 K]


* another chained file
* another '''chained''' file
 


[http://v2v.cc/~j/theora_testsuite/mobile_itu601_i_422.ogg mobile_itu601_i_422.ogg] [8 MB]
[http://v2v.cc/~j/theora_testsuite/mobile_itu601_i_422.ogg mobile_itu601_i_422.ogg] [8 MB]


* 4:2:2 pixel format, mainline encoder does not support this right now, but its allowed in the spec and libtheora's decoder can decode it(since alpha8).
* '''4:2:2''' pixel format, in the original spec and supported by the mainline decoder since alpha8 and the mainline encoder since 1.1.
 
 
[http://v2v.cc/~j/theora_testsuite/ducks_take_off_444_720p25.ogg ducks_take_off_444_720p25.ogg] [7.2 MB]
 
* Ogg Theora video '''4:4:4''' pixel format, 1280x720 pixels, 25 fps, 213 frames
 


[http://v2v.cc/~j/theora_testsuite/stockholm-vfr.ogg stockholm-vfr.ogg] [1.8 MB]
[http://v2v.cc/~j/theora_testsuite/stockholm-vfr.ogg stockholm-vfr.ogg] [1.8 MB]


* Hybrid 24fps/30fps clip encoded as 120fps with dropped frames.
* '''Hybrid 24fps/30fps''' clip encoded as 120fps with dropped frames.


[http://v2v.cc/~j/theora_testsuite/offset_test.ogv offset_test.ogv] [0.2 MB]


* Ogg Theora video with large offset, output should look like [http://v2v.cc/~j/theora_testsuite/offset_test.pass.png offset_test.pass.png], but not like [http://v2v.cc/~j/theora_testsuite/offset_test.fail.png offset_test.fail.png].
[http://v2v.cc/~j/theora_testsuite/offset_test.ogv offset_test.ogv] [0.2 MB] (10 frames, 1 fps, no visible movement, visible frame 512 x 512)


[http://v2v.cc/~j/theora_testsuite/ducks_take_off_444_720p25.ogg ducks_take_off_444_720p25.ogg] [7.2 MB]
* Ogg Theora video with '''large offset''', output should look like [http://v2v.cc/~j/theora_testsuite/offset_test.pass.png offset_test.pass.png], but not like [http://v2v.cc/~j/theora_testsuite/offset_test.fail.png offset_test.fail.png].


* Ogg Theora video 4:4:4 pixel format.


[http://v2v.cc/~j/theora_testsuite/sign_irene_cif-3qi-b.ogg sign_irene_cif-3qi-b.ogg] [1.3 MB]
[http://v2v.cc/~j/theora_testsuite/sign_irene_cif-3qi-b.ogg sign_irene_cif-3qi-b.ogg] [1.3 MB]


* Ogg Theora video using 3qi (adapative quantization).
* Ogg Theora video using '''3qi (adaptive quantization)'''.
 
 
[http://v2v.cc/~j/theora_testsuite/chroma_siting_test.ogv chroma_siting_test.ogv] [25K]
 
* Ogg Theora video chroma siting test for 4:2:0. No motion, 1 fps, 20 seconds, 1 frame + 19 repetitions. If the player's conversion to RGB uses correct chroma subsample positioning, then the top and bottom halves should be the same color.  If the top and bottom halves are different colors, then the player's chroma siting is wrong.  Note that many players delegate YUV to RGB conversion to the graphics hardware or driver, which are then responsible for the chroma siting. [http://img260.imageshack.us/img260/1198/cromatest.png This image] shows a correct decode.
 
[http://v2v.cc/~j/theora_testsuite/0byteframes.ogv 0byteframes.ogv] [31k]
 
* Ogg Theora video 25fps, 10 seconds long, frame only changes every second.
 
== See also ==
 
[[Playback_Troubleshooting]]
 
[[Category:Theora]]

Latest revision as of 23:06, 16 November 2010

Some samples to test your Theora decoder

a decoder must play all these files without problems to comply with the theora specification.

320x240.ogg [0.3 MB]

  • simplest example


320x240.ogv [0.3 MB]

  • simple example with Skeleton Stream


320x240.skeleton+cmml.ogv [0.3 MB]

  • simple example with Skeleton and CMML Stream; decoders should read the Skeleton stream to identify the other streams in Ogg and ignore those that are not supported by the application


pixel_aspect_ratio.ogg [1.8 MB]

  • Aspect Ratio defined in header to 1.82/1 , it also has a theora comment header


videotestsrc-720x576-16-15.ogg [422K]

  • Aspect Ratio defined in header to 1.33/1 (PAL DVD format)


322x242_not-divisible-by-sixteen-framesize.ogg [0.3 MB]

  • both dimensions not divisible by 16 but still even - if you see a black border around the testimage you should have a look at the Spec/2.2 on page 22, to see how to use: ti.width, ti.height, ti.frame_width, ti.frame_height, ti.offset_x, ti.offset_y


[...]

  • one dimension divisible by 16 while the other one isn't


[...]

  • odd dimensions


chained_streams.ogg [2.4 MB]

  • all other samples as a chained stream. (see Spec/A.3.1 on page 157)


multi2.ogg [171 K]

  • another chained file


mobile_itu601_i_422.ogg [8 MB]

  • 4:2:2 pixel format, in the original spec and supported by the mainline decoder since alpha8 and the mainline encoder since 1.1.


ducks_take_off_444_720p25.ogg [7.2 MB]

  • Ogg Theora video 4:4:4 pixel format, 1280x720 pixels, 25 fps, 213 frames


stockholm-vfr.ogg [1.8 MB]

  • Hybrid 24fps/30fps clip encoded as 120fps with dropped frames.


offset_test.ogv [0.2 MB] (10 frames, 1 fps, no visible movement, visible frame 512 x 512)


sign_irene_cif-3qi-b.ogg [1.3 MB]

  • Ogg Theora video using 3qi (adaptive quantization).


chroma_siting_test.ogv [25K]

  • Ogg Theora video chroma siting test for 4:2:0. No motion, 1 fps, 20 seconds, 1 frame + 19 repetitions. If the player's conversion to RGB uses correct chroma subsample positioning, then the top and bottom halves should be the same color. If the top and bottom halves are different colors, then the player's chroma siting is wrong. Note that many players delegate YUV to RGB conversion to the graphics hardware or driver, which are then responsible for the chroma siting. This image shows a correct decode.

0byteframes.ogv [31k]

  • Ogg Theora video 25fps, 10 seconds long, frame only changes every second.

See also

Playback_Troubleshooting