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

burek burek021 at gmail.com
Tue May 15 02:05:03 CEST 2012


[00:08] <burek> floater_f432c, does your camera show under /dev/video*
[00:13] <floater_f432c> burek<< yes, it even works, woth of them
[00:13] <floater_f432c> *both
[00:14] <floater_f432c> with cheese
[00:14] <floater_f432c> v4l2src name=video_source device=/dev/video1 ! capsfilter name=capsfilter caps=video/x-raw-rgb,width=640,height=480,framerate=30/1;video/x-raw-yuv,width=640,height=480,framerate=30/1 ! identity
[00:14] <floater_f432c> whaht does this mean?
[00:14] <floater_f432c> cheese -vv wrote it
[00:14] <burek> then just ffmpeg -f video4linux2 -r 25 -s vga -i /dev/video0 out.avi
[00:14] <burek> also, get yourself v4l2-ctl
[00:14] <burek> to setup some specific params of the camera
[00:14] <burek> such as brightness, zoom, focus...
[00:15] <floater_f432c> [video4linux2,v4l2 @ 0x1fc39e0] Cannot find a proper format for codec_id 0, pix_fmt -1.
[00:15] <floater_f432c> /dev/video1: Input/output error
[00:15] <burek> update your ffmpeg
[00:15] <floater_f432c> ffmpeg version 0.8.7.git-070a40f
[00:15] <burek> old
[00:15] <burek> get the latest git
[00:15] <floater_f432c> ah
[00:15] <burek> or static test build: http://ffmpeg.gusari.org/static/
[00:16] <burek> which you can just unpack and run
[00:16] <floater_f432c> what version you suggest then?
[00:16] <burek> latest git
[00:16] <floater_f432c> does it have updated v42l driver ?
[00:16] <burek> you can always check it :)
[00:17] <floater_f432c> isn't the v42l driver in my kernel?
[00:17] <beastd> floater_f432c: please try wth latest version. might also be that there is an unapplied v4l2 patch on the mailing list. i faintly remember there was a patch. but first try with latest git master
[00:18] <floater_f432c> i guess it can't hurt to have it updated
[00:18] <beastd> floater_f432c: it is. but there is a module of ffmpeg repsponsible for connecting your cam via the kernel interface to ffmpeg. this could have well been updated in the mean time.
[00:19] <floater_f432c> btw how to get h264 encode functioality?
[00:20] <JEEB> libx264 is what you'll need for that
[00:20] <JEEB> from the x264 project
[00:23] <beastd> + its development headers. FFmpeg configure will pick it up if you pass --enable-libx264 option.
[00:27] <floater_f432c> thanks i'll give that a try too
[00:35] <beastd> floater_f432c: if it doesn't work with FFmpeg git master, then please open a report on our issue tracking system. You can read on how to do it on our homepage ffmpeg.org
[00:42] <SubJunk> Hi guys :) Can FFmpeg read *embedded* ASS subtitles? I asked about a year ago and the answer was "maybe in the future" so here I am ;)
[00:43] <floater_f432c> ffmpeg]$ ./configure --enable-gpl --enable-libx264
[00:43] <floater_f432c> ./configure: line 2606: cannot create temp file for here-document: No space left on device
[00:43] <floater_f432c> what does this mean?
[00:43] <floater_f432c> C compiler test failed.
[00:43] <floater_f432c> latest git doesn't seem to be cool
[00:44] <beastd> floater_f432c: you are short on space on the device that contains your /tmp direcory?
[00:44] <floater_f432c> 70MB
[00:44] <floater_f432c> currently
[00:45] <floater_f432c> but yeah my system is fucked up, reinstall is on schedule
[00:45] <burek> SubJunk, http://ffmpeg.org/ffmpeg.html#toc-Video-Filters
[00:45] <floater_f432c> freed up my 500GB disk to by system and tmp now
[00:45] <floater_f432c> be my
[00:46] <burek> SubJunk, what you need is OCR
[00:46] <burek> but frankly, isn't it easier to just Google for the subs? :)
[00:47] <beastd> floater_f432c: good luck with getting your webcam to work with ffmpeg. i am going to sleep now.
[00:47] <beastd> good night all
[00:48] <floater_f432c> thanks, well maybe i should get a better one, i just wanter this to be some disposable cam
[00:48] <floater_f432c> *anted
[00:49] <beastd> floater_f432c: there is a chance that just ffmpeg gets it wrong.
[00:49] <SubJunk> Burek: I don't see anything on that page you linked for embedded ASS subs, only external ones. Am I missing something?
[00:49] <floater_f432c> beastd<< i still have 71MB free and it fails
[00:49] <burek> SubJunk, what does it mean "embedded"
[00:50] <beastd> IIRC there was some patch probably related and your problem might be fixable or maybe is already fixed in latest git master.
[00:50] <SubJunk> When the subtitles are in the same container as the video/audio
[00:50] <SubJunk> Usually MKV
[00:50] <beastd> floater_f432c: did you check where your /tmp is mounted on with e.g just typing "mount" in a console.
[00:51] <floater_f432c> its on root now
[00:51] <burek> SubJunk, does that mean that subtitles are in their own stream inside the container?
[00:51] <SubJunk> Yes
[00:51] <burek> so that you have for example 3 streams: audio, video and subs?
[00:51] <floater_f432c> beastd<< maybe i mount /tmp on tmpfs temporarily?
[00:51] <SubJunk> Yes
[00:52] <burek> SubJunk, then, all you have to do is: ffmpeg -i input.mkv -scodec copy -an -vn out.mkv
[00:52] <beastd> not sure. sorry but I need really to go to sleep now. maybe someone else can help you further.
[00:52] <burek> and you'll get the subtitles only
[00:52] <burek> or even out.ass
[00:52] <beastd> btw your failing of  ffmpeg configure script is very strange. i never saw it failing there before. so i thought your device was/is really full
[00:52] <beastd> good night people...
[00:53] <burek> gn beastd o/
[00:54] <SubJunk> burek: So I can do it in 2 steps (extract the subs then use them), but not in 1 step?
[00:55] <burek> SubJunk, what exactly is your use case scenario?
[00:58] <SubJunk> I'm a developer for a media server and we currently use MEncoder to serve ASS videos since it supports embedded, we have wanted to change to the much more active FFmpeg for years but many of our users need embedded ASS support (99% of anime videos use it)
[00:59] <burek> hm
[00:59] <burek> I'm not sure I really understand that 100% but I'll try
[00:59] <burek> to extract ass subs, you would use ffmpeg -i input.mkv -scodec copy -an -vn out.ass
[01:00] <burek> to keep it in the mkv container (for who knows what reasons), but subs only, you can do: ffmpeg -i input.mkv -scodec copy -an -vn out.mkv
[01:00] <burek> and later you can "embed" both into some new compilation like:
[01:01] <burek> ffmpeg -i new.mkv -i out.ass -scodec copy -acodec copy -vcodec copy out.mkv
[01:01] <burek> or
[01:01] <burek> ffmpeg -i new.mkv -i out.mkv -scodec copy -acodec copy -vcodec copy out.mkv
[01:01] <burek> make it out2.mkv :)
[01:01] <lemonzest> how do i get ffmpeg to put seek points into an ogg with theora/vorbis in, it lags sometimes when seeking in the media player, yet is fine if i just let it play
[01:03] <burek> seek points?
[01:03] <burek> you mean key frames or what?
[01:04] <lemonzest> burek: yeah
[01:04] <lemonzest> key frames in the ogg container
[01:05] <burek> you can try with -g <int>
[01:05] <lemonzest> muxed into a mkv the same theora/vorbis stream works
[01:05] <burek> -g 25 will create key frame every 25 frames
[01:05] <lemonzest> burek: i used -g 240 and -keyint_min 24
[01:05] <SubJunk> burek: Sorry, I should have explained with more details. The goal is to produce a video/audio file with hardcoded subtitles, since most renderers don't support ASS. So currently we just use something like "mencoder input.mkv -ass output.mkv" and it does it in that one step. I wonder if that is possible with FFmpeg, or is it only possible with the external .ass file?
[01:06] <burek> lemonzest, well, try just to remux everything in the same container, using -c copy
[01:06] <burek> ffmpeg -i input.ogg -c copy output.ogg
[01:06] <burek> see if that works
[01:06] <lemonzest> burek: okies
[01:07] <burek> SubJunk, so you want to take audio/video file (in1) and subtitle file (in2) and burn the subs into the video to produce output?
[01:07] <lemonzest> burek: ogginfo still spits out warnings, but oggz-validate says its ok
[01:07] <lemonzest> Warning: Expected frame 3, got 26
[01:08] <lemonzest> for example
[01:08] <lemonzest> is it dropping frames?
[01:08] <burek> I don't know
[01:08] <burek> SubJunk, to burn ass subs into the video, try this: http://ffmpeg.gusari.org/viewtopic.php?f=25&t=34
[01:08] <burek> lemonzest, is your input damaged maybe?
[01:09] <SubJunk> burek: So it seems that the answer is no, it is not possible to do it without an external .ass file
[01:09] <burek> how would you do it without external ass file? :)
[01:10] <SubJunk> burek: Like I said above, in MEncoder you just do "mencoder input.mkv -ass -o output.mkv"
[01:11] <burek> so, mencoder just makes up some ass subtitles and burns them, or what? :)
[01:11] <SubJunk> burek: The subtitles are the 3rd stream in the .mkv container
[01:12] <burek> and what does -ass does?
[01:12] <burek> do*
[01:12] <burek> :D
[01:12] <lemonzest> burek: i dont thinkso its a fringe ep, itunes rip in mkv
[01:13] <lemonzest> 720p
[01:13] <SubJunk> It tells MEncoder to use ASS subtitles if they exist :)
[01:13] <burek> and do what with them?
[01:13] <burek> burn them into the video?
[01:13] <SubJunk> Yes
[01:14] <SubJunk> Sorry for the confusion, I should have explained the goal better at the start :)
[01:14] <burek> well, you can analyze the source code for the ass video filter and see how to use -map or some other way to tell it not to use the external file, but rather the 3rd stream from input
[01:14] <burek> shouldn't be that hard
[01:15] <SubJunk> OK I'll have a look
[01:16] <burek> lemonzest, doesn't mean it's not
[01:17] <burek> you can always check it with some tool
[01:17] <burek> who knows who created that and if he was aware of those errors at all, using his own tools
[01:18] <cbsrobot> SubJunk: extracting an ass file from mkv is like 3 seconds
[01:19] <cbsrobot> then use -vf libass=input.ass to make hardsubs
[01:19] <cbsrobot> or something like that
[01:21] <SubJunk> cbsrobot: I'll see if I can make an easy patch to allow doing it in one step, if not I'll do that, thanks :)
[01:49] <floater_f432c> ffmpeg: error while loading shared libraries: libx264.so.124
[01:49] <floater_f432c> $ whereis libx264.so.124
[01:49] <floater_f432c> libx264.so: /usr/lib/libx264.so.124 /usr/lib/libx264.so /usr/lib64/libx264.so.107 /usr/local/lib/libx264.so.124 /usr/local/lib/libx264.so
[01:49] <floater_f432c> what is happening ?
[01:50] <floater_f432c> ffmpeg: error while loading shared libraries: libx264.so.124: cannot open shared object file: No such file or directory
[01:50] <floater_f432c> i think i see the files in 2 places
[01:53] <codetoad> Was wondering if I could join video without recompressing using ffmpeg.
[01:54] <floater_f432c> maybe you can cat the 2 parts, then fetch in a pipe to ffmpeg and use copy codec
[01:56] <burek> floater_f432c, type ldconfig
[01:57] <burek> codetoad, use concat: protocol
[01:57] <burek> http://ffmpeg.org/ffmpeg.html#concat
[01:59] <codetoad> burek was wondering how concatenate  would look in ffmpeg ... cat or > or something like that?
[01:59] <burek> there is concat: protocol i guess
[01:59] <burek> read that last link
[02:00] <codetoad> ahh thx
[02:01] <burek> ffmpeg -i concata1.avi\|2.avi\|3.avi -c copy out.avi
[02:01] <burek> something like that
[02:01] <burek> make sure all of the inputs (1.avi, 2.avi, 3.avi) are of the same format, size, frame rate, etc
[02:01] <burek> everything must be the same
[02:01] <burek> otherwise it will fail
[02:02] <SubJunk> burek: I had a look through the code but I'm not familiar enough with it to do a quick patch, so I created an enhancement request on the tracker https://ffmpeg.org/trac/ffmpeg/ticket/1305 hopefully it will be an easy task for someone who is already familiar with the codebase. Thanks!
[02:06] <codetoad> burek is this what you mean or is it dated? http://ffmpeg.org/faq.html#How-can-I-join-video-files_003f
[02:07] <burek> codetoad, "last link"
[02:07] <burek> read above
[02:07] <codetoad> I read it. Was talking about URLs
[02:07] <burek> codetoad, not the faq
[02:07] <burek> read again above
[02:08] <burek> SubJunk, ok :) :beer: :)
[02:08] <codetoad> lol, I missed that spoon feeding. Thx
[02:09] <burek> :)
[02:09] <SubJunk> burek: :beer: :) I'm outta here, cheers
[02:10] <burek> o/
[02:15] <floater_f432c> thanks, success in installing
[02:16] <floater_f432c> now it won't record mkv from webcam
[02:17] <floater_f432c> frame=    0 fps=0.0 q=0.0 Lsize=       1kB time=00:00:00.00 bitrate=   0.0kbits/s
[02:17] <floater_f432c> video:0kB audio:0kB global headers:0kB muxing overhead 1356.410256%
[02:17] <floater_f432c> Received signal 2: terminating.
[02:17] <floater_f432c> weird things get printed
[02:18] <floater_f432c> did: ffmpeg -f v4l2 -s 640x480 -i /dev/video0 -vcodec libx264 out.mkv
[02:21] <burek> floater_f432c,
[02:21] <burek> can you please use pastebin.com, to show your command line and its output?
[02:21] <floater_f432c> no output
[02:21] <floater_f432c> just stops
[02:21] <burek> ?
[02:21] <burek> what are you copying above then?
[02:21] <floater_f432c> that is after i hit control C 2 times
[02:21] <burek> and before you hit ctrl+c
[02:21] <burek> ?
[02:22] <floater_f432c> nothing
[02:22] <floater_f432c> ffmpeg -f v4l2 -s 640x480 -r 30 -i /dev/video0 -vcodec libx264 out.mkv
[02:22] <burek> I see "something" before "Received signal 2"
[02:22] <floater_f432c> but i figured it needs fps setting
[02:22] <burek> so, it's not nothing
[02:22] <floater_f432c> burek<< well it lists configuration
[02:23] <floater_f432c> then goes in a dead idle
[02:23] <floater_f432c> without the -r option
[02:23] <burek> can you please use pastebin.com, to show your command line and its output?
[02:23] <floater_f432c> but i paste the stuff
[02:26] <floater_f432c> burek<< ffmpeg recording webcam to h264 mkv  http://pastebin.com/VmMKvX2i
[02:28] <burek> floater_f432c, it recognized your input from camera
[02:28] <burek> why did you hit ctrl+c
[02:28] <floater_f432c> because nothing happened
[02:28] <burek> for how long
[02:28] <floater_f432c> hm btw 6MB for 1 minutes in 640x480
[02:28] <floater_f432c> burek<< for minutes
[02:28] <burek> then use -r 30
[02:28] <burek> and v4l2-ctl
[02:29] <burek> to see what your cam supports
[02:29] <floater_f432c> it can do 30fps
[02:29] <burek> http://ffmpeg.gusari.org/viewtopic.php?f=25&t=13
[02:30] <burek> also, try to set the input of your camera to raw
[02:30] <burek> now it's mjpeg
[02:30] <burek> Stream #0:0: Video: mjpeg, yuvj422p, 640x480 [SAR 72:72 DAR 4:3], -2147483 kb/s, 1000k tbr, 1000k tbn, 1000k tbc
[02:31] <burek> use v4l2-ctl to set that
[02:31] <burek> if possible
[02:31] <floater_f432c> where can i get that?
[02:31] <burek> read that tut
[02:31] <burek> if you manage to set it as raw
[02:31] <floater_f432c> ok
[02:31] <burek> you'll get more quality for input image
[02:31] <floater_f432c> i do not have it installed
[02:31] <burek> install it :)
[02:31] <floater_f432c> and no idea where it is
[02:31] <burek> apt-cache search v4l2-ctl
[02:32] <floater_f432c> i dont have that
[02:33] <floater_f432c> and google does not find sources
[02:33] <burek> apt-get install v4l-utils
[02:33] <floater_f432c> i have yum
[02:33] <burek> then search it
[02:33] <floater_f432c> (that is not really functional)
[02:34] <floater_f432c> http://linuxtv.org/downloads/v4l-utils/
[02:34] <floater_f432c> neat
[04:07] <diegoviola> i would like to convert a MKV file (a movie) thas has H.264 video and AC3 audio to mpeg4/avi, this mkv is about 8GB in size, is there a way to shrink that to about 4GB?
[04:08] <diegoviola> what codec should i use?
[04:45] <diegoviola> what is the -switch for ffmpeg to rescale the video resolution?
[04:46] <sacarasc> -vf scale
[04:46] <diegoviola> ty
[04:51] <diegoviola> could ffmpeg tell me the estimation of the end result file size?
[04:53] <diegoviola> or an aproximation of the total encoding time
[04:53] <diegoviola> *approximation
[04:54] <diegoviola> meh, no need really
[05:00] <burek> diegoviola, you actually want 2pass encoding
[05:00] <burek> if you are targeting the file size
[05:01] <diegoviola> i'm going for 1 pass now, how do i go 2 pass?
[05:01] <diegoviola> i'm converting to xvid
[05:02] <diegoviola> ty
[06:16] <floater_f432c> ffmpeg -f v4l2 -list_formats 2
[06:16] <floater_f432c> what am i doing wrong?
[06:16] <floater_f432c> i was reading ffmpeg --help
[06:16] <floater_f432c> wanted to list v4l2 formats
[06:17] <burek> use v4l2-ctl
[06:17] <burek> and I believe it's -f video4linux2
[06:17] <burek> not -f v4l2
[06:17] <floater_f432c> same to me
[06:18] <floater_f432c> well i was thinking about to specify a format to ffmpeg
[06:19] <floater_f432c> v4l2's code does not handle my webcam's identifier
[06:19] <burek> what do you want to do
[06:19] <burek> specify raw video?
[06:19] <burek> or something
[06:19] <floater_f432c> it is jpeg compressed
[06:19] <burek> ffmpeg -f v4l2 -vcodec mjpeg -i /dev/video0
[06:19] <floater_f432c> my cams do not have raw mode
[06:20] <burek> well, ffmpeg -f v4l2 -i /dev/video0 should grab it by default
[06:20] <burek> no need to extra specify it
[06:21] <floater_f432c> [video4linux2,v4l2 @ 0x3346200] Cannot find a proper format for codec_id 8, pix_fmt -1.
[06:21] <floater_f432c> /dev/video1: Input/output error
[06:21] <floater_f432c> i still have this error
[06:21] <floater_f432c> device id is unknown to v4l2
[06:22] <burek> can you please use pastebin.com, to show your command line and its output?
[06:22] <floater_f432c> cheese does this with gstreamer:
[06:22] <floater_f432c> v4l2src name=video_source device=/dev/video1 ! capsfilter name=capsfilter caps=video/x-raw-rgb,width=640,height=480,framerate=30/1;video/x-raw-yuv,width=640,height=480,framerate=30/1 ! identity
[06:22] <floater_f432c> unfortunately i can not reproduce the result yet
[06:22] <floater_f432c> sure
[06:27] <floater_f432c> btw the mkv presets are faulty
[06:28] <burek> can you please report that to the bug trac?
[06:29] <floater_f432c> burek<< ffmpeg vs noname $10 webcam  http://pastebin.com/WeTFqL3k
[06:30] <floater_f432c> here i listed the info i think might be useful
[06:30] <burek> PJPG?
[06:31] <floater_f432c> Driver Info (not using libv4l2):
[06:31] <floater_f432c>         Driver name   : pac7302
[06:31] <floater_f432c> does this mean i need to use another driver ?
[06:31] <floater_f432c> not v4l2 ?
[06:33] <burek> I'm not sure..
[06:33] <burek> you might ask in #ffmpeg-devel
[06:33] <burek> most cameras use mjpeg
[06:33] <burek> but pjpg, I guess it's a kind of a camera that produces sequence of plain jpeg images
[06:34] <burek> which you can view directly in your browser or something
[06:34] <burek> iirc it is something like progressive jpeg or something, not sure
[06:37] <burek> floater_f432c, what's the output of: v4l2-ctl --list-formats-ext
[06:37] <burek> can you pastebin that?
[06:38] <floater_f432c> http://pastebin.com/theLdVk6
[06:38] <floater_f432c> done
[06:38] <floater_f432c> nothing fancy, supports one video mode
[06:39] <burek> no, it's not mjpeg
[06:39] <burek> mjpeg states MJPG
[06:39] <burek> PJPG I've never seen so far
[06:39] <burek> try any of these: ffmpeg -codecs | grep -i jpeg
[06:41] <floater_f432c> cheese works with it with the above debug line using gstreamer
[06:41] <floater_f432c> this is why i'm puzzled
[06:42] <burek> x-raw-rgb
[06:42] <burek> hm
[06:43] <burek> try ffmpeg -f v4l2 -pix_fmt <FORMAT> -i /dev/video0
[06:43] <burek> with these formats
[06:43] <burek> ffmpeg -pix_fmts | grep -i rgb
[06:43] <floater_f432c> ok thanks, testing
[06:54] <floater_f432c> how do i set the source format for v4l2 ?
[06:54] <floater_f432c> i'd like to use mpjpeg
[06:56] <burek> you cant use mpjpeg
[06:56] <burek> its not the same as pjpg
[06:57] <floater_f432c> pjpg is not in the list
[06:57] <burek> maybe ffmpeg is not supporting it :/
[06:57] <burek> ask in #ffmpeg-devel I need to go now :(
[06:57] <floater_f432c> kk
[06:57] <floater_f432c> bb
[06:57] <burek> :beer: :) o/
[07:53] <gst-kaps> how do i use ffmpeg to encode using linx264 in byte stream format ?
[09:01] <diegoviola> if i wanted to rescale a movie that is 1920x818 in width/height and make it smaller, what resolution could i use?
[09:03] <diegoviola> i'm trying to shrink down the dimensions and also the quality to make the file size smaller
[09:03] <diegoviola> it's currently a MKV and 8GB in size
[09:03] <diegoviola> H.264 video codec and AC3 audio
[09:20] <floater_f432c> your best bet is to make it 50%
[09:21] <floater_f432c> that will take 1/4 size same quality
[09:21] <floater_f432c> or just use some sane 720p standard
[09:23] <floater_f432c> downsampling will result in good image quality using interpolation
[09:24] <JEEB> Sure is numbers out of, pardon me, arse. How big a clip will be with the "same" quality depends wholly on the content. Also, when a clip gets downsized, the chance that it will be resized upwards grows, thus the "same" quality level isn't suddenly what is needed (because the problems with the "same" quality level suddenly throw themselves at you).
[09:25] <diegoviola> floater_f432c: ty
[09:25] <diegoviola> does ffmpeg has some kind of presets for that?
[09:25] <diegoviola> if i want to make it 720p for example
[09:26] <JEEB> no
[09:26] <JEEB> also since that clip is not 16:9 it's pretty obvious that whatever "standard" 720p isn't going to be possible
[09:26] <JEEB> diegoviola, you can use whatever resolution you want, 1280xYYY, downsizing by 50%, downsizing to 848xYYY or 854xYYY
[09:27] <floater_f432c> JEEB<< well i used to scale down the images from digital camera to 50% and the image contains about the same information because of the camera's extrapolations...
[09:27] <JEEB> ("720p" is 1280x720, and because your aspect ratio is not 16:9 you could do something similar by resizing to 1280xYYY)
[09:28] <floater_f432c> native resolution on the extrapolating digital equipment is useless
[09:28] <JEEB> what on earth are you blabbing on about
[09:28] <JEEB> other than yes, digital cameras for users usually mostly get noise with their megapixels
[09:29] <diegoviola> Thanks.  Also, if I go from H.264 to xvid and AC3 to mp3, will the file size shrink as well?
[09:29] <JEEB> no
[09:29] <JEEB> or well, if you set a bit rate, it will (maybe) follow that, but it will be a clear drop in quality
[09:29] <JEEB> if you need to re-encode and keep maximum quality, you will most probably want to use libx264 for H.264 encoding
[09:29] <JEEB> also, regarding resizing: http://ffmpeg.org/ffmpeg.html#scale
[09:30] <floater_f432c> JEEB<< don't forget the square matrix with the 3 (or 3.5) color filters and the extrapolation magic
[09:30] <diegoviola> so if I want to shrink the file size I just rescale the video and I don't change codecs?
[09:30] <diegoviola> what do you suggest?
[09:30] <JEEB> I would recommend not touching the audio track unless explicitly needed
[09:30] <floater_f432c> anyway i wanted to try out preset options using latest git and it failed
[09:30] <JEEB> I suggest you follow the usual libx264 encoding procedure :P
[09:31] <JEEB> floater_f432c, do you have libx264 installed? Did you use libx264's presets?
[09:31] <diegoviola> ty
[09:31] <JEEB> because -preset maps to x264's presets for x264
[09:31] <floater_f432c> hq preset:
[09:31] <floater_f432c> Unrecognized option 'directpred'
[09:31] <floater_f432c> /usr/local/share/ffmpeg/libx264-hq.ffpreset: Invalid option or argument: 'directpred=3
[09:31] <floater_f432c> ', parsed as 'directpred' = '3'
[09:31] <JEEB> oh my gawd
[09:31] <JEEB> no, those don't come with ffmpeg any more
[09:32] <floater_f432c> ;<
[09:32] <JEEB> use internal libx264 presets
[09:32] <JEEB> http://mewiki.project357.com/wiki/X264_Settings#preset
[09:32] <JEEB> -preset PRESETNAME
[09:32] <diegoviola> what is usual libx264 encoding procedure?
[09:32] <diegoviola> sorry i'm not very familiar
[09:33] <JEEB> diegoviola, ffmpeg -i input.derp -vcodec libx264 -crf 22 -vf scale=WIDTH:HEIGHT -preset PRESETNAME -acodec copy out.mkv
[09:34] <JEEB> crf = "quality" (constant rate factor)
[09:34] <diegoviola> ty
[09:34] <JEEB> the catch is to find the highest crf value that still looks good
[09:34] <diegoviola> i see, thanks
[09:34] <JEEB> then preset is the compression VS speed option
[09:34] <JEEB> see the link I linked a bit ago here
[09:35] <JEEB> everything but the fastest and slowest are generally OK to use
[09:35] <floater_f432c> JEEB<< cool wiki, well hidden
[09:35] <JEEB> ultrafast is for speed benchmarks
[09:35] <diegoviola> JEEB: ty
[09:35] <JEEB> and placebo just gives little good for a big speed drop
[09:35] <floater_f432c> and what do you recommend for real-time webcam recording?
[09:36] <JEEB> floater_f432c, the crf for the quality you want, and the slowest preset that can still handle realtime for you
[09:36] <JEEB> you'll just have to test with your CPU
[09:37] <floater_f432c> if my comp can do placebo in realtime then do that?
[09:37] <JEEB> if you want
[09:37] <floater_f432c> i assume i don't want to recode again after i'm done
[09:37] <JEEB> yeah, then a non-lossless crf value is OK
[09:38] <JEEB> and the preset is just for compression
[09:38] <floater_f432c> can ffmpeg accumulate/smooth image ? like iso speed
[09:39] <JEEB> diegoviola, and then WIDTH and HEIGHT are the width and height that you want, you can calculate them in any way you want, but they will have to be divisible by two
[09:40] <floater_f432c> diegoviola<< but width/height should be exactly the same, that is aspect ratio
[09:41] <JEEB> the scale filter has some stuff to help you automate that but derp
[09:41] <JEEB> floater_f432c, actually that wiki comes up first when you google for 'x264 settings' IIRC
[09:41] <JEEB> lol
[09:41] <JEEB> so not really hidden
[09:41] <floater_f432c> otherwise people will have flat or cone heads
[09:41] <diegoviola> heh, thanks guys
[09:43] <diegoviola> is ffplay the ffmpeg media player?
[09:43] <diegoviola> i mean it comes with ffmpeg right?
[09:44] <JEEB> it's an implementation of something like a media player, yes
[09:44] <JEEB> although it's really really barebones
[09:44] <JEEB> it's there just to let people test some stuff etc.
[09:44] <diegoviola> ok ty
[09:49] <floater_f432c> ffmpeg -f v4l2 -s 640x480 -r 30 -i /dev/video0 -vcodec copy test.mjpeg
[09:49] <floater_f432c> wow i can apply copy to webcam too
[09:49] <floater_f432c> ( though 40MB/1 minute )
[09:51] <JEEB> not sure if that really is mjpeg, or does ffmpeg tell you in its log that input was mjpeg?
[09:51] <JEEB> (also you usually want to put mjpeg into avi)
[09:51] <JEEB> (or mov, if you're a mac user)
[09:51] <floater_f432c> yes, stream from my webcam is mjpeg
[09:51] <floater_f432c> it does not have raw
[09:53] <JEEB> (although I guess mov is a bad idea because I don't know how you stop the encoding and if the muxing is properly finished)
[09:55] <juanbobo> why does ffmpeg seem to convert 29.97 to 59.94?
[09:56] <JEEB> sounds like you're bobbing (with certain settings of yadif, for example)? or you're just funnily reading the values that ffmpeg gives you.
[09:57] <juanbobo> ffpmeg, mplayer, and vlc all identify the new file as 59.94
[09:57] <juanbobo> i did use yadif
[09:57] <juanbobo> what is bobbing?
[09:58] <JEEB> basically creating frames from fields
[09:58] <JEEB> (in a more or less sophisticated way)
[09:59] <juanbobo> ok, so i need to specify for yadif to go by frame?
[09:59] <juanbobo> i thought that was the default option, i may be wrong
[09:59] <JEEB> an interlaced 30/1.001 "fps" stream has 60/1.001 fields per second
[09:59] <JEEB> yes, I'd think that by default yadif defaulted to input rate output
[09:59] <JEEB> and no, it shouldn't go by frame because the two fields that you usually "put together" for a "frame" aren't gonna exactly match
[10:00] <JEEB> (if it's true interlacing)
[10:00] <juanbobo> right
[10:00] <juanbobo> ok, hmm
[10:00] <JEEB> http://ffmpeg.org/ffmpeg.html#yadif
[10:00] <JEEB> ^ the docs on yadif
[10:01] <juanbobo> it does say the default is per frame
[10:01] <JEEB> yup
[10:02] <juanbobo> i'll try to specify the options i want, hopefully that works
[10:02] <juanbobo> damn, i just converted a bunch of movies the wrong way
[10:02] <JEEB> can you pastebin your command line and the output of it (on the encoding side)?
[10:02] <juanbobo> i didnt do anything in the current session so unfortunately i dont have anything to post
[10:02] <juanbobo> this was a couple days ago
[10:03] <juanbobo> i'll try to convert something now and see what happens
[10:03] <juanbobo> i noticed i was getting duplicate frames
[10:06] <juanbobo> damn, somehow i had yadif set to frames
[10:06] <juanbobo> why would i be getting duplicate frames though?
[10:09] <juanbobo> should i leave movies which are shot at 24 fps at 29.97? it seems they are encoded at that rate
[10:13] <juanbobo> anyway thank you JEEB
[10:15] <JEEB> juanbobo, are you setting an output frame rate or something?
[10:15] <JEEB> also, you should be inverse telecining 24/1.001fps content put into 30/1.001fps
[10:15] <JEEB> not deinterlacing
[10:16] <juanbobo> with what command?
[10:16] <JEEB> this is the fun part
[10:16] <JEEB> there is no IVTC filter in ffmpeg
[10:16] <juanbobo> heh
[10:16] <JEEB> piping out picture from mplayer(2) I guess?
[10:17] <JEEB> or using one of VLC's inverse telecine filters?
[10:17] <juanbobo> ok, if that's not done then you get slight jumpiness?
[10:18] <JEEB> yes, because the fields/frames that were supposed to get decimated away are kept
[10:18] <JEEB> inverse telecine is pretty much all about matching fields and then dumping away the duplicate(s)
[10:18] <juanbobo> isnt 24 fps stored as 29 anyway?
[10:18] <juanbobo> on a dvd say
[10:19] <terranpro> i hope this isn't too offtopic but, what orientations of the axes do you guys use for h264 motion vector/motion estim? ive written something to extract mv's and i think i have my y axis flipped
[10:19] <JEEB> depends, most of the DVDs I've dealt with have it like that. Then you have some DVDs where they're properly using the soft telecine method (encode as 24/1.001fps, set certain metadata and have the player telecine it for interlaced output)
[10:20] <juanbobo> ok, good to know
[10:20] <JEEB> (the first is called 'hard telecine' because the telecine is really encoded into the stream)
[10:20] <juanbobo> the way it blends the frames?
[10:21] <terranpro> (i.e. from viewer's perspective is y = 0 at the top of the image or bottom)
[10:22] <JEEB> juanbobo, well you basically put the frames into two fields + create duplicate fields to make up for the fact that you're going to be outputting at a rate faster than the original one
[10:23] <juanbobo> so if i just stick with the original 29 fps its normal for me to get duplicate frames because its filling in the extra 5 fps? i feel like ive gotten duplicate frames also with 29.97 shows too
[10:23] <JEEB> yes, if you have telecined content you'll be getting something a la 1-2-3-4-4
[10:23] <JEEB> (duplicates)
[10:23] <juanbobo> ok
[10:24] <JEEB> content can be mastered either as progressive or as interlaced with telecine... which then leads to these funny hybrids as well, when people decide to edit progressive stuff in interlaced mode
[10:25] <JEEB> (most often credits as purely interlaced (move every field) while the background is properly telecined)
[10:25] <juanbobo> wow, what a nightmare ;)
[10:25] <JEEB> thankfully people have made filters to mostly make sense out of those
[10:26] <JEEB> anyways, in theory you should be dealing with both types of content properly, but in an automated environment I know it can be hard :P
[10:27] <JEEB> because, while you do have ways of finding out a probability for a certain clip, it can be thrown off easily, and pure interlaced content with movement inverse telecined doesn't look good either
[10:27] <juanbobo> most dvds are interlaced though arent they?
[10:28] <JEEB> they are encoded interlaced, but what's in those 60/1.001 fields per second only the Master knows
[10:28] <juanbobo> ah ok
[10:28] <JEEB> which is why I keep separating "pure interlacing" and "telecine"
[10:29] <JEEB> also for something like star trek the CG was usually created purely interlaced, while the show itself is telecined
[10:29] <JEEB> oh don't you love this stuff :)
[10:30] <diegoviola> does 2-pass encoding really makes a difference in quality and file size?
[10:30] <juanbobo> yeah, wow, i thought i'd just run a batch with the same command
[10:30] <juanbobo> JEEB, do you call mp=telecine in ffmpeg?
[10:31] <JEEB> diegoviola, if you're encoding with bit rate rate control it is the preferred way (as the encoder gets to optimize the rate factor for a certain size). If you're using crf rate control setting passes doesn't matter.
[10:31] <JEEB> since crf rate control only needs one pass to work
[10:31] <diegoviola> JEEB: ty
[10:31] <JEEB> juanbobo, oh right, ffmpeg could use some of the mplayer filters
[10:32] <JEEB> umm.... I don't know how that thing you mentioned works so I can't say more :D
[10:33] <diegoviola> can ffmpeg use multiples cpu threads for encoding?
[10:33] <juanbobo> depends on the codec youre using i think
[10:33] <JEEB> yes, and it uses libx264's defaults when encoding with libx264 (unless your ffmpeg + libx264 are too old)
[10:33] <diegoviola> threads / cores
[10:34] <JEEB> libx264 uses (<cores> * 3) / 2 or something
[10:34] <diegoviola> ty
[10:34] <diegoviola> nice
[10:35] <juanbobo> JEEB: if youre reencoding 24 fps as 24 fps though why should you need a filter?
[10:36] <JEEB> if you've got progressive content then why would you indeed
[10:36] <juanbobo> ah ;)
[10:38] <juanbobo> so i take it you dont use that filter the way i mentioned, how else would you pipe it to mplayer?
[10:39] <JEEB> well if you can use mplayer's filters then you can just follow the mplayer's documentation on how to inverse telecine?
[10:39] <juanbobo> ok, didnt know if you used some command line trickery
[10:41] <JEEB> there was some guide for doing piping to ffmpeg/x264's command line app as well, but dunno if that's needed if you can use mplayer's filters in ffmpeg
[10:41] <JEEB> :)
[10:44] <juanbobo> whats the best way to identify if a video is interlaced or not?
[10:45] <JEEB> other than flags in the stream (d'oh -- and this only tells if it's encoded as interlaced or not, nothing about what's inside), you can only see through it with your own eyes.
[10:49] <juanbobo> i'm still getting 59.94 fps even without the yadif filter
[10:49] <JEEB> what kind of a command line etc. are you using? pastebin pl0x
[10:50] <juanbobo> all i'm doing right now is: ffmpeg -i hunter1-001.vob -b:a 128k -b:v 600k -vcodec libx264 -acodec libfaac -ac 2 hunter.mp4
[10:51] <JEEB> might want to show the terminal output of ffmpeg
[10:51] <juanbobo> ok
[10:52] <juanbobo> http://pastebin.com/gEg7QKvL
[10:54] <JEEB> Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p, 720x480 [SAR 8:9 DAR 4:3], 9800 kb/s, 25.06 fps, 59.94 tbr, 90k tbn, 59.94 tbc
[10:54] <JEEB> I am amused
[10:54] <juanbobo> why does it say 25.06?
[10:54] <JEEB> don't ask me
[10:55] <juanbobo> ffmpeg often reports a strange fps
[10:55] <JEEB> on really variable frame rate stuff that'd be OK
[10:56] <JEEB> anyways, that sure sounds weird... (and I'm not talking only about the fps)
[10:56] <juanbobo> does it?
[10:56] <juanbobo> the tbr and whatnot?
[10:56] <JEEB> also, ffmpeg doesn't really use that fps value but the internal presentation time stamps (pts) for the encoding
[10:57] <JEEB> yeah, the rbr/tbc
[10:57] <juanbobo> its not like its trying to use that fps, but regardless i'm getting 59.94
[10:57] <JEEB> not sure about tbn at all
[10:57] <juanbobo> this isnt the only video thats happening on, virtually all of them
[10:57] <juanbobo> this is a tv show, but movies also
[10:57] <JEEB> lemme check what my build does with an interlaced DVD VOB...
[10:58] <juanbobo> ok
[11:00] <JEEB> Stream #0.0[0x1e0]: Video: mpeg2video (Main), yuv420p, 720x480 [PAR 32:27 DAR 16:9], 9800 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
[11:00] <JEEB> this sounds more like it
[11:01] <JEEB> it seems like either your ffmpeg has borked its way of reading the data (try another compile), or you have on your hand a whole lot of broken samples
[11:01] <juanbobo> hmmmm
[11:01] <juanbobo> its happening virtually with everything i encode it seems
[11:02] <JEEB> ..or you really have samples with 59.94 tbr, which I'm not really thinking is happening
[11:02] <JEEB> either the reading of those values is off, the values are off or you have some weird-ass samples :D
[11:06] <juanbobo> what version of ffmpeg are you using?
[11:08] <juanbobo> well mplayer seems to report the right framerate at least
[11:09] <juanbobo> but i think ffmpeg is somehow thrown off by reading the wrong numbers
[11:09] <juanbobo> dont know what to do about that, dont want to switch to another encoder
[11:09] <JEEB> try updating to current ffmpeg git HEAD
[11:13] <juanbobo> if you specify -r 24 or 30 does it use the precise value?
[11:13] <JEEB> it uses the value you give it :P
[11:13] <juanbobo> ok
[11:13] <JEEB> setting an fps is usually a very bad idea
[11:16] <juanbobo> i set it to 29.97 and it seems at least output the right value
[11:16] <JEEB> you probably want to set it to 30000/1001 in the way ffmpeg likes
[11:16] <juanbobo> ok
[11:16] <JEEB> (to get the exact value)
[11:18] <juanbobo> i dont know why im getting duplicate frames
[11:18] <juanbobo> i may end up trying the newer ffmpeg, but i'll probably not compile it right now
[11:21] <juanbobo> ah what the hell i'll make it now
[11:35] <juanbobo> JEEB: thanks for your help, i'm gonna go
[12:26] <juanbobo> JEEB: for what it's worth i think dvd:rip, what i was using to rip the vobs was somehow ruining their apparent frame rate
[12:35] <ctshh> hello all, I'd like to convert DVDs with all audio and subtitles to h264, main profile level 3, mp3 audio CBR 128kbit. Could someone please point me to the right commandline on how to encode all audio streams and all subtitle streams, please? Thanks!
[13:10] <sacarasc> ctshh: ffmpeg can do dvds directly, IIRC, so first you'd have to use a programme to get it on to your HD.
[13:20] <ctshh> sacarasc: I know, I have the DVDripped and de-css'ed on my harddisk.
[13:20] <sacarasc> I was never good with multiple stream things, so... :|
[13:21] <JEEB> H.264 and mp3 sounds like derp
[13:21] <JEEB> rather copy audio streams unless it's 320kbps 2ch AC3 or 2ch PCM or so
[13:21] <ctshh> JEEB: i know, but i have this reeeealy special dsp that wants it that way. I start pulling my hairs out.
[13:21] <JEEB> ...
[13:21] <JEEB> glhf
[13:22] <ctshh> had to look that one up... will do.
[13:23] <ctshh> but for a start it would tremendously help if anyone could just point out how to keep all audio tracks, let's assume for a second I need them in aac.
[13:23] <JEEB> anyways, otherwise it's -vcodec libx264 -crf YOUR_CRF_VALUE -profile:v main -level 30
[13:23] <JEEB> -acodec libfaac or aac for AAC
[13:24] <ctshh> but that only encodes one audio channel.
[13:24] <JEEB> _channel_ ? no, it shouildn't
[13:25] <JEEB> maybe one audio track, not sure about how ffmpeg handles multiple by default
[13:25] <ctshh> apparently not as multi-language ;)
[13:27] <ctshh> nope, checked again: input is 1 video, 3 audio and 2 subpics, output is 1 video, 1 audio. (without adding any parameters to tell it otherwise).
[13:28] <JEEB> you should be able to map inputs to output :)
[13:28] <JEEB> http://ffmpeg.org/ffmpeg.html
[13:28] <JEEB> http://ffmpeg.org/ffmpeg.html#Stream-selection
[13:57] <zap0> where might i find some really simple examples for using avutil/avfilter/avcodec libs
[14:23] <Mavrik> zap0: in the examples folder of ffmpeg source
[14:24] <zap0> thank you.
[15:15] <Vardan> hi all
[15:15] <Vardan> people I have question about RTSP server
[15:18] <Vardan> I'm writing my own RTSP server and as client using testRTSPClient application written by live555 team. The problem is when I'm sending SDP information it's write in DESCRIBE command response testRTSPClient writes "Got a SDP description:" but in output write (NULL) as SDP description. How correctly send SDP information?
[15:33] <yannj_fr> Hello, is there anyone fluent with h.264 decoding here?
[15:34] <JEEB> in what sense?
[15:34] <yannj_fr> I am looking at the H.25
[15:34] <yannj_fr> H.264 parser code, and wonder if someone have information about the stuffing detection
[15:34] <JEEB> ah, that I have no idea of :)
[19:14] <madwill> Hi i've made a new install of ffmpeg and x264 but the line i used for x11grab does not work anymore, i get file for preset 'lossless_ultrafast' does not work anymore
[19:14] <madwill> i mean not found
[19:14] <JEEB> yes
[19:14] <madwill> i know there is no more .ffpreset and they are now .avconpreset
[19:15] <JEEB> no
[19:15] <madwill> oh
[19:15] <JEEB> ffmpeg has ffpresets for stuff that can't be used otherwise
[19:15] <JEEB> and avpresets are for libav
[19:15] <JEEB> (and they kept stuff that could be done with libx264's internal presets as well)
[19:15] <JEEB> anyways, long story short -- that preset does two things
[19:15] <JEEB> it sets lossless encoding for libx264
[19:15] <JEEB> -crf 0
[19:16] <JEEB> (for 8bit H.264)
[19:16] <madwill> ok thanks, so have i badly compiled ffmpeg
[19:16] <JEEB> no
[19:16] <JEEB> you don't
[19:16] <JEEB> sit tight for a moment
[19:16] <JEEB> and see what I write
[19:16] <JEEB> anyways
[19:16] <madwill> :P k
[19:16] <JEEB> <JEEB> anyways, long story short -- that preset does two things
[19:16] <JEEB> <JEEB> it sets lossless encoding for libx264
[19:16] <JEEB> which is -crf 0 for 8bit x264
[19:16] <JEEB> (if you don't know, you probably have 8bit x264)
[19:17] <JEEB> because you'd have to add --bit-dept=NUMBER if you wanted 9 or 10bit x264
[19:17] <JEEB> (into x264's configure)
[19:17] <JEEB> and it sets libx264's internal "ultrafast" preset
[19:17] <madwill> and i didn't
[19:17] <JEEB> -preset ultrafast
[19:17] <JEEB> well, you don't want more than 8bit H.264
[19:17] <JEEB> in 99%+ of all cases
[19:18] <madwill> i'm the 99%
[19:18] <JEEB> yes
[19:18] <JEEB> anyways, -crf 0 -preset ultrafast
[19:18] <JEEB> here
[19:18] <JEEB> this does the same as the old "lossless_ultrafast" preset
[19:19] <JEEB> the separate presets were removed because the -preset switch implementing possible internal presets was implemented
[19:19] <madwill> file for preset ultrafast not found but it might be because i've fooled around with FFMPEG_DATADIR
[19:19] <JEEB> it shouldn't start looking for it as a file to begin with
[19:20] <JEEB> it should call it within libx264
[19:20] <JEEB> http://mewiki.project357.com/wiki/X264_Settings#preset
[19:20] <JEEB> because it's supposed to be using internal libx264 presets
[19:20] <madwill> i used -vpre and i used -preset i get unrecognized option "preset"
[19:20] <JEEB> uhh
[19:21] <JEEB> how old is yer ffmpeg?
[19:21] <sacarasc> madwill: Can you pastebin the full output?
[19:21] <JEEB> and yes, pastebin of the full output would be nice
[19:21] <madwill> with preset or with vpre
[19:22] <sacarasc> Preset.
[19:23] <madwill> http://pastebin.com/fSnAMepd
[19:23] <sacarasc> Yeah, that's not ffmpeg, but libav.
[19:24] <JEEB> you're using ffmpeg from the libav package, and that never got the rewrites that were done to avconv (which were then merged into ffmpeg's ffmpeg)
[19:24] <sacarasc> Which is a fork that doesn't have all the features of ffmpeg.
[19:24] <madwill> oh
[19:24] <JEEB> so you either switch to ffmpeg or use avconv instead
[19:29] <polandeer> Hello, I'm having problems building ffmpeg
[19:30] <polandeer> Configure line: http://repo.stephenmac.com/sourcepkgs/ffmpeg/PKGBUILD (build() section); Tutorial: https://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuide; Error: http://paste.ubuntu.com/987495/
[19:32] <burek> polandeer, type ldconfig
[19:32] <polandeer> burek: Nothing
[19:33] <polandeer> Just a new line
[19:33] <polandeer> as if I pressed enter
[19:33] <burek> well, you are linking against incompatible libs
[19:33] <polandeer> Just compiled from git
[19:33] <burek> yes, but your external libs
[19:33] <polandeer> Like which?
[19:33] <burek> most probably libx264
[19:33] <burek> wasn't compiled correctly
[19:34] <polandeer> from git. Configured with: ./configure --enable-static
[19:34] <burek> well, you mixed static and shared
[19:34] <burek> and got appropriate error msg
[19:34] <polandeer> Should I rebuild without enable static?
[19:34] <polandeer> And just enable-shared?
[19:34] <burek> the best is to use both
[19:34] <burek> --enable-static --enable-shared
[19:34] <burek> or
[19:35] <JEEB> if you want static libx264, you can just enable -fPIC
[19:35] <burek> --enable-static=yes --enable-shared=yes
[19:35] <burek> just type ./configure --help
[19:35] <burek> and see what kind of option is supported
[19:35] <burek> (with or without "yes" part)
[19:35] <JEEB> polandeer, x264 has --enable-pic             build position-independent code
[19:35] <polandeer> So...
[19:36] <polandeer> ./configure --enable-shared --enable-static -fPIC
[19:36] <JEEB> nope
[19:36] <polandeer> ./configure --enable-shared --enable-static --enable-pic
[19:36] <JEEB> you can either go shared or you can go enable PIC with with static
[19:36] <JEEB> or you can do that, it'll just build both
[19:36] <polandeer> Okay. Thanks.
[19:36] <polandeer> Will try
[19:37] <JEEB> it's just usual that shared stuff is built with PIC by default
[19:37] <JEEB> IIRC
[19:37] <JEEB> while static stuff usually doesn't need it
[19:37] <JEEB> but then if you're linking static stuff to dynamic stuff you need PIC
[19:37] <JEEB> and you get exactly that error that you got
[19:37] <JEEB> "recompile with -fPIC"
[19:38] <JEEB> do you understand what you did and why you got the error you got now?
[19:38] <polandeer> Not really. What's the difference between static and shared?
[19:38] <polandeer> It seems that PHP does the same thing...
[19:40] <polandeer> JEEB: What's the difference between static and shared libs?
[19:40] <JEEB> polandeer, static library is static, it's made to be linked into something fully, while shared library when linked to is a separate file that is loaded
[19:40] <polandeer> Thanks
[19:41] <polandeer> So it has to do with how ld is used
[19:42] <JEEB> and with the fact that after you link something statically you don't need the separate library any more -- the whole code is now in that binary
[19:42] <JEEB> while with shared libraries you will have an external dependency
[19:43] <polandeer> Oh, so static means a bigger binary with less dependencies and shared means a smaller binary with more dependencies... right?
[19:43] <JEEB> yes
[19:43] <JEEB> also, you can switch around a shared library as long as the ABI is the same
[19:43] <polandeer> So, generally static is better.
[19:43] <JEEB> for your own builds, yes -- because you don't have to play with ldconfig and other stuff
[19:44] <JEEB> you just have to tell the configure where your include files and libraries are
[19:44] <polandeer> Just got same problem with libvpx :P
[19:44] <JEEB> yeah, you probably built that static as well :D
[19:45] <polandeer> So, there is no reason to build with both?
[19:45] <burek> if you just want to test ffmpeg, you can use already built static binary here: http://ffmpeg.gusari.org/static/
[19:45] <burek> if you want to compile, you need to read more about compiling
[19:45] <JEEB> polandeer, yeah
[19:45] <burek> to be able to build what you really want
[19:45] <polandeer> Actually, I'm trying to build a GUI application for ffmpeg
[19:45] <burek> without asking such questions as "what is the diff between static and shared"
[19:45] <JEEB> polandeer, although some people need both versions of a library
[19:46] <burek> which is really a beginner's question
[19:46] <JEEB> also I'm quite amused by the fact that this guy still ignores me
[19:47] <JEEB> I think I was once a jerk to him telling him to shut up on certain things because he was telling things wrong
[19:47] <burek> it makes sense to build both static and shared, because you might want to build some other project later, which you want it to be static, and it will require static dependencies
[19:47] <JEEB> (and he didn't take it nicely)
[19:47] <burek> or you might build some project as shared, which might need its dependencies as shared
[19:47] <burek> so x264 vpx etc.. it is usually a good idea to build as both
[19:47] <JEEB> polandeer, well depending on your needs you should either do static or shared
[19:47] <polandeer> Okay, thank you.
[19:48] <polandeer> I'll just use both.
[19:49] <JEEB> some applications have their compilation systems set in such a way that it's hard to compile the application statically -- which is the most often seen need for shared libraries when you're compiling for yourself
[19:50] <JEEB> (unless you really are just wishing to set your system up with shared libraries, it does after all let you update libraries as long as ABI isn't broken)
[19:50] <polandeer> It's just that usually when I compile for myself I'm doing it on something simpler than ubuntu which has special packages for each development library
[19:50] <polandeer> as in libpng-dev
[19:51] <JEEB> (for example, you could switch around your libx264 as long as the ABI hasn't changed [in x264's case, the ABI/API version hasn't risen])
[19:51] <polandeer> Okay, thanks :D
[19:52] <polandeer> ffmpeg: error while loading shared libraries: libx264.so.124: cannot open shared object file: No such file or directory
[19:52] <polandeer> I think I'll just use static then :/
[19:53] <polandeer> (prebuilt)
[19:54] <JEEB> polandeer, yeah -- that will come up if you don't A) have the library in the place system expects B) haven't run ldconfig
[19:54] <JEEB> which is why people who just build for themselves default to static
[19:54] <JEEB> because, as I said, you only need to show configure where your libraries and headers (includes) are
[19:55] <polandeer> Hm. It seems that http://ffmpeg.gusari.org/static/64bit/ does not have ffplay or ffprobe...
[19:55] <JEEB> then you might just compile them yourself I guess
[19:55] <JEEB> also what exact things do you need btw?
[19:56] <polandeer> Why can't compiling on Ubuntu just work like it did on Chakra: http://repo.stephenmac.com/ffmpeg-0.10-3-x86_64.pkg.tar.xz
[19:56] <burek> polandeer, you forgot ldconfig
[19:56] <burek> after making vpx / x264
[19:56] <polandeer> burek: Oh, I see
[19:56] <JEEB> polandeer, you probably just built static there I bet :)
[19:56] <polandeer> JEEB: libmp3lib, libvpx, libvorbis, libtheora, libspeex, etc.
[19:56] <JEEB> (or you had some automation do the ldconfig parts)
[19:57] <polandeer> Actually, I just used my distrobution's x264 and libvpx
[19:57] <JEEB> polandeer, and you really need those? Interesting :3
[19:57] <polandeer> *distribution
[19:58] <JEEB> anyways, I'm still struggling to see what exactly you were trying to do :D
[19:58] <polandeer> JEEB: I already said I'm trying to build a GUI application for ffmpeg
[19:58] <polandeer> (No presets, etc)
[19:59] <polandeer> http://chakra-linux.org/ccr/packages.php?ID=3659
[19:59] <JEEB> does that use command line ffmpeg or actually uses the libraries given out by ffmpeg?
[20:00] <polandeer> JEEB: Uses command-line ffmpeg
[20:00] <JEEB> well, yeah
[20:00] <JEEB> in that case either static or shared is fine as long as the app's in PATH
[20:00] <polandeer> Great.
[20:00] <polandeer> The only thing that would really mess the software up would be different exit codes
[20:01] <polandeer> Ah. I see the problem. My config line had: --enable-shared and --disable-static
[20:02] <polandeer> Which would be why all the dependencies were not only make dependencies
[20:09] <polandeer> JEEB: It seems that the distribution x264 did not use ldconfig but shared build still worked: http://gitorious.org/chakra-packages/platform/blobs/testing/x264/PKGBUILD
[20:09] <JEEB> well, distro stuff usually automates that
[20:09] <JEEB> or sets stuff up so that it's ready to be used
[20:09] <polandeer> Probably because it's a different, simpler disto.
[20:10] <polandeer> Things always seem to just build correctly no matter what on Chakra
[20:12] <polandeer> JEEB: Great: ffmpeg version git-2012-05-14-281bde2 Copyright (c) 2000-2012 the FFmpeg developers   built on May 14 2012 14:10:40 with gcc 4.6.3   configuration: --prefix=/usr --disable-debug --enable-version3 --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-gpl --enable-nonfree --disable-shared --enable-postproc --enable-swscale --enable-avfilter --enable-libvpx --enable-librtmp --enable-runtime-cpudetect --enable-pthr
[20:12] <JEEB> congrats
[20:13] <JEEB> I dunno if you could get around the ldconfig thing by installing into a certain location or whatever, I'm not good at shared libraries or how various distros might be trying to protect their users
[20:13] <JEEB> I think the last time I built something shared and didn't install it into the default lookup paths
[20:13] <polandeer> Nice :D
[20:14] <JEEB> I had to set some variable to point at the library folder
[20:14] <JEEB> and launch the app like that
[20:14] <polandeer> Symlink?
[20:14] <JEEB> no root
[20:14] <JEEB> university machines
[20:14] <JEEB> anyways, for such stuff f.ex. static linking is just easier
[20:14] <JEEB> you configure with some prefix
[20:14] <JEEB> (in your home)
[20:15] <JEEB> and install everything there, and maybe set --extra-cflags="-I/herp/derp/include" and --extra-ldlfags="-L/herp/derp/lib"
[20:15] <JEEB> when something needs a dependency
[20:16] <polandeer> Oh well. It works.
[20:16] <polandeer> One question: Could you give me advice on the ffmpeg gui
[20:17] <polandeer> Like: What I should add. I just don't want to turn it into arista or winff
[20:18] <polandeer> sudo apt-get install python3-tk && git clone git://github.com/stephenmac7/ffpy.git && cd ffpy && python3 ffpy.py
[20:18] <JEEB> I'd say you should bring out the -preset and -tune options (that are most useful with libx264 now)
[20:18] <JEEB> as well as default to crf rate control with libx264
[20:18] <JEEB> (because it is as good as 2pass bitrate, but people just don't use it)
[20:19] <JEEB> http://mewiki.project357.com/wiki/X264_Settings#preset <- a useful piece of text regarding libx264 presets (and tunes)
[20:19] <polandeer> Okay. Also, the presets work with libvpx too, right?
[20:20] <JEEB> for other codecs (and specific cases) there are the ffpreset files, yeah
[20:20] <polandeer> Yes, /usr/share/ffmpeg has : ffprobe.xsd                 libvpx-720p50_60.ffpreset libvpx-1080p50_60.ffpreset  libvpx-720p.ffpreset libvpx-1080p.ffpreset       libx264-ipod320.ffpreset libvpx-360p.ffpreset        libx264-ipod640.ffpreset
[20:20] <JEEB> yup
[20:20] <JEEB> you have some very specific presets there
[20:20] <JEEB> (which usually contain resizing and so forht, no idea how good the ipod ones are)
[20:21] <polandeer> They just appeared...
[20:21] <JEEB> yes, they come with ffmpeg
[20:21] <polandeer> I'll add a "Use Preset" checkbox in the first screen
[20:22] <DelphiWorld> hi ffmpegificators
[20:22] <JEEB> not sure... but I guess that works
[20:22] <DelphiWorld> any ffmpeg developer or user please can someone contribute to a nice project ?
[20:22] <JEEB> I would probably see which codec the user has selected
[20:22] <JEEB> or that you have let the user select
[20:23] <polandeer> Which codec or which container?
[20:23] <JEEB> codec
[20:23] <polandeer> Okay.
[20:23] <JEEB> presets are codec-specific
[20:23] <JEEB> and make a pulldown list of presets depending on the codec (by parsing the listing of presets)
[20:23] <polandeer> Right.
[20:24] <JEEB> and if it's libx264, you can just add the libx264's internal presets there
[20:24] <floater_f432c> how do i set the quality factor of the mkv?
[20:24] <JEEB> floater_f432c, matroska has no "quality" it's a container
[20:24] <floater_f432c> h264
[20:24] <JEEB> libx264's closest thing to "constant quality" is "constant rate factor" -- -crf
[20:25] <polandeer> JEEB: Can other codecs use crf?
[20:25] <floater_f432c> so if i set crf then i do not need to set a preset?
[20:25] <sacarasc> You do.
[20:25] <JEEB> floater_f432c, default preset is "medium"
[20:25] <JEEB> (at least with current ffmpeg versions)
[20:25] <JEEB> (or well, libx264 default in this case)
[20:26] <JEEB> polandeer, nah -- it's libx264- specific as far as I know
[20:26] <sacarasc> Higher preset will give better compression with the same crf, at least in theory.
[20:26] <JEEB> yes, but of course crf is specific to a given source and given settings
[20:26] <floater_f432c> so how does a lower crf higher quality preset video compare to a higher crf lower quality preset h264 video?
[20:26] <JEEB> it often happens that at the slowest presets the algorithms just "see more detail" and thus the file size gets a bit bigger.
[20:26] <JEEB> (but you can raise the crf a bit to counter that if you hate it, the change should be miniscule)
[20:27] <floater_f432c> yeah i have tested it, 1.6MB vs 2.6MB tried placebo and a faster quality setting
[20:27] <JEEB> floater_f432c, what at your previous line
[20:27] <JEEB> as in "What?" as in "Pardon me?"
[20:28] <JEEB> because that makes no sense
[20:28] <JEEB> first of all, crf goes "lower number = higher quality", and second of all CRF values can't be really compared between presets because the crf value depends on the settings (algorithms used in compression)
[20:28] <floater_f432c> okey then i mean reversed
[20:29] <JEEB> it still doesn't mean much
[20:29] <JEEB> because of the latter point
[20:29] <JEEB> anyways, herp derp -- if you keep the same crf in most cases you get better compression for very similar quality (not same because the crf depends on settings)
[20:29] <floater_f432c> so how does a higher crf - higher quality preset video compare to a lower crf - lower quality preset h264 video?
[20:30] <sacarasc> Lower CRF = higher quality.
[20:30] <JEEB> as I said, that question is invalid because of the two points I mentioned, in this case the latter
[20:30] <floater_f432c> eeactually i was thinking about increasing crf to reduce my webcam file size, because it has too much noise, and the noise gets compressed
[20:30] <JEEB> yes, you can do that
[20:30] <JEEB> if you don't need all of the details
[20:30] <JEEB> (and/or noise)
[20:31] <floater_f432c> or is there a specific noise filter for webcam?
[20:31] <JEEB> nothing specific to webcams, but there are denoise filters in ffmpeg, naturally
[20:31] <floater_f432c> thinking about the random noise spikes all around the image
[20:31] <JEEB> http://ffmpeg.org/ffmpeg.html#hqdn3d
[20:31] <JEEB> here's one of the denoisers in ffmpeg
[20:32] <floater_f432c> yeah
[20:33] <polandeer> So, like this? presetCodec, presetName = os.path.splitext(filename)[0].split('/')[-1].split('-')
[20:33] <floater_f432c> how to use it?
[20:34] <floater_f432c> can't find description on use
[20:34] <polandeer> Then make sure the user picks a codec that is one of the presertnames?
[20:34] <JEEB> -vf FILTER_NAME=SETTING1:SETTING2
[20:36] <polandeer> I thought it was -vcodec libx264 -vf 360p
[20:37] <floater_f432c> JEEB<< where can i find manpage on the filter?
[20:37] <floater_f432c> $ ffmpeg -filters hqdn3d |less
[20:37] <polandeer> JEEB: So a lower crf = a bigger file?
[20:37] <floater_f432c> this was the most logical i tried
[20:37] <polandeer> And slower encode time
[20:39] <polandeer> JEEB: What would be an idea crf to use?
[20:41] <JEEB> floater_f432c, that's pretty much the manpage there on ffmpeg.com
[20:42] <JEEB> -vf hqdn3d=SETTING1:SETTING2
[20:42] <JEEB> (and so on)
[20:42] <polandeer> -crf 15?
[20:42] <JEEB> "It accepts the following optional parameters: luma_spatial:chroma_spatial:luma_tmp:chroma_tmp"
[20:42] <JEEB> polandeer, way too low
[20:42] <JEEB> libx264 defaults to 23
[20:42] <polandeer> Would it be too slow?
[20:42] <floater_f432c> heh, normal preset quality with noise filter, 640x480 webcam, 1 minutes, 746690 May 14 20:33 test_hqdn3d.mkv
[20:42] <floater_f432c> the placebo with no noise filter 1749859 May 14 10:41 test_placebo.mkv
[20:43] <JEEB> polandeer, the speed difference most probably isn't _that_ big with various crf values
[20:43] <polandeer> File size/
[20:43] <floater_f432c> JEEB<< thanks i'll search for it then
[20:43] <JEEB> floater_f432c, ...
[20:43] <JEEB> it seems like you have missed completely some of the things I've said
[20:43] <JEEB> anyways, have fun
[20:43] <JEEB> polandeer, yes -- crf controls the rate factor which pretty much controls the output quality
[20:44] <polandeer> Okay.
[20:44] <floater_f432c> JEEB<< ah no i see you already told me
[20:44] <JEEB> polandeer, preset is what controls the speed and how good compression algorithms/features are being used
[20:44] <polandeer> So I'll just use -crf 23, yes?
[20:45] <floater_f432c> JEEB<< i just assumed google indexed the ffmpeg size and my search should have succeeded
[20:45] <JEEB> you can leave that as a default, yeah -- polandeer
[20:45] <JEEB> although people might want to take that somewhat down on f.ex. SD content
[20:45] <JEEB> but it all depends on A) content B) people's eyes
[20:45] <polandeer> :D
[20:46] <polandeer> I'll just leave it where you have to add a different crf in Extra options for it to change: if "-crf " not in self.eopt.get() and self.audioc.get() == "libx264":
[20:46] <polandeer> command += " -crf 23"
[20:46] <JEEB> nah, it should be as easy to change as bitrate
[20:46] <polandeer> Hm.
[20:46] <JEEB> because it's pretty much "quality"
[20:47] <polandeer> Can you set crf and bitrate?
[20:47] <JEEB> nope
[20:47] <polandeer> Okay.
[20:48] <JEEB> btw, pyside works now with Python 3.x if you didn't know
[20:48] <polandeer> Really?
[20:48] <JEEB> yeah
[20:48] <polandeer> I'm using tk :P
[20:48] <JEEB> yeah
[20:48] <JEEB> which is why I commented :D
[20:48] <JEEB> because tk is tk
[20:48] <polandeer> :D
[20:49] <polandeer> I was thinking about learning a new toolkit yesterday
[20:49] <JEEB> I was surprised myself, but yeah -- they have official binaries for python 3.2 already, which would mean that it supports py3
[20:49] <JEEB> also you'll be able to use the Qt Designer to design the interface
[20:49] <floater_f432c> ffmpeg -f mjpeg -i test.mjpeg -vcodec libx264 -preset medium -r 30 -vf hqdn3d test_hqdn3d.mkv
[20:49] <floater_f432c> will this set the output video's framerate?
[20:50] <polandeer> floater_f432c: Yes, to 30
[20:50] <JEEB> it will A) set a frame rate for output, and B) it will edit the input to match that frame rate
[20:50] <JEEB> I have no idea what it will get out of your dot-mjpeg file :D
[20:50] <JEEB> so you might get duplicates and other fun
[20:50] <floater_f432c> hehe
[20:51] <polandeer> Never even heard about mjpeg
[20:51] <JEEB> it's just raw motion jpeg
[20:51] <JEEB> dunno why he chose to dump it without a container
[20:51] <polandeer>  DEV D  mjpeg           MJPEG (Motion JPEG)
[20:51] <floater_f432c> wondering how does ffmpeg set my framerate, copy every frame, and override framerate, or resample video, duplicate/drop iamges
[20:51] <polandeer> floater_f432c: Let's leave it at: It just does.
[20:52] <JEEB> if you just want to tell ffmpeg that "this is of frame rate X" you should try setting -r before -i, but this doesn't work with formats where there are timestamps and you will have to use the setpts filter then
[20:52] <polandeer> :P
[20:52] <JEEB> -r before -i = "this is of frame rate X, believe me"
[20:52] <JEEB> -r after -i = "convert this to frame rate X"
[20:52] <floater_f432c> JEEB<< tried to use copy filter for webcam, then convert to mkv h264 for testing
[20:52] <polandeer> JEEB: Doesn't ffprobe give the frame rate?
[20:53] <JEEB> polandeer, it gives you a some kind of value depending on the source, but depending on this value is extremely dangerous
[20:53] <polandeer> Oh.
[20:53] <JEEB> floater_f432c, vcodec copy into avi or something
[20:53] <floater_f432c> JEEB<< so it does matter where -r is placed?
[20:53] <JEEB> floater_f432c, YES
[20:53] <JEEB> <JEEB> -r before -i = "this is of frame rate X, believe me"
[20:53] <floater_f432c> interesting ;>
[20:53] <JEEB> <JEEB> -r after -i = "convert this to frame rate X"
[20:54] <JEEB> it's the same as with setting vcodec or acodec before and after -i
[20:54] <JEEB> before sets the decoder, after sets the encoder
[20:54] <polandeer> JEEB: Have a good tutorial on pyside... also what's the difference between pyside and pyqt?
[20:54] <JEEB> polandeer, they should mostly be API-compatible
[20:54] <floater_f432c> JEEB<< nice, thanks, i think i get it
[20:54] <JEEB> and the difference is that pyside is official, while pyqt is third-party
[20:54] <polandeer> Oh.
[20:54] <polandeer> So, generally pyside is better?
[20:55] <JEEB> at this point I'd say that pyside is what you'll want to use
[20:55] <JEEB> it is official and all that shizzle
[20:55] <JEEB> so it won't die off as easily
[20:55] <JEEB> and has most probably more people behind it
[20:55] <polandeer> Do you have a good tutorial on it?
[20:55] <floater_f432c> my mjpeg does have some framerate added VIDEO:  [MJPG]  640x480  0bpp  25.000 fps    0.0 kbps ( 0.0 kbyte/s)
[20:56] <floater_f432c> it was recorded at 25.00 fps
[20:56] <JEEB> floater_f432c, that 25fps could as well be just a default value :)
[20:56] <JEEB> but I don't know
[20:56] <floater_f432c> it was mplayer's output to terminal ;/
[20:56] <JEEB> from the camera or from your raw dump?
[20:56] <floater_f432c> ok i try setting it at record
[20:57] <JEEB> polandeer, http://qt-project.org/wiki/PySideDocumentation/
[20:57] <floater_f432c> my cheapo camera does not have rawm
[20:57] <JEEB> floater_f432c, what?
[20:57] <polandeer> JEEB: Thanks
[20:57] <JEEB> you should be getting exactly the frame rate the camera is giving to you
[20:59] <polandeer> JEEB: So, here's my TODO: https://github.com/stephenmac7/ffpy/blob/762c918e1a3df1e45049095a4c59b23330bde247/README.md
[21:00] <JEEB> if I were to make a GUI, I would probably first concentrate on one codec, then possibly add it presets, then add other codecs
[21:00] <polandeer> Good?
[21:00] <floater_f432c> hmm, -r 15 does not work after "-i /dev/video0 -vcodec copy" because it does not touch the stream right?
[21:01] <floater_f432c> JEEB<< yeah it's always 25fps if i use copy filter
[21:01] <polandeer> Ah! qt designer scares me :P
[21:02] <JEEB> :D
[21:02] <JEEB> I actually liked the way you could do some things in it
[21:04] <polandeer> JEEB: Especially that sidebar: http://i.imgur.com/Zr6v2.png
[21:04] <polandeer> Where it says nonmodal
[21:05] <JEEB> :D
[21:05] <JEEB> I think there are tutorials into Qt Designer
[21:05] <JEEB> and how to use it effectively
[21:05] <JEEB> for great justice
[21:07] <polandeer> Okay. Well, I may be back :P
[21:07] <polandeer> Time to read up on pyside
[21:07] <JEEB> :)
[21:08] <floater_f432c> ffmpeg -f v4l2 -s 640x480 -i /dev/video0 -vcodec mpeg4 -r 15  test_15.avi
[21:08] <floater_f432c> why does this hang?
[21:08] <floater_f432c> shouldn't this convert my 25fps source to 15fps ?
[21:08] <JEEB> yes, but lol at -vcodec mpeg4
[21:09] <floater_f432c> why doesn't this work?
[21:09] <JEEB> no idea
[21:10] <floater_f432c> Output file is empty, nothing was encoded (check -ss / -t / -frames parameters if used
[21:10] <floater_f432c> [buffersink @ 0x18bc840] No opaque field provided
[21:12] <doorp> Segmented encodes with 2pass mode, are considered to produce degraded results?
[21:14] <floater_f432c> JEEB<< why lol @ mpeg4? its fast ^^
[21:16] <polandeer> floater_f432c: Try libx264
[21:17] <floater_f432c> polandeer<< yeah i see it's better in quality, i just installed libx264 yesterday
[21:17] <polandeer> Generally, I like libvpx best
[21:17] <floater_f432c> why?
[21:18] <polandeer> It's free, I can usually get better quality video at better sizes, and it's on every ffmpeg build
[21:18] <polandeer> *almost every
[21:19] <floater_f432c> latest svn does not have it
[21:19] <floater_f432c> ;/
[21:19] <floater_f432c> is it gpl too?
[21:19] <polandeer> floater_f432c: It's BSD
[21:19] <polandeer> Which is close enough
[21:20] <floater_f432c> then probably that is reason why its not included
[21:21] <floater_f432c> btw google cannot locate libvpx source
[21:22] <polandeer> floater_f432c: arch uses it: https://projects.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=packages/ffmpeg
[21:22] <polandeer> So does chakra
[21:23] <polandeer> floater_f432c: http://webm.googlecode.com/files/libvpx-vVERSION.tar.bz2
[21:23] <polandeer> git: http://git.chromium.org/webm/libvpx.git
[21:24] <floater_f432c> ty
[21:24] <floater_f432c> wow whole lot of compiler options
[21:25] <polandeer> floater_f432c: Today I used more: http://repo.stephenmac.com/sourcepkgs/ffmpeg/PKGBUILD
[21:29] <floater_f432c> polandeer<< what is this thing? https://projects.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=packages%2Fffmpeg
[21:29] <floater_f432c> how to gir the lib ?
[21:29] <floater_f432c> *git
[21:34] <polandeer> floater_f432c: It's called a PKGBUILD
[21:34] <polandeer> For Arch Linux and Chakra it gives instructions to the computer on making a package
[21:34] <polandeer> To get libvpx: git clone http://git.chromium.org/webm/libvpx.git
[21:34] <polandeer> Is that what you wanted?
[21:35] <polandeer> JEEB: I love pyside! :D
[21:35] <floater_f432c> maybe thanks
[21:35] <floater_f432c> so libvpx is part of chrome
[21:35] <polandeer> Yes
[21:35] <JEEB> polandeer, yes, Qt is awesome and pyqt/pyside have nice mappings to it <3
[21:35] <polandeer> But you don't been chrome to use it
[21:35] <polandeer> JEEB: All the code is all prettyish!
[21:36] <JEEB> also with the fact that it got python3 support I can finally stop herping a derp about the fact that every single one of my strings had to be prefixed with a 'u'
[21:36] <polandeer> floater_f432c: It's just run by Google who happens to run Chrom{e}{ium}
[21:36] <polandeer> :)
[21:36] <polandeer> I never learned python 2
[21:36] <polandeer> Just python 3 so I have no modules I miss :P
[21:36] <floater_f432c> sure and its good for them to add their own stuff into their code
[21:37] <JEEB> polandeer, in python you had to prefix strings that were unicode with u
[21:37] <polandeer> Ew.
[21:37] <JEEB> exactly
[21:38] <DelphiWorld> guys any answer? :P
[21:38] <DelphiWorld> we need someone to maintin http://mumudvb.braice.net transcoding support
[21:38] <DelphiWorld> with ffmpeg
[21:44] <floater_f432c> polandeer<< what is your opinion about libxvid?
[21:47] <JEEB> floater_f432c, if you want to use something lossy just use libx264
[21:47] <JEEB> I see zero reason to use something else, not to mention that other stuff is actually HARDER TO USE
[21:47] <MetaM0rf> Hi all, is there major difference between ffmpeg in windows and linux?
[21:49] <zap0> MetaM0rf, it can be compiled a bazillion ways.  with/without features.
[21:49] <MetaM0rf> Okay, but essentially they are the same
[21:54] <floater_f432c> JEEB<< so mostly everybody uses only libx264 nowadays?
[21:57] <JEEB> unless they are encoding for plastic toys or pentium IIs or something
[21:58] <floater_f432c> /usr/bin/ld: libavutil/intfloat_readwrite.o: relocation R_X86_64_PC32 against undefined symbol `frexp@@GLIBC_2.2.5' can not be used when making a shared object; recompile with -fPIC
[21:58] <floater_f432c> what does this mean?
[21:59] <floater_f432c> i take out the --enable-shared configure option ?
[22:00] <JEEB> it means that you're trying to link something static without PIC into a shared library
[22:00] <floater_f432c> i am not, i did make in ffmpeg
[22:01] <JEEB> it's exactly what it says on the tin
[22:01] <floater_f432c> $ ./configure --prefix=/usr --enable-libxvid --enable-libx264 --enable-libvpx --enable-postproc --enable-shared --enable-x11grab --enable-gpl --enable-version3 --disable-debug
[22:01] <floater_f432c> is this line in error?
[22:01] <JEEB> also have you make clean'd before re-compiling
[22:02] <floater_f432c> oh forgot thanks
[22:02] <floater_f432c> runtime cpu detection feature is good to have?
[22:03] <floater_f432c> if i have one computer i guess its useless
[22:13] <floater_f432c> what sound codec is best for h264 video?
[22:20] <floater_f432c> ac3 ?
[22:22] <floater_f432c> aac ?
[22:25] <relaxed> floater_f432c: depends on the playback device.
[22:25] <floater_f432c> PC
[22:25] <relaxed> then either copy it or use flac.
[22:35] <diegoviola> hi
[22:36] <diegoviola> if i'm doign 2-pass encoding and i want to resize the video, should i specify the resize options in the first pass as well?
[22:36] <diegoviola> or just in the second pass?
[22:36] <microchip_> both passes
[22:36] <diegoviola> ok
[22:37] <diegoviola> what was the option to resize the width/height of the video again please?
[22:37] <microchip_> -s
[22:37] <diegoviola> ty
[22:38] <diegoviola> should i specify video bitrate also in both passes?
[22:38] <diegoviola> or just second pass?
[22:38] <microchip_> both
[22:38] <diegoviola> ty
[22:38] <aphid> what's teh difference between using -s and -vf scale?
[22:40] <diegoviola> microchip_: i need to encode audio as well, but that's not necessary in the first pass right?
[22:40] <diegoviola> i mean, will audio be added to the log from the first-pass as well?
[22:41] <diegoviola> or just video...
[22:41] <microchip_> no
[22:41] <JEEBsv> you don't have to encode the video in the first pass, and you can output the output of the first pass to /dev/null
[22:41] <JEEBsv> argh
[22:41] <JEEBsv> s/video/audio/
[22:42] <diegoviola> i see, thanks guys
[22:42] <diegoviola> makes sense
[22:42] <JEEBsv> any reason to switch from crf to 2pass bitrate?
[22:42] <JEEBsv> trying to keep similar file sizes?
[22:43] <diegoviola> i'm trying to shrink a 8GB MKV to less the file size
[22:43] <JEEBsv> ok... which means that you can just make the crf number higher
[22:44] <JEEBsv> bit rate based encoding only makes sense when you really are trying to hit a certain size
[22:44] <JEEBsv> (or well, bit rate, but bit rate * length is a certain file size)
[22:44] <diegoviola> right, ty
[22:45] <JEEBsv> just encode parts of your source... -ss and -t, was it? and find the highest crf value that still looks good for you
[22:46] <diegoviola> ok
[22:46] <diegoviola> thanks
[22:46] <JEEBsv> also, crf only needs one pass
[22:46] <JEEBsv> while 2pass abr needs... what it says on the tin
[23:09] <diegoviola> on 2-pass encoding, do you have to tell ffmpeg where the log for the first pass is, or it will handle that automatically?
[23:10] <JEEBsv> I don't remember :/ x264 indeed has an automated file name in the current working directory for it
[23:10] <JEEBsv> about ffmpeg...
[23:10] <JEEBsv> \don't remember/
[23:10] <Mavrik> diegoviola, if you didn't explicitly change the pass file locations, then no
[23:11] <diegoviola> Mavrik: everything is in the current dir, logs and video files, etc
[23:19] <floater_f432c> is there a working mp3v2 tag removal tool for linux?M
[23:20] <this_> is there a cap of 60 fps for making a movie out of images?
[23:20] <floater_f432c> cap?
[23:21] <this_> cutoff- can't go past it?
[23:21] <floater_f432c> ffmpeg can do it btw
[23:21] <this_> i'm trying to link 187 images at 150 fps, but i get a resulting movie that's 75 frames
[23:21] <floater_f432c> after -i, "-r 60" to set 60fps
[23:21] <this_> i have been doing -r before
[23:23] <this_> i will try -i then -r.
[23:23] <diegoviola> weird, -s is giving me this error: "Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height" -- I have a movie that is about 1920x818 and i want to shrink that down to 50%, so i choose something like 960x409 px
[23:23] <diegoviola> what did i do wrong?
[23:34] <this_> floater_f432c: strange, if i reverse the -i and the -r order, i get a video at the default frame rate
[23:35] <JEEBsv> before -i - -r sets the frame rate for input
[23:35] <JEEBsv> after -i - "Convert output to this frame rate"
[23:36] <this_> oh. oops.  the input is a string of images, so i guess i was right the first time.
[23:36] <JEEBsv> diegoviola: you want to use a 4:2:0 kind ofYCbCr (also colloquially called 'YUV'), which means that you will need to obey to the limitation of "must be at least divisible by two"
[23:37] <JEEBsv> 409 is not divisible by two, now is it
[23:37] <JEEBsv> this_: for a string of images I would guess you need to set an input frame rate, so before -i would be correct
[23:38] <JEEBsv> if it doesn't work you'll have to use the setpts video filter
[23:38] <JEEBsv> ffmpeg.org -> documentation -> ffmpeg command line tool
[23:38] <diegoviola> JEEBsv: thanks
[23:38] <this_> JEEBsv: i am able to change the frame rate doing -i -r, (the length of the movie is consistent with the frame rate) but i am getting dropped frames
[23:39] <JEEBsv> yes, because you're setting -r after -i
[23:39] <JEEBsv> Which, as I said, is "convert frame rate to X"
[23:39] <JEEBsv> (from whatever ffmpeg might come up with)
[23:39] <JEEBsv> I kind of feel that you'll have to use the setpts filter :P
[23:40] <JEEBsv> unless -r works before -i
[23:40] <this_> JEEBsv: ah, ok.  yeah, the other order doesn't seem to work
[23:40] <JEEBsv> ok, so they're trying to kill off the "-r before -i" thing
[23:41] <JEEBsv> thus, you'll need to use the setpts video filter
[23:41] <JEEBsv> it has an example of setting a frame rate with it, so you should be fine
[23:41] <this_> ok.  thanks
[23:41] <JEEBsv> pts = presentation time stamp
[23:43] <beastd> diegoviola: does it work without resize?
[23:43] <this_> JEEBsv: oh, but one thing is that i can't drop frames
[23:43] <JEEBsv> beastd: I already answered and it is pretty damn obvious
[23:44] <JEEBsv> this_: uhh, unlike -r this won't touch the amount of frames :P
[23:44] <JEEBsv> it just sets timestamps for frames accordingly
[23:44] <diegoviola> beastd: yes
[23:46] <beastd> JEEBsv: I see. But please reconsider.
[23:46] <JEEBsv> what
[23:46] <JEEBsv> seriously, did you not see that 409
[23:47] <beastd> Well, I did not yet look so closely at the size. But well. If you do not let me speak I will just shut up.
[23:47] <JEEBsv> I told already the person that the colorspace he/she is working in and most probably that he/she wants to use has a limitation of at least divisible by two height/width
[23:47] <JEEBsv> I let you speak, but what else could you have said other than re-saying what I had said
[23:47] <beastd> JEEBsv: It is all right. You gave perfect advice.
[23:47] <this_> JEEBsv: hmm, when i convent from 60 to 150 fps, i go from 187 frames to 75.  also, from http://ffmpeg.org/trac/ffmpeg/wiki/FilteringGuide, i see "Note that this method will drop frames to achieve your desired speed."
[23:47] <beastd> diegoviola: Please do not listen to me.
[23:48] <JEEBsv> this_: what
[23:48] <diegoviola> JEEBsv: so what kind of resolution do you think i should pick for this? please give me an example, i'm not familiar with YUV
[23:48] <JEEBsv> 409 is not divisible by two
[23:49] <JEEBsv> so you either go 408 or 410
[23:49] <beastd> JEEBsv: I just didn't see your answer because the conversation arrived just a few bunch of seconds ago because of some network lag or other problem.
[23:49] <diegoviola> i don't want to shrink down and make the heads of the actors look wide
[23:49] <diegoviola> ok ty
[23:49] <JEEBsv> it's a single sample difference o_O
[23:50] <diegoviola> right, thanks
[23:50] <diegoviola> that works
[23:50] <diegoviola> ty
[23:50] <JEEBsv> beastd: it's alright, it's just that sometimes people who have no idea try to jump into discussion and it kind of throws newbies off as well. Sorry for commenting like I did
[23:51] <JEEBsv> beastd: ...man, they really made setpts add or remove frames
[23:51] <JEEBsv> wtf...
[23:52] <JEEBsv> how on earth are you then supposed to do the equivalent of assumefps() in ffmpeg
[23:53] <JEEBsv> it used to be "-r before -i"
[23:53] <JEEBsv> then I saw a mailing list entry from a year ago that wrote about using setpts
[23:53] <beastd> JEEBsv: makes sense to me. you know since when this was changed?
[23:54] <JEEBsv> no idea
[23:55] <JEEBsv> and the "make -r do one thing" thing by itself is OK
[23:55] <JEEBsv> because in the end it simplifies the command
[23:55] <JEEBsv> but...
[23:55] <JEEBsv> what...
[23:55] <JEEBsv> @ setpts doing the same as -r
[23:56] <JEEBsv> it's supposed to set a pts, not convert fps
[23:56] <diegoviola> JEEBsv: with 960x410 i get "Invalid pixel aspect ratio 410/409"
[23:56] <diegoviola> sorry i'm a n00b
[23:56] <JEEBsv> dionoea: you have a problem somewhere else
[23:56] <JEEBsv> pastebin your command line and terminal output
[23:56] <JEEBsv> pastebin.com or a pastebin of your choice
[23:57] <JEEBsv> beastd: let me just check this but you're on current'ish git master ffmpeg, right+
[23:57] <JEEBsv> ?
[23:58] <beastd> JEEBsv: I am not sure what exactly you want from me now.
[23:58] <JEEBsv> you are on a relatively current git checkout of ffmpeg, right?
[23:59] <beastd> Of course I am but you were helping this_ and diegoviola simultanously while I wanted to see what the problem was you already solved while I had an IRC lag
[00:00] --- Tue May 15 2012


More information about the Ffmpeg-devel-irc mailing list