Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

ffmpeg and libx264 codec...

429 views
Skip to first unread message

Dariusz Piatkowski

unread,
Dec 20, 2010, 7:06:04 AM12/20/10
to
Has anyone attempted to encode a h264 video using ffmpeg?

I'm trying this, but keep on running into problems...hard program errors...same
with pre-sets...

Heikki Kekki

unread,
Dec 20, 2010, 10:24:42 AM12/20/10
to

Why don't you use VLC? VLC 1.1.5 converts relatively good quality.

VIDEO: [H264] 480x360 24bpp 30.000 fps 620.4 kbps (75.7 kbyte/s)
Clip info:
major_brand: isom
minor_version: 0
compatible_brands: mp41avc1qt
encoder: vlc 1.1.5 stream output
encoder-eng: vlc 1.1.5 stream output

Original from Canon Powershot A570 IS
VIDEO: [MJPG] 640x480 24bpp 30.000 fps 7584.6 kbps (925.8 kbyte/s)
Clip info:
Digitization Time: SAT JUL 11 09:26:37 2009
Software: CanonMVI06

I had to make size smaller for my slow machine (700 MHz Celeron). Cpu
usage of those videos is same level and video quality too.

--
Hessu

Dave Yeo

unread,
Dec 22, 2010, 10:32:41 PM12/22/10
to

Which FFmpeg? and what program errors?
Dave

Dariusz Piatkowski

unread,
Dec 23, 2010, 9:38:20 AM12/23/10
to
Hi Dave,

I am using the latest version of ffmpeg available on Paul's site (SVN-r25157),
specifically when attempting to encode one of my AVI files with the following
command line I get this:

command line: "g:\apps\multimedia\misc\ffmpeg -i %1 -vcodec libx264 -b 3000k -r
30 output.avi"

====== START ========
FFmpeg version SVN-r25157, Copyright (c) 2000-2010 the FFmpeg developers
built on Sep 23 2010 18:40:39 with gcc 4.4.4
configuration: --prefix=/extras --enable-gpl --enable-libmp3lame --enable-libf
aac --enable-libxvid --enable-libx264 --enable-libtheora --disable-yasm --prefix
=/extras --enable-postproc --enable-nonfree
libavutil 50.27. 0 / 50.27. 0
libavcore 0. 9. 0 / 0. 9. 0
libavcodec 52.89. 0 / 52.89. 0
libavformat 52.78. 5 / 52.78. 5
libavdevice 52. 2. 2 / 52. 2. 2
libavfilter 1.39. 0 / 1.39. 0
libswscale 0.11. 0 / 0.11. 0
libpostproc 51. 2. 0 / 51. 2. 0
Input #0, avi, from 'G:\Desktop\Camera Pictures\PENTAX\IMGP0217.AVI':
Metadata:
ISFT : PENTAX K-5
Duration: 00:00:09.99, start: 0.000000, bitrate: 43781 kb/s
Stream #0.0: Video: mjpeg, yuvj420p, 1280x720, 30 tbr, 30 tbn, 30 tbc
Stream #0.1: Audio: pcm_s16le, 32000 Hz, 1 channels, s16, 512 kb/s
File 'output.avi' already exists. Overwrite ? [y/N] y
[buffer @ 0xf1fce0] w:1280 h:720 pixfmt:yuvj420p
[ffmpeg_output @ 0xf1fd40] auto-inserting filter 'auto-inserted scaler 0' betwee
n the filter 'src' and the filter 'out'
[scale @ 0x10d6320] w:1280 h:720 fmt:yuvj420p -> w:1280 h:720 fmt:yuv420p flags:
0xa0000004
[libx264 @ 0xf1c600] broken ffmpeg default settings detected
[libx264 @ 0xf1c600] use an encoding preset (vpre)
Output #0, avi, to 'output.avi':
Stream #0.0: Video: libx264, yuv420p, 1280x720, q=2-31, 3000 kb/s, 90k tbn,
30 tbc
Stream #0.1: Audio: mp2, 32000 Hz, 1 channels, s16, 64 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
Error while opening encoder for output stream #0.0 - maybe incorrect parameters
such as bit_rate, rate, width or height
======= END ===========

The ERROR shows up in RED and is made up of the following 2 lines:

[libx264 @ 0xf1c600] broken ffmpeg default settings detected
[libx264 @ 0xf1c600] use an encoding preset (vpre)

If I attempt to use a preset file using a following command, I get get a
slightly different error (only showing the ERROR lines now:

command line: g:\apps\multimedia\misc\ffmpeg -i %1 -vcodec libx264 -vpre slow
OUTPUT.mp4

======== START ==========
[NULL @ 0xf10200] [Eval @ 0xecea9c] Undefined constant or missing '(' in 'loop'
"NULL @ 0xf10200] Unable to parse option value "loop
' for option 'flags'
======== END ============

The presets file itself has the following contents, and was obtained from one of
the distribution sites:

======== START ==========
coder=1
flags=+loop
cmp=+chroma
partitions=+parti8x8+parti4x4+partp8x8+partb8x8
me_method=umh
subq=8
me_range=16
g=250
keyint_min=25
sc_threshold=40
i_qfactor=0.71
b_strategy=2
qcomp=0.6
qmin=10
qmax=51
qdiff=4
bf=3
refs=5
directpred=3
trellis=1
flags2=+bpyramid+mixed_refs+wpred+dct8x8+fastpskip
wpredp=2
rc_lookahead=50
======== END ==========

I have not tried any other presets, nor specifying all these in a single command
line.

Thanks,
-Dariusz

Heikki Kekki

unread,
Dec 23, 2010, 2:40:11 PM12/23/10
to
On Thu, 23 Dec 2010 14:38:20 UTC, "Dariusz Piatkowski"
<dariusz@_NO-SPAM_mnsi.net> wrote:

> Hi Dave,
>
> On Thu, 23 Dec 2010 03:32:41 UTC, Dave Yeo <dave....@gmail.com> wrote:
>
> > Dariusz Piatkowski wrote:
> > > Has anyone attempted to encode a h264 video using ffmpeg?
> > >
> > > I'm trying this, but keep on running into problems...hard program errors...same
> > > with pre-sets...

ffmpeg.exe -i G:\Data0\Video_edit\porri.avi -vcodec libx264 -vb 620000
-s 480x360 -r 30 -vpre libx264-normal -acodec libfaac -ab 64000 -f mp4
-y G:\Data0\Video_edit\kissa.mp4

G:\home\default\.ffmpeg\libx264-normal.ffpreset is from
http://www.ffmpeg.org/releases/ffmpeg-0.6.1.tar.gz package

Mplayer shows:

VIDEO: [H264] 480x360 24bpp 30.000 fps 632.7 kbps (77.2 kbyte/s)
Clip info:
major_brand: isom
minor_version: 512
compatible_brands: isomiso2avc1mp41
encoder: Lavf52.78.5
Opening video filter: [dsize=1024:-2]
========================================================================
==
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264)
========================================================================
==
========================================================================
==
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
AUDIO: 11025 Hz, 1 ch, s16le, 19.0 kbit/10.74% (ratio: 2369->22050)
Selected audio codec: [ffaac] afm: ffmpeg (FFmpeg AAC (MPEG-2/MPEG-4
Audio))

Video quality is fully comparable to VLC converted video.

--
Hessu

Dariusz Piatkowski

unread,
Dec 23, 2010, 8:09:18 PM12/23/10
to
On Thu, 23 Dec 2010 14:38:20 UTC, "Dariusz Piatkowski"
<dariusz@_NO-SPAM_mnsi.net> wrote:
....

> I have not tried any other presets, nor specifying all these in a single command
> line.
>
> Thanks,
> -Dariusz

Well, I did spent a bunch more time on this today and downloaded the full set of
preset profiles. Got a number of them to work actually...still, some don't. No
idea why...I can only assume either the flags in those are somehow incompatible,
or the os2 version of ffmpeg is having trouble with them. I am unable to test in
Win though.

Trying to encode my full 1080HD from the camera with the 'normal' preset
produces a reliable memory allocation error. No matter what video bitrate I
attempt to set, and so on. I have a 2Gig machine here, the memory allocation
call errors out with a request for some 2.8 Gig of RAM...I will capture the
error next time.

So..for now, looks like I'm somewhat fine. I do wonder if I can put in a little
request. Can the full presets list be included in the OS2 distro of the ffmpeg?
I emailed Paul requesting this as well...

Dave Yeo

unread,
Dec 23, 2010, 11:47:28 PM12/23/10
to

Strange, though it really looks like libx264 is having the problems. I
wonder how recent a build of x264 Paul used and how he compiled it. I'd
consider using libx264 a waste if not using the optimized assembly and
last time I looked at it, it was non-trivial for me to port. I'll have
another look.
FFmpeg has a lot of x264 ported to it with the 2 main x264 developers
also working on FFmpeg and an assembler optimized FFmpeg would be
superiour to an unoptimized x264 linked FFmpeg.
Can you also test with my build on Hobbes?

This is also a weird error as the preset is the same as shipped and
should just work. I'll try to look at this
Dave

Dave Yeo

unread,
Dec 23, 2010, 11:58:51 PM12/23/10
to
On 12/23/10 11:40 am, Heikki Kekki wrote:
> On Thu, 23 Dec 2010 14:38:20 UTC, "Dariusz Piatkowski"
> <dariusz@_NO-SPAM_mnsi.net> wrote:
>
>> Hi Dave,
>>
>> On Thu, 23 Dec 2010 03:32:41 UTC, Dave Yeo<dave....@gmail.com> wrote:
>>
>>> Dariusz Piatkowski wrote:
>>>> Has anyone attempted to encode a h264 video using ffmpeg?
>>>>
>>>> I'm trying this, but keep on running into problems...hard program errors...same
>>>> with pre-sets...
>
> ffmpeg.exe -i G:\Data0\Video_edit\porri.avi -vcodec libx264 -vb 620000
> -s 480x360 -r 30 -vpre libx264-normal -acodec libfaac -ab 64000 -f mp4
> -y G:\Data0\Video_edit\kissa.mp4
>
> G:\home\default\.ffmpeg\libx264-normal.ffpreset is from
> http://www.ffmpeg.org/releases/ffmpeg-0.6.1.tar.gz package

I see that preset is not shipped with FFmpeg anymore, at least with r26084.

>
> Mplayer shows:
>
> VIDEO: [H264] 480x360 24bpp 30.000 fps 632.7 kbps (77.2 kbyte/s)
> Clip info:
> major_brand: isom
> minor_version: 512
> compatible_brands: isomiso2avc1mp41
> encoder: Lavf52.78.5
> Opening video filter: [dsize=1024:-2]
> ========================================================================
> ==
> Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
> Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264)
> ========================================================================
> ==
> ========================================================================
> ==
> Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
> AUDIO: 11025 Hz, 1 ch, s16le, 19.0 kbit/10.74% (ratio: 2369->22050)
> Selected audio codec: [ffaac] afm: ffmpeg (FFmpeg AAC (MPEG-2/MPEG-4
> Audio))
>
> Video quality is fully comparable to VLC converted video.
>

It should be as VLC uses libavcodec to transcode.
Dave

Dave Yeo

unread,
Dec 24, 2010, 12:12:16 AM12/24/10
to
On 12/23/10 05:09 pm, Dariusz Piatkowski wrote:
> On Thu, 23 Dec 2010 14:38:20 UTC, "Dariusz Piatkowski"
> <dariusz@_NO-SPAM_mnsi.net> wrote:
> ....
>
>> I have not tried any other presets, nor specifying all these in a single command
>> line.
>>
>> Thanks,
>> -Dariusz
>
> Well, I did spent a bunch more time on this today and downloaded the full set of
> preset profiles. Got a number of them to work actually...still, some don't. No
> idea why...I can only assume either the flags in those are somehow incompatible,
> or the os2 version of ffmpeg is having trouble with them. I am unable to test in
> Win though.

Where are you downloading the presets from? And are you keeping them in
%HOME%\.ffmpeg ? They should work as well as on Win as when the Windows
developer added the presets to FFmpeg he was aware that OS/2 was similar.

>
> Trying to encode my full 1080HD from the camera with the 'normal' preset
> produces a reliable memory allocation error. No matter what video bitrate I
> attempt to set, and so on. I have a 2Gig machine here, the memory allocation
> call errors out with a request for some 2.8 Gig of RAM...I will capture the
> error next time.

Don't worry about the actual error, if FFmpeg is trying to allocate 2.8
Gig it is going to error out.
I could attempt to build a high memory version of FFmpeg which may
succeed in allocating that much memory depending on the machine setup.
It may still be awfully slow with only 2 Gig of real ram.
I'll have to try a test build.

>
> So..for now, looks like I'm somewhat fine. I do wonder if I can put in a little
> request. Can the full presets list be included in the OS2 distro of the ffmpeg?
> I emailed Paul requesting this as well...
>

I included all the presets that ship with FFmpeg in FFmpeg\share\ffmpeg
which was where make install put them.
Dave

Heikki Kekki

unread,
Dec 24, 2010, 7:11:16 AM12/24/10
to
On Fri, 24 Dec 2010 04:47:28 UTC, Dave Yeo <dave....@gmail.com> wrote:

> FFmpeg has a lot of x264 ported to it with the 2 main x264 developers
> also working on FFmpeg and an assembler optimized FFmpeg would be
> superiour to an unoptimized x264 linked FFmpeg.
> Can you also test with my build on Hobbes?

I tested your build to see, is there any diffrence to Paul's build.

ffmpeg.exe -i G:\Data0\Video_edit\MVI-0630.avi -vcodec libx264 -b 620k
-s 480x360 -r 30 -vpre libx264-normal -acodec libfaac -ab 64k -f mp4 -y
G:\Data0\Video_edit\kissa_tanssii.mp4
FFmpeg version SVN-r25128, Copyright (c) 2000-2010 the FFmpeg developers
built on Sep 15 2010 19:06:30 with gcc 4.4.4
configuration: --disable-debug --samples=/fate/fate-suite
--extra-cflags=-D_GNU_SOURCE --enable-li
bmp3lame --enable-libvorbis --enable-gpl
--prefix=''\''r:/tmp/FFmpeg'\''' --enable-runtime-cpudetect
--disable-ffserver


libavutil 50.27. 0 / 50.27. 0
libavcore 0. 9. 0 / 0. 9. 0
libavcodec 52.89. 0 / 52.89. 0
libavformat 52.78. 5 / 52.78. 5
libavdevice 52. 2. 2 / 52. 2. 2
libavfilter 1.39. 0 / 1.39. 0
libswscale 0.11. 0 / 0.11. 0

Input #0, avi, from 'G:\Data0\Video_edit\MVI-0630.avi':
Metadata:
ISFT : CanonMVI06
Duration: 00:00:16.49, start: 0.000000, bitrate: 15066 kb/s
Stream #0.0: Video: mjpeg, yuvj422p, 640x480, 30 tbr, 30 tbn, 30 tbc
Stream #0.1: Audio: pcm_u8, 11024 Hz, 1 channels, u8, 88 kb/s

And that's all, no output file.

ffmpeg -codecs doesn't show libx264 codec. Am I missing something?

--
Hessu

Heikki Kekki

unread,
Dec 24, 2010, 7:47:12 AM12/24/10
to
On Fri, 24 Dec 2010 12:11:16 UTC, "Heikki Kekki"
<kekk...@sgic.fi.invalid> wrote:

> ffmpeg -codecs doesn't show libx264 codec. Am I missing something?

FFMPEG!.LOG last line: Unknown encoder 'libx264'


--
Hessu

Dave Yeo

unread,
Dec 24, 2010, 11:55:06 AM12/24/10
to

I didn't link in X264. As I said, without the assembler optimizations it
seems pretty useless especially as my build does have assembler
optimizations in FFmpeg which were written by the X264 developers so
should work faster and perhaps better to encode H264 without using libx264.
The problem is that libx264 uses yasm for assembly and yasm doesn't
support our object formats. And at least for me it is non-trivial to
port it to nasm.
Dave

KO Myung-Hun

unread,
Dec 25, 2010, 9:27:28 AM12/25/10
to
Hi/2.

It's a decoder part not an encoder part.

If not, would you mind showing me how to encode to h264 using FFmpeg ?

> The problem is that libx264 uses yasm for assembly and yasm doesn't
> support our object formats. And at least for me it is non-trivial to
> port it to nasm.

You can use nasm instead of yasm. I already uploaded the x264 package
using nasm to hobbes.

--
KO Myung-Hun

Using Mozilla SeaMonkey 2.0.11
Under OS/2 Warp 4 for Korean with FixPak #15
On AMD ThunderBird 1GHz with 512 MB RAM

Korean OS/2 User Community : http://www.ecomstation.co.kr

Dariusz Piatkowski

unread,
Dec 25, 2010, 9:40:25 AM12/25/10
to

What is the filename?

I can only find Dave's "x264-20101224.zip" out there...and trying to unzip it
gives me trouble...tried downloading multiple times as well...no luck so far.

Dariusz Piatkowski

unread,
Dec 25, 2010, 9:45:53 AM12/25/10
to
On Fri, 24 Dec 2010 16:55:06 UTC, Dave Yeo <dave....@gmail.com> wrote:

> Heikki Kekki wrote:
> > On Fri, 24 Dec 2010 04:47:28 UTC, Dave Yeo<dave....@gmail.com> wrote:
> >
> >> FFmpeg has a lot of x264 ported to it with the 2 main x264 developers
> >> also working on FFmpeg and an assembler optimized FFmpeg would be
> >> superiour to an unoptimized x264 linked FFmpeg.
> >> Can you also test with my build on Hobbes?
> >

...


> >
> > ffmpeg -codecs doesn't show libx264 codec. Am I missing something?
> >
>
> I didn't link in X264. As I said, without the assembler optimizations it
> seems pretty useless especially as my build does have assembler
> optimizations in FFmpeg which were written by the X264 developers so
> should work faster and perhaps better to encode H264 without using libx264.
> The problem is that libx264 uses yasm for assembly and yasm doesn't
> support our object formats. And at least for me it is non-trivial to
> port it to nasm.
> Dave

So here is what's confusing for me. ffmpeg on it's own can't encode H264...it
needs libx264 I believe. Envoking the "-vcodec libx264" apparently executes the
separate libx264 code???

All I can tell you is that on my Barton 3200+ core it takes a LONG time to get a
decent H264 720HQ video encoded. About 15 mins for about 30 sec of video taken
on my Pentax K-5 camera (which uses MJPEG vcodec...grrh).

This seems to make sense b/c when I do encode successfully there is a message
displayed telling me to 'cpu optimizations' are being used...

So the question I have for you Dave is this: if ffmpeg can encode H264, how do I
get it to do so?

Thanks!

KO Myung-Hun

unread,
Dec 25, 2010, 11:18:11 AM12/25/10
to
Hi/2.

http://hobbes.nmsu.edu/h-search.php?key=x264&pushbutton=Search

But a recent FFmpeg requires a more recent build of x264. They are too old.

I think, Dave released a latest build of x264 due to this.

Dave Yeo

unread,
Dec 25, 2010, 3:42:48 PM12/25/10
to
Dariusz Piatkowski wrote:
> On Sat, 25 Dec 2010 14:27:28 UTC, KO Myung-Hun<ko...@chollian.net> wrote:
>
>> Hi/2.
>>
>> Dave Yeo wrote:
>>> Heikki Kekki wrote:
>>>> On Fri, 24 Dec 2010 04:47:28 UTC, Dave Yeo<dave....@gmail.com> wrote:
[snip]

>>>>
>>>> ffmpeg -codecs doesn't show libx264 codec. Am I missing something?
>>>>
>>>
>>> I didn't link in X264. As I said, without the assembler optimizations it
>>> seems pretty useless especially as my build does have assembler
>>> optimizations in FFmpeg which were written by the X264 developers so
>>> should work faster and perhaps better to encode H264 without using libx264.
>>
>> It's a decoder part not an encoder part.
>>
>> If not, would you mind showing me how to encode to h264 using FFmpeg ?
>>
>>> The problem is that libx264 uses yasm for assembly and yasm doesn't
>>> support our object formats. And at least for me it is non-trivial to
>>> port it to nasm.
>>
>> You can use nasm instead of yasm. I already uploaded the x264 package
>> using nasm to hobbes.
>
> What is the filename?
>
> I can only find Dave's "x264-20101224.zip" out there...and trying to unzip it
> gives me trouble...tried downloading multiple times as well...no luck so far.

My phone line did a blip with 2 minutes left :( I'll reupload it later
along with libtheora and then a up to date FFmpeg with the same build
options as Paul uses. I'm trying to meet the requirements of the GPL by
having all the packages on Hobbes.
Dave

Dave Yeo

unread,
Dec 25, 2010, 4:04:40 PM12/25/10
to
Dariusz Piatkowski wrote:
> On Fri, 24 Dec 2010 16:55:06 UTC, Dave Yeo<dave....@gmail.com> wrote:
>
>> Heikki Kekki wrote:
>>> On Fri, 24 Dec 2010 04:47:28 UTC, Dave Yeo<dave....@gmail.com> wrote:
>>>
>>>> FFmpeg has a lot of x264 ported to it with the 2 main x264 developers
>>>> also working on FFmpeg and an assembler optimized FFmpeg would be
>>>> superiour to an unoptimized x264 linked FFmpeg.
>>>> Can you also test with my build on Hobbes?
>>>
> ...
>>>
>>> ffmpeg -codecs doesn't show libx264 codec. Am I missing something?
>>>
>>
>> I didn't link in X264. As I said, without the assembler optimizations it
>> seems pretty useless especially as my build does have assembler
>> optimizations in FFmpeg which were written by the X264 developers so
>> should work faster and perhaps better to encode H264 without using libx264.
>> The problem is that libx264 uses yasm for assembly and yasm doesn't
>> support our object formats. And at least for me it is non-trivial to
>> port it to nasm.
>> Dave
>
> So here is what's confusing for me. ffmpeg on it's own can't encode H264...it
> needs libx264 I believe. Envoking the "-vcodec libx264" apparently executes the
> separate libx264 code???

It seems I was confused and we do need to link in libx264 for encoding.
You are right that "-vcodec libx264" calls separate libx264 code. Sorry
for my confusion, I don't do much encoding.

>
> All I can tell you is that on my Barton 3200+ core it takes a LONG time to get a
> decent H264 720HQ video encoded. About 15 mins for about 30 sec of video taken
> on my Pentax K-5 camera (which uses MJPEG vcodec...grrh).

I don't know how Paul has been building X264 so not sure if he used
nasm. Luckily nasm has improved a lot and with komh's patches for our
a.out object format it was fairly easy to build an assembler optimized
version. I also used komh patch for calculating how many cores you have
so it should take advantage of them.
Once I finish building all the supporting libraries and upload them,
then upload FFmpeg it will be interesting if there is a speedup.

>
> This seems to make sense b/c when I do encode successfully there is a message
> displayed telling me to 'cpu optimizations' are being used...
>
> So the question I have for you Dave is this: if ffmpeg can encode H264, how do I
> get it to do so?

Sorry for the confusion, we do need libx264 for H264.
Dave

Paul Smedley

unread,
Dec 25, 2010, 4:43:41 PM12/25/10
to
Hi Dave,

On Sat, 25 Dec 2010 21:04:40 UTC, Dave Yeo <dave....@gmail.com>
wrote:


> I don't know how Paul has been building X264 so not sure if he used
> nasm. Luckily nasm has improved a lot and with komh's patches for our
> a.out object format it was fairly easy to build an assembler optimized
> version. I also used komh patch for calculating how many cores you have
> so it should take advantage of them.

Compiled without asm support. I'll grab KO's patches and enable asm
here too

--
Cheers,

Paul.

Dariusz Piatkowski

unread,
Dec 25, 2010, 5:01:24 PM12/25/10
to
On Sat, 25 Dec 2010 14:45:53 UTC, "Dariusz Piatkowski"
<dariusz@_NO-SPAM_mnsi.net> wrote:

...

> So here is what's confusing for me. ffmpeg on it's own can't encode H264...it

> needs libx264 I believe. Envoking the "-vcodec libx264" apparently executes the
> separate libx264 code???

...


> This seems to make sense b/c when I do encode successfully there is a message
> displayed telling me to 'cpu optimizations' are being used...

Just to clarify (although I believe all in this thread already understand what's
going on) I meant to say in the above sentence that '....cpu optimizations are
NOT being used...'. This would jive with what you guys have been saying about
none of this being built-in due to the assembler stuff being a problem.

Anyways...I await the next 'drop'...LOL, Merry Christmas to you all, and thanks
for jumping on this so quickly!

Dave Yeo

unread,
Dec 26, 2010, 1:10:49 AM12/26/10
to

There are updated patches in x264-20101224-v2.zip, xvidcore-1.2.2.zip
and ffmpeg-os2-r26087.zip that I uploaded to Hobbes. Need a fairly new
nasm and for FFmpeg --extras-cflags=-D_GNU_SOURCE so no other patches
are needed. Once again thanks to KO for the x264 and xvidcore patches.
I once again missed adding Z12.dll to the archive. It is in the previous
version I uploaded to Hobbes and I'm building an updated package using
the static zlib which I will upload tonight I hope.
Merry Christmas,
Dave

Dariusz Piatkowski

unread,
Jan 3, 2011, 9:02:43 PM1/3/11
to
On Fri, 24 Dec 2010 16:55:06 UTC, Dave Yeo <dave....@gmail.com> wrote:

> Heikki Kekki wrote:
> > On Fri, 24 Dec 2010 04:47:28 UTC, Dave Yeo<dave....@gmail.com> wrote:
> >
> >> FFmpeg has a lot of x264 ported to it with the 2 main x264 developers
> >> also working on FFmpeg and an assembler optimized FFmpeg would be
> >> superiour to an unoptimized x264 linked FFmpeg.
> >> Can you also test with my build on Hobbes?
> >
> > I tested your build to see, is there any diffrence to Paul's build.

...


> I didn't link in X264. As I said, without the assembler optimizations it
> seems pretty useless especially as my build does have assembler
> optimizations in FFmpeg which were written by the X264 developers so
> should work faster and perhaps better to encode H264 without using libx264.
> The problem is that libx264 uses yasm for assembly and yasm doesn't
> support our object formats. And at least for me it is non-trivial to
> port it to nasm.
> Dave

I don't see my original post here...but just to reply as a FYI for others that
may be following up on this. Dave has released a new drop of ffmeg (can be found
on Hobbes as
http://hobbes.nmsu.edu/download/pub/incoming/ffmpeg-os2-r26099.zip). This
supports libx264 along with CPU optimizations.

On my AMD Barton 3200 core the "H264 HQ 720" encoding time is about 3x quicker
using this CPU optimized release!

Excellent work Mr.Dave...much appreciated!

Heikki Kekki

unread,
Jan 4, 2011, 11:34:00 AM1/4/11
to

Doesn't work here with 700 MHz Celeron.

FFmpeg version SVN-r26099, Copyright (c) 2000-2010 the FFmpeg developers
built on Dec 26 2010 23:15:13 with gcc 4.4.4
configuration: --disable-debug --samples=/fate/fate-suite
--extra-ldflags=-Zhigh-mem --extra-cflags=-D_GNU_SOURCE --enable-gpl
--enable-libxvid --enable-libx264 --enable-libmp3lame --enable-postproc
--enable-runtime-cpudetect --prefix=/ffmpeg
libavutil 50.36. 0 / 50.36. 0
libavcore 0.16. 0 / 0.16. 0
libavcodec 52.100. 0 / 52.100. 0
libavformat 52.89. 0 / 52.89. 0


libavdevice 52. 2. 2 / 52. 2. 2

libavfilter 1.70. 2 / 1.70. 2
libswscale 0.12. 0 / 0.12. 0


libpostproc 51. 2. 0 / 51. 2. 0

Killed by SIGFPE
pid=0x0073 ppid=0x0020 tid=0x0001 slot=0x00ca pri=0x0200 mc=0x0001
G:\PROGRAMS\FFMPEG\BIN\FFMPEG.EXE
FFMPEG_G 0:000556e7
cs:eip=005b:000656e7 ss:esp=0053:0095f5e0 ebp=2003e0e0
ds=0053 es=0053 fs=150b gs=0000 efl=00002246
eax=00000000 ebx=2004f3c0 ecx=2004f1e0 edx=2004f980 edi=00000000
esi=0095f650
Process dumping was disabled, use DUMPPROC / PROCDUMP to enable it.


--
Hessu

Dave Yeo

unread,
Jan 4, 2011, 12:41:34 PM1/4/11
to
Heikki Kekki wrote:
> Doesn't work here with 700 MHz Celeron.

Can you test with
http://hobbes.nmsu.edu/download/pub/os2/apps/mmedia/ffmpeg-os2-r26099-fix1r2.zip?
(4.5MB)
I've turned off the CPU detection in the hopes that it fixes this issue.
Also this build has libvpx and libtheora support
Dave

Heikki Kekki

unread,
Jan 4, 2011, 1:54:51 PM1/4/11
to

Sorry, but same result.

FFmpeg version UNKNOWN, Copyright (c) 2000-2010 the FFmpeg developers
built on Jan 3 2011 20:54:40 with gcc 4.4.4


configuration: --disable-debug --samples=/fate/fate-suite
--extra-ldflags=-Zhigh-mem --extra-cflags=-D_GNU_SOURCE --enable-gpl
--enable-libxvid --enable-libx264 --enable-libmp3lame --enable-postproc

--enable-libvpx --enable-libtheora


libavutil 50.36. 0 / 50.36. 0
libavcore 0.16. 0 / 0.16. 0
libavcodec 52.100. 0 / 52.100. 0
libavformat 52.89. 0 / 52.89. 0
libavdevice 52. 2. 2 / 52. 2. 2
libavfilter 1.70. 2 / 1.70. 2
libswscale 0.12. 0 / 0.12. 0
libpostproc 51. 2. 0 / 51. 2. 0

Killed by SIGFPE
pid=0x007d ppid=0x0020 tid=0x0001 slot=0x00ca pri=0x0200 mc=0x0001


G:\PROGRAMS\FFMPEG\BIN\FFMPEG.EXE

FFMPEG_G 0:00055647
cs:eip=005b:00065647 ss:esp=0053:009cf5e0 ebp=2003e0e0


ds=0053 es=0053 fs=150b gs=0000 efl=00002246
eax=00000000 ebx=2004f3c0 ecx=2004f1e0 edx=2004f980 edi=00000000

esi=009cf650

Dave Yeo

unread,
Jan 4, 2011, 2:30:59 PM1/4/11
to
Heikki Kekki wrote:
> On Tue, 4 Jan 2011 17:41:34 UTC, Dave Yeo<dave....@gmail.com> wrote:
>
>> > Heikki Kekki wrote:
>>> > > Doesn't work here with 700 MHz Celeron.
>> >
>> > Can you test with
>> > http://hobbes.nmsu.edu/download/pub/os2/apps/mmedia/ffmpeg-os2-r26099-fix1r2.zip?
>> > (4.5MB)
>> > I've turned off the CPU detection in the hopes that it fixes this issue.
>> > Also this build has libvpx and libtheora support
> Sorry, but same result.

Does your Celeron have SSE2 support?
Dave

Heikki Kekki

unread,
Jan 5, 2011, 3:04:12 AM1/5/11
to
On Tue, 4 Jan 2011 19:30:59 UTC, Dave Yeo <dave....@gmail.com> wrote:

> Heikki Kekki wrote:
> > On Tue, 4 Jan 2011 17:41:34 UTC, Dave Yeo<dave....@gmail.com> wrote:
> >
> >> > Heikki Kekki wrote:
> >>> > > Doesn't work here with 700 MHz Celeron.
> >> >
> >> > Can you test with
> >> > http://hobbes.nmsu.edu/download/pub/os2/apps/mmedia/ffmpeg-os2-r26099-fix1r2.zip?
> >> > (4.5MB)
> >> > I've turned off the CPU detection in the hopes that it fixes this issue.
> >> > Also this build has libvpx and libtheora support
> > Sorry, but same result.
>
> Does your Celeron have SSE2 support?

Don't really know, but kmp output says:

CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 0
SwScaler CPUflags : MMX MMX2


--
Hessu

0 new messages