Mark Pope
2010-Apr-30 21:27 UTC
[theora] Ogv file only plays in VLC / Can't be used by most tools.
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
Twisted Lincoln, Inc.
2010-Apr-30 21:49 UTC
[theora] Ogv file only plays in VLC / Can't be used by most tools.
I downloaded your OGV file, and it played properly in Totem 2.28.2. Tony Lovasco Twisted Lincoln, Inc. www.twistedlincoln.com On 04/30/2010 04:27 PM, Mark Pope wrote:> > 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) > > > _______________________________________________ > theora mailing list > theora at xiph.org > http://lists.xiph.org/mailman/listinfo/theora >-------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.xiph.org/pipermail/theora/attachments/20100430/7cbe24ee/attachment-0001.htm
ogg.k.ogg.k at googlemail.com
2010-Apr-30 21:56 UTC
[theora] Ogv file only plays in VLC / Can't be used by most tools.
> I downloaded the Theora encoder sample (ver 1.1.1), modified it to encode a > sequence of bitmaps, and created an OGV file.You could also use ffmpeg2theora for that use, it might be easier.> I tried uploading to YouTube, and the video just comes out really corrupt:Youtube transcodes the video with an old version of ffmpeg, which does not work with some features of the Theora bitstream, which were not yet used by the previous libtheora encoder, but which are used by 1.1.1.> I tried using ffmpeg to convert to another format, but it gives errors > (listed below).Same program as Youtube, though a newer ffmpeg might work.> It seems like the OGV file is bad in some way, but VLC is somehow 'luckily' > able to play it.Likely the file is alright.> I'd like to have a 'more robust' OGV file, which I can easily upload to > YouTube or convert to other formats.You could use an older version of libtheora, though you won't have the encoder improvements in quality and bitrate. Or moan to Youtube to update their buggy toolchain.> 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.ogvThat's a... HTML file... with a lot of Javascript. Maybe it links to a video, though, I haven't searched inside.
Mark Pope
2010-Apr-30 23:12 UTC
[theora] Ogv file only plays in VLC / Can't be used by most tools.
Thank you all for your helpful responses. I got the latest ffmepg (from http://ffmpeg.arrozcru.org/autobuilds/) and it converts my file to mpeg fine. This gives me the workaround I needed. Thanks! I used VLC to convert to 264 format and mpeg4 format. (To do so, choose 'Media -> Convert / Save'.) Perhaps it uses a different decoder for playback than conversion? Also my usage case is more complicated than encoding bitmaps, I was just using that as an intermediate step. Thanks again, Mark. -----Original Message----- From: xiphmont at gmail.com [mailto:xiphmont at gmail.com] On Behalf Of xiphmont at xiph.org Sent: Friday, April 30, 2010 2:57 PM To: Mark Pope Subject: Re: [theora] Ogv file only plays in VLC / Can't be used by most tools.> 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:Unfortunately, the summary to all the problems you're having below is probably 'ffmpeg'...> I tried uploading to YouTube, and the video just comes out really corrupt: > http://www.youtube.com/watch?v=sHaMG6mcWu0YouTube uses an older, buggy version of ffmpeg to handle video, and it can't read Theora properly. Until recently, ffmpeg just treated Theora as if it was still VP3, so it can't actually handle real Theora files. This was just fixed a few months ago, but Google/Youtube are still using the broken version.> I tried using ffmpeg to convert to another format, but it gives errors > (listed below).Probably the same problem unless you're sure you have a recent build.> 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"THis also uses ffmpeg to decode theora.> I also tried using VLC to convert, but it created a zero sized file too.That's more interesting. What did you try to convert it to?> It seems like the OGV file is bad in some way, but VLC is somehow 'luckily' > able to play it.You could send a snippet of the file and I'll inspect it. it's possible something did go wrong with the modifications to encoder_example. BTW, png2theora will make an OGV out of a directory of .PNG files. Monty