Vincent Predoehl | 1 Feb 2010 06:12
Picon

Latest Build Failed

Building the latest x264 failed for me on MacOS X with this link error:  I have faac / faad2 installed.  I just discovered x264 several months ago and had no trouble with the initial build.  I assumed that running "./configure" updated the code with git, but now I believe I was mistaken about that … the latest ffmpeg build complained that I needed x264 >=-0.83.  

Anyway, what do I need to install to get x264 to build?  I added /usr/local/lib, the location of faac / faad2 to the path in hopes it would solve the link error, but no suck luck…

gcc -o x264 x264.o input/yuv.o input/y4m.o output/raw.o output/matroska.o output/matroska_ebml.o output/flv.o output/flv_bytestream.o input/thread.o input/lavf.o libx264.a -lm -lpthread -s -L. -lavformat -lswscale -lavcodec -lavutil -lm -lz -lbz2 -lpthread 
ld64: warning: option -s is obsolete and being ignored
Undefined symbols:
  "_faacEncSetConfiguration", referenced from:
      _Faac_encode_init in libavcodec.a(libfaac.o)
  "_NeAACDecInit2", referenced from:
      _NeAACDecInit2$non_lazy_ptr in libavcodec.a(libfaad.o)
  "_faacEncOpen", referenced from:
      _Faac_encode_init in libavcodec.a(libfaac.o)
  "_NeAACDecGetCurrentConfiguration", referenced from:
      _NeAACDecGetCurrentConfiguration$non_lazy_ptr in libavcodec.a(libfaad.o)
  "_x264_encoder_open_79", referenced from:
      _X264_init in libavcodec.a(libx264.o)
  "_faacEncClose", referenced from:
      _Faac_encode_init in libavcodec.a(libfaac.o)
      _Faac_encode_init in libavcodec.a(libfaac.o)
      _Faac_encode_close in libavcodec.a(libfaac.o)
  "_NeAACDecInit", referenced from:
      _NeAACDecInit$non_lazy_ptr in libavcodec.a(libfaad.o)
  "_NeAACDecOpen", referenced from:
      _NeAACDecOpen$non_lazy_ptr in libavcodec.a(libfaad.o)
  "_faacEncEncode", referenced from:
      _Faac_encode_frame in libavcodec.a(libfaac.o)
  "_faacEncGetCurrentConfiguration", referenced from:
      _Faac_encode_init in libavcodec.a(libfaac.o)
  "_NeAACDecGetErrorMessage", referenced from:
      _NeAACDecGetErrorMessage$non_lazy_ptr in libavcodec.a(libfaad.o)
  "_NeAACDecDecode", referenced from:
      _NeAACDecDecode$non_lazy_ptr in libavcodec.a(libfaad.o)
  "_NeAACDecClose", referenced from:
      _NeAACDecClose$non_lazy_ptr in libavcodec.a(libfaad.o)
  "_NeAACDecSetConfiguration", referenced from:
      _NeAACDecSetConfiguration$non_lazy_ptr in libavcodec.a(libfaad.o)
  "_faacEncGetDecoderSpecificInfo", referenced from:
      _Faac_encode_init in libavcodec.a(libfaac.o)
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [x264] Error 1
Mac-Mini:x264 vpredoehl$ 

_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel
Dmitriy Vatolin | 1 Feb 2010 23:28
Picon
Favicon

MSU MPEG4-AVC/H.264 codecs comparison

Dear Developers,

  As usual Moscow State University Graphics & Multimedia Laboratory
  starts next 6-th H.264 codecs comparison.

  1. We received results for subjective comparison of several selected
     codecs.

     As was promised they was compared:
     * On sequence with frequent fade effect.
     * On sport event sequence.
     * On HD sequences.
     * On cartoon sequence.

     Tested codecs:
     * x264
     * Elecard H.264
     * Mainconcept H.264
     * DivX H.264
     * DivX ASP - as reference (pretty good MPEG-4 ASP implementation)

     Also we received psychovisial presets for x264, Elecard H.264 and
     Mainconcept H.264 from codec developers.

     For x264 psychovisial presets was tested and interesting results
     received (not so obvious).

     Also visual comparison of 4 good implementation of H.264 provide
     material for analysis.

     Other results will be published with objective part.

  2. As was noted in "Call for codecs" in this year we will use our
     new system of exhaustive options analysis, so we can select
     reasonable options (sometimes better, than developers).

     So our question for experts: What codecs are the most interesting
     for you for including into this year comparison?

  3. Also for the future questions for companies: What usecases are
     the most interesting for you?

  Please answer to <videocodec-testing <at> graphics.cs.msu.ru>

  Thank you!

  Also do not hesitate to ask any questions.

Yours,
 Dr. Vatolin
Attachment (H264_2010_subjective.pdf): application/pdf, 38 KiB
_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel
Jason Garrett-Glaser | 2 Feb 2010 00:12
Picon

Re: MSU MPEG4-AVC/H.264 codecs comparison

2010/2/1 Dmitriy Vatolin <dmitriy <at> graphics.cs.msu.ru>:
> Dear Developers,
>
>  As usual Moscow State University Graphics & Multimedia Laboratory
>  starts next 6-th H.264 codecs comparison.

The attachment provides no settings at or all or explains how you
chose between "psy" and "no psy".  Does "no psy" mean --tune psnr,
with AQ off?

> 3. Also for the future questions for companies: What usecases are
>   the most interesting for you?

I think the 1-pass ABR test should be replaced by a much longer CBR
test.  ABR is nearly useless in practice, while CBR is a huge use-case
for broadcast and so forth.  It should also be a longer test with many
scenes, to avoid biasing heavily based on the initial quantizer choice
as in Akiyo.

Some potentially interesting tests:

1) Varying VBV size: how do encoders do with normal VBV sizes, as well
as insane VBV sizes (a few frames, or even single-frame)?

2) Of encoders with lookahead, how much worse do they get when you
force them into a zero-latency mode (no lookahead)? (only reasonable
if many encoders allow this to be done)

Dark Shikari
_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel

Takashi Mochizuki | 2 Feb 2010 03:10
Picon

Re: commit: Add config.log support (Diogo Franco )

Hi all,
These days so many large patches are comming...

I would like to know why this commit contains optimization level change.
Is it required? Or, better for most case?

Takashi

On 2010/01/30, at 21:58, git version control wrote:

>  <at>  <at>  -506,9 +569,9  <at>  <at>  if [ "$debug" = "yes" ]; then
> elif [ $ARCH = ARM ]; then
>     # arm-gcc-4.2 produces incorrect output with -ffast-math
>     # and it doesn't save any speed anyway on 4.4, so disable it
> -    CFLAGS="-O4 -fno-fast-math $CFLAGS"
> +    CFLAGS="-O3 -fno-fast-math $CFLAGS"
> else
> -    CFLAGS="-O4 -ffast-math $CFLAGS"
> +    CFLAGS="-O3 -ffast-math $CFLAGS"
> fi
>
> if cc_check "stdio.h" "" "fseeko(stdin,0,0);" ; then

_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel

Jason Garrett-Glaser | 2 Feb 2010 03:20
Picon

Re: commit: Add config.log support (Diogo Franco )

On Mon, Feb 1, 2010 at 6:10 PM, Takashi Mochizuki
<mochi <at> da2.so-net.ne.jp> wrote:
> Hi all,
> These days so many large patches are comming...
>
> I would like to know why this commit contains optimization level change.
> Is it required? Or, better for most case?

-O4 actually means something with LLVM, so we dropped it to -O3 to not
cause issues there.  gcc doesn't have anything above -O3.  -O4 is
placebo.

Dark Shikari
_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel

Måns Rullgård | 2 Feb 2010 03:32

Re: commit: Add config.log support (Diogo Franco )

Jason Garrett-Glaser <darkshikari <at> gmail.com> writes:

> On Mon, Feb 1, 2010 at 6:10 PM, Takashi Mochizuki
> <mochi <at> da2.so-net.ne.jp> wrote:
>> Hi all,
>> These days so many large patches are comming...
>>
>> I would like to know why this commit contains optimization level change.
>> Is it required? Or, better for most case?
>
> -O4 actually means something with LLVM, so we dropped it to -O3 to not
> cause issues there.  gcc doesn't have anything above -O3.  -O4 is
> placebo.

For a thousand dollars I'll make you compiler that goes to -O11.

--

-- 
Måns Rullgård
mans <at> mansr.com
_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel

Sean McGovern | 2 Feb 2010 03:35
Picon
Gravatar

Re: commit: Add config.log support (Diogo Franco )

Only $1000, and -O11? C'mon Måns, we can do better than that!

How about -O255 for 100 grand. Do I hear seconds?

-- Sean
-----Original Message-----
From: Måns Rullgård <mans <at> mansr.com>
Date: Tue, 02 Feb 2010 02:32:02 
To: Mailing list for x264 developers<x264-devel <at> videolan.org>
Subject: Re: [x264-devel] commit: Add config.log support (Diogo Franco )

Jason Garrett-Glaser <darkshikari <at> gmail.com> writes:

> On Mon, Feb 1, 2010 at 6:10 PM, Takashi Mochizuki
> <mochi <at> da2.so-net.ne.jp> wrote:
>> Hi all,
>> These days so many large patches are comming...
>>
>> I would like to know why this commit contains optimization level change.
>> Is it required? Or, better for most case?
>
> -O4 actually means something with LLVM, so we dropped it to -O3 to not
> cause issues there.  gcc doesn't have anything above -O3.  -O4 is
> placebo.

For a thousand dollars I'll make you compiler that goes to -O11.

-- 
Måns Rullgård
mans <at> mansr.com
_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel

_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel
Takashi Mochizuki | 3 Feb 2010 02:31
Picon

Q: MBAFF coding

Hi,

I would like to implement MBAFF coding in my x264 QuickTime Compressor  
component.
After test implementation is done, I have two questions now.

//

Would you please tell me how MBAFF works?

My understandings are following.
- x264_encoder_encode() requires whole "frame" buffer even if MBAFF is  
enabled
- output data contains MBAFF interlaced "frame", both field contained.

As far as my trial, libx264 seems to reqiure following:
- b_interlaced = true
- i_weighted_pred = false
- i_level_idc should not be -1 (I uses 31 as Level 3.1 for now)

//

I tested this output MBAFF stream via vlc/mplayer(libavcodec), or  
Apple H.264 decoder.
- libavcodec based app decode whole buffer at one time (MBAFF'ed frame  
is decoded at once) - preferred
- Apple H.264 decoder gets in stuck. Seems to stop when first field is  
done.
  I guess that second field is not decoded even if buffer contains  
both field.

I would like to know If there is any work around in encoder side, to  
enforce decoding MBAFF
on Apple H.264. (such like different nal encoding method or something,  
if could)
- I uses libavcodec/libx264.c - encode_nals() function to encode  
x264_encoder_encode output into nal

I would appreciate any suggestion.

//

Takashi 
_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel

Stas Oskin | 10 Feb 2010 17:02
Picon
Gravatar

Best H.264 encoding settings for source quality preservation

Hi.

What would be the best H.264 trans-coding settings to best preserve the source (MPEG-4) video quality, while still reducing the required bandwidth?
Is there any FFMPEG parameter which will just trans-code to H.264 while keeping same quality?

I will be doing a 1-pass encoding coming from a live source.

Thanks!
_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel
gershon bialer | 12 Feb 2010 19:41
Picon

MP3 Lame compilation error

Hi,
 
When I try to compile x264, I get a compiliation error. It appears it can't reference lame properly, and I can't figure out why. What could be the problem? My compilation error follows. Thanks
 

gcc -o x264 x264.o input/yuv.o input/y4m.o output/raw.o output/matroska.o output/matroska_ebml.o output/flv.o output/flv_bytestream.o input/thread.o input/lavf.o libx264.a -lm -lpthread -s -L. -lavformat -lswscale -lavcodec -lavutil -lm -lz -lpthread
/usr/local/lib/libavcodec.a(libmp3lame.o): In function `MP3lame_encode_close':
/root/ffmpeg/libavcodec/libmp3lame.c:212: undefined reference to `lame_close'
/usr/local/lib/libavcodec.a(libmp3lame.o): In function `MP3lame_encode_frame':
/root/ffmpeg/libavcodec/libmp3lame.c:152: undefined reference to `lame_encode_buffer_interleaved'
/root/ffmpeg/libavcodec/libmp3lame.c:160: undefined reference to `lame_encode_buffer'
/root/ffmpeg/libavcodec/libmp3lame.c:170: undefined reference to `lame_encode_flush'
/usr/local/lib/libavcodec.a(libmp3lame.o): In function `MP3lame_encode_init':
/root/ffmpeg/libavcodec/libmp3lame.c:48: undefined reference to `lame_init'
/root/ffmpeg/libavcodec/libmp3lame.c:50: undefined reference to `lame_set_in_samplerate'
/root/ffmpeg/libavcodec/libmp3lame.c:51: undefined reference to `lame_set_out_samplerate'
/root/ffmpeg/libavcodec/libmp3lame.c:52: undefined reference to `lame_set_num_channels'
/root/ffmpeg/libavcodec/libmp3lame.c:56: undefined reference to `lame_set_quality'
/root/ffmpeg/libavcodec/libmp3lame.c:59: undefined reference to `lame_set_mode'
/root/ffmpeg/libavcodec/libmp3lame.c:60: undefined reference to `lame_set_brate'
/root/ffmpeg/libavcodec/libmp3lame.c:66: undefined reference to `lame_set_bWriteVbrTag'
/root/ffmpeg/libavcodec/libmp3lame.c:67: undefined reference to `lame_set_disable_reservoir'
/root/ffmpeg/libavcodec/libmp3lame.c:68: undefined reference to `lame_init_params'
/root/ffmpeg/libavcodec/libmp3lame.c:71: undefined reference to `lame_get_framesize'
/root/ffmpeg/libavcodec/libmp3lame.c:62: undefined reference to `lame_set_brate'
/root/ffmpeg/libavcodec/libmp3lame.c:63: undefined reference to `lame_set_VBR'
/root/ffmpeg/libavcodec/libmp3lame.c:64: undefined reference to `lame_set_VBR_q'
/root/ffmpeg/libavcodec/libmp3lame.c:54: undefined reference to `lame_set_quality'
/root/ffmpeg/libavcodec/libmp3lame.c:79: undefined reference to `lame_close'
collect2: ld returned 1 exit status
make: *** [x264] Error 1
root <at> server [~/x264-snapshot-20100130-2245]# gcc -o x264 x264.o input/yuv.o input/y4m.o output/raw.o output/matroska.o output/matroska_ebml.o output/flv.o output/flv_bytestream.o input/thread.o input/lavf.o libx264.a -lm -lpthread -s -L. -lavformat -lswscale -lavcodec -lavutil -lm -lz -lpthread
/root/ffmpeg/libavcodec/libmp3lame.c:212: undefined reference to `lame_close'
/usr/local/lib/libavcodec.a(libmp3lame.o): In function `MP3lame_encode_frame':
/root/ffmpeg/libavcodec/libmp3lame.c:152: undefined reference to `lame_encode_buffer_interleaved'
/usr/local/lib/libavcodec.a(libmp3lame.o): In function `MP3lame_encode_close':
/root/ffmpeg/libavcodec/libmp3lame.c:212: undefined reference to `lame_close'
/usr/local/lib/libavcodec.a(libmp3lame.o): In function `MP3lame_encode_frame':
/root/ffmpeg/libavcodec/libmp3lame.c:152: undefined reference to `lame_encode_buffer_interleaved'
/root/ffmpeg/libavcodec/libmp3lame.c:160: undefined reference to `lame_encode_buffer'
/root/ffmpeg/libavcodec/libmp3lame.c:170: undefined reference to `lame_encode_flush'
/usr/local/lib/libavcodec.a(libmp3lame.o): In function `MP3lame_encode_init':
/root/ffmpeg/libavcodec/libmp3lame.c:48: undefined reference to `lame_init'
/root/ffmpeg/libavcodec/libmp3lame.c:50: undefined reference to `lame_set_in_samplerate'
/root/ffmpeg/libavcodec/libmp3lame.c:51: undefined reference to `lame_set_out_samplerate'
/root/ffmpeg/libavcodec/libmp3lame.c:52: undefined reference to `lame_set_num_channels'
/root/ffmpeg/libavcodec/libmp3lame.c:56: undefined reference to `lame_set_quality'
/root/ffmpeg/libavcodec/libmp3lame.c:59: undefined reference to `lame_set_mode'
/root/ffmpeg/libavcodec/libmp3lame.c:60: undefined reference to `lame_set_brate'
/root/ffmpeg/libavcodec/libmp3lame.c:66: undefined reference to `lame_set_bWriteVbrTag'
/root/ffmpeg/libavcodec/libmp3lame.c:67: undefined reference to `lame_set_disable_reservoir'
/root/ffmpeg/libavcodec/libmp3lame.c:68: undefined reference to `lame_init_params'
/root/ffmpeg/libavcodec/libmp3lame.c:71: undefined reference to `lame_get_framesize'
/root/ffmpeg/libavcodec/libmp3lame.c:62: undefined reference to `lame_set_brate'
/root/ffmpeg/libavcodec/libmp3lame.c:63: undefined reference to `lame_set_VBR'
/root/ffmpeg/libavcodec/libmp3lame.c:64: undefined reference to `lame_set_VBR_q'
/root/ffmpeg/libavcodec/libmp3lame.c:54: undefined reference to `lame_set_quality'
/root/ffmpeg/libavcodec/libmp3lame.c:79: undefined reference to `lame_close'
collect2: ld returned 1 exit status
root <at> server [~/x264-snapshot-20100130-2245]# /usr/local/lib/libavcodec.a(libmp3lame.o): In function `MP3lame_encode_close':
-bash: syntax error near unexpected token `libmp3lame.o'
root <at> server [~/x264-snapshot-20100130-2245]# /root/ffmpeg/libavcodec/libmp3lame.c:212: undefined reference to `lame_close'
> /usr/local/lib/libavcodec.a(libmp3lame.o): In function `MP3lame_encode_frame':
> /root/ffmpeg/libavcodec/libmp3lame.c:152: undefined reference to `lame_encode_buffer_interleaved'
-bash: command substitution: line 1: unexpected EOF while looking for matching `''
-bash: command substitution: line 3: syntax error: unexpected end of file
-bash: /root/ffmpeg/libavcodec/libmp3lame.c:212:: No such file or directory
root <at> server [~/x264-snapshot-20100130-2245]# /root/ffmpeg/libavcodec/libmp3lame.c:160: undefined reference to `lame_encode_buffer'
> /root/ffmpeg/libavcodec/libmp3lame.c:170: undefined reference to `lame_encode_flush'
> /usr/local/lib/libavcodec.a(libmp3lame.o): In function `MP3lame_encode_init':
-bash: command substitution: line 1: unexpected EOF while looking for matching `''
-bash: command substitution: line 3: syntax error: unexpected end of file
-bash: /root/ffmpeg/libavcodec/libmp3lame.c:160:: No such file or directory
root <at> server [~/x264-snapshot-20100130-2245]# /root/ffmpeg/libavcodec/libmp3lame.c:48: undefined reference to `lame_init'
> /root/ffmpeg/libavcodec/libmp3lame.c:50: undefined reference to `lame_set_in_samplerate'
> /root/ffmpeg/libavcodec/libmp3lame.c:51: undefined reference to `lame_set_out_samplerate'
-bash: command substitution: line 1: unexpected EOF while looking for matching `''
-bash: command substitution: line 3: syntax error: unexpected end of file
-bash: /root/ffmpeg/libavcodec/libmp3lame.c:48:: No such file or directory
root <at> server [~/x264-snapshot-20100130-2245]# /root/ffmpeg/libavcodec/libmp3lame.c:52: undefined reference to `lame_set_num_channels'
> /root/ffmpeg/libavcodec/libmp3lame.c:56: undefined reference to `lame_set_quality'
> /root/ffmpeg/libavcodec/libmp3lame.c:59: undefined reference to `lame_set_mode'
-bash: command substitution: line 1: unexpected EOF while looking for matching `''
-bash: command substitution: line 3: syntax error: unexpected end of file
-bash: /root/ffmpeg/libavcodec/libmp3lame.c:52:: No such file or directory
root <at> server [~/x264-snapshot-20100130-2245]# /root/ffmpeg/libavcodec/libmp3lame.c:60: undefined reference to `lame_set_brate'
> /root/ffmpeg/libavcodec/libmp3lame.c:66: undefined reference to `lame_set_bWriteVbrTag'
> /root/ffmpeg/libavcodec/libmp3lame.c:67: undefined reference to `lame_set_disable_reservoir'
-bash: command substitution: line 1: unexpected EOF while looking for matching `''
-bash: command substitution: line 3: syntax error: unexpected end of file
-bash: /root/ffmpeg/libavcodec/libmp3lame.c:60:: No such file or directory
root <at> server [~/x264-snapshot-20100130-2245]# /root/ffmpeg/libavcodec/libmp3lame.c:68: undefined reference to `lame_init_params'
> /root/ffmpeg/libavcodec/libmp3lame.c:71: undefined reference to `lame_get_framesize'
> /root/ffmpeg/libavcodec/libmp3lame.c:62: undefined reference to `lame_set_brate'
-bash: command substitution: line 1: unexpected EOF while looking for matching `''
-bash: command substitution: line 3: syntax error: unexpected end of file
-bash: /root/ffmpeg/libavcodec/libmp3lame.c:68:: No such file or directory
root <at> server [~/x264-snapshot-20100130-2245]# /root/ffmpeg/libavcodec/libmp3lame.c:63: undefined reference to `lame_set_VBR'
> /root/ffmpeg/libavcodec/libmp3lame.c:64: undefined reference to `lame_set_VBR_q'
> /root/ffmpeg/libavcodec/libmp3lame.c:54: undefined reference to `lame_set_quality'
-bash: command substitution: line 1: unexpected EOF while looking for matching `''
-bash: command substitution: line 3: syntax error: unexpected end of file
-bash: /root/ffmpeg/libavcodec/libmp3lame.c:63:: No such file or directory
root <at> server [~/x264-snapshot-20100130-2245]# /root/ffmpeg/libavcodec/libmp3lame.c:79: undefined reference to `lame_close'
> collect2: ld returned 1 exit status
> make: *** [x264] Error 1
>
>
root <at> server [~/x264-snapshot-20100130-2245]#
root <at> server [~/x264-snapshot-20100130-2245]#
root <at> server [~/x264-snapshot-20100130-2245]#


--
Gershon Bialer
SRC Web Design
107 W. Van Buren St.
Ste. #201
Chicago, IL 60605
_______________________________________________
x264-devel mailing list
x264-devel <at> videolan.org
http://mailman.videolan.org/listinfo/x264-devel

Gmane