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

burek burek021 at gmail.com
Fri Jul 12 02:06:42 CEST 2013


[00:07] <sybariten> oh hai
[00:08] <sybariten> i'm on ubuntu and installed this package: chromium-codecs-ffmpeg-extra , because my chromium wouldnt play Soundcloud music. Now it plays, but its super high pitched.... any ideas?
[00:20] <sybariten> that is a slightly more flattering nick, where i come from
[02:46] <acovrig> When I use -filter:v 'setpts=0.5*PTS' I loose video, the stream doesn't end up in the output, why?
[03:24] <LordThumper> Hi, can encoding problems (graphical artifacts) be fixed using ffmpeg?
[03:42] <LordThumper> Re-encoding did not fix the issue, i think I need another source
[03:49] <Kuukunen-> LordThumper: if the artifacts are present in the source, very likely you can't fix them with anything
[03:50] <klaxa> edit the frames by hand, lol
[03:54] <LordThumper> The artifact is the object that moved between one frame and another
[03:54] <LordThumper> I have no idea how h264 is encoded
[03:54] <Kuukunen-> wuh? :P
[03:55] <klaxa> i meant extract the frame, edit with an image editor, glue it all back together
[03:55] <LordThumper> can that be done?
[03:55] <LordThumper> What software should I use?
[03:55] <Kuukunen-> sure
[03:55] <Kuukunen-> photoshop? :P
[03:56] <klaxa> it's more of a troll suggestion, but it is not impossible
[03:56] <LordThumper> The problem is not the image itself
[03:56] <klaxa> it depends on how well you can reconstruct the image
[03:56] <LordThumper> It's like the transition between one frame and another
[03:56] <Kuukunen-> LordThumper: take a picture, stick it on imgur or something :P
[03:56] <LordThumper> Ok sure
[03:56] <Kuukunen-> but is it present on the source?
[03:57] <klaxa> his source is b0rked already
[04:02] <LordThumper> http://i.imgur.com/V23dD2T.jpg
[04:02] <Kuukunen-> right, looks like there's some corruption on the bit level or something
[04:02] <LordThumper> The objects that moved between one frame and another appear glitched
[04:03] <LordThumper> I tried reencoding, but the glitches remained
[04:03] <klaxa> LordThumper: check your torrent-file
[04:03] <Kuukunen-> LordThumper: well, if they're in the source, then reencoding will do nothing
[04:03] <klaxa> let your torrent software verify the local data, it should then re-download broken chunks
[04:03] <LordThumper> Yes it is valid
[04:03] <klaxa> torrent link?
[04:03] <LordThumper> I will try to get it from another source
[04:03] <Kuukunen-> then it's messed up when it was made
[04:03] <klaxa> and timestamp of that scene
[04:04] <klaxa> (not watching attack on titan i guess i'm prepared to be spoilered :P)
[04:04] <LordThumper> You recognized it from the image? :)
[04:04] <klaxa> well still want torrent + timestamp
[04:05] <klaxa> it also has distinctive character design
[04:05] <Kuukunen-> klaxa: yea, the faces are all blocky and stuff
[04:05] <klaxa> ;)
[04:06] <LordThumper> hehe indeed
[04:06] <LordThumper> one sec
[04:06] <LordThumper> http://thepiratebay.sx/torrent/8575596/Attack_on_Titan_S01E02_That_Day_(1920x1080)__Phr0stY]_.mkv
[04:06] <LordThumper> 7m00sec
[04:06] <klaxa> wtf you're downloading anime from the pirate bay?
[04:07] <LordThumper> Ye :-/ Friend dloaded them
[04:07] <LordThumper> Just finished downloading Horriblesubs sub and it's perfect
[04:07] <klaxa> given size, resolution, encoding and matroska streams that's the horriblesubs 1080p release
[04:07] <LordThumper> mmm
[04:07] <klaxa> nobody else releases TV anime in 1080p with high profile
[04:07] <LordThumper> That's strange
[04:07] <LordThumper> Maybe its a reencoding?
[04:08] <LordThumper> Or corrupt download?
[04:08] <klaxa> oh re-encoding might be
[04:08] <LordThumper> [HorribleSubs] Shingeki no Kyojin - 02 [1080p]
[04:09] <klaxa> hmm audio isn't 128 kbps AAC so it is NOT horriblesubs
[04:09] <LordThumper> Is perfect at 7m00 sec
[04:09] <klaxa> but seriously, don't download anime from thepiratebay :X
[04:09] <klaxa> unless it's an older series you can't find elsewhere
[04:09] <LordThumper> Indeed
[04:09] <LordThumper> Well thanks alot for the help, and I suggest watching the anime, it's very good so far
[04:10] <LordThumper> I think it competes with some of the top anime
[04:10] <LordThumper> And it's a nice change from mechs (Code Geass, Evangelion etc etc etc)
[04:11] <klaxa> i've heard a lot and see a lot of people that hate it
[04:11] <klaxa> haven't seen either of those :P
[04:11] <klaxa> haven't watched most of the "you have to have seen this show"-shows
[04:11] <LordThumper> Oh, what is your favourite?
[04:11] <klaxa> tough question, probably ika musume
[04:12] <klaxa> the world god only knows, bakemonogatari and C are close behind
[04:12] <tm512> have you watched Now and Then, Here and There?
[04:12] <klaxa> i've heard of it somewhere, can't remember where, but i haven't seen it
[04:12] <LordThumper> Ah you're definately not a mainstream guy then
[04:13] <klaxa> yeah, no mainstream here :P
[04:13] <LordThumper> anyways, going to watch the rest, thanks again
[04:13] <klaxa> np :)
[04:16] <klaxa> haha lol LordThumper: that file is broken
[04:18] <klaxa> even the subtitle file seems to be incorrect
[04:18] <klaxa> or rather not perfectly compliant with aegisub
[05:17] <t4nk201> hi, does anyone know the purpose about "presets" file in the folder /ffmpeg/presets?
[05:17] <t4nk201> how to use the presets files?
[05:17] <t4nk201> if the video codec is libx264, how to use "presets" file for reduce latency?
[05:18] <LordThumper> klaxa: Yeah, Subtitle Workshop opens the subtitle but it does not support subtitle position, had to use Subtitle Edit
[05:18] <LordThumper> SubtitleEdit even
[05:18] <LordThumper> Was trying to repair some c
[05:18] <LordThumper> some broken characters
[05:18] <LordThumper> Horriblesubs release is fine though
[06:03] <praveenmarkandu> Hi. When I try to transcode a Apple ProRes file to H.264, it tells me vprofile main is not available
[06:03] <praveenmarkandu> it only accepts high422 and high444?
[06:03] <praveenmarkandu> is that expected behaviour?
[06:30] <mark4o> praveenmarkandu: use -pix_fmt yuv420p
[06:31] <mark4o> main profile does not support yuv422p or yuv444p
[06:44] <tm512> I've been trying to figure this out for some time with no luck, does anyone have a way to stream with ffmpeg that doesn't have the audio out of sync with the video? I'd really appreciate that
[07:16] <praveenmarkandu> mark4o, thanks!
[09:50] <praveenmarkandu> someone answered my question on #ffmpeg, today was a good day
[09:57] <Mavrik> :))
[09:57] <Mavrik> well, it IS early morning ;)
[10:22] <MrE> Can ffmpeg overlay text based dvb subtitles ?
[10:41] <killown> how about this security issue https://secunia.com/blog/372/ has it been fixed?
[10:52] <killown> dis-consider my question, I know now these secunia guys are a liars
[13:01] <xyz_> what's the reason for licensing the library under the restrictive LGPL?
[13:02] <JEEB> because that's what people chose to be the closest thing for their goal at various points of time, I would guess?
[13:03] <JEEB> and as such, LGPL really isn't *that* restrictive
[13:03] <JEEB> FSF actively wants people to use GPL for libraries as well :D
[13:04] <JEEB> I mean, am I the only one who thinks that presenting the source code of the library you used if you used shared linking, and source code of the library + object files for the rest of it if you used static linking not too bad a limitation of you wanted to use it in a closed source application?
[13:05] <xyz_> well, i don't know
[13:05] <xyz_> but i prefer non-copyleft permissive licenses
[13:06] <xyz_> does there exist any permissive alternative for ffmpeg/libav?
[13:06] <JEEB> I prefer that for most of the random stuff I do, but personally I really don't see the problem with libav* being LGPL
[13:06] <JEEB> and no
[13:07] <JEEB> no such a wide and feature-filled library exists
[13:08] <JEEB> the biggest problem for corps regarding libav* generally tend to be the encoders that are GPL anyways (third-party libs used via libavcodec)
[13:09] <xyz_> well, i've tried to start such a project on sourceforge... but i could myself write propably just some wrappers for permissive libraries like Ogg, which is BSD
[13:09] <xyz_> or was it MIT? i don't remember
[13:11] <JEEB> for whatever reason I really feel like such a project wouldn't get much wind under itself :/ Because ffmpeg/libav by themselves are not GPL, just LGPL. And that already makes them usable in closed-source applications
[13:11] <JEEB> you just have to give the user the chance to swap the libraries should they really, really want to do it
[13:12] <JEEB> basically there's just so much stuff done already in libav* that I'd be surprised if someone tried to rewrite it all
[13:12] <JEEB> or even most used features of it
[13:14] <xyz_> well... the gpl and lgpl require 'derivative works' to be under the same license. that sucks :( Because an (L)GPL project can itself be a derivative work of some more permissively licensed software, but not the other way around.
[13:14] <xyz_> but if I decide to distribute my object code, could I just pack all of the .o files into a single .a archive?
[13:15] <JEEB> whatever way lets people link it all together
[13:16] <JEEB> that's in the case of static linking anyways, shared linking lets you have much more leeway
[13:16] <xyz_> well... maybe I shouldn't argue about this license thing any more.
[13:17] <JEEB> well, it's good to bring things up, but LGPL just isn't that restrictive in the end
[13:17] <JEEB> the only semi-good argument I've heard is from Japanese developers, since in Japan you can tell people not to RE your stuff
[13:17] <JEEB> and LGPL lets people RE your stuff
[13:17] <xyz_> what is RE?
[13:18] <JEEB> "Our bosses put that clause in our EULA so we can't really use LGPL stuff"
[13:18] <xyz_> reverse engineer?
[13:18] <JEEB> reverse engineering
[13:18] <JEEB> yes
[13:18] <JEEB> in most countries you can't even limit it
[13:18] <xyz_> but actually, I now have a problem compiling libav for my Nokia N9 cell phone.
[13:18] <JEEB> libav or the libav* libraries from ffmpeg?
[13:18] <JEEB> two separate projects, after all :)
[13:18] <xyz_> it's not actually ffmpeg, but well...
[13:19] <JEEB> just noting that it's better to ask the related party :)
[13:19] <xyz_> there's a less populated libav channel
[13:19] <JEEB> elenril and spaam have already been active there today
[13:19] <JEEB> and I am there, too
[13:19] <JEEB> so it's just a better idea to push your questions to the related party :)
[13:22] <kamalbanga> when compiling a basic code that includes libavformat.h, i get the error: fatal error: libavcodec/avcodec.h: No such file or directory compilation terminated
[13:22] <JEEB> you used something that also needed libavcodec around?
[13:22] <JEEB> wait... isn't the header supposed to be avformat.h or so?
[13:22] <kamalbanga> no i just did av_register_all()
[13:23] <kamalbanga> the header i put is: #include <libavformat/avformat.h>
[13:23] <JEEB> and yeah, that's it
[13:23] <JEEB> also I wouldn't be surprised if that one actually needed libavcodec as well
[13:23] <JEEB> if nothing else, the header
[13:24] <kamalbanga> i hav actually put all the three headers
[13:24] <kamalbanga> avcodec, avformat and avswscale
[13:24] <JEEB> also f.ex. the raw AVC parser as far as I can tell uses some libavcodec utilities
[13:24] <JEEB> well then they are not in your search path
[13:24] <kamalbanga> exactly i found this stacoverflow: http://stackoverflow.com/questions/12127397/fatal-error-libavcodec-avcodec-h-no-such-file-or-directory-compilation-terminat
[13:25] <kamalbanga> as it says i should give search path
[13:25] <JEEB> have you in any way or form actually installed libav* ?
[13:25] <JEEB> or are you just trying to copy the random headers off to somewhere and trying to use it like that?
[13:25] <kamalbanga> but my problem is this : when i do "find . -name avformat.h", i get this path:..ffmpeg_sources/ffmpeg/libavformat/avformat.h
[13:26] Action: JEEB takes a deep breath
[13:26] <kamalbanga> avformat.h and avcodec.h are there but not in any folder called "include"
[13:26] <JEEB> of course
[13:26] <JEEB> you are supposed to install the headers and libraries you have built
[13:27] <JEEB> that process puts stuff into the generally used paths along a prefix you have set (or, by, default /usr/local )
[13:27] <kamalbanga> i followed the complete instructions given here: http://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuide
[13:28] <JEEB> yes, this uses a prefix within your home directory
[13:28] <JEEB> so that it works on machines where you don't have root rights
[13:28] <JEEB> ls ${HOME}/ffmpeg_build/include/libavformat/avformat.h should show you something :P
[13:28] <kamalbanga> thanks for your response <JEEB>, i wish you help me, this problem is frustrating me since days...
[13:29] <JEEB> you seem to have been executing things blindly and have no idea about things work, I'm not surprised at all :P
[13:30] <kamalbanga> $HOME/ffmpeg_build/include has only these things: fdk-aac  libyasm  libyasm.h  libyasm-stdint.h  opus  vpx  x264_config.h  x264.h
[13:31] <JEEB> then you have not installed ffmpeg itself
[13:32] <JEEB> and then yes, you will need to later add ${HOME}/ffmpeg_build/include|lib to your header and library search paths
[13:33] <JEEB> do note though that if you build your ffmpeg with fdk-aac, your compile will become non-distributable
[13:33] <kamalbanga> i had installed it and am reinstalling it
[13:33] <kamalbanga> yes, i understand that
[13:34] <JEEB> if you don't have the headers in there, you haven't followed the damn instructions you have linked, btw :) Since the ffmpeg compilation step a) has the --prefix set and b) contains a step to install the thing
[13:38] <kamalbanga> after following the installation steps i also run the command "ffmpeg 2>&1 | head -n1" and it gave me the version of the ffmpeg i installed
[13:38] <kamalbanga> so i had thought that it has successfully installed
[13:39] <JEEB> the binary actually goes to another place, ${HOME}/bin (you can see the --bindir option being set)
[13:40] <JEEB> but that configuration line as far as I can tell dos not disable installation of the libraries
[13:40] <JEEB> so if the installation went fine you should have had stuff under ffmpeg_build/include|lib
[13:42] <kamalbanga> yes ffmpeg shows in $HOME/bin/ along with ffplay ffprobe and ffserver
[13:45] <kamalbanga> i just installed it again and if you (JEEB) permit, i will show the output to you
[13:45] <JEEB> just pastebin it and link here
[13:47] <kamalbanga> http://pastebin.com/qL44QzbH
[13:48] <JEEB> yes, the things seem to have been installed
[13:48] <JEEB> now check whatever got set as the --prefix
[13:48] <JEEB> and what the include/lib directories there contain
[13:48] <kamalbanga> my working directory while doing "sudo make install" was $HOME/ffmpeg_sources/ffmpeg
[13:49] <JEEB> you don't need the sudo there
[13:49] <JEEB> unless you weren't following the instructions
[13:49] <JEEB> sudo is only needed when installing into somewhere where your user has no rights to things
[13:51] <kamalbanga> the ffmpeg_build/include contains the same thing as before, no change
[13:51] <kamalbanga> i mean no avcodec and avformat libraries
[13:51] <JEEB> try running install without the sudo
[13:51] <kamalbanga> ok
[13:52] <kamalbanga> then it gives some errors - permission denied
[13:53] <kamalbanga> http://pastebin.com/Xb8gzuac
[13:53] <JEEB> yes
[13:53] <JEEB> since you used sudo
[13:54] <JEEB> congratulations
[13:54] <kamalbanga> oh..
[13:54] <JEEB> you might want to clean up ffmpeg_build and do it again
[13:54] <JEEB> without sudo
[13:54] <kamalbanga> actually i used sudo make install out of habit but that seems to be a problem now...
[13:55] <JEEB> sudo make install is correct if you are installing into a place where you have no rights as a normal user, it runs stuff as a priviledged user
[13:55] <JEEB> so if you were for example installing into /usr/local you would need it
[13:55] <kamalbanga> ok, clean as in "make clean" or "make distclean" or something else like remove or uninstall
[13:55] <JEEB> remove the ffmpeg_build directory structure
[13:55] <JEEB> and start again :P
[13:55] <kamalbanga> yes i got that point now and will take care next time
[13:56] <kamalbanga> ok
[13:56] <JEEB> you might need sudo for it
[13:56] <JEEB> because you started creating new directories and all as such, so you just might not have the rights for it as a normal user :D
[14:00] <kamalbanga> yes sudo rm -r did it
[14:10] <kamalbanga> when i build yasm, it gives error while running "make install", the error being: cannot create regular file '$HOME/bin/yasm': permission denied
[14:10] <kamalbanga> so it seems i need sudo for that
[14:16] <JEEB> kamalbanga, that just means that it got messed up as well
[14:16] <JEEB> remove both the bin and the ffmpeg_build directories
[14:17] <JEEB> and then let the make install process re-create them without sudo
[14:19] <kamalbanga> yes, now it's fine
[14:28] Action: ffmpegNoob learning ffmpeg
[14:40] <kamalbanga> while configuring ffmpeg as here http://pastebin.com/ABBxk3QQ i got error "ERROR: opus not found" although opus is present in $HOME/ffmpeg_build/include/
[14:42] <JEEB> better to pastebin config.log
[14:44] <kamalbanga> http://pastebin.com/3UU5fUtT
[14:48] <JEEB> ok
[14:49] <JEEB> add before your configure command PKG_CONFIG_PATH=${HOME}/ffmpeg_build/lib/pkgconfig
[14:50] <JEEB> so it becomes PKG_CONFIG_PATH=${HOME}/ffmpeg_build/lib/pkgconfig ./configure --your-options
[14:50] <kamalbanga> yes i had done that already
[14:50] <kamalbanga> since it was in the instructions
[14:50] <JEEB> then the pkg-config check should go through fine
[14:52] <kamalbanga> pkgconfig folder contains these: fdk-aac.pc  opus.pc  vpx.pc
[14:52] <JEEB> yup
[14:52] <JEEB> which the pkg-config binary will then check
[14:54] <kamalbanga> any idea what i should do next...
[14:55] <kamalbanga> shall i leave opus and continue with the other options as i may very well never user opus, i primarily need to deal with aac ac3 and mp3
[14:56] <JEEB> what
[14:56] <JEEB> what I said should fix it, unless you weren't showing me the whole config.log
[14:56] <JEEB> and yes, if you don't need opus then don't compile it in
[14:58] <kamalbanga> i thought i would show relevant section of config.log, this contains more: http://pastebin.com/KvfyHzSS
[14:59] <JEEB> and you had the PKG_CONFIG_PATH thing set when configuring?
[15:00] <kamalbanga> yes
[15:01] <kamalbanga> i may need opus sometimes as i hav to deal with internet videos and ogg format may use it beside vorbis
[15:12] <kamalbanga> oh no: i left opus and then configured and now same with x264 "ERROR: libx264 not found" http://pastebin.com/9KPmiizN
[15:12] <JEEB> well that one is a simple one
[15:13] <JEEB> you've forgotten your --extra-cflags="-I${HOME}/ffmpeg_build/include"
[15:13] <JEEB> in the configure :P
[15:13] <JEEB> wait it's there
[15:13] <JEEB> then you just haven't installed the x264 headers
[15:14] <kamalbanga> i did install
[15:15] <kamalbanga> god knows what problem is there...
[15:15] <kamalbanga> i followed the complete instructions\
[15:15] <JEEB> /home/user06/ffmpeg_build/include -- try ls'ing this directory and see if there is a x264.h :P
[15:16] <kamalbanga> yes i did ls it and it wasn't there
[15:16] <kamalbanga> although it should have been there
[15:16] <JEEB> thus you have not compiled/installed x264 properly!
[15:17] <JEEB> And just to note, these things aren't that fragile. You must have just forgotten or mistaken something.
[15:17] <JEEB> so back to compiling x264 you go :)
[15:33] <kamalbanga> JEEB: thanks a lot dude, ffmpeg compiled and now it shows in ~/ffmpeg_build/include/
[15:36] <kamalbanga> but now when i compile my sample av_register_all() code it gives this:undefined reference to `av_register_all' collect2: ld returned 1 exit status
[15:36] <kamalbanga> seems to be some linking error
[15:37] <JEEB> yes, because you also need to -L${HOME}/ffmpeg_build/lib when compiling if you want to link against those libraries
[15:38] <JEEB> and if you have that already, then you lack the "link this!" option for the library that contains that function
[15:38] <JEEB> s/function/export/
[15:40] <kamalbanga> i did this: cc tut.c -I/home/user06/ffmpeg_build/include -L/home/user06/ffmpeg_build/lib/         and same error
[15:40] <JEEB> you are then not actually linking against anything
[15:41] <JEEB> you need to tell it what libraries you want to link against, you know
[15:41] <kamalbanga> like -lavformat and -lavcodec
[15:41] <JEEB> yes
[15:41] <kamalbanga> ok
[15:43] <kamalbanga> i linked it and now i get this royal error: http://pastebin.com/5z2WLUrX
[15:43] <JEEB> -lavutil ?
[15:44] <kamalbanga> i didn't include avutil.h in my source code
[15:45] <JEEB> yes, but those exports are from avutil
[15:45] <kamalbanga> and the error i pasted was only part of the error as it was very big
[15:45] <kamalbanga> ok i will link avutil too
[15:45] <JEEB> yes, but those are all as far as I can see from avutil
[15:45] <JEEB> so link avutil
[15:46] <kamalbanga> same type of error again: http://pastebin.com/xdNcJ5hw
[15:47] <kamalbanga> i linked avutil avcodec avformat and swscale
[15:49] <JEEB> try switching the linked libraries' order because that should either be in util or codec
[15:49] <kamalbanga> any orders you recommend becoz there will be 4! permutations...
[15:52] <kamalbanga> i tried many orders but the same error
[15:56] <kamalbanga> JEEB: no luck here, btw do you think this error http://ffmpeg.gusari.org/viewtopic.php?f=8&t=942 is relevant to me
[16:08] <kamalbanga> i wish somebody helps me.. while compiling a sample code that just has av_register_all() code by command "cc tut.c -I/home/user06/ffmpeg_build/include -L/home/user06/ffmpeg_build/lib/ -lavutil -lavformat -lavcodec -lswscale" i get the error http://pastebin.com/47npnJ1P
[16:12] <kamalbanga> .
[16:12] <kamalbanga> 3
[16:12] <kamalbanga> .
[16:17] <sussman> We conjure the spirits of the computer with our spells.
[16:23] Last message repeated 1 time(s).
[16:28] <Mavrik> g'day
[16:32] <kamalbanga> JEEB: can you suggest anything i can do.. i am very desperate to make it work or in other case give link to any resource or tutorial that explains these building stuff in detail like config or linking fundamentals
[16:42] <kamalbanga> well.. no help..   thanks to JEEB though..
[16:48] <taqattack> hey everyone
[16:48] <taqattack> I'm wondering if ffmpeg 2.0 does colorspace conversion with opencl
[16:55] <Mavrik> taqattack, nop.
[16:55] <taqattack> Mavrik, so what is opencl used for atm?
[16:55] <Mavrik> if you grep the code
[16:56] <Mavrik> you'll see it's used in deshake and denoise filters
[16:56] <Mavrik> + the framework for more was prepared
[16:56] <taqattack> oh ok
[16:57] <taqattack> thanks Mavrik. Are there any plans to implement colorspace conversions for gpu?
[16:57] <Mavrik> no idea
[16:57] <Mavrik> probably if anyone remembers& even though, colorspace conversions are even now accelrated with MMX/SSE ASM
[16:58] <Mavrik> so I'm not sure using OpenCL would provide huge performance gains
[17:00] <taqattack> hmm
[17:20] <DannyZB> "Input #0, mov,mp4,m4a,3gp,3g2,mj2"
[17:20] <DannyZB> how do I extract the codec and not just .. potential filenames ?
[17:21] <JEEB> that's the type
[17:21] <JEEB> not a file name or extension
[17:21] <JEEB> it should after that output the streams in that file
[17:21] <DannyZB> how can it have 5 types ?
[17:21] <JEEB> except
[17:21] <JEEB> DannyZB, because the demuxer supports all of those and they overlap at parts
[17:22] <DannyZB> ohh so it says it's compatible with all those container types .. cool thanks
[17:22] <JEEB> MPEG-4's container was based on MOV, and 3GP's container was based on MPEG-4's container
[17:22] <JEEB> and so forth and so forth
[17:22] <JEEB> the way it presents them is extension-like tho
[17:22] <JEEB> lol
[17:23] <DannyZB> FFMPEG is wierd haha
[17:23] <JEEB> basically it means "I've got 'mov-like' stuff coming in"
[17:23] <DannyZB> btw any of you guys related to the development team?
[17:23] <JEEB> depends on how you mean that, I've done a video encoder once for libavcodec, but that's more or less it
[17:23] <JEEB> but yeah, some active devs are afaik around
[17:24] <JEEB> although development related talk is generally on the -devel channel
[17:25] <JEEB> anyways, if you wanted to know the stream types within the file
[17:25] <DannyZB> do you know when they intend to integrate quicksync?
[17:25] <JEEB> it should output that after that
[17:25] <JEEB> quicksync as in what exactly?
[17:25] <JEEB> it has the ASIC-using decoding part
[17:25] <DannyZB> as in super-fast intel transcoder
[17:25] <DannyZB> it's only that fast when used both for encoding and decoding
[17:26] <DannyZB> just decoding kinda misses the point
[17:26] <JEEB> no-one has worked on that yet, and so far it seems to be more or less on the same level as x264's superfast
[17:26] <JEEB> speed-wise
[17:26] <JEEB> so it's not really anything SuperSpecial in that sense
[17:26] <DannyZB> thats nonsense written by people that tested encoding/decoding separately
[17:26] <DannyZB> I benchmarked myself
[17:26] <DannyZB> and it's considerably faster
[17:27] <DannyZB> + the quality is higher than superfast , it's closer to "faster"
[17:27] <JEEB> how did you test btw?
[17:27] <JEEB> also what kind of CPU did you test it with?
[17:27] <DannyZB> dual core Intel I5 Ivy Bridge over windows .. ffmpeg commandline for software vs. MediaEspresso for ffmpeg
[17:28] <DannyZB> quicksync converted Gladiator Full HD in 12 minutes ...
[17:28] <taqattack> ffmpeg has quicksync?
[17:28] <JEEB> what metric did you use and what was the general testing scenario
[17:28] <DannyZB> Full HD AVI -> HD mp4
[17:28] <JEEB> taqattack, there's a decoder patch incoming from libav afaik
[17:29] <JEEB> DannyZB, no -- I meant the actual testing procedure
[17:29] <JEEB> what metric, what did you test etc.
[17:29] <DannyZB> stopwatch -> convert
[17:29] <JEEB> ugh
[17:29] <DannyZB> took a bunch of HQ movies and converted with FFMPEG superfast
[17:29] <Paranoialmaniac> ...
[17:29] <JEEB> since it doesn't seem to be going through, let me put up an example
[17:29] <JEEB> you have two encoders
[17:29] <DannyZB> you can say I could use more accurate settings .. but the difference was x2.5
[17:29] <JEEB> no
[17:30] <JEEB> I'm just wanting you to note your methods, let me basically write up an example :P
[17:30] <taqattack> Thanks JEEB
[17:31] <DannyZB> ok are you just against my methods or plain saying I'm wrong?
[17:31] <JEEB> no
[17:31] <JEEB> you haven't even said your methods, as I said I will give an example
[17:31] <JEEB> so you can understand what I mean
[17:32] <DannyZB> k
[17:33] <DannyZB> "Video: h264 (High) (avc1 / 0x31637661),"
[17:34] <DannyZB> does ffmpeg have (High) or whatever after the encoder name in all cases?
[17:34] <JEEB> not all
[17:34] <JEEB> it's the profile
[17:34] <JEEB> of the AVC/H.264 stream
[17:34] <DannyZB> how do I reliably extract the decoder name then ?
[17:34] <DannyZB> *encoder
[17:34] <JEEB> uhh
[17:34] <JEEB> you don't know what encoder was used for the file unless the encoder writes it somewhere
[17:35] <JEEB> for x264 you can `strings file.welp | grep "x264"`
[17:35] <JEEB> but even that is not 100% correct because in theory the AVC/H.264 stream could be cut in the middle
[17:35] <DannyZB> one sec .. the encoder doesn't always write it ?
[17:35] <JEEB> write what?
[17:35] <DannyZB> this is messed up haha
[17:35] <DannyZB> I need the codec ugh .. I didn't mean encoder
[17:36] <DannyZB> I need to extract all codecs used
[17:36] <JEEB> it's the thing that comes after Video: - h264 is AVC/H.264, the thing within () is then the profile and the () after that is the ID as ASCII and hex that is noted in the container
[17:37] <JEEB> most probably ffprobe would be simpler for you to parse, it can output json and stuff even :P
[17:37] <DannyZB> cool
[17:38] <DannyZB> why do online sites never know useful stuff like that haha
[17:38] <JEEB> One example is to set both encoders up to eleven, and making sure you're not making any set-up misses regarding the encoder optimizing or not optimizing to your metric, and then encode to a set bit rate (say, with two-pass), and then compare the results with your set metric. Another one is to
[17:38] <JEEB> match the encoders in speed and bit rate
[17:38] <JEEB> and then see with your metric which is better
[17:38] <DannyZB> I used the same bitrate and resolution in both
[17:39] <DannyZB> used the ffmpeg superfast preset (optimized to SSE3 etc')
[17:39] <DannyZB> 756kb/s
[17:39] <DannyZB> Quicksync quality was higher and speed was more than twice as fast
[17:40] <DannyZB> ffmpeg superfast has a tendency to blur action scenes .. which is why I usually stay away from it
[17:41] <DannyZB> preg_match("/Video: (.*?) (/", $content, $matches); - > should do the trick for extracting video name ?
[17:41] <DannyZB> *codec name
[17:41] <JEEB> just use ffprobe :P
[17:41] <JEEB> it's made for stuff like that
[17:42] <JEEB> Also when comparing encoders, you in general want to make sure that the encoders are on the same ground, adding the decoder + encoder combo in is of course an interesting extra. In the best case you should then also test just decoding on the other side. Also you do see how I note that you should in one way or another match something except for the VeryObvious stuff, right?
[17:42] <DannyZB> yea I get what you mean .. but quicksync performance is damn impressive in any case
[17:42] <JEEB> anyways, let's just say that while your results seem interesting, I wouldn't publish them without further proper testing :)
[17:43] <JEEB> I have an ivy bridge here home
[17:43] <JEEB> i5 3570K
[17:43] <DannyZB> using QS for decoding is pointless since you lose the performance gain by pushing data back and forth between the graphics core and the processor
[17:43] <DannyZB> you lose the graphics processor memory bandwidth advantage
[17:43] <JEEB> I wouldn't dismiss it completely, you know. It could still be faster than other alternatives
[17:44] <JEEB> that said, in general when testing encoders
[17:44] <JEEB> you use raw video as input
[17:44] <DannyZB> I have a server which needs to convert around 40 hour videos per hour
[17:44] <DannyZB> that would kill software encoders if you want good quality
[17:45] <DannyZB> what I'm trying to do now is parse video files and just copy video/audio if it is close enough to what I want .. hopefully most people encode with h264
[17:45] <JEEB> well, yeah -- ffprobe for that
[17:46] <DannyZB> yea looking into it .. looks good
[17:46] <DannyZB> you guys should make ffprobe for ffmpeg logs lol
[17:48] <JEEB> anyways, I might one day look into QS encoding again
[17:49] <DannyZB> you can do it right now
[17:49] <DannyZB> intel are about to release an official linux sdk ( with commandline transcoders )
[17:49] <DannyZB> I just don't like using two different tools
[17:50] <JEEB> well, I'm on Windows anyways, and I think the QS avcodec decoder will IIRC be at least at first windows-only
[17:50] <DannyZB> as a decoder handbrake already integrated it in windows
[17:51] <JEEB> too much fluff around, and I don't know the line stuff goes through with handbrake too well :)
[17:52] <DannyZB> i don't get something .. how do you set ffprobe writer ?
[17:52] <DannyZB> ps .. I'm pretty sure ffmpeg -i is just an alias for ffprobe
[17:52] <JEEB> nah
[17:52] <JEEB> they're more different now
[17:52] <JEEB> they're separate apps to begin with tho :)
[17:53] <JEEB> also I'm pretty sure even with the possible transfer latency between the ASIC and the CPU with decoding stuff isn't too bad of a problem with QS -- I've seen numbers >200fps even with that going on
[17:54] <DannyZB> how do I make ffprobe use json ?
[17:54] <JEEB> -print_format json ?
[17:55] <JEEB> http://ffmpeg.org/ffprobe.html
[17:56] <DannyZB> yea the doc is a bit chinese to me haha
[17:56] <DannyZB> thanks
[17:58] <DannyZB> ok maan .. the "json" output just puts braces around the same output lol
[18:00] <JEEB> looks quite more parse'able for me http://stackoverflow.com/a/8191228/1620828
[18:00] <JEEB> haven't used it myself tho :P
[18:00] <DannyZB> wtf lol
[18:00] <DannyZB> how did you do that
[18:01] <DannyZB> okokokok got it ..
[18:03] <Fjorgynn> Öka
[18:03] <Fjorgynn> Sorry wrong channel
[18:36] <DannyZB> whats the difference between using -c:a and -acodec ?
[18:36] <JEEB> latter is an older way, first is the newer way
[18:37] <JEEB> for now at least the old way is still there as well
[18:37] <DannyZB> and what happens if I use -vcodec copy and -x264opts in the same link ? are x264 options just ignored ?
[18:37] <DannyZB> *command
[18:39] <JEEB> either an error or just ignored
[18:39] <JEEB> -x264opts are after all, specific to the x264 encoder
[18:40] <DannyZB> ugh better not do that .. a bad habit
[18:40] <DannyZB> "/usr/bin/ffmpeg -i $source_path -strict experimental -x264opts bitrate=756:vbv-maxrate=756:vbv-bufsize=378 -vcodec $vcodec -c:a libfdk_aac -movflags +faststart -preset faster /var/www/media/video/{$hash}.mp4 -y >/var/www/ffmpeg_logs/{$hash}.log 2>&1 &"
[18:41] <DannyZB> I don't think I actually need -strict experimental .. am I right ?
[18:41] <JEEB> also wtf @ setting bitrate and all in x264opts :D , and yes -- I don't think you're using anything that needs the "experimental" features enabled
[18:42] <JEEB> -b:v , -maxrate and -bufsize
[18:42] <JEEB> ^ same things as those x264opts
[18:42] <DannyZB> for some reason that used to crash the encoder and give me weird errors
[18:42] <DannyZB> I know this way is messed up but it doesn't crash haha
[18:58] <DannyZB> http://pastebin.com/pa7P4bYm
[18:58] <DannyZB> to those of you using php .. enjoy :P
[19:01] <DannyZB> ok to you video enthusiasts out here .. how do you avoid blur in scene changes during conversion when using superfast preset ?
[19:17] <trose> does anyone have experience writing frames to ffmpeg from C?
[19:17] <trose> Here's my piping code
[19:17] <trose> http://pastebin.com/2EV91cPh
[19:17] <trose> I get this error in ffmpeg...
[19:18] <trose> http://pastebin.com/JD7U8G49
[19:19] <trose> pipe:: Input/output error isn't very descriptive...
[19:26] <teratorn> trose: doesn't a PPM have ascii integers, not raw byte values? (unrelated to your pipe error)
[19:28] <teratorn> well I *guess* its unrelated..
[19:28] <trose> teratorn: there are two versions, distinguished by either P6 or P3 on the first line
[19:29] <trose> P6 is the raw byte "standard" form
[19:29] <teratorn> ok :)
[19:29] <trose> maybe ffmpeg expects the ascii form?
[19:29] <teratorn> I wouldn't know
[19:29] <trose> teratorn: haha
[19:30] <trose> I'm pretty noob with C coding so I'm not sure if i'm doing something wrong there or not
[19:32] <trose> this might be worth noting...
[19:32] <trose> if i write the output of osdemo to a file and then pipe the file into ffmpeg using image2, I get a working video
[19:36] <DannyZB> if I want to get the average bitrate of a video .. what do I do?
[19:36] <DannyZB> ffprobe doesn't seem to retrieve the bitrate for AVI/XVID videos
[19:51] <Mavrik> DannyZB, calculate it from filesize.
[19:51] <DannyZB> I found another way
[19:51] <DannyZB> even when ffprobe doesn't output video bitrate
[19:51] <DannyZB> it -always- outputs total bitrate
[19:52] <DannyZB> total - audio = video
[19:52] <Mavrik> hmm, does it always output total bitrate? I don't think so
[19:52] <Mavrik> but if it does for your formats, it's ok as well.
[20:03] <DannyZB> avi/mp4/mkv it does
[20:03] <DannyZB> haven't tested others .. but we'll see
[20:04] <Mavrik> those are fine, streaming formats are the ones where these things usually fail :)
[20:13] <DannyZB> streaming formats?
[20:13] <DannyZB> which ones for example ?
[20:13] <DannyZB> mp4 is streamable
[20:13] <Mavrik> mp4 is about as crappy for streaming as it gets
[20:14] <Mavrik> formats like MPEG2-TS and similar
[20:14] <LithosLaptop> TS is the best
[20:14] <DannyZB> mp4 is what you got with flash
[20:14] <DannyZB> nobody cares whats better when it's either that or oh-so-terrible flv
[20:15] <DannyZB> *flash/html5
[20:16] <DannyZB> i don't want to convert the same video twice
[20:18] <Fjorgynn> :D
[20:18] <DannyZB> lets say I convert a video to the same format .. is direct transcode the only way to downsample ?
[20:18] <Fjorgynn> lol flash
[20:18] <DannyZB> no matter what you say .. flash video quality is great
[20:18] <Mavrik> DannyZB, what do you mean by "downsample"?
[20:19] <DannyZB> turn Full HD to HD
[20:19] <Mavrik> yes, you have to transcode it.
[20:19] <Mavrik> "flash video quality"? what? :D
[20:19] <downwater> hello
[20:20] <Mavrik> hey there.
[20:21] <downwater> is "wmv3 encoding" currently supported by ffmpeg ? i'm asking because a friend seems to have produced a wmv3 video with it (Debian) or it looks like it's not supported
[20:21] <Mavrik> uh
[20:22] <Mavrik> downwater, nope, only WMV8 is supported, not WMV9
[20:22] <Mavrik>  D.V.L. wmv3                 Windows Media Video 9
[20:22] <Mavrik> only the decoder is present
[20:22] <JEEB> years ago there was talk about a VC-1 encoder patch, but that never really materialized IIRC
[20:23] <JEEB> if you need to encode WMV3/VC-1, I recommend you just use MS's expression encoder 4+
[20:23] <Mavrik> mhm, I think people just stopped caring about the format after H.264 really got adopted
[20:27] <downwater> MPlayer output : selected video codec: [ffwmv3] vfm: ffmpeg (FFmpeg WMV3/WMV9)
[20:27] <downwater> so it's not wmv3 ?
[20:28] <Mavrik> what makes you think that? :)
[20:28] <Mavrik> it's just telling you it has chosen ffmpeg's WMV decoder :)
[20:28] <downwater> aha...
[20:28] <downwater> indeed
[20:28] <downwater> how can i check the format so ?
[20:29] <downwater> wait
[20:29] <Mavrik> ffprobe  the file?
[20:29] <file> keep your hands away from me
[20:29] <downwater> thanks Mavrik
[20:29] <downwater> Audio: wmav2
[20:30] <downwater>  Video: wmv3
[20:30] <downwater> Oo
[20:31] <LithosLaptop> lol @ probing file
[20:32] <downwater> Mavrik, does Debian patch ffmpeg ?
[20:32] <Mavrik> uh
[20:32] <Mavrik> last I checked, debian shipped libav instead of ffmpeg
[20:32] <Mavrik> symlinked "ffmpeg" to avconv and kept telilng people ffmpeg is deprecated
[20:32] <downwater> raah
[20:33] <Mavrik> downwater, use static builds from ffmpeg download page :)
[20:33] <downwater> the funniest : wmv2 video from ffmpeg are not playable by windows media player
[20:34] <JEEB> :)
[20:34] <downwater> my options : -vcodec wmv2 -acodec wmav2 -s 720x576 -b:v 1600k -r 25
[20:37] <LithosLaptop> eek
[20:40] <downwater> thanks anyway
[20:40] <downwater> it helped me
[20:40] <downwater> bye !
[20:40] <LithosLaptop> downwater: my advice is to not use wmv/wma with ffmpeg
[20:40] <LithosLaptop> use MS's expression encoder
[20:40] <downwater> yes of course
[20:40] <downwater> MS's expression encoder ?
[20:41] <LithosLaptop> the wma audio encoder in ffmpeg is nearly as bad as vo-aac///
[20:41] <JEEB> downwater, the same I mentioned
[20:41] <downwater> JEEB, sorry didn't see it
[20:41] <JEEB> the free version should support avisynth input and wmv3/vc-1 input
[20:41] <JEEB> uhh
[20:41] <JEEB> output
[20:41] <LithosLaptop> http://en.wikipedia.org/wiki/Microsoft_Expression_Encoder
[20:42] <downwater> if it works on wine...
[20:42] <downwater> maybe
[20:42] <JEEB> downwater, http://www.microsoft.com/en-us/download/details.aspx?id=18974
[20:42] <JEEB> you can try
[20:43] <downwater> thanks !
[20:43] <downwater> i'll try
[21:47] <pdbogen> Hi, guys. I'm trying to use ffmpeg to assemble JPEGs into a timelapse video, except that the JPEGs are continuously arriving, so I actually want to append one JPEG to the end of the video. So the simplest case of this is that I have two JPEGs. I want to encode the first one to video (ffmpeg -i img1.jpg -vcodec mpeg4 result.avi), then concatenate the second one (ffmpeg -i result.avi -i img2.jpg -filter_complex concat -vcodec mpeg4 tmp.avi;
[21:47] <pdbogen> Running with -v debug has '*** drop!' at the end, and then drop=1 at the summary, but no indication as to /why/ there was a frame dropped.
[23:02] <brontosaurusrex> pdbogen, isn't concat limited to same codec?
[23:37] <pdbogen> brontosaurusrex: Since filters handle "uncompressed data," I think the codec(s) don't matter?
[00:00] --- Fri Jul 12 2013


More information about the Ffmpeg-devel-irc mailing list