Newest 'libx264' Questions - Stack Overflow
Articles published on the website
-
What is the minimum amount of metadata is needed to stream only video using libx264 to encode at the server and libffmpeg to decode at the client?
19 March 2012, by cloudravenI want to stream video (no audio) from a server to a client. I will encode the video using libx264 and decode it with ffmpeg. I plan to use fixed settings (at the very least they will be known in advance by both the client and the server). I was wondering if I can avoid wrapping the compressed video in a container format (like mp4 or mkv).
Right now I am able to encode my frames using x264_encoder_encode. I get a compressed frame back, and I can do that for every frame. What extra information (if anything at all) do I need to send to the client so that ffmpeg can decode the compressed frames, and more importantly how can I obtain it with libx264. I assume I may need to generate NAL information (x264_nal_encode?). Having an idea of what is the minimum necessary to get the video across, and how to put the pieces together would be really helpful.
-
ffmpeg conversion skips audio
10 March 2012, by user504879While converting a video to mp4 format using ffmpeg the audio gets skipped because of which the audio goes out of sync with the Video.
One can have a look at the following Video: https://vialogues.com/vialogues/play/486
I am using the following options for conversion
/usr/local/bin/ffmpeg -y -i $inputfile -acodec libfaac -ar 44100 -ab 96k -vcodec libx264 -level 41 -bufsize 20000k -maxrate 25000k -g 250 -r 20 -s 480x270 -coder 1 -flags +loop -cmp +chroma -partitions +parti4x4+partp8x8+partb8x8 -flags2 +dct8x8+bpyramid -me_method umh -subq 7 -me_range 16 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -rc_eq 'blurCplx^(1-qComp)' -bf 16 -b_strategy 1 -bidir_refine 1 -refs 6 -crf 25 -deblockalpha 0 -vpre medium -deblockbeta 0 $outputfile
Also the ffmpeg version is
ffmpeg FFmpeg version 0.6.1, Copyright (c) 2000-2010 the FFmpeg developers built on Feb 19 2011 19:03:56 with gcc 4.4.5 configuration: --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-x11grab libavutil 50.15. 1 / 50.15. 1 libavcodec 52.72. 2 / 52.72. 2 libavformat 52.64. 2 / 52.64. 2 libavdevice 52. 2. 0 / 52. 2. 0 libswscale 0.11. 0 / 0.11. 0 libpostproc 51. 2. 0 / 51. 2. 0 Hyper fast Audio and Video encoder
Any ideas as to why this would be happening?
-
How to solve libx264 not found when building ffmpeg-with-libx264-enabled for android?
6 March 2012, by newentryi am trying build android-ffmpeg-x264 downloaded from git. Link https://github.com/halfninja/android-ffmpeg-x264
After running ./config_make_everything.sh i am getting following error
ERROR: libx264 not found
If you think configure made a mistake, make sure you are using the latest version from Git. If the latest version fails, report the problem to the ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net. Include the log file "config.log" produced by configure as this will help solving the problem.
Makefile:1: config.mak: No such file or directory libavutil/Makefile:1: libavutil/../config.mak: No such file or directory libavutil/../subdir.mak:96: warning: overriding commands for target `libavutil/' libavutil/../subdir.mak:26: warning: ignoring old commands for target `libavutil/' libavutil/../subdir.mak:96: warning: overriding commands for target `libavutil/' libavutil/../subdir.mak:96: warning: ignoring old commands for target `libavutil/' tests/Makefile:44: /tests/fate.mak: No such file or directory tests/Makefile:45: /tests/fate2.mak: No such file or directory tests/Makefile:47: /tests/fate/aac.mak: No such file or directory tests/Makefile:48: /tests/fate/als.mak: No such file or directory tests/Makefile:49: /tests/fate/fft.mak: No such file or directory tests/Makefile:50: /tests/fate/h264.mak: No such file or directory tests/Makefile:51: /tests/fate/mp3.mak: No such file or directory tests/Makefile:52: /tests/fate/vorbis.mak: No such file or directory tests/Makefile:53: /tests/fate/vp8.mak: No such file or directory make: *** No rule to make target `/tests/fate/vp8.mak'. Stop.
config.log contains
ratecontrol.c:(.text+0xa400): undefined reference to `memset' ratecontrol.c:(.text+0xa41c): undefined reference to `memset' ratecontrol.c:(.text+0xa448): undefined reference to `__aeabi_l2d' ratecontrol.c:(.text+0xa49c): undefined reference to `__aeabi_ldivmod' ratecontrol.c:(.text+0xa4a0): undefined reference to `__aeabi_l2d' ratecontrol.c:(.text+0xa4f8): undefined reference to `__aeabi_idivmod' ratecontrol.c:(.text+0xa794): undefined reference to `__aeabi_l2d' ../x264/libx264.a(set.o): In function `x264_validate_levels': set.c:(.text+0x200): undefined reference to `__aeabi_ldivmod' set.c:(.text+0x334): undefined reference to `__aeabi_idiv' ../x264/libx264.a(set.o): In function `x264_sei_version_write': set.c:(.text+0xeec): undefined reference to `strlen' set.c:(.text+0xf10): undefined reference to `memcpy' set.c:(.text+0xf3c): undefined reference to `sprintf' set.c:(.text+0xf44): undefined reference to `strlen' ../x264/libx264.a(set.o): In function `scaling_list_write': set.c:(.text+0x20b0): undefined reference to `memcmp' set.c:(.text+0x2138): undefined reference to `memcmp' set.c:(.text+0x2158): undefined reference to `memcmp' ../x264/libx264.a(set.o): In function `x264_pps_write': set.c:(.text+0x5870): undefined reference to `memcmp' set.c:(.text+0x5a7c): undefined reference to `memcmp' ../x264/libx264.a(set.o):set.c:(.text+0x5a9c): more undefined references to `memcmp' follow ../x264/libx264.a(macroblock.o): In function `x264_noise_reduction_update': macroblock.c:(.text+0xe10): undefined reference to `__aeabi_uldivmod' ../x264/libx264.a(macroblock.o): In function `x264_predict_lossless_8x8_chroma': macroblock.c:(.text+0x3224): undefined reference to `memcpy' macroblock.c:(.text+0x323c): undefined reference to `memcpy' ../x264/libx264.a(cabac.o): In function `x264_macroblock_write_cabac': cabac.c:(.text+0x2c58): undefined reference to `__assert2' cabac.c:(.text+0x2dd8): undefined reference to `__assert2' cabac.c:(.text+0x2f80): undefined reference to `__assert2' cabac.c:(.text+0x3020): undefined reference to `__assert2' ../x264/libx264.a(rectangle.o): In function `x264_macroblock_cache_ref_1_1': rectangle.c:(.text+0x1e4): undefined reference to `__assert2' ../x264/libx264.a(rectangle.o):rectangle.c:(.text+0x210): more undefined references to `__assert2' follow ERROR: libx264 not found
1.I am using fedora to build both ffmpeg and x264 2.NDK r7
Any solution to successfully build the code?
-
Weird and unpredictable crash when using libx264 cross-compiled with MinGW
2 March 2012, by DanielI'm working on a C++ project using Visual Studio 2010 on Windows. I'm linking dynamically against x264 which I built myself as a shared library using MinGW following the guide at
http://www.ayobamiadewole.com/Blog/Others/x264compilation.aspx
The strange thing is that my x264 code is working perfectly sometimes. Then when I change some line of code (or even change the comments in the file!) and recompile everything crashes on the line
encoder_ = x264_encoder_open(¶m);
With the message
Access violation reading location 0x00000000
I'm not doing anything funky at all so it's probably not my code that is wrong but I guess there is something going wrong with the linking or maybe something is wrong with how I compiled x264.
The full initialization code:
x264_param_t param = { 0 }; if (x264_param_default_preset(¶m, "ultrafast", "zerolatency") < 0) { throw KStreamerException("x264_param_default_preset failed"); } param.i_threads = 1; param.i_width = 640; param.i_height = 480; param.i_fps_num = 10; param.i_fps_den = 1; encoder_ = x264_encoder_open(¶m); // <----- if (encoder_ == 0) { throw KStreamerException("x264_encoder_open failed"); } x264_picture_alloc(&pic_, X264_CSP_I420, 640, 480);
Edit: It turns out that it always works in Release mode and when using superfast instead of ultrafast it also works in Debug mode 100%. Could it be that the ultrafast mode is doing some crazy optimizations that the debugger doesn't like?
-
What parameters are required to use x264 via ffmpeg?
15 February 2012, by nightWatcheri have an AVI file, i have decoded it into Raw form first, now i want to encode it in .h264 format. I am using libavcodec.dll and libavformat.dll. The point is when i try to open the codec from avcodec_open(AVCodecContext,AVCodec) It doesnot open. Am i missing some parameters that i need to specify for execution of this method for the lib x264? Any help will be deeply appreciated. Thanks