[theora] Ogv file only plays in VLC / Can't be used by most tools.

Mark Pope Mark.Pope at heavy-iron.com
Fri Apr 30 14:27:24 PDT 2010


Hi,

I'm new here - thanks for having me. (Sorry if I'm in the wrong place or a noob.)

I downloaded the Theora encoder sample (ver 1.1.1), modified it to encode a sequence of bitmaps, and created an OGV file.

The OGV file plays fine in the latest VLC (1.0.5), but I can't do much else with it:

I tried uploading to YouTube, and the video just comes out really corrupt:  http://www.youtube.com/watch?v=sHaMG6mcWu0
I tried using ffmpeg to convert to another format, but it gives errors (listed below).
I tried using MEncoder264 and it failed too. The log is below the FFmpeg log. A potentially useful line of the log is: "Theora header parsing failed: -23"
I also tried using VLC to convert, but it created a zero sized file too.

It seems like the OGV file is bad in some way, but VLC is somehow 'luckily' able to play it.

Does anyone have any suggestions on what might be going on, or how to further diagnose the problem?

I'd like to have a 'more robust' OGV file, which I can easily upload to YouTube or convert to other formats.

In case anyone want's to inspect the OGV file, I've uploaded it here: http://cid-0b8a3e1016031fcd.skydrive.live.com/self.aspx/Public/Out.ogv

Thanks very much for any help,
Mark.

FFmpeg errors:

C:\Documents and Settings\mark.pope\Desktop\FFmpeg-0.5.1-svn-22140\FFmpeg-svn-22
140>ffmpeg -i C:\NG\Source\Tools\OggEncoder\Out.ogv test.mpg
FFmpeg version SVN-r22140-Sherpya, Copyright (c) 2000-2010 the FFmpeg developers
  built on Mar  2 2010 03:26:44 with gcc 4.2.5 20080919 (prerelease) [Sherpya]
  libavutil     50. 9. 0 / 50. 9. 0
  libavcodec    52.55. 0 / 52.55. 0
  libavformat   52.54. 0 / 52.54. 0
  libavdevice   52. 2. 0 / 52. 2. 0
  libavfilter    1.17. 0 /  1.17. 0
  libswscale     0.10. 0 /  0.10. 0
  libpostproc   51. 2. 0 / 51. 2. 0
Input #0, ogg, from 'C:\NG\Source\Tools\OggEncoder\Out.ogv':
  Duration: 00:00:14.53, start: 0.000000, bitrate: 3052 kb/s
    Stream #0.0: Video: theora, yuv420p, 640x480, 30 tbr, 30 tbn, 30 tbc
File 'test.mpg' already exists. Overwrite ? [y/N] y
Output #0, mpeg, to 'test.mpg':
  Metadata:
    encoder         : Lavf52.54.0
    Stream #0.0: Video: mpeg1video, yuv420p, 640x480, q=2-31, 200 kb/s, 90k tbn, 30 tbc
Stream mapping:
  Stream #0.0 -> #0.0
Press [q] to stop encoding
[theora @ 01d4e9d0]error in unpack_block_qpis
Error while decoding stream #0.0
[theora @ 01d4e9d0]pic->data[0]!=NULL in avcodec_default_get_buffer
[theora @ 01d4e9d0]vp3: get_buffer() failed
Error while decoding stream #0.0
[theora @ 01d4e9d0]pic->data[0]!=NULL in avcodec_default_get_buffer
[theora @ 01d4e9d0]vp3: get_buffer() failed
Error while decoding stream #0.0
[theora @ 01d4e9d0]pic->data[0]!=NULL in avcodec_default_get_buffer
[theora @ 01d4e9d0]vp3: get_buffer() failed
Error while decoding stream #0.0
[theora @ 01d4e9d0]pic->data[0]!=NULL in avcodec_default_get_buffer
[theora @ 01d4e9d0]vp3: get_buffer() failed
Error while decoding stream #0.0
... and then many pages of the same error ...


================================================================

MEncoder264 output:

Commandline:
"C:\Program Files\MEncoder264 v1.1.9\MEncoder.exe" -sws 9 -vf scale -ovc x264 -x264encopts frameref=6:bframes=3:me=3:subq=7:brdo:deblock:deblockalpha=0:deblockbeta=0:bime:b_adapt:cabac:b_pyramid:weight_b:mixed_refs:chroma_me:trellis=1:i4x4:i8x8:8x8mv:b8x8mv:4x4mv:8x8dct:nopsnr:bitrate=700:pass=1:turbo=1 -nosound -noskip -priority belownormal -passlogfile "C:\NG\Source\Tools\OggEncoder\Out.x264.avi.stats" -of avi -o "C:\NG\Source\Tools\OggEncoder\Out.x264.avi" "C:\NG\Source\Tools\OggEncoder\Out.ogv"

MEncoder dev-SVN-r19668-4.0.3 (C) 2000-2006 MPlayer Team
CPU: Intel(R) Core(TM) i7 CPU         920  @ 2.67GHz (Family: 6, Model: 26, Stepping: 4)
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2
Setting process priority: belownormal
success: format: 0  data: 0x0 - 0x15753
Theora header parsing failed: -23
libavformat file format detected.
VIDEO:  [theo]  640x480  0bpp  30.000 fps    0.0 kbps ( 0.0 kbyte/s)
[V] filefmt:35  fourcc:0x6F656874  size:640x480  fps:30.00  ftime:=0.0333
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1, osd: 1, aspect: 0.000000, round: 1
Opening video filter: [scale]
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [fftheora] vfm: ffmpeg (FFmpeg Theora)
==========================================================================
VDec: vo config request - 640 x 480 (preferred colorspace: Planar YV12)
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is undefined - no prescaling applied.
[theora @ 00B77270]Theora bitstream version 30201
[theora @ 00B77270]408 bits left in packet 81
[theora @ 00B77270]Theora bitstream version 30201
[theora @ 00B77270]408 bits left in packet 81
SwScaler: using unscaled 0x32315659 (21VY) -> 0x32315659 (21VY) special converter
x264 [info]: using SAR=1/1
x264 [info]: using cpu capabilities MMX MMXEXT SSE SSE2
New_Face failed. Maybe the font path is wrong.
Please supply the text font file (~/.mplayer/subfont.ttf).
subtitle font: load_sub_face failed.
Pos:   0.0s      1f (45%)  0.00fps Trem:   0min   0mb  A-V:0.000 [0:0]
Writing header...
ODML: vprp aspect is 4:3.
Writing header...
ODML: vprp aspect is 4:3.
Pos:   0.0s      4f (45%)  0.00fps Trem:   0min   0mb  A-V:0.000 [0:0]

> Error: Something went wrong! (ExitCode: 0)

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.xiph.org/pipermail/theora/attachments/20100430/b3e29ea8/attachment-0001.htm 


More information about the theora mailing list