Opened 13 years ago
Closed 13 years ago
#423 closed defect (worksforme)
ffmpeg.exe MOV to WebM x64 crash
Reported by: | Vince | Owned by: | Michael Niedermayer |
---|---|---|---|
Priority: | important | Component: | undetermined |
Version: | unspecified | Keywords: | webM x64 crash |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
I'm trying to transcode a MOV recorded with a canon camera to webM
ffmpeg simply crashed
commands: C:\Users\Vincent\Documents\Visual Studio 2010\Home Media Builder\Home Media Webbuilder\bin\Debug>ffmpeg64.exe -v 9 -loglevel 99 -i "C:\Users\Vincent\Documents\Visual Studio 2010\Home Media Builder\TestWebFiles\videos\2004\2004_03_March\2004_03_23\2004-03-23_001.MOV" -acodec libvorbis -ab 192k -strict experimental -ar 44100 -b 400k -f webm -vcodec libvpx "C:\Users\Vincent\Documents\Visual Studio 2010\Home Media Builder\TestWebFiles\videos\2004\2004_03_March\2004_03_23\2004-03-23_001.WEBM"
following is a copy paste of my command prompt output:
ffmpeg version N-32138-g312645e, Copyright (c) 2000-2011 the FFmpeg developers
built on Aug 28 2011 21:15:09 with gcc 4.6.1
configuration: --enable-gpl --enable-version3 --enable-memalign-hack --enable-runtime-cpudetect --enable-avisynth --enable-bzlib --enable-frei0r --enable-libopencore-amrnb --enable-libopencore-amrwb
--enable-libfreetype --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvpx --enabl
e-libx264 --enable-libxavs --enable-libxvid --enable-zlib
libavutil 51. 14. 0 / 51. 14. 0
libavcodec 53. 12. 0 / 53. 12. 0
libavformat 53. 10. 0 / 53. 10. 0
libavdevice 53. 3. 0 / 53. 3. 0
libavfilter 2. 35. 0 / 2. 35. 0
libswscale 2. 0. 0 / 2. 0. 0
libpostproc 51. 2. 0 / 51. 2. 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000002DFFE0] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000002DFFE0] ISO: File Type Major Brand: qt
[mjpeg @ 00000000002F2A40] Unsupported bit depth: 0
[mjpeg @ 00000000002F2A40] buffer too small, expanding to 17388 bytes
[mjpeg @ 00000000002F2A40] marker=d8 avail_size_in_buf=td
[mjpeg @ 00000000002F2A40] marker parser used 0 bytes (0 bits)
[mjpeg @ 00000000002F2A40] marker=e0 avail_size_in_buf=td
[mjpeg @ 00000000002F2A40] marker parser used 16 bytes (128 bits)
[mjpeg @ 00000000002F2A40] marker=dd avail_size_in_buf=td
[mjpeg @ 00000000002F2A40] restart interval: 0
[mjpeg @ 00000000002F2A40] marker parser used 4 bytes (32 bits)
[mjpeg @ 00000000002F2A40] marker=db avail_size_in_buf=td
[mjpeg @ 00000000002F2A40] index=0
[mjpeg @ 00000000002F2A40] qscale[0]: 2
[mjpeg @ 00000000002F2A40] index=1
[mjpeg @ 00000000002F2A40] qscale[1]: 4
[mjpeg @ 00000000002F2A40] marker parser used 132 bytes (1056 bits)
[mjpeg @ 00000000002F2A40] marker=c0 avail_size_in_buf=td
[mjpeg @ 00000000002F2A40] sof0: picture: 320x240
[mjpeg @ 00000000002F2A40] component 0 2:1 id: 0 quant:0
[mjpeg @ 00000000002F2A40] component 1 1:1 id: 1 quant:1
[mjpeg @ 00000000002F2A40] component 2 1:1 id: 2 quant:1
[mjpeg @ 00000000002F2A40] pix fmt id 21111100
[mjpeg @ 00000000002F2A40] marker parser used 17 bytes (136 bits)
[mjpeg @ 00000000002F2A40] marker=e2 avail_size_in_buf=td
[mjpeg @ 00000000002F2A40] marker parser used 417 bytes (3336 bits)
[mjpeg @ 00000000002F2A40] escaping removed td bytes
[mjpeg @ 00000000002F2A40] marker=da avail_size_in_buf=td
[mjpeg @ 00000000002F2A40] component: 0
[mjpeg @ 00000000002F2A40] component: 1
[mjpeg @ 00000000002F2A40] component: 2
[mjpeg @ 00000000002F2A40] mjpeg decode frame unused td bytes
[mov,mp4,m4a,3gp,3g2,mj2 @ 00000000002DFFE0] All info found
Seems stream 0 codec frame rate differs from container frame rate: 600.00 (600/1) -> 15.00 (15/1)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'C:\Users\Vincent\Documents\Visual Studio 2010\Home Media Builder\TestWebFiles\videos\2004\2004_03_March\2004_03_23\2004-03-23_001.MOV':
Metadata:
major_brand : qt
minor_version : 537199360
compatible_brands: qt
creation_time : 2008-04-06 08:43:57
Duration: 00:00:12.26, start: 0.000000, bitrate: 2203 kb/s
Stream #0.0(eng), 1, 1/600: Video: mjpeg (dmb1 / 0x31626D64), yuvj422p, 320x240, 1/600, 2112 kb/s, 15 fps, 15 tbr, 600 tbn, 600 tbc
Metadata:
creation_time : 2008-04-06 08:43:57
Stream #0.1(eng), 12, 1/11024: Audio: pcm_u8 (raw / 0x20776172), 11024 Hz, 1 channels, u8, 88 kb/s
Metadata:
creation_time : 2008-04-06 08:43:57
File 'C:\Users\Vincent\Documents\Visual Studio 2010\Home Media Builder\TestWebFiles\videos\2004\2004_03_March\2004_03_23\2004-03-23_001.WEBM' already exists. Overwrite ? [y/N] y
Incompatible pixel format 'yuvj422p' for codec 'libvpx', auto-selecting format 'yuv420p'
[buffer @ 00000000002F1CE0] w:320 h:240 pixfmt:yuvj422p tb:1/1000000 sar:0/1 sws_param:
[buffersink @ 00000000002E3800] auto-inserting filter 'auto-inserted scaler 0' between the filter 'src' and the filter 'out'
[scale @ 00000000002F40A0] w:320 h:240 fmt:yuvj422p -> w:320 h:240 fmt:yuv420p flags:0x4
Incompatible sample format 'u8' for codec 'libvorbis', auto-selecting format 's16'
[libvpx @ 0000000001D3E4E0] v0.9.6
[libvpx @ 0000000001D3E4E0] --prefix=/home/kyle/software/ffmpeg/packages/libvpx/libvpx-v0.9.7-win64 --target=x86_64-win64-gcc
[libvpx @ 0000000001D3E4E0] vpx_codec_enc_cfg
[libvpx @ 0000000001D3E4E0] generic settings
g_usage: 0
g_threads: 0
g_profile: 0
g_w: 320
g_h: 240
g_timebase: {1/30}
g_error_resilient: 0
g_pass: 0
g_lag_in_frames: 0
Attachments (4)
Change History (15)
by , 13 years ago
Attachment: | 2004-03-23_002.MOV added |
---|
comment:1 by , 13 years ago
Component: | FFmpeg → undetermined |
---|---|
Status: | new → open |
Does the crash also happen if you use -an or -vn?
If the crash only happens with -an, does it also happen if you choose any other video encoder? (Try ffmpeg -i 2004_03_23\2004-03-23_001.MOV -an -qscale 5 out.mkv)
If the crash only happens with -vn, does it also happen if you choose any other audio encoder? (Try ffmpeg -i 2004_03_23\2004-03-23_001.MOV -vn -ar 44100 out.mkv)
backtrace missing (works fine on Windows), please see http://ffmpeg.org/bugreports.html
comment:2 by , 13 years ago
No, of course I tested other output formats. They work fine. Also the 32bit version of ffmpeg works fine. It only applies to the 64bit version
comment:3 by , 13 years ago
Backtrace missing, please see http://ffmpeg.org/bugreports.html
Please provide a minimal command line, i.e. one that either contains -an or -vn (or confirm that it does not crash with either).
comment:4 by , 13 years ago
ffmpeg64.exe -v 9 -loglevel 99 -i "2004-03-23_001.MOV" -acodec libvorbis -ac 2 -ab 96k -ar 44100 -strict experimental -b 400k -vn -f webm -vcodec libvpx "2004-03-23_001.WEBM"
does NOT crash
ffmpeg64.exe -v 9 -loglevel 99 -i "2004-03-23_001.MOV" -acodec libvorbis -ac 2 -ab 96k -ar 44100 -strict experimental -b 400k -an -f webm -vcodec libvpx "2004-03-23_001.WEBM"
does crash
comment:5 by , 13 years ago
If you encounter a crash bug, please provide the gdb output, backtrace and disassembly using the the ffmpeg_g debug binary as follows:
gdb ffmpeg_g
In gdb, type 'r' for run, along with the rest of the ffmpeg command line:
r <rest of command line>
When gdb encounters its problem, run the following commands and copy/paste the output into your bug report:
bt
disass $pc-32,$pc+32
info all-registers
With older gdb versions, use disass $pc-32 $pc+32.
I have no idea how to do this. I'm just using the ffmpeg.exe
comment:7 by , 13 years ago
from http://ffmpeg.zeranoe.com/builds/ as linked on the http://ffmpeg.org/download.html website
I just googled some, found out people claim the vpxenc.exe of the original makers of the webm standard also crashes on x64.. I'll try this myself, maybe it's a bug from the webM guys
comment:8 by , 13 years ago
vpxenc.exe x64 doesn't crash, But produces crappy output. Only snow, and video length is under 1 second..
guess something is wrong with their encoder under x64..
their x86 is working just fine..
follow-up: 10 comment:9 by , 13 years ago
I too am having this problem. It's not just with MOV files, as the same thing happened with an MP4 file as well. I was trying to encode a video to VP8/OGG/WebM and ffmpeg crashed. I have attached two files that were generated by Windows from the crash. One describes my computer setup, and the other describes some information about the state of FFmpeg. I have another crash dump file, but it's ~7MB, so it's a little too big to upload here with the file size limit.
Here is the exact output from the console, including my exact command:
C:\Users\mbradshaw\Projects\smicomp\Windows>ffmpeg -i "../samples/sample_sorens
on.mov" -t 10 -ab 45000 -ar 48000 -acodec libvorbis -b:v 362000 -quality best -t
hreads 2 -error-resilient default -nr 0 -vcodec libvpx -f webm -ac 1 -channel_la
yout 4 -vf "scale=177:224" -minrate 362000 -maxrate 362000 -bufsize 362000 -rc_i
nit_occupancy 2172000 -y "ffmpeg_output.webm"
ffmpeg version N-33591-gf884ef0, Copyright (c) 2000-2011 the FFmpeg developers
built on Oct 13 2011 02:26:50 with gcc 4.6.1
configuration: --enable-gpl --enable-version3 --enable-runtime-cpudetect --ena
ble-avisynth --enable-bzlib --enable-frei0r --enable-libopencore-amrnb --enable-
libopencore-amrwb --enable-libfreetype --enable-libgsm --enable-libmp3lame --ena
ble-libopenjpeg --enable-librtmp --enable-libschroedinger --enable-libspeex --en
able-libtheora --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis
--enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
libavutil 51. 21. 0 / 51. 21. 0
libavcodec 53. 20. 1 / 53. 20. 1
libavformat 53. 15. 0 / 53. 15. 0
libavdevice 53. 4. 0 / 53. 4. 0
libavfilter 2. 43. 6 / 2. 43. 6
libswscale 2. 1. 0 / 2. 1. 0
libpostproc 51. 2. 0 / 51. 2. 0
Seems stream 0 codec frame rate differs from container frame rate: 600.00 (600/1
) -> 12.00 (12/1)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '../samples/sample_sorenson.mov':
Metadata:
creation_time : 2001-02-19 16:45:54
title : QuickTime Sample Movie
title-eng : QuickTime Sample Movie
copyright : -¬ Apple Computer, Inc. 2001
copyright-eng : -¬ Apple Computer, Inc. 2001
Duration: 00:00:05.00, start: 0.000000, bitrate: 131 kb/s
Stream #0:0(eng): Video: svq1 (SVQ1 / 0x31515653), yuv410p, 190x240, 97 kb/s
, 12 fps, 12 tbr, 600 tbn, 600 tbc
Metadata:
creation_time : 2001-02-19 16:45:54
Stream #0:1(eng): Audio: qdm2 (QDM2 / 0x324D4451), 22050 Hz, 2 channels, s16
, 32 kb/s
Metadata:
creation_time : 2001-02-19 16:45:54
Incompatible pixel format 'yuv410p' for codec 'libvpx', auto-selecting format 'y
uv420p'
[buffer @ 000000000034A5A0] w:190 h:240 pixfmt:yuv410p tb:1/1000000 sar:0/1 sws_
param:
[scale @ 00000000002E2890] w:190 h:240 fmt:yuv410p -> w:177 h:224 fmt:yuv420p fl
ags:0x4
[libvpx @ 00000000002DFFD0] v0.9.7-p1
Output #0, webm, to 'ffmpeg_output.webm':
Metadata:
creation_time : 2001-02-19 16:45:54
title : QuickTime Sample Movie
title-eng : QuickTime Sample Movie
copyright : -¬ Apple Computer, Inc. 2001
copyright-eng : -¬ Apple Computer, Inc. 2001
encoder : Lavf53.15.0
Stream #0:0(eng): Video: vp8, yuv420p, 177x224, q=-1--1, 362 kb/s, 1k tbn, 1
2 tbc
Metadata:
creation_time : 2001-02-19 16:45:54
Stream #0:1(eng): Audio: vorbis, 48000 Hz, mono, s16, 45 kb/s
Metadata:
creation_time : 2001-02-19 16:45:54
Stream mapping:
Stream #0.0 -> #0.0 (svq1 -> libvpx)
Stream #0.1 -> #0.1 (qdm2 -> libvorbis)
Press [q] to stop, ? for help
[SWR @ 0000000004959BF0] Input channel layout has a different number of channels
than there actually is, ignoring layout
C:\Users\mbradshaw\Projects\smicomp\Windows>
Here is the exact output from FFmpeg about the details for the input video:
C:\Users\mbradshaw\Projects\smicomp\Windows>ffmpeg -v 9 -loglevel 99 -i ..\sampl
es\sample_sorenson.mov
ffmpeg version N-33591-gf884ef0, Copyright (c) 2000-2011 the FFmpeg developers
built on Oct 13 2011 02:26:50 with gcc 4.6.1
configuration: --enable-gpl --enable-version3 --enable-runtime-cpudetect --ena
ble-avisynth --enable-bzlib --enable-frei0r --enable-libopencore-amrnb --enable-
libopencore-amrwb --enable-libfreetype --enable-libgsm --enable-libmp3lame --ena
ble-libopenjpeg --enable-librtmp --enable-libschroedinger --enable-libspeex --en
able-libtheora --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis
--enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
libavutil 51. 21. 0 / 51. 21. 0
libavcodec 53. 20. 1 / 53. 20. 1
libavformat 53. 15. 0 / 53. 15. 0
libavdevice 53. 4. 0 / 53. 4. 0
libavfilter 2. 43. 6 / 2. 43. 6
libswscale 2. 1. 0 / 2. 1. 0
libpostproc 51. 2. 0 / 51. 2. 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 000000000032CFF0] Format mov,mp4,m4a,3gp,3g2,mj2 prob
ed with size=2048 and score=100
[svq1 @ 0000000001B28390] Unsupported bit depth: 0
[qdm2 @ 0000000001B37130] size: 36
init done
Seems stream 0 codec frame rate differs from container frame rate: 600.00 (600/1
) -> 12.00 (12/1)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '..\samples\sample_sorenson.mov':
Metadata:
creation_time : 2001-02-19 16:45:54
title : QuickTime Sample Movie
title-eng : QuickTime Sample Movie
copyright : -¬ Apple Computer, Inc. 2001
copyright-eng : -¬ Apple Computer, Inc. 2001
Duration: 00:00:05.00, start: 0.000000, bitrate: 131 kb/s
Stream #0:0(eng), 60, 1/600: Video: svq1 (SVQ1 / 0x31515653), yuv410p, 190x2
40, 1/600, 97 kb/s, 12 fps, 12 tbr, 600 tbn, 600 tbc
Metadata:
creation_time : 2001-02-19 16:45:54
Stream #0:1(eng), 53, 1/22050: Audio: qdm2 (QDM2 / 0x324D4451), 22050 Hz, 2
channels, s16, 32 kb/s
Metadata:
creation_time : 2001-02-19 16:45:54
At least one output file must be specified
C:\Users\mbradshaw\Projects\smicomp\Windows>
I will try to look into this more, particularly using the vpxenc.exe (x64 version). I do not have this problem when using FFmpeg x86 version. Only with the FFmpeg x64 version. I also do not have this problem on OS X 10.6 or Ubuntu 11. I am using FFmpeg-git-f884ef0-64-bit-Static (from 2011-10-13) from the Zeranoe builds.
The input video in this part comes from a QuickTime sample from the iTunes website. I will attach it.
vpxenc.exe also produces snow for my input video. The length is approximately equal to that of the input video. I haven't used vpxenc.exe very much though, so I need to test it more and make sure that the snow isn't being caused by me passing in crappy parameters. I'm more familiar with FFmpeg.
I don't have any gdb output from ffmpeg_g, as I don't have ffmpeg_g.exe. If I had it, I would be happy to produce some gdb output.
Thanks for making a great program; I hope that this can get resolved (whether it's WebM team's problem or FFmpeg's), as it could cause some problems with encoding on some of our servers that we use.
If there is any additional information I can provide, please let me know.
by , 13 years ago
Attachment: | sample_sorenson.mov added |
---|
One of many sample videoes that produces the error for me
comment:10 by , 13 years ago
Replying to mbradshaw:
I have attached two files that were generated by Windows from the crash. One describes my computer setup, and the other describes some information about the state of FFmpeg.
Afaict, these files do not contain any useful information.
Please provide a backtrace etc. as explained on http://ffmpeg.org/bugreports.html
comment:11 by , 13 years ago
Resolution: | → worksforme |
---|---|
Status: | open → closed |
I compiled libvpx without assembler optimization for win64, tested vpxenc successfully, recompiled ffmpeg with libvpx support and the resulting binary encodes fine to webm.
Please reopen only if you can provide a backtrace, gdb works fine on win64.
file 001 was too large to upload, file 002 is from the same camera also producing the crash