Page 1 of 3

Wiki pages are no longer available, advice needed!

Posted: Thu Jan 31, 2013 3:04 am
by Squeeto
First thing, thanks to Zeranoe for providing this information and build scripts.

Unfortunately the wiki pages that everyone points to are gone.
I best information I have is from Zeranoe:
<edited for brevity>
Grab mingw-w64 build script
Install git:
sudo apt-get install git-core
git clone git://git.videolan.org/ffmpeg.git ffmpeg-git
export PATH="$PATH:/path/to/your/mingw-w64 i686/bin"
../source/ffmpeg-git/configure --enable-memalign-hack --arch=x86 --target-os=mingw32 --cross-prefix=i686-w64-mingw32-
My operating system is Win7 64bit and I want to make a 32bit ffmpeg.exe.
I installed Ubuntu in VirtualBox.
I ran the build script and chose the 2nd option to build Win32.
I cd'ed to configure and
./configure --enable-memalign-hack --arch=x86 --target-os=mingw32 --cross-prefix=i686-w64-mingw32- pkg-config=pkg-config
(note: added pkg-config=pkg-config)
make

>ffmpeg -version
ffmpeg version N-49448-gdc8dd2f
built on Jan 30 2013 16:57:40 with gcc 4.7.2 (GCC)
configuration: --enable-memalign-hack --arch=x86 --target-os=mingw32 --cross-prefix=i686-w64-mingw32- pkg-config=pkg-config
libavutil 52. 17.100 / 52. 17.100
libavcodec 54. 91.100 / 54. 91.100
libavformat 54. 61.104 / 54. 61.104
libavdevice 54. 3.102 / 54. 3.102
libavfilter 3. 34.101 / 3. 34.101
libswscale 2. 2.100 / 2. 2.100
libswresample 0. 17.102 / 0. 17.102

I want Ffmpeg to
ffmpeg -i "C:\...\mov.avs" -ab 192k -ar 44100 -ac 2 -y -v 0 "C:\...\mov.ac3"

but this doesn't work. Am I missing a library?
Thank you

Re: Wiki pages are no longer available, advice needed!

Posted: Thu Jan 31, 2013 5:17 am
by Zeranoe
Squeeto wrote: but this doesn't work. Am I missing a library?
What doesn't work?

Provide details and logs of whats going wrong.

Re: Wiki pages are no longer available, advice needed!

Posted: Thu Jan 31, 2013 6:23 am
by rogerdpack
Squeeto wrote:First thing, thanks to Zeranoe for providing this information and build scripts.

Unfortunately the wiki pages that everyone points to are gone.
I best information I have is from Zeranoe:
<edited for brevity>
Grab mingw-w64 build script
Install git:
sudo apt-get install git-core
git clone git://git.videolan.org/ffmpeg.git ffmpeg-git
export PATH="$PATH:/path/to/your/mingw-w64 i686/bin"
../source/ffmpeg-git/configure --enable-memalign-hack --arch=x86 --target-os=mingw32 --cross-prefix=i686-w64-mingw32-
My operating system is Win7 64bit and I want to make a 32bit ffmpeg.exe.
I installed Ubuntu in VirtualBox.
I ran the build script and chose the 2nd option to build Win32.
I cd'ed to configure and
./configure --enable-memalign-hack --arch=x86 --target-os=mingw32 --cross-prefix=i686-w64-mingw32- pkg-config=pkg-config
(note: added pkg-config=pkg-config)
make

>ffmpeg -version
ffmpeg version N-49448-gdc8dd2f
built on Jan 30 2013 16:57:40 with gcc 4.7.2 (GCC)
configuration: --enable-memalign-hack --arch=x86 --target-os=mingw32 --cross-prefix=i686-w64-mingw32- pkg-config=pkg-config
libavutil 52. 17.100 / 52. 17.100
libavcodec 54. 91.100 / 54. 91.100
libavformat 54. 61.104 / 54. 61.104
libavdevice 54. 3.102 / 54. 3.102
libavfilter 3. 34.101 / 3. 34.101
libswscale 2. 2.100 / 2. 2.100
libswresample 0. 17.102 / 0. 17.102

I want Ffmpeg to
ffmpeg -i "C:\...\mov.avs" -ab 192k -ar 44100 -ac 2 -y -v 0 "C:\...\mov.ac3"

but this doesn't work. Am I missing a library?
Thank you
maybe you need to configure with --enable-avisynth ?

Re: Wiki pages are no longer available, advice needed!

Posted: Thu Jan 31, 2013 5:10 pm
by Squeeto
Zeranoe wrote:
What doesn't work?

Provide details and logs of whats going wrong.
If I type "ffmpeg -version" I get the information in post #1.

If I type the ffmpeg with the parameters in post #1 I don't get the required .ac3 file output.
This works for your latest build.

Input is a Avisynth frame serve file (.avs) that points to a movie .avi file.

Re: Wiki pages are no longer available, advice needed!

Posted: Thu Jan 31, 2013 5:13 pm
by Squeeto
rogerdpack wrote:
maybe you need to configure with --enable-avisynth ?
I'll try this.

Re: Wiki pages are no longer available, advice needed!

Posted: Thu Jan 31, 2013 6:15 pm
by Squeeto
Squeeto wrote:
rogerdpack wrote:
maybe you need to configure with --enable-avisynth ?
I'll try this.
That worked! Thank you.

Wow. Working on 2nd try. Thank you Zeranoe, your scripts made this easy.

But, with upx, my ffmpeg weighs in over 4M. If this is the only task I use ffmpeg for in my video creation process, how can I strip out all unneeded libraries and codecs?

My original (2004) version of ffmpeg was only configured with libavcodec and libavformat.

Re: Wiki pages are no longer available, advice needed!

Posted: Thu Jan 31, 2013 7:56 pm
by rogerdpack
Squeeto wrote:
Squeeto wrote:
rogerdpack wrote:
maybe you need to configure with --enable-avisynth ?
I'll try this.
That worked! Thank you.

Wow. Working on 2nd try. Thank you Zeranoe, your scripts made this easy.

But, with upx, my ffmpeg weighs in over 4M. If this is the only task I use ffmpeg for in my video creation process, how can I strip out all unneeded libraries and codecs?

My original (2004) version of ffmpeg was only configured with libavcodec and libavformat.
there may be configure options to disable "this or that" encoder. The largest one being the x264 decoder possibly.

Re: Wiki pages are no longer available, advice needed!

Posted: Thu Jan 31, 2013 9:18 pm
by Squeeto
I tried
./configure --enable-memalign-hack --arch=x86 --target-os=mingw32 --cross-prefix=i686-w64-mingw32- pkg-config=pkg-config --enable-avisynth --disable-everything --enable-encoder-ac3

nope :?
make error - undefined reference to 'ff_put_pixels8_mmxext'

Maybe this is a huge journey for a beginner?

Re: Wiki pages are no longer available, advice needed!

Posted: Thu Jan 31, 2013 11:01 pm
by ramiro
Squeeto wrote:I tried
./configure --enable-memalign-hack --arch=x86 --target-os=mingw32 --cross-prefix=i686-w64-mingw32- pkg-config=pkg-config --enable-avisynth --disable-everything --enable-encoder-ac3

nope :?
make error - undefined reference to 'ff_put_pixels8_mmxext'

Maybe this is a huge journey for a beginner?
Quite the opposite, this is a lot of fun for a beginner =)

FFmpeg should be buildable with any combination of --disable-x --enable-y. There used to be a script to test a bunch of combinations, but it seems it's no longer being tested. You can use this opportunity to find out where the problem is (check configure, the makefiles and the ifdefs in the code) and send a patch to fix the issue.

By the way, just enabling the encoder will give you an useless ffmpeg.exe and libavformat. You will want at least a demuxer/muxer to read and write the file (and the file protocol).

Re: Wiki pages are no longer available, advice needed!

Posted: Fri Feb 01, 2013 3:26 am
by Squeeto
ramiro wrote: You can use this opportunity to find out where the problem is (check configure, the makefiles and the ifdefs in the code) and send a patch to fix the issue.
Looks like Daniel Kang has submitted this already:
https://patches.libav.org/patch/34006/

<edit>
Sorry if this question is beyond the scope of this topic but how do I apply this patch to get past this?