[Libav-user] Reference app with ffmpeg n1.2 libs that works on IOS ?
Lars Hammarstrand
lars.hammarstrand at gmail.com
Tue Apr 2 18:43:12 CEST 2013
2013/3/30 Carl Eugen Hoyos <cehoyos at ag.or.at>
> Lars Hammarstrand <lars.hammarstrand at ...> writes:
>
>
Please try to fix your quoting / set your mailer to text-only.
>
> [ Off topic: Sorry - no can do, gmail standard. What mail client do you
use? ]
Tested to run ffmpeg (the tool) and it crashes every time exactly on the
same spot as xbmc! Has n1.2 ever been tested on IOS?
Question: shall I create a ticet on ffmpeg.org or at libav.org (since the
ARM HW optz orginates from Mans Mullgards work) or both maybe?
Output from gdb on IOS:
18:09:52 root at iPhone-4 /ffmpeg-n1.2
$ *uname -a*
Darwin iPhone-4 11.0.0 Darwin Kernel Version 11.0.0: Sun Apr 8 21:51:26
PDT 2012; root:xnu-1878.11.10~1/RELEASE_ARM_S5L8930X iPhone3,1 arm N90AP
Darwin
$ *gdb ffmpeg*
GNU gdb 6.3.50-20050815 (Apple version gdb-1821) (Fri Jun 29 08:41:41 UTC
2012)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "arm-apple-darwin"...Reading symbols for shared
libraries . done
(gdb) *r ffmpeg -i
http://techslides.com/demos/sample-videos/small.mp4-acodec copy
-vcodec copy output.mp4
*
Starting program: /ffmpeg-n1.2/ffmpeg ffmpeg -i
http://techslides.com/demos/sample-videos/small.mp4 -acodec copy -vcodec
copy output.mp4
Reading symbols for shared libraries ......................... done
ffmpeg version 1.2 Copyright (c) 2000-2013 the FFmpeg developers
built on Apr 2 2013 17:54:06 with llvm-gcc 4.2.1 (LLVM build 2410.2.00)
configuration: --disable-ffplay --disable-ffserver --disable-ffprobe
--disable-doc --disable-bzlib --target-os=darwin --enable-cross-compile
--enable-gpl --enable-version3 --arch=arm --cpu=cortex-a8 --enable-pic
--extra-cflags='-arch armv7' --extra-ldflags='-arch armv7'
--extra-cflags='-mfpu=neon -mfloat-abi=softfp -mvectorize-with-neon-quad'
--enable-neon --disable-armv5te --disable-armv6 --disable-armv6t2
--enable-optimizations --enable-debug=3 --disable-stripping
--cc=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc
--as='gas-preprocessor.pl/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc'
--sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk
--extra-ldflags=-L/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk/usr/lib/system
libavutil 52. 18.100 / 52. 18.100
libavcodec 54. 92.100 / 54. 92.100
libavformat 54. 63.104 / 54. 63.104
libavdevice 54. 3.103 / 54. 3.103
libavfilter 3. 42.103 / 3. 42.103
libswscale 2. 2.100 / 2. 2.100
libswresample 0. 17.102 / 0. 17.102
libpostproc 52. 2.100 / 52. 2.100
Program received signal EXC_BAD_INSTRUCTION, Illegal instruction/operand.
ff_pred8x8_128_dc_neon () at h264pred_neon.S:405
Line number 405 out of range; h264pred_neon.S has 359 lines.
(gdb) *bt*
#0 ff_pred8x8_128_dc_neon () at h264pred_neon.S:405
#1 0x003fc75a in hl_decode_mb_simple_8 (h=0x0) at h264_mb_template.c:161
#2 0x003fdad8 in ff_h264_hl_decode_mb (h=<value temporarily unavailable,
due to optimizations>) at /ffmpeg-n1.2/libavcodec/h264.c:2415
#3 0x00401da4 in decode_slice (avctx=<value temporarily unavailable, due
to optimizations>, arg=<value temporarily unavailable, due to
optimizations>) at /ffmpeg-n1.2/libavcodec/h264.c:4266
#4 0x00402380 in execute_decode_slices () at
/ffmpeg-n1.2/libavcodec/h264.c:4355
#5 0x00402dec in decode_nal_units (h=0xf00000, buf=0xd25484 "",
buf_size=4207149, parse_extradata=0) at /ffmpeg-n1.2/libavcodec/h264.c:4699
#6 0x004033d6 in decode_frame (avctx=0x1253800, data=0x0,
got_frame=0x2fdfef8c, avpkt=<value temporarily unavailable, due to
optimizations>) at /ffmpeg-n1.2/libavcodec/h264.c:4811
#7 0x003247ce in avcodec_decode_video2 (avctx=0x1253800, picture=0xe1f630,
got_picture_ptr=0x10, avpkt=0x2fdfef28) at
/ffmpeg-n1.2/libavcodec/utils.c:1690
#8 0x00067c16 in try_decode_frame (st=0xe1e820, avpkt=<value temporarily
unavailable, due to optimizations>, options=0x0) at
/ffmpeg-n1.2/libavformat/utils.c:2514
#9 0x0006c468 in avformat_find_stream_info (ic=0xd18004,
options=0x2fe25a14) at /ffmpeg-n1.2/libavformat/utils.c:2946
#10 0x00004448 in open_input_file (o=0x2fdff374, filename=<value
temporarily unavailable, due to optimizations>) at
/ffmpeg-n1.2/ffmpeg_opt.c:786
#11 0x00003de8 in open_files (l=0x0, inout=0x0, open_file=0x5f5944
<groups>) at /ffmpeg-n1.2/ffmpeg_opt.c:2307
#12 0x00004058 in ffmpeg_parse_options (argc=<value temporarily
unavailable, due to optimizations>, argv=<value temporarily unavailable,
due to optimizations>) at /ffmpeg-n1.2/ffmpeg_opt.c:2344
#13 0x00010c30 in main (argc=<value temporarily unavailable, due to
optimizations>, argv=<value temporarily unavailable, due to optimizations>)
at /ffmpeg-n1.2/ffmpeg.c:3317
Current language: auto; currently asm
(gdb)
(gdb) disass $pc-32,$pc+32
Dump of assembler code for function ff_pred8x8_top_dc_neon:
0x00398b74 <ff_pred8x8_top_dc_neon+0>: andeq lr, r1, #163840 ; 0x28000
0x00398b78 <ff_pred8x8_top_dc_neon+4>: ldreq pc, [pc, -r2, lsr #18]
0x00398b7c <ff_pred8x8_top_dc_neon+8>: addeq pc, r0, #704 ; 0x2c0
0x00398b80 <ff_pred8x8_top_dc_neon+12>: bleq 0x7d47c8 <noise_table+2408>
0x00398b84 <ff_pred8x8_top_dc_neon+16>: ldmdaeq r0, {r1, r2, r3, r7, r8,
r9, r10, r11, sp, lr, pc}^
0x00398b88 <ff_pred8x8_top_dc_neon+20>: stcne 15, cr15, [r0], {179}
0x00398b8c <ff_pred8x8_top_dc_neon+24>: stceq 15, cr15, [r0], {177}
0x00398b90 <ff_pred8x8_top_dc_neon+28>: strheq pc, [r1], r10
0x00398b94 <ff_pred8x8_top_dc_neon+32>: svclt 0x0000e04a
End of assembler dump.
(gdb)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://ffmpeg.org/pipermail/libav-user/attachments/20130402/8ceb49ed/attachment.html>
More information about the Libav-user
mailing list