[Ffmpeg-devel-irc] ffmpeg.log.20130114

burek burek021 at gmail.com
Tue Jan 15 02:05:01 CET 2013


[01:10] <p1r473> hey guys. having a problem where ffmpeg is guessing channel layout to be stereo when its really 5.1. heres a screenshot http://imgur.com/JWMvG
[01:10] <p1r473> ive tried replacing the ffmpeg binary that came with avstovideo with one from a rpeository, but I think the console commands/piping is different because it fails immediately
[01:10] <p1r473> sorry, avstodvd
[07:14] <p1r473> whats the difference between 5.1 and 5.1(side)?
[09:10] <cbsrobot> p1r473: I geuss simple 5.1 means 5.1(rear)
[10:17] <dott_infernus> hi.
[10:17] <Mavrik> mornin
[10:18] <dott_infernus> I'm angelo and I'm looking for some help
[10:18] <dott_infernus> can anyone help me?
[10:18] <Mavrik> well
[10:18] <viric> day of the tentacle
[10:19] <Mavrik> dott_infernus, without your explanation of what's wrong... not really ;)
[10:19] <dott_infernus> :-) ok...I will explain very well soon
[10:21] <dott_infernus> I'm trying to handle video file with a program made by me in c++ (and qt), I've read that ffmpeg gives the opportunity to manage them....so what I need is a good tutorial to install the ffmpeg library on my computer
[10:21] <dott_infernus> my os is ubuntu
[10:21] <Mavrik> you're in luck
[10:21] <Mavrik> dott_infernus, http://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuide
[10:22] <Mavrik> dott_infernus, this is the guide to compile and install newest ffmpeg
[10:22] <Mavrik> you can also get it from the repository but that's usually obsolete
[10:22] <dott_infernus> repository?
[10:23] <Mavrik> with apt-get
[10:23] <cbsrobot> dott_infernus: and when you have cloned the ffmpeg repo check the "examples" directory
[10:24] <dott_infernus> I tried apt-get install ffmpeg and it gives me the program to convert or play videos
[10:26] <Mavrik> dott_infernus, the ffmpeg libraries (which you need to use to to manual transcode) are named libavcodec (en/decoders), libavformat (de/muxers), libswscale (image scalers), libavutil, libavfilter and libswresample
[10:26] <Mavrik> those are the packages you need to look for
[10:28] <dott_infernus> Ok...I will take note...actually, I tried yesterday to follow that guide, but some error occured...Now I don't remember which error came ut
[10:29] <dott_infernus> but If I download this archive: http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2, is it possible to integrate that library into my code?
[10:30] <Mavrik> dott_infernus, you'll have to compile that and install it
[10:30] <Mavrik> and then link against those libraries in your code yea
[10:30] <Mavrik> it's not that easy though, are you sure you know what you're getting into? :)
[10:31] <dott_infernus> well, if I don't know, I will know very soon..It's work..
[10:45] <p1r473> cbsrobo: ok whats the diff between 5.1 reat and 5.1 side?
[10:45] <p1r473> rear*
[11:14] <cbsrobot> p1r473: you need to spell my nick right or I wont see your ping ...
[11:14] <cbsrobot> see http://files.tested.com/uploads/0/5/16018-speakerplacement_7_1.gif
[11:14] <cbsrobot> suddound back is rear, surround right/left is side
[11:15] <p1r473> ooh. isnt rear thr norm? shudnt people just encode for rear?
[11:16] <cbsrobot> i think side is normal
[11:16] <cbsrobot> you add the backs for a 7.1 system
[11:17] <Mavrik> hmm, I'm quite sure you add sides for 7.1
[11:17] <p1r473> yea i thought rear was norm
[11:18] <p1r473> only seen 5.1(sides) once in ffmpeg
[11:18] <cbsrobot> well maybe
[11:18] <cbsrobot> I don't remember exactly
[11:19] <cbsrobot> our little cinema has sides, not rears
[11:19] <p1r473> 2nd question, sometimes ffmpeh guesses channel layout as stereo but its 5.1. why does it mess it up sometimes?
[11:19] <p1r473> and how do u fix it?
[11:19] <cbsrobot> but it has only 24 places & so
[11:20] <Mavrik> it's possible cinema setups are different, yea :)
[11:26] <TeknoJuce> hi trying to capture with a dvc100 it seems to start capturing then fails http://pastie.org/5682152#44-45
[11:27] <TeknoJuce>   /ioctl(VIDIOC_DQBUF): No such device
[11:27] <TeknoJuce> /dev/video0: No such device
[11:31] <TeknoJuce> http://pastie.org/5682170
[11:43] <viric> TeknoJuce: does the kernel log say anything?
[11:45] <viric> Does x264 encoding preset (slow, fast, ...) affect the complexity of the *decoding*?
[11:45] <viric> so, are h264 players constraint by any specific complexity in encoding?
[11:46] <Mavrik> viric, not by preset, but by profile and level
[11:46] <Mavrik> viric, or more specifically, by profile (baseline, main, high) and resolution+bitrate combo
[11:46] <viric> aha
[11:46] <Mavrik> on pretty much all decoders you'll see specification of what the highest level and profile they support is
[11:47] <viric> umh I think I always mixed profile and preset.
[11:47] <Mavrik> preset just sets how much time x264 spends trying to get the best result possible :)
[11:47] <viric> maybe not on cheap $60 TV decoders
[11:47] <Mavrik> even on those :)
[11:47] <viric> (about see the specification)
[11:48] <Mavrik> sometimes they just say "Blu-ray compatible" or something like that
[11:48] <viric> ok, I'll try to find out
[11:48] <viric> what's the default profile?
[11:48] <Mavrik> by default the profile depends on output
[11:48] <Mavrik> main for most, high for HD content
[11:48] <viric> [libx264 @ 0x956a260] profile High 4:2:2, level 3.0, 4:2:2 8-bit
[11:48] <Mavrik> um yea
[11:48] <viric> it's PAL.
[11:48] <viric>     Stream #0:0: Video: h264, yuv422p, 720x576 [SAR 1:1 DAR 5:4], q=-1--1, 1k tbn, 25 tbc (default)
[11:48] <Mavrik> also... most decoders won't be able to display YUV422
[11:49] <Mavrik> so watch out for that :)
[11:49] <viric> no?
[11:49] <viric> damn it
[11:49] <viric> what has it to be?
[11:49] <Mavrik> only 4:2:0 support is officialy standardized :\
[11:50] <viric> ok, ffmpeg can convert that I guess
[11:50] <viric> but my input was 422
[11:50] <Mavrik> yeah, sadly that's the case
[11:50] <viric> So, do you think it's normal to have the 'high' profile?
[11:50] <Mavrik> um, not really
[11:50] <Mavrik> there aren't many PAL decoders out there supporting "high" profile
[11:50] <Mavrik> old mobiles don't even support main profile
[11:51] <viric> I use: -vcodec libx264 -preset normal -acodec libvorbis
[11:51] <Mavrik> I suggest you make a YUV420 video with main profile
[11:51] <Mavrik> and use AAC please if you have a hardware decoder :D
[11:51] <Mavrik> vorbis really isn't a widely supported format
[12:03] <TeknoJuce> viric http://pastie.org/5682271
[12:04] <viric> Mavrik: yes I was just testing.
[12:07] <TeknoJuce> viric does that look like the mobo usb hub is dropping the capture device?
[12:16] <viric> TeknoJuce: looks like so
[13:03] <amanforindia> where can I find good documentation for the libavformat library??
[13:04] <JEEB> http://ffmpeg.org/doxygen/trunk/group__libavf.html
[13:04] <JEEB> the doxygen would be the first thing to check
[13:05] <amanforindia> ok... thanks :D
[13:05] <Mavrik> amanforindia, also, doc/examples dir in ffmpeg
[13:05] <JEEB> also google with 'site:ffmpeg.org/doxygen/trunk/ keyword' is usually useful
[14:21] <IamTrying> When i am converting this 24MB file to flv, why its not fitting in 4 or 5MB, i wanted to send it over 3G mobile (whatsApp to my Gf) but the converted file is very large 21MB, how to lower it? e.g: ffmpeg -i HeyGirl.mpeg -f flv newfile.flv
[14:23] <IamTrying> -s qsif?
[14:23] <Mavrik> IamTrying, you're not setting the quality of flv you want
[14:24] <Mavrik> so ffmpeg just defaults to... something
[14:24] <Mavrik> IamTrying, you are looking for bitrate parameter (-b:v)
[14:24] <IamTrying> Still 18.2MB Mavrik while using -s sqcif
[14:24] <Mavrik> -s is just size of the actual video picture
[14:24] <IamTrying> Mavrik, -b for video and audio?
[14:26] <jeroen-> How to check if an avconv process uses multiple cores?
[14:26] <Mavrik> yes, -b tells ffmpeg how much bits you want each second of your video to take
[14:27] <Mavrik> jeroen-, on whch os?
[14:27] <IamTrying> Mavrik, -b 10 -s qcif  still its 14.5MB
[14:27] <jeroen-> Mavrik: kubuntu 2.10
[14:27] <jeroen-> 12.10
[14:27] <IamTrying> Mavrik, i need to have it in 5MB from 24MB i mean.
[14:27] <Mavrik> IamTrying, you cant make video with 10 bits per second :P
[14:27] <Mavrik> IamTrying, how long is your video (in seconds)?
[14:28] <IamTrying> well in small resolution -b 10 is ok
[14:28] <IamTrying> Mavrik, 4.54 seconds (Richard markx - hold on to the night music + her pictures).
[14:28] <sacarasc> That is 10 bits per second. Or 1.25 bytes per second.
[14:28] <Mavrik> IamTrying, well, try something like "-b:v 300k" :)
[14:30] <IamTrying> Mavrik, ffmpeg -i My\ Cutest\ Baby.mpeg -b:v 300k -f flv newfile.flv  # its still 21MB
[14:31] <Mavrik> that I find very hard to believe.
[14:31] <Mavrik> if the video is really 4 sec.
[14:33] <IamTrying> Mavrik, 4 minute 54 seconds (audio/video)
[14:36] <IamTrying> -r 5 -b 10 -s sqcif gives me still 13.3 MB . I need to have it in 5MB.
[14:36] <jeroen-> anyone?
[15:08] <viric> can anybody suggest some nice pocket camera, specifically for video?
[15:08] <viric> maybe pocket is a bad idea though. Not very big atl east.
[15:24] <Podium> Hello All (first time here), I have a question about the use of "ffmpeg". In the broadcast world we recored video by dedicated hardware in ProRes HQ 422 format with pcm_s24le (lpcm / 0x6D63706C), 48000 Hz, 16 channels, s32, 18432 kb/s
[15:24] <Podium> I now transcode the video succesfully to h264...
[15:25] <Podium> But the audio is the problem, I want only the first 2 audio channels in stream 1 to transcode... An this seems impossible.
[15:26] <Podium> The error I get is:Input channel layout isnt supported   0kB time=00:00:00.00 bitrate=   0.0kbits/s
[15:26] <Podium> swr_init() failed
[15:26] <Podium> Can not resample 16 channels @ 48000 Hz to 2 channels @ 44100 Hz
[15:26] <JEEB> uh-oh
[15:26] <JEEB> that sounds like fun :D
[15:27] <Mavrik> ^^
[15:27] <Podium> :-) Sounds :-)
[15:27] <Mavrik> 16-channels? fun :D
[15:27] <Mavrik> Podium, anyway, can you give us full output (+ command line) to a pastebin so we have more details :)
[15:28] <JEEB> if that still fails with current ffmpeg (there are often quite up-to-date windows builds available for windows f.ex. from zeranoe), then I recommend you go to the issue tracker and report the issue
[15:28] <Podium> http://pastebin.com/AW3nCJAw
[15:29] <Podium> But I don't want to resample... I just want to delete 14 of the 16 channels...
[15:29] <Mavrik> you're doing resampling as well (your input is 48000, output is 44100)
[15:30] <Mavrik> I suggest you upgrade to ffmpeg 1.1 first
[15:30] <Mavrik> since it seems it chokes on your 16-channel input
[15:30] <Mavrik> and it might have been fixed since 0.10.6
[15:30] <JEEB> ah, then you shouldn't use -ac 2
[15:30] <JEEB> there was some specific way to remove channels completely from input
[15:31] <Mavrik> using the "pan" audio filter
[15:31] <Mavrik> you can define which channels map to where and what to keep
[15:31] <Mavrik> http://ffmpeg.org/ffmpeg-filters.html#pan
[15:32] <Mavrik> but I'm worried about the "INPUT channel layout not supported"
[15:32] <Podium> @Mavrik: I couldn't find a newer repos for Ubuntu.... And channel_map doesnt seems to work
[15:32] <JEEB> Mavrik, he /should/ be able to specify a stereo map after just removing all other channels
[15:32] <JEEB> in theory
[15:32] <Mavrik> yep
[15:32] <Mavrik> Podium, try using the pan filter if it exists in your version
[15:32] <Mavrik> to define mapping
[15:33] <Mavrik> Podium, and grab a new build from here: http://dl.dropbox.com/u/24633983/ffmpeg/index.html
[15:33] <Podium> Okeej, I will go ahead read the pan mapping documentation!
[15:35] <Podium> @Mavrik, can I download that build an just replace the old one!? In Ubuntu I normally only use reposotories
[15:35] <Mavrik> Podium, that's a totally static binary
[15:35] <Mavrik> you just extract and run
[15:35] <Mavrik> no dependencies
[15:35] <Podium> okeej
[15:39] <Podium> With the downloaded build I now get something totally diffrent: Option 'enable' not found
[15:39] <Podium> [AVFilterGraph @ 0x29f5ca0] Error initializing filter 'yadif' with args '0:-1:0'
[15:39] <Podium> Error opening filters!
[15:40] <JEEB> I think the way you give arguments to yadif got changed
[15:40] <JEEB> and/or it is/was broken for a while
[15:50] <Hfuy> Hello. I have a large uncompressed AVI that I'd like to convert to ProRes LT. Is there a Windows build of ffmpeg that will do this for me?
[15:57] <zap0> yes
[16:05] <Hfuy> Any idea where I might get one?
[16:06] <JEEB> zeranoe's builds for windows are usually relatively up-to-date
[16:07] <Hfuy> Are the 64-bit versions worth having, or should I play it safe?
[16:11] <JEEB> should be just fine
[16:12] <Hfuy> It's snowing.
[16:12] Action: Hfuy is cold
[16:18] <hub2> Hi,Can you tell me what should I change in my code to use libvo-aacenc?Here's my code http://pastebin.com/qBWT0FhE
[16:25] <luneff> hi, guys. i'm using ffmpeg with video from pipe (ppm stream) and a mp3 file. how do i say ffmpeg to stop encoding on pipe EOF so that it doesn't wait for audio to finish?
[16:27] <luneff> aresample?
[16:29] <TeknoJuce> is there a way to mount a channel from video4linux2 to like /dev/video1?
[16:29] <Mavrik> luneff, I think you're looking for "-shortest" parameter
[16:29] <Mavrik> which stops encoding when shortest stream ends
[16:30] <luneff> Mavrik, thanks a lot :-)
[16:30] <TeknoJuce> like if you have a capture card with video0 channel 1 2 3 4 could you make them video0 1 2 3 4 some how?
[16:42] <Podium> @Mavrik: I come now to the conclussion the build of ffmpeg does not work at all here. Not even with the video only transcode. But no error messeges. He thinks he is done after one frame...
[16:43] <dott_infernus> hi.
[16:43] <Mavrik> Podium, ugh, strange
[16:44] <dott_infernus> I need help.. I just installed ffmpeg libraries on my ubuntu but when I try to compile some example in /doc/example some errors have occured
[16:44] <Podium> Yeah... Do the audio filters (-af) also work with mine repos version off ffmpeg?
[16:44] <dott_infernus> undefined reference to `av_get_channel_layout_nb_channels'
[16:45] <Mavrik> Podium, maybe... they're pretty new and I don't remember when were they introduced
[16:45] <Mavrik> 0.10.6 is pretty new though
[16:45] <Mavrik> dott_infernus, are you actually linking with ffmpeg libraries?
[16:46] <Podium> @Mavrik.... Sorrry... I see I have deleted/overwrited my original :-)
[16:46] <Podium> It's only 0kb
[16:46] <Mavrik> ah :D
[16:46] <dott_infernus> Mavrik, yes I am. I receive this error: undefined reference to `av_get_channel_layout_nb_channels'
[16:47] <Podium> It's a long day... I'll go 2morrow try again! Thanks for the help !
[16:48] <dott_infernus> Mavrik, sorry, I've posted the wrong error...this is the actual: decoding_encoding.c:(.text+0x1831): undefined reference to `avcodec_register_all'
[16:48] <Mavrik> yeah
[16:48] <Mavrik> you're getting this because linker can't find functions in libraries
[16:48] <Mavrik> now either you're not passing parameters to link against them
[16:48] <Mavrik> or you're trying to link C++ code with C code without externs
[16:49] <Mavrik> did you pass "-lavformat -lavcodec .." to linker?=
[16:50] <dott_infernus> no, with terminal I call: gcc decoding_encoding.c -o out1
[16:50] <dott_infernus> what actually I have to call?
[17:09] <dott_infernus> Mavrik, are you online?
[17:27] <divVerent> http://www.youtube.com/watch?v=bh703B_xFAo
[17:27] <divVerent> fun with a ffmpeg x11grab window
[17:29] <Hfuy> When we point a camera at a monitor, we call it the "hall of mirrors" effect
[17:30] <divVerent> yes
[17:30] <divVerent> it's fun that it's delayed so much though
[17:31] <Hfuy> Computers never have quite the performance we'd prefer.
[17:41] <viric> umhh
[17:41] <viric> I use '-acodec aac'
[17:41] <viric> and ffmpeg says:
[17:41] <viric>     Stream #0:1: Audio: none, 44100 Hz, mono, flt, 128 kb/s (default)
[17:41] <viric>   Stream #0:1 -> #0:1 (flac -> aac)
[17:42] <Mavrik> viric, er... use fdk-aac, faac or libvo-aacenc instead :)
[17:42] <viric> ah
[17:42] <viric> clear
[17:42] <Mavrik> check ffmpeg -codecs to find which you have compiled in :)
[17:43] <viric> nah I don't have it
[17:43] <viric> I'll add it.
[17:43] <viric> what are x264 profiles for? does 'main' mean less bitrate than 'high'?
[17:44] <viric> - I fail to understand some very basic points :)
[17:45] <madwill> Hi, we've been using ffmpeg to convert video in order to made educationnal content to read on the web for a while, but now on our latest install FFMPEG says we should use AVCONV. Anybody can point to where i can see the command line to convert any input into a mp4 using x264 and AAC audio ?
[17:45] <madwill> IS the avconv warming because they installed the wrong FFMPEG ?
[17:46] <madwill> is FFMPEG still alive or deprecated ?
[17:46] <Mavrik> er, it's complicated
[17:46] <Mavrik> basically, ffmpeg is still very much alive
[17:46] <Mavrik> you're seeing that warning because some distros have switched to "avconv" from ffmpeg
[17:46] <madwill> Oh
[17:46] <Mavrik> and now warn that soon they won't provide binaries anymore
[17:46] <JEEBsv> madwill: the project is just fine, the ffmpeg binary in the libav fork is deprecated and then later removed
[17:46] <Mavrik> er
[17:46] <Mavrik> won't provide binary with the name "ffmpeg" anymore
[17:46] <Mavrik> so. :)
[17:47] <JEEBsv> yeah
[17:47] <madwill> Thank you, adding a bit of clarity
[17:47] <JEEBsv> yeah, the message is hard to parse for a newbie
[17:47] <madwill> So up to this its a personnal choice
[17:47] <Mavrik> madwill, <shameless self-promotion> I've written a short guide on how to get web-ready mp4 with ffmpeg: https://www.virag.si/2012/01/web-video-encoding-tutorial-with-ffmpeg-0-9/ :)
[17:48] <Mavrik> hm, I should fix that with fdk-aac
[17:48] <madwill> Lovely Mavrik, No shame into plugging this "exactly what i'm looking for" post :)
[17:48] <JEEBsv> madwill: it just means that if you are using the libav project's binaries you use 'avconv' as that's the up-to-date binary, while if you are using the ffmpeg project's binaries you use 'ffmpeg'
[17:48] <JEEBsv> and libav's support is over at #libav
[17:49] <JEEBsv> basically when elenril from libav updated a lot of stuff in ffmpeg.c, he renamed it to avconv.c and left ffmpeg.c to be
[17:49] <dott_infernus> Hi, It's me, again. I'
[17:49] <JEEBsv> the ffmpeg project then merged that to its ffmpeg.c
[17:49] <madwill> It sounds weird, internal depabe on how to do things ?
[17:50] <madwill> i guess i can google it if i'm curious about politics or forks
[17:51] <Mavrik> yes, politics and forks ^^
[17:51] <JEEBsv> the good thing is that the development speed on both sides went way up
[17:51] <JEEBsv> after the forking
[17:53] <dott_infernus> I've installed the ffmpeg libraries on my ubuntu os, but when I try to compile the examples inside doc folder, the compiler gives me undefined reference....when I compile I only write on the terminal: gcc decoding_encoding.c -o out1 ... It's said to me that I don't pass something to the linker..
[17:54] <dott_infernus> which parameter I have to specify?
[18:14] <quebre> hello
[18:14] <quebre> i have newbie question
[18:14] <quebre> how do i reencode 720p movie to DVDRip format ? so it would have from 4.4GB to 700MB ?
[18:16] <13WAAJGCL> um
[18:22] <quebre> i know it's hard..
[18:22] <quebre> ;P
[18:28] <cbsrobot> quebre: what file, codec, size, type you want at the end ?
[18:29] <cbsrobot> and why 700mb ?
[18:30] <quebre> cbsrobot: because most of dvdrip movies are 700mb and they are watchable while it's not pain to send it over internet to my girl who have weak internet
[18:31] <cbsrobot> and the first question ?
[18:32] <quebre> hold on im pasting it on pastebin.ca so you can check it out
[18:32] <quebre> http://pastebin.ca/2302056 <- thats the movie details, i want to convert it to dvdrip
[18:34] <quebre> i hope it's doable...
[18:37] <cbsrobot> try: ffmpeg -i input.mkv -vf scale=640:272 -c:v libx264 -crf 25 -preset:v slow -profile:v high -level 4.1 -c:a libvo_aac -b:a 128k -ac 2 -t 600 output.mkv
[18:37] <cbsrobot> untested
[18:37] <cbsrobot> that will encode 10 min - make the math to see if it fits 700 mb
[18:37] <cbsrobot> if not, set crf to a higher value
[18:38] <cbsrobot> if yes, encode or set the crf to a lower value and try again
[18:39] <cbsrobot> and the size will be 640x272 which is pretty small
[18:39] <cbsrobot> and if you compiled yourself and have libfdk_aac hten use this instead of libvo_aac
[18:42] <quebre> cbsrobot: how can i check whether i have libfdk_aac ?
[18:43] <cbsrobot> quebre: did you compile it yourself ?
[18:43] <quebre> umm i think so
[18:43] <cbsrobot> hehe
[18:43] <quebre> was long time ago and i don't remember heh
[18:43] <cbsrobot> what now
[18:43] <JEEBsv> quebre: ffmpeg -codecs |grep "aac"
[18:43] <cbsrobot> so first - upgrade !
[18:43] <JEEBsv> and see what is listed :P
[18:44] <quebre>  DEA.L. aac                  AAC (Advanced Audio Coding) (encoders: aac libfaac libvo_aacenc libaacplus )
[18:44] <quebre>  D.A.L. aac_latm             AAC LATM (Advanced Audio Coding LATM syntax)
[18:44] <quebre> this ;P
[18:44] <cbsrobot> so you dont have it
[18:44] <cbsrobot> but you have libaacplus
[18:44] <cbsrobot> so eighter use -c:a libaacplus -b:a 64k
[18:45] <cbsrobot> or -c:a libvo_aacenc -b:a 128k
[18:45] <quebre> pure magic but alright ;)
[18:45] <quebre> going to try and convert it
[18:45] <cbsrobot> and upgrade first & :)
[18:45] <cbsrobot> so you can add libfdk_aac to the soup
[18:46] <quebre> ok
[18:47] <quebre> git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg <- this will be latest ?
[18:48] <JEEBsv> yes
[19:23] <quebre> cbsrobot: one question
[19:23] <quebre> in the -output output.mkv can it be .avi instead of .mkv ?
[19:24] <cbsrobot> quebre: eeeh - I didn't use avi for > 10 years, so no idea
[19:25] <cbsrobot> why would you use avi ?
[19:25] <quebre> dvdrip movies are in .avi format ;)
[19:28] <cbsrobot> quebre: where did you get that from ?
[19:29] <quebre> Unrecognized option 'crf'.
[19:29] <quebre> i guess that's releated to -crf 25 option..
[19:31] <cbsrobot> quebre: update ...
[19:32] <cbsrobot> and http://scenenotice.org/details.php?id=2081
[19:32] <cbsrobot> nothing mentiones avi there ...
[19:32] <cbsrobot> I guess it is even on a banlist !
[19:33] <quebre> i see
[19:33] <quebre> hm but i have the git ffmpeg
[19:33] <quebre> $ /usr/local/ffmpeg-latest/bin/ffmpeg -version
[19:33] <quebre> ffmpeg version N-48882-g922332e
[19:33] <quebre> built on Jan 14 2013 19:28:21 with gcc 4.7 (Debian 4.7.2-4)
[19:33] <quebre> configuration: --prefix=/usr/local/ffmpeg-latest
[19:33] <quebre> and it complains about 'crf'
[19:33] <quebre> /usr/local/ffmpeg-latest/bin/ffmpeg -i Cloud.Atlas.2012.R.C.720p.BRRip.x264.AC3-TRiNiTY.sample.mkv -vf scale=640:272 -c:v libx264 -crf 25 -preset:v slow -profile:v high -level 4.1 -c:a libvo_aac -b:a 128k -ac 2 -t 600 output.mkv
[19:34] <quebre> this i did
[19:36] <quebre> what -crf does ?
[19:36] <viric> x264 setting, about the quality required
[19:36] <viric> http://ffmpeg.org/trac/ffmpeg/wiki/x264EncodingGuide#faq
[19:36] <viric> forget the anchor
[19:37] <quebre> anchor ?
[19:37] <viric> #faq
[19:37] <quebre> no 'anchor' word in #faq :P
[19:38] <viric> ehem
[19:38] <quebre> so should i skip the -crf option ?
[19:38] <viric> html anchor
[19:39] <quebre> i think i don't understand you ;P
[19:39] <quebre> ah
[19:39] <quebre> you mean http://ffmpeg.org/trac/ffmpeg/wiki/x264EncodingGuide without #faq
[19:40] <quebre> -preset:v slow
[19:41] <quebre> is this correct ?
[19:46] <viric> I'm not any good at this. just learning
[19:54] <quebre> this is not working
[19:54] <quebre> http://ffmpeg.org/trac/ffmpeg/wiki/x264EncodingGuide#twopass
[19:54] <quebre> here is example given:
[19:54] <quebre> ffmpeg -i input -c:v libx264 -preset fast -b:v 555k -pass 1 -an -f mp4 -y /dev/null
[19:54] <quebre> and when i do it like that:
[19:54] <quebre> $ /usr/local/ffmpeg-latest/bin/ffmpeg -i Cloud.Atlas.2012.R.C.720p.BRRip.x264.AC3-TRiNiTY.sample.mkv -c:v libx264 -preset veryslow -b:v 555k -pass 1 -an -f mp4 -y /dev/null
[19:54] <quebre> i get:
[19:54] <quebre> Unrecognized option 'preset'.
[19:54] <quebre> Error splitting the argument list: Option not found
[19:54] <quebre> .....
[20:05] <cbsrobot> and please show me the first command you did
[20:05] <Sashmo_> some told me that there is some C library out there that can do very good PAL-NTSC conversion, but I dont have a name, anyone know anything about it?
[20:05] <cbsrobot> with the -crf option
[20:05] <quebre> for now i'm following https://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuide
[20:05] <quebre> want to have everything installed correctly before complaining ;)
[20:06] <cbsrobot> quebre: good idea
[20:21] <viric> is amd64 a big win for x264 encoding, compared to i686?
[20:39] <sesam> hi
[20:39] <sesam> how do u guys stitch together h264 files without reencoding em?
[20:40] <Fjorgynn> ffmpeg -i file1.mp4 -i file2.mp4 -c:a copy -c:v copy output.mp4
[20:40] <Fjorgynn> sesam: right?
[20:40] <sesam> ill try that
[20:40] <sesam> thx
[20:42] <quebre> okay okay
[20:42] <quebre> it works now !
[20:42] <quebre> but :P
[20:42] <quebre> cbsrobot: wake up ;)
[20:43] <quebre> i'm doing Two-Pass conversion
[20:43] <quebre> like this:
[20:43] <quebre> ffmpeg -i Cloud.Atlas.2012.R.C.720p.BRRip.x264.AC3-TRiNiTY.sample.mkv -c:v libx264 -preset veryslow -b:v 555k -pass 1 -an -f mp4 -y /dev/null && ffmpeg -i Cloud.Atlas.2012.R.C.720p.BRRip.x264.AC3-TRiNiTY.sample.mkv -c:v libx264 -preset veryslow -b:v 555k -pass 2 -c:a libfaac -b:a 128k output.mp4
[20:43] <quebre> from this, the most important option is bitrate - 555k, i taken 555k from the example on the site
[20:43] <quebre> but i don't know how to calculate fair value,
[20:44] <quebre> also, how to convert the movie so the main condition is "get as good quality as possible BUT don't exceed 800MB"
[20:44] <viric> why 800MB?
[20:45] <quebre> because it's less than 1gb and it's about transfering the file over internet and not to wait too long
[20:45] <viric> ah ok
[20:45] <viric> I thought it was about some media size
[20:45] <quebre> so, how to achieve my goal ?
[20:45] <quebre> ;)
[20:46] <viric> 555 kilobit/second + 128 kilobit/second
[20:46] <viric> get the number of seconds, multiply, and you have the number of bits for the film (muxing apart)
[20:47] <viric> you know that 8 bits make one byte, ... and that's all
[20:47] <Fjorgynn> quebre: why not just use -crf 21 ?
[20:47] <viric> Fjorgynn: why 21?
[20:47] <Fjorgynn> instead of 2 pass encoding och bitrate
[20:47] <Fjorgynn> viric: because take 23, 28 or 16
[20:47] <Fjorgynn> whatever you like
[20:48] <quebre> Fjorgynn: what does -crf 21 ?
[20:48] <Fjorgynn> 21 is common for documentaries etc.
[20:48] <Fjorgynn> quebre: -crf is awesome, because then you don't need to use 2 pass encoding
[20:48] <viric> I don't see the source for the magic value yet.
[20:48] <Fjorgynn> Constant Rate Factor
[20:48] <sesam> what distro u guys use for ffmpeg?
[20:48] <Fjorgynn> sesam: Windows 7
[20:49] <Fjorgynn> =D
[20:49] <sesam> =)
[20:49] <sesam> and the fastest one? arch?
[20:49] <quebre> Fjorgynn: my main goal is to reduce size of the file with movie, movie lenght is 02:52:07, my main goal is to convert it so it doesn't exceed 800MB of size, currently it's 4.1GB, will i achieve that if i use -crf ?
[20:49] <sesam> please not gentoo though...
[20:49] <viric> 'fastest'?
[20:49] <Fjorgynn> quebre: yes, if you do -crf 28 or something. Probably
[20:49] <viric> choose one you know how to use. That will be the fastest for you
[20:50] <quebre> Fjorgynn: so, highest crf value = smaller output video size ?
[20:50] <Fjorgynn> high is low quality, yes
[20:50] <sesam> viric: yes the best distro for ffmpeg that doesnt take much of the resources for other things. want as much power as i can get
[20:50] <quebre> ok, what's the minimal and maximal value for crf ?
[20:50] <Fjorgynn> quebre: why 800 mb? Get a bigger usb stick
[20:50] <quebre> Fjorgynn: it can't be higher than 800mb, peroid ;)
[20:50] <Fjorgynn> quebre: standard is 23
[20:51] <quebre> larger*
[20:51] <viric> sesam: for what codec?
[20:51] <Fjorgynn> if it's an ipod or whatever. You can also use mono
[20:51] <quebre> The range of the quantizer scale is 0-51; where 0 is lossless, 23 is default, and 51 is worst possible.
[20:51] <sesam> virvic: h264
[20:51] <quebre> so here we are
[20:51] <quebre> hmm
[20:51] <quebre> ok im going to try the crf
[20:51] <viric> sesam: x264 detects the cpu at runtime; it has code ready for any cpu. Any distro will do.
[20:51] <sesam> vircic: what distro u use?
[20:52] <viric> NixOS
[20:52] <sesam> virvic: ffmpeg installed by default? or did u have to build it?
[20:53] <viric> it's installed if you ask it to be installed
[20:53] <quebre> ok another question
[20:53] <sesam> viric: thx
[20:53] <quebre> if high crf = low quality (and small output video file) then if i select -profile veryslow will i get even smaller output video file size ? or ?
[20:54] <Fjorgynn> you'll get better bitrate accuracy
[20:54] <viric> quebre: you mean preset?
[20:54] <quebre> yes, preset
[20:54] <quebre> typo
[20:54] <quebre> Fjorgynn: and that means? :p
[20:54] <Fjorgynn> I think slow works
[20:55] <Fjorgynn> instead of veryslow
[20:55] <quebre> veryslow is also as an option
[20:56] <Fjorgynn> I know
[20:56] <quebre> there is even 'placebo'
[20:56] <quebre> ;D
[20:56] <Fjorgynn> use placebo then
[20:56] <quebre> but that's ffmpeg's devs joke :p
[20:56] <quebre> and is waste of time
[20:56] <quebre> ;d
[20:56] <Fjorgynn> and veryslow isn't?
[20:56] <quebre> no
[20:57] <quebre> Why is placebo a waste of time?
[20:57] <quebre> It helps at most ~1% compared to the veryslow preset at the cost of a much higher encoding time. It's diminishing returns: veryslow helps about 3% compared to the slower preset, slower helps about 5% compared to the slow preset, and slow helps about 5-10% compared to the medium preset.
[20:57] <viric> can ffmpeg prepare DVDs?
[20:57] <viric> dvd-video I mean
[20:58] <Fjorgynn> viric: what do you mean?
[20:59] <viric> something to be burnt by a dvd burn program
[20:59] <viric> and played in dvd video players
[21:00] <viric> with sections, maybe menus, ...
[21:00] <viric> chapters
[21:00] <quebre> hey
[21:00] <quebre> if i have 8gb of ram
[21:00] <quebre> does ffmpeg uses it during encoding ?
[21:02] <Fjorgynn> I think cpu is more important
[21:04] <quebre> ok last thing
[21:04] <quebre> that i cannot figure out !!!
[21:05] <quebre> ffmpeg -i Cloud.Atlas.2012.R.C.720p.BRRip.x264.AC3-TRiNiTY.sample.mkv -c:v libx264 -preset veryslow -crf 29 -c:a libfdk_aac -b:a 128k -ac 2 Cloud.mkv
[21:05] <quebre> 37M     Cloud.Atlas.2012.R.C.720p.BRRip.x264.AC3-TRiNiTY.sample.mkv
[21:05] <quebre> that's before
[21:05] <quebre> and
[21:05] <quebre> 8.3M    Cloud.mkv
[21:05] <quebre> after :p
[21:05] <Fjorgynn> yeah?
[21:05] <quebre> how can i know how small will 4.1GB file be after i use -crf 29 ?
[21:05] <Fjorgynn> 20% less
[21:06] <quebre> and.. how do you know that ? :P
[21:06] <Fjorgynn> quebre: I don't know, you can't really
[21:06] <Fjorgynn> quebre: math. 8,3 M / 37 M.
[21:06] <quebre> so it will be also 20% less for 4.1gb file ? :P
[21:06] <Fjorgynn> you can also use VBR instead of constant aac bitrate.
[21:06] <quebre> what VBR changes ?
[21:07] <Fjorgynn> the audio bitrate changes
[21:07] <Fjorgynn> -vbr [0-5]
[21:08] <quebre> erm
[21:08] <quebre> i don't get it, you mean the "-b:a 128k" that i used?
[21:08] <Fjorgynn> yes
[21:09] <Fjorgynn> but it doesn't matter
[21:09] <quebre> because ?
[21:11] <Fjorgynn> orka bry
[21:14] <quebre> alright, 4.1gb conversion started, with 'veryfast' and -cr 30 ;)
[21:14] <Fjorgynn> veryfast?
[21:15] <Fjorgynn> are you fun?
[21:15] <quebre> btw 'veryfast' produces smaller filesize than 'veryslow' would you think it works like that?
[21:15] <quebre> ;-)
[21:15] <divVerent> that's neither bug nor feature :P
[21:15] <divVerent> CRF is not comparable across presets
[21:16] <divVerent> veryfast crf 30 may have lower quality than veryslow crf 30
[21:16] <quebre> hmm
[21:16] <divVerent> the rule of thumb is to first find the preset you want for the performance you need
[21:16] <divVerent> and then tune the crf
[21:17] <divVerent> the reason is, the settings the presets change can affect both quality and size
[21:17] <quebre> ah
[21:17] <quebre> i see
[21:17] <divVerent> so maybe veryfast contains settings that make the file bigger at same quality, but ALSO settings that reduce quality a lot and make the size a bit smaller
[21:18] <quebre> but 'veryslow' from what i see is really slow, 4.1gb will take 2 or 3 days to finish..
[21:18] <divVerent> the quality-reducing options basically reduce the number of choices the encoder can use, which primarily makes it faster
[21:18] <divVerent> and also quite clearly reduces quality
[21:18] <divVerent> but it also can lead to less data stored
[21:18] <divVerent> it all depends on what you need
[21:18] <divVerent> if it's worth the 2 or 3 days, then good :P
[21:19] <quebre> ok i will have to experiment a bit on my 2minutes sample before i go for 4.1gb conversion ;p
[21:19] <quebre> thx ;>
[21:19] <divVerent> that's how to do it
[21:19] <divVerent> how important is output file size to you?
[21:19] <Fjorgynn> he must have 800 mb
[21:19] <divVerent> a fast preset with a lower crf may be a safe and good choice
[21:19] <divVerent> oh, ok
[21:20] <divVerent> I wonder if you should rather use 2pass encoding then :P
[21:20] <divVerent> as that allows you to define the target file size quite well
[21:22] <Fjorgynn> whatever
[21:22] <Fjorgynn> AFK
[21:22] <quebre> divVerent: hmm
[21:23] <quebre> divVerent: well that was sensible for me as i tried 2pass before went for crf, but Fjorgynn suggested me to use crf and now he's going AFK (hahaha)
[21:24] <divVerent> crf is good if you don't have an exact target
[21:24] <divVerent> then it does just the right thing
[21:24] <divVerent> if you want to hit 700 to 800 MB, CRF is still good
[21:24] <divVerent> and probabyl faster, at the expense of a little quality from not fillng the 800 MB exactly
[21:25] <Fjorgynn> the problem is that his movie is +2hrs long
[21:26] <quebre> don't have to be exactly 800, can be +-200mb
[21:26] <quebre> at most
[21:50] <cbsrobot> quebre: finished the compilation ?
[21:51] <quebre> cbsrobot: yep
[21:51] <quebre> ;)
[21:51] <cbsrobot> and ?
[21:51] <cbsrobot> crf available ?
[21:51] <quebre> and no errors, able to use crf and all stuff
[21:51] <quebre> ;)
[21:51] <cbsrobot> libfdk_aac compiled ?
[21:51] <cbsrobot> nice
[21:51] <cbsrobot> so make a small sample and give it a run
[21:52] <cbsrobot> then you make the math for the whole movie
[21:52] <quebre> ffmpeg -i Cloud.Atlas.2012.R.C.720p.BRRip.x264.AC3-TRiNiTY.sample.mkv -c:v libx264 -preset veryslow -crf 29 -c:a libfdk_aac -b:a 128k -ac 2 Cloud.mkv
[21:52] <quebre> that's my line
[21:52] <cbsrobot> sounds reasonable
[21:53] <quebre> but i changed 'veryslow' to 'fast' and crf set on 30, tried on samle and from 37MB input, got 7.3MB output so it's nice score as for me
[21:53] <cbsrobot> use veryslow if you have enough time
[21:53] <quebre> don't have, not this time ;p
[21:53] <cbsrobot> veryslow tries harder to encode the file, while fast doesn't give a shit.
[21:53] <quebre> i promised to deliver the movie before midnight ;p
[21:54] <viric> it seems as if noone used the preset 'normal'
[21:54] <viric> I use 'normal'. is that strange?
[21:54] <quebre> but i will convert the same movie with 'veryslow' when i go to bed coz i'm deadly curious to compare both outputs 'fast' and 'veryslow'
[21:54] <cbsrobot> normal is default
[21:54] <cbsrobot> i guess
[21:54] <viric> yes
[21:54] <viric> I mean.. everyone talks about either fast or slow
[21:54] <viric> :)
[21:54] <quebre> or placebo ;>
[21:54] <viric> I feel alone running normal.
[21:55] <Fjorgynn> Good night!
[21:56] <cbsrobot> gn
[21:59] <viric> is it important to run up to date x264 code?
[21:59] <viric> I'm using x264 from one year ago
[22:00] <cbsrobot> viric: there's not much developpement atm, but on the other hand - one year is a lot of time in videospeak
[22:01] <viric> so hard to tell
[22:01] <viric> I've checked the git log; not a lot of checkins
[00:00] --- Tue Jan 15 2013


More information about the Ffmpeg-devel-irc mailing list