My favorites | Sign in
Project Home Downloads Wiki Issues Code Search
New issue   Search
for
  Advanced search   Search tips   Subscriptions
Issue 59123: ffmpeg does not build for Neon Chrome/OS
2 people starred this issue and may be notified of changes. Back to list
Status:  Fixed
Owner:  fbarch...@chromium.org
Closed:  Oct 2010
M-9

Restricted
  • Only users with EditIssue permission may comment.


Sign in to add a comment
 
Project Member Reported by fbarch...@chromium.org, Oct 13, 2010
What steps will reproduce the problem?
1. configure for neon

export GYP_DEFINES="target_arch=arm armv7=1 arm_neon=1 linux_use_tcmalloc=0 sysroot=/usr/local/google/arm-rootfs disable_nacl=1 werror=
branding=Chromium ffmpeg_branding=Chrome buildtype=Official"

2. build ffmpeg
make -j16 -r ffmpeg BUILDTYPE=Release

What is the expected output?
Chrome should build, like it does for ARM

What do you see instead?
  CC(target) out/Debug/obj.target/ffmpegsumo/third_party/ffmpeg/patched-ffmpeg-mt/libavcodec/arm/h264dsp_neon.o
third_party/ffmpeg/patched-ffmpeg-mt/libavcodec/arm/mpegvideo_arm.c:28: error: size of array 'x_Y_DC_SCALE' is negative
third_party/ffmpeg/patched-ffmpeg-mt/libavcodec/arm/mpegvideo_arm.c:29: error: size of array 'x_C_DC_SCALE' is negative
third_party/ffmpeg/patched-ffmpeg-mt/libavcodec/arm/mpegvideo_arm.c:30: error: size of array 'x_AC_PRED' is negative
third_party/ffmpeg/patched-ffmpeg-mt/libavcodec/arm/mpegvideo_arm.c:31: error: size of array 'x_BLOCK_LAST_INDEX' is negative
third_party/ffmpeg/patched-ffmpeg-mt/libavcodec/arm/mpegvideo_arm.c:32: error: size of array 'x_INTER_SCANTAB_RASTER_END' is negative
third_party/ffmpeg/patched-ffmpeg-mt/libavcodec/arm/mpegvideo_arm.c:33: error: size of array 'x_H263_AIC' is negative
make: *** [out/Debug/obj.target/ffmpegsumo/third_party/ffmpeg/patched-ffmpeg-mt/libavcodec/arm/mpegvideo_arm.o] Error 1


Arm configure is
export GYP_DEFINES="target_arch=arm armv7=1 arm_neon=0 linux_use_tcmalloc=0 sysroot=/usr/local/google/arm-rootfs disable_nacl=1 werror= branding=Chromium ffmpeg
_branding=Chrome buildtype=Official"

which builds okay
  CC(target) out/Debug/obj.target/ffmpegsumo/third_party/ffmpeg/patched-ffmpeg-mt/libavcodec/arm/simple_idct_armv6.o
  CC(target) out/Debug/obj.target/ffmpegsumo/third_party/ffmpeg/patched-ffmpeg-mt/libavutil/arm/cpu.o
  CC(target) out/Debug/obj.target/ffmpegsumo/third_party/ffmpeg/patched-ffmpeg-mt/libavcodec/arm/h264dsp_init_arm.o
  CC(target) out/Debug/obj.target/ffmpegsumo/third_party/ffmpeg/patched-ffmpeg-mt/libavcodec/arm/h264pred_init_arm.o
  CC(target) out/Debug/obj.target/ffmpegsumo/third_party/ffmpeg/patched-ffmpeg-mt/libavcodec/arm/mpegvideo_arm.o
  CC(target) out/Debug/obj.target/ffmpegsumo/third_party/ffmpeg/patched-ffmpeg-mt/libavcodec/arm/mpegvideo_armv5te.o
  CC(target) out/Debug/obj.target/ffmpegsumo/third_party/ffmpeg/patched-ffmpeg-mt/libavcodec/arm/mpegvideo_armv5te_s.o
  SOLINK(target) out/Debug/obj.target/third_party/ffmpeg/libffmpegsumo.so

Chromium build for Neon avoids the problematic file.
export GYP_DEFINES="target_arch=arm armv7=1 arm_neon=1 linux_use_tcmalloc=0 sysroot=/usr/local/google/arm-rootfs disable_nacl=1 werror= branding=Chromium ffmpeg_branding=Chromium buildtype=Official"
Oct 13, 2010
#1 fbarch...@chromium.org
This is the configure for Neon ffmpeg ChromeOS

./configure --disable-everything --disable-network --disable-bzlib --disable-zlib --disable-swscale --enable-shared --enable-decoder=theora,vorbis,pcm_u8,pcm_s16le,pcm_f32le,aac,h264,mp3,wmv1,wmv2,wmv3,wmav1,wmav2,wmapro,mpeg4,pcm_u8,pcm_s16le,pcm_f32le --enable-demuxer=ogg,matroska,wav,mp3,mov,avi,wav,asf --enable-parser=mpegaudio --enable-bsf=h264_mp4toannexb,mpeg4video_es,vc1_asftorcv,vc1_asftoannexg --enable-cross-compile --arch=arm --target-os=linux --enable-armv6 --enable-armv6t2 --enable-armvfp --enable-neon --cross-prefix=/usr/local/google/cross-tools/arm-2009q3/bin/arm-none-linux-gnueabi- --extra-cflags="-march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp"
Oct 13, 2010
#2 jie...@chromium.org
#define Y_DC_SCALE               (0xa54+72)
#define C_DC_SCALE               (0xa58+72)
#define AC_PRED                  (0xa80+72)
#define BLOCK_LAST_INDEX         (0x2160+72)
#define INTER_SCANTAB_RASTER_END (0x2360+72)
#define H263_AIC                 (0x2610+80) will pass this to another bugs 


out/Debug/obj.target/third_party/ffmpeg/libffmpegsumo.so: undefined reference to `ff_dct_unquantize_h263_inter_neon'
out/Debug/obj.target/third_party/ffmpeg/libffmpegsumo.so: undefined reference to `ff_dct_unquantize_h263_intra_neon'

Oct 13, 2010
#3 fbarch...@chromium.org
Apparently if the code is disabled, there will be a legitimate link bug
undefined reference to `ff_dct_unquantize_h263_inter_neon
Oct 14, 2010
#4 bugdroid1@gmail.com
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=62568

------------------------------------------------------------------------
r62568 | fbarchard@chromium.org | Thu Oct 14 09:59:42 PDT 2010

Changed paths:
 A http://src.chromium.org/viewvc/chrome/trunk/deps/third_party/ffmpeg/patches/to_upstream/16_neon_offsets.patch?r1=62568&r2=62567&pathrev=62568
 M http://src.chromium.org/viewvc/chrome/trunk/deps/third_party/ffmpeg/README.chromium?r1=62568&r2=62567&pathrev=62568
 M http://src.chromium.org/viewvc/chrome/trunk/deps/third_party/ffmpeg/source/patched-ffmpeg-mt/libavcodec/arm/asm-offsets.h?r1=62568&r2=62567&pathrev=62568

ffmpeg patch for neon to adjust offsets
BUG=59123
TEST=ffmpeg builds on neon

Review URL: http://codereview.chromium.org/3763003
------------------------------------------------------------------------
Oct 14, 2010
#5 bugdroid1@gmail.com
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=62571

------------------------------------------------------------------------
r62571 | fbarchard@chromium.org | Thu Oct 14 10:03:25 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/DEPS?r1=62571&r2=62570&pathrev=62571

ffmpeg roll to patch for neon to adjust offsets
BUG=59123
TEST=ffmpeg builds on neon

Review URL: http://codereview.chromium.org/3807003
------------------------------------------------------------------------
Oct 14, 2010
#6 fbarch...@chromium.org
fixed with ffmpeg patch: 16_neon_offsets.patch
CL62568	http://codereview.chromium.org/3763003 for the patch
CL62571	http://codereview.chromium.org/3807003 to update DEPS

Status: Fixed
Oct 14, 2010
#7 fbarch...@chromium.org
62568 only got the C code to build, but once the neon assembly was added to the gyp, the expression did not work.  Will need to update the offsets manually.

Status: Started
Owner: fbarch...@chromium.org
Oct 14, 2010
#8 bugdroid1@gmail.com
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=62579

------------------------------------------------------------------------
r62579 | fbarchard@chromium.org | Thu Oct 14 11:02:42 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/deps/third_party/ffmpeg/patches/to_upstream/16_neon_offsets.patch?r1=62579&r2=62578&pathrev=62579
 M http://src.chromium.org/viewvc/chrome/trunk/deps/third_party/ffmpeg/source/patched-ffmpeg-mt/libavcodec/arm/asm-offsets.h?r1=62579&r2=62578&pathrev=62579
 M http://src.chromium.org/viewvc/chrome/trunk/deps/third_party/ffmpeg/source/ffmpeg.gyp?r1=62579&r2=62578&pathrev=62579

ffmpeg add neon assembly to gyp and fix offsets with simple values
BUG=59123
TEST=ffmpeg builds on neon

Review URL: http://codereview.chromium.org/3832001
------------------------------------------------------------------------
Oct 14, 2010
#9 bugdroid1@gmail.com
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=62579

------------------------------------------------------------------------
r62579 | fbarchard@chromium.org | Thu Oct 14 11:02:42 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/deps/third_party/ffmpeg/patches/to_upstream/16_neon_offsets.patch?r1=62579&r2=62578&pathrev=62579
 M http://src.chromium.org/viewvc/chrome/trunk/deps/third_party/ffmpeg/source/patched-ffmpeg-mt/libavcodec/arm/asm-offsets.h?r1=62579&r2=62578&pathrev=62579
 M http://src.chromium.org/viewvc/chrome/trunk/deps/third_party/ffmpeg/source/ffmpeg.gyp?r1=62579&r2=62578&pathrev=62579

ffmpeg add neon assembly to gyp and fix offsets with simple values
BUG=59123
TEST=ffmpeg builds on neon

Review URL: http://codereview.chromium.org/3832001
------------------------------------------------------------------------
Oct 14, 2010
#10 bugdroid1@gmail.com
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=62582

------------------------------------------------------------------------
r62582 | fbarchard@chromium.org | Thu Oct 14 11:04:23 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/DEPS?r1=62582&r2=62581&pathrev=62582

ffmpeg add neon assembly to gyp and fix offsets with simple values
BUG=59123
TEST=ffmpeg builds on neon

Review URL: http://codereview.chromium.org/3820002
------------------------------------------------------------------------
Oct 14, 2010
#11 bugdroid1@gmail.com
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=62582

------------------------------------------------------------------------
r62582 | fbarchard@chromium.org | Thu Oct 14 11:04:23 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/DEPS?r1=62582&r2=62581&pathrev=62582

ffmpeg add neon assembly to gyp and fix offsets with simple values
BUG=59123
TEST=ffmpeg builds on neon

Review URL: http://codereview.chromium.org/3820002
------------------------------------------------------------------------
Oct 18, 2010
#12 ka...@chromium.org
(No comment was entered for this change.)
Owner: scher...@chromium.org
Labels: Mstone-9
Oct 18, 2010
#13 fbarch...@chromium.org
(No comment was entered for this change.)
Status: Fixed
Oct 18, 2010
#14 fbarch...@chromium.org
Thanks to JieSun for patch
Owner: fbarch...@chromium.org
Oct 12, 2012
#15 bugdro...@chromium.org
This issue has been closed for some time. No one will pay attention to new comments.
If you are seeing this bug or have new data, please click New Issue to start a new bug.
Labels: Restrict-AddIssueComment-Commit
Mar 10, 2013
#16 bugdro...@chromium.org
(No comment was entered for this change.)
Labels: -Area-WebKit -Feature-Media -Mstone-9 Cr-Content Cr-Internals-Media M-9
Mar 13, 2013
#17 bugdro...@chromium.org
(No comment was entered for this change.)
Labels: -Restrict-AddIssueComment-Commit Restrict-AddIssueComment-EditIssue
Apr 5, 2013
#18 bugdro...@chromium.org
(No comment was entered for this change.)
Labels: -Cr-Content Cr-Blink
Sign in to add a comment

Powered by Google Project Hosting