I'm getting stuck here. So prior to running the directions in the
wiki to build FFMPEG, running the original version yeilded the following results.
- Code:
MyBookLive:/shares/Public/Shared Videos# ffmpeg -i Conan-Sample.avi
FFmpeg version SVN-r0.5.1-4:0.5.1-3, Copyright (c) 2000-2009 Fabrice Bellard, et al.
configuration: --disable-encoder=h263 --disable-encoder=h263p --disable-encoder=mpeg2video --disable-encoder=mpeg4 --disable-encoder=msmpeg4v1 --disable-encoder=msmpeg4v2 --disable-encoder=msmpeg4v3 --extra-version=4:0.5.1-3 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libdirac --enable-libgsm --enable-libopenjpeg --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --disable-stripping --disable-vhook --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libfaad --enable-libdc1394 --disable-altivec --enable-shared --disable-static
libavutil 49.15. 0 / 49.15. 0
libavcodec 52.20. 1 / 52.20. 1
libavformat 52.31. 0 / 52.31. 0
libavdevice 52. 1. 0 / 52. 1. 0
libavfilter 0. 4. 0 / 0. 4. 0
libswscale 0. 7. 1 / 0. 7. 1
libpostproc 51. 2. 0 / 51. 2. 0
built on Mar 12 2010 22:49:34, gcc: 4.4.3
Seems stream 0 codec frame rate differs from container frame rate: 47.95 (48000/1001) -> 23.98 (24000/1001)
Input #0, matroska, from 'Conan-Sample.avi':
Duration: 00:03:21.52, start: 0.000000, bitrate: N/A
Stream #0.0(eng): Video: h264, yuv420p, 840x352, PAR 1:1 DAR 105:44, 23.98 tbr, 1k tbn, 47.95 tbc
Stream #0.1(eng): Audio: aac, 24000 Hz, stereo, s16
Stream #0.2(eng): Subtitle: 0x0000
At least one output file must be specified
Now that I just finished compiling FFMPEG per the directions, I get the following:
- Code:
MyBookLive:/shares/Public/Shared Videos# ffmpeg -i Conan-Sample.avi
ffmpeg version 0.9, Copyright (c) 2000-2011 the FFmpeg developers
built on Jan 8 2012 14:14:54 with gcc 4.4.5
configuration: --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 --enable-nonfree --enable-postproc --enable-version3 --enable-x11grab --enable-libvpx --enable-librtmp --enable-libxvid
libavutil 51. 32. 0 / 51. 32. 0
libavcodec 53. 42. 0 / 53. 42. 0
libavformat 53. 24. 0 / 53. 24. 0
libavdevice 53. 4. 0 / 53. 4. 0
libavfilter 2. 53. 0 / 2. 53. 0
libswscale 2. 1. 0 / 2. 1. 0
libpostproc 51. 2. 0 / 51. 2. 0
Illegal instruction
One other thing, when browsing with my Blueray player, prior to attempting the compile, all of the videos appears but gave an error that the file was currupted. Now post compile, those videos will not even appear.
So what I've done so far:
1) Added deb
http://www.debian-multimedia.org stable main and uncommented deb
http://ftp.us.debian.org/debian/ sid main
then resolved a keyring warning. I also added a preferences file for Apt Pinning to prioritize stable versions first.
2) To have enough space, pointed the transcoding location to /shares/Public/vtmp/
then expanded the /tmp location for the os.
- Code:
mkdir -p /shares/Public/tmp
cp -af /tmp/* /shares/Public/tmp
mount -o bind /shares/Public/tmp /tmp
3) Then started to follow the instructions at
http://wiki.serviio.org/doku.php?id=build_ffmpeg_linuxFirst issue is that during the Install Essential Build Tools and Libraries step, got the below error
Preparing to replace dpkg 1.15.7.2 (using .../dpkg_1.15.8.11_powerpc.deb) ...
Unpacking replacement dpkg ...
dpkg: error processing /var/cache/apt/archives/dpkg_1.15.8.11_powerpc.deb (--unpack):
trying to overwrite '/etc/logrotate.d/dpkg', which is also in package wd-nas 01.00.01-55257
Processing triggers for man-db ...
Errors were encountered while processing:
/var/cache/apt/archives/dpkg_1.15.8.11_powerpc.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
So I use the following to resolve the conflict, stating yes.
- Code:
dpkg -i --force-overwrite /var/cache/apt/archives/dpkg_1.15.8.11_powerpc.deb
4) Continued with "Build and Install x264", "Build and Install libvpx", "Build and Install librtmp"
Amoung all of the outputs, there were only a few warnings.
For x264 there was
- Code:
gcc -Wshadow -O3 -ffast-math -Wall -I. -maltivec -mabi=altivec -std=gnu99 -fomit-frame-pointer -fno-tree-vectorize -c -o common/ppc/pixel.o common/ppc/pixel.c
common/ppc/pixel.c: In function 'pixel_satd_8x4_altivec':
common/ppc/pixel.c:247: warning: 'temp4v' is used uninitialized in this function
common/ppc/pixel.c:247: warning: 'temp5v' is used uninitialized in this function
common/ppc/pixel.c:247: warning: 'temp6v' is used uninitialized in this function
common/ppc/pixel.c:247: warning: 'temp7v' is used uninitialized in this function
Libvpx had
- Code:
[CC] vp8/encoder/rdopt.c.o
vp8/encoder/rdopt.c: In function 'vp8_rd_pick_inter_mode':
vp8/encoder/rdopt.c:1744: warning: 'distortion_uv' may be used uninitialized in this function
...
[CC] vp8/decoder/decodframe.c.o
vp8/decoder/decodframe.c: In function 'decode_macroblock':
vp8/decoder/decodframe.c:110: warning: unused variable 'corruption_detected'
...
make[1]: Nothing to be done for `all'.
5) Now comes the FFMPEG step. I've done this twice, once exactly as the wiki says, and once as I will outline below to use the source that's posted on this site.
- Code:
wget http://download.serviio.org/opensource/ffmpeg-0.9.tar.gz
tar -xf ffmpeg-0.9.tar.gz
mv ffmpeg-0.9 ffmpeg
cd ffmpeg
./configure --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 --enable-nonfree --enable-postproc --enable-version3 --enable-x11grab --enable-libvpx --enable-librtmp --enable-libxvid
make
checkinstall --pkgname=ffmpeg --pkgversion="5:$(date +%Y%m%d%H%M)-git" --backup=no --deldoc=yes --fstrans=no --default
During these steps there were a lot of warnings.
Throughout the make step... to big to post, I'll try to include in the next post, if only examples of the errors.
And even in the installation portion of the check install
- Code:
Installing with make install...
========================= Installation results ===========================
INSTALL doc/ffmpeg.1
INSTALL doc/avconv.1
INSTALL doc/ffplay.1
INSTALL doc/ffprobe.1
INSTALL doc/ffserver.1
CC avconv.o
avconv.c: In function 'do_video_resample':
avconv.c:1147: warning: unused variable 'enc'
avconv.c: In function 'init_input_stream':
avconv.c:2046: warning: unused variable 'i'
avconv.c: In function 'transcode':
avconv.c:2473: warning: 'avio_set_interrupt_cb' is deprecated (declared at libavformat/avio.h:402)
avconv.c:2473: warning: passing argument 1 of 'avio_set_interrupt_cb' from incompatible pointer type
libavformat/avio.h:402: note: expected 'int (*)(void)' but argument is of type 'int (*)(void *)'
avconv.c: In function 'opt_map':
avconv.c:2781: warning: 'sync_stream_idx' may be used uninitialized in this function
avconv.c: In function 'opt_output_file':
avconv.c:3644: warning: 'ost' may be used uninitialized in this function
avconv.c:3886: warning: 'm' may be used uninitialized in this function
LD avconv_g
CP avconv
STRIP avconv
INSTALL install-progs-yes
INSTALL ffmpeg
INSTALL avconv
INSTALL ffplay
INSTALL ffprobe
INSTALL ffserver
INSTALL presets/libvpx-1080p.ffpreset
INSTALL presets/libvpx-1080p50_60.ffpreset
INSTALL presets/libvpx-360p.ffpreset
INSTALL presets/libvpx-720p.ffpreset
INSTALL presets/libvpx-720p50_60.ffpreset
INSTALL presets/libx264-ipod320.ffpreset
INSTALL presets/libx264-ipod640.ffpreset
INSTALL libavdevice/libavdevice.a
INSTALL libavfilter/libavfilter.a
INSTALL libavformat/libavformat.a
INSTALL libavcodec/libavcodec.a
INSTALL libpostproc/libpostproc.a
INSTALL libswresample/libswresample.a
INSTALL libswscale/libswscale.a
INSTALL libavutil/libavutil.a
INSTALL libavdevice/avdevice.h
INSTALL libavdevice/libavdevice.pc
INSTALL libavfilter/avcodec.h
INSTALL libavfilter/avfilter.h
INSTALL libavfilter/avfiltergraph.h
INSTALL libavfilter/buffersink.h
INSTALL libavfilter/vsrc_buffer.h
INSTALL libavfilter/libavfilter.pc
INSTALL libavformat/avformat.h
INSTALL libavformat/avio.h
INSTALL libavformat/version.h
INSTALL libavformat/libavformat.pc
INSTALL libavcodec/avcodec.h
INSTALL libavcodec/avfft.h
INSTALL libavcodec/dxva2.h
INSTALL libavcodec/opt.h
INSTALL libavcodec/vaapi.h
INSTALL libavcodec/vda.h
INSTALL libavcodec/vdpau.h
INSTALL libavcodec/version.h
INSTALL libavcodec/xvmc.h
INSTALL libavcodec/libavcodec.pc
INSTALL libpostproc/postprocess.h
INSTALL libpostproc/libpostproc.pc
INSTALL libswresample/swresample.h
INSTALL libswresample/libswresample.pc
INSTALL libswscale/swscale.h
INSTALL libswscale/libswscale.pc
INSTALL libavutil/adler32.h
INSTALL libavutil/aes.h
INSTALL libavutil/attributes.h
INSTALL libavutil/audioconvert.h
INSTALL libavutil/avassert.h
INSTALL libavutil/avstring.h
INSTALL libavutil/avutil.h
INSTALL libavutil/base64.h
INSTALL libavutil/bswap.h
INSTALL libavutil/common.h
INSTALL libavutil/cpu.h
INSTALL libavutil/crc.h
INSTALL libavutil/error.h
INSTALL libavutil/eval.h
INSTALL libavutil/fifo.h
INSTALL libavutil/file.h
INSTALL libavutil/imgutils.h
INSTALL libavutil/intfloat_readwrite.h
INSTALL libavutil/intreadwrite.h
INSTALL libavutil/lfg.h
INSTALL libavutil/log.h
INSTALL libavutil/lzo.h
INSTALL libavutil/mathematics.h
INSTALL libavutil/md5.h
INSTALL libavutil/mem.h
INSTALL libavutil/dict.h
INSTALL libavutil/opt.h
INSTALL libavutil/parseutils.h
INSTALL libavutil/pixdesc.h
INSTALL libavutil/pixfmt.h
INSTALL libavutil/random_seed.h
INSTALL libavutil/rational.h
INSTALL libavutil/samplefmt.h
INSTALL libavutil/sha.h
INSTALL libavutil/avconfig.h
INSTALL libavutil/libavutil.pc
======================== Installation successful ==========================
Since I was having so many issues with the ffmpeg I wanted to test it first as mentioned above prior to attempting the "Add Additional Support to x264 (Lavf)" step.
So I'm currently at a loss.