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

burek burek021 at gmail.com
Tue Nov 29 02:05:02 CET 2011

[00:02] <praedo_> hello
[00:02] <praedo_> i need help desperately
[00:03] Action: sacarasc hands praedo_ a gun.
[00:03] <praedo_> i have an important recording that was interrupted and it seems corrupt
[00:03] <darkstarbyte> sorry
[00:03] <praedo_> when i open it with ffmpeg it says moov atom not found
[00:03] <darkstarbyte> pasteeater, sorry
[00:03] <praedo_> how could i try to fix it?
[00:03] <sacarasc> praedo_: I know of no way to fix MP4s without moov atoms.
[00:04] <praedo_> really?
[00:04] <praedo_> and why does that happen?
[00:04] <praedo_> in fact it's a m4v file
[00:04] <praedo_> but it's h264 anyway
[00:04] <sacarasc> Because you didn't finish downloading the file.
[00:04] <praedo_> it's a live recording of an event
[00:05] <praedo_> power went off and that's what it got recorded
[00:05] <praedo_> 1.5gb of data
[00:05] <praedo_> so it's not a broken download exactly
[00:05] <JEEBsv> unfortunately the container in question needs an index
[00:05] <JEEBsv> although...
[00:05] <JEEBsv> live?
[00:05] <praedo_> is the index writeen only when it ended?
[00:05] <praedo_> yes, live stream recorded on disk
[00:06] <JEEBsv> I think there was a feature called fragments in the format
[00:06] <JEEBsv> but...
[00:07] <praedo_> what is that?
[00:07] <JEEBsv> can it be played back by mplayer2's current trunk for example?
[00:07] <JEEBsv> praedo_: index-like points in the middle of the file to enable streaming
[00:08] <JEEBsv> I'm not sure but I think that libavformat should support that feature as well, so it sounds weird if it doesn't work at all
[00:08] <JEEBsv> (since mplayer(2)'s support comes from libavformat)
[00:09] <JEEBsv> you have hope if it has fragments and can be read, you have to resort to quite manual labor or deem it impossible if it doesn't
[00:10] <JEEBsv> since yes, indexes are usually put into either the beginning or the end of the stream/file
[00:10] <JEEBsv> if you could play it, there had to be some kind of an index given out, though
[00:10] <JEEBsv> if it was just data downloaded and not playable straight out when you start reading it, that'd mean that the index is in the end
[00:11] <praedo_> the command i run is: ffmpeg -i file.m4v -acodec copy -vcodec copy out.mp4
[00:11] <praedo_> and it complains about the moov atom
[00:11] <praedo_> why suggestion with a different command?
[00:12] <JEEBsv> how new is your ffmpeg?
[00:12] <praedo_> why=any
[00:12] <praedo_> it's ffmpeg-git
[00:12] <praedo_> from 1 month ago
[00:12] <JEEBsv> how old?
[00:12] <JEEBsv> ok
[00:12] <JEEBsv> try current trunk
[00:13] <praedo_> anything changed?
[00:14] <JEEBsv> not sure, but worth a shot, no? :V
[00:14] Action: sacarasc removes i from ive.
[00:14] <praedo_> i try now
[00:15] <iive> praedo_: have you checked if there are big areas full of zeroes in your file?
[00:15] <JEEBsv> also, I guess l-smash's boxdumper could give insight into the file
[00:15] <praedo_> it's 1 hour of soccer at 2500 kbps
[00:15] <praedo_> i tried on windows media player and it can't be played at all
[00:16] <JEEBsv> it can output the data of the composition as well as values of the boxes in the thing
[00:16] <praedo_> what is boxdumper?
[00:16] <JEEBsv> an app in l-smash
[00:16] <JEEBsv> http://code.google.com/p/l-smash/
[00:17] <JEEBsv> I use it to see differences in mp4/mov/related files' structure
[00:17] <praedo_> sounds hard to handle
[00:17] <JEEBsv> not really
[00:18] <JEEBsv> boxdumper filename
[00:18] <JEEBsv> outputs the info into stdout
[00:18] <JEEBsv> :3
[00:18] <iive> praedo_: i highly recommend you to check if your file is not full of zeroes, before going with further attempts to recover its content.
[00:18] <JEEBsv> IIRC
[00:18] <JEEBsv> and yeah
[00:18] <JEEBsv> I agree
[00:19] <iive> jurnal filesystem should guarantee the data consistency of everything before the last flish/close . And I'm not quite sure how often recoding programs call these.
[00:20] <iive> (well, close is called at the end of the recoding)
[00:20] <JEEBsv> so in the worst case scenario you have a big lump o' zeroes
[00:20] <JEEBsv> I guess
[00:21] <iive> it recognizes it as mov/mp4/qt file, so there is something written in it.
[00:21] <iive> you should check if there is more than just header.
[00:22] <praedo_> using the last version of ffmpeg:
[00:22] <praedo_> ç[mov,mp4,m4a,3gp,3g2,mj2 @ 0x8836a80] moov atom not found
[00:22] <praedo_> /floppy/UEF_MONTCADA_0.m4v: Operation not permitted
[00:23] <praedo_> the recording program was runjning on windows 7 with ntfs partition
[00:23] <praedo_> how can i check the zeroes you said?
[00:23] <praedo_> i have the file on linux now
[00:23] <iive> hex editor?
[00:24] <praedo_> won't it take forever to open a 1.5gb file?
[00:25] <praedo_> hexedit UEF_MONTCADA_0.m4v
[00:25] <JEEBsv> only if it tries to read it whole at once
[00:25] <praedo_> that was fast :)
[00:25] <praedo_> not full of zeroes
[00:25] <praedo_> it shows data
[00:26] <iive> praedo_: check the end of the file too
[00:26] <praedo_> true
[00:26] <praedo_> >
[00:26] <praedo_> zeroes at the end
[00:27] <iive> check the middle
[00:27] <iive> then 1/4 1/8 etc..
[00:30] <praedo_> data until the midle more or less
[00:36] <praedo_> any idea, iive?
[00:36] <praedo_> information is there
[00:36] <iive> praedo_: well, you are getting at least half your data... try everything you can :)
[00:37] <iive> it's probably just few MB at the end that are lost.
[00:37] <iive> you can try at 3/4 5/8 or 7/8 if you want to know how much exactly.
[00:38] <iive> oh, you can also try mplayer -demuxer mov file.mov in case it ignores this atom.
[00:38] <praedo_> yes, just a few pages of zeroes at the end
[00:39] <praedo_> why .mov?
[00:40] <iive> mp4 is subset of mov/qt
[00:40] <JEEBsv> well, isn't it both a subset and a superset?
[00:40] <iive> that's why same demuxer is used... your file was .m4v right?
[00:41] <iive> JEEBsv: kind of :)
[00:41] <JEEBsv> I'd think that MPEG spec'd BIFS for example
[00:41] <praedo_> mencoder /floppy/UEF_MONTCADA_0.m4v -ovc copy -oac copy -o ue_figueres.mp4
[00:42] <JEEBsv> > mencoder outputting mp4
[00:42] <iive> praedo_: just try the mplayer...
[00:42] <JEEBsv> unless mencoder really got better
[00:42] <praedo_> WARNING: OUTPUT FILE FORMAT IS _AVI_. See -of help.
[00:42] <praedo_> success: format: 0  data: 0x0 - 0x49fe0030
[00:42] <praedo_> libavformat file format detected.
[00:42] <praedo_> [mov,mp4,m4a,3gp,3g2,mj2 @ 0x8a7b660]moov atom not found
[00:42] <JEEBsv> that'll be quite the <beep>
[00:42] <iive> nah, you need at least -of lavf
[00:42] <iive> and i don't see the "-demuxer mov"
[00:43] <iive> without it, it would use libavformat from ffmpeg :E
[00:43] <JEEBsv> oh, mencoder can now write stuff with lavf?
[00:43] <JEEBsv> cool
[00:43] <sacarasc> It has been able to for years.
[00:43] <JEEBsv> fun
[00:43] <praedo_> mplayer /floppy/UEF_MONTCADA_0.m4v -demuxer mov uef.mov
[00:43] <praedo_> is this command  correct?
[00:43] <sacarasc> No.
[00:44] <praedo_> File not found: 'uef.mov'
[00:44] <praedo_> Failed to open uef.mov.
[00:44] <JEEBsv> well doh
[00:44] <JEEBsv> leave that out
[00:44] <JEEBsv> it should try to play it
[00:45] <praedo_> doesn't play
[00:45] <JEEBsv> ok
[00:45] <praedo_> what did you mean mencoder outputting?
[00:45] <JEEBsv> the internal muxers of mencoder are <beep>
[00:45] <JEEBsv> for everything else but avi
[00:45] <JEEBsv> anyways, grab l-smash and build it
[00:45] <JEEBsv> pastebin the output of boxdumper
[00:45] <iive> in the above command, it would write .avi file with .mp4 extension...
[00:46] <praedo_> iive, for some reason it doesn't work
[00:46] <praedo_> File not found: 'uef.mov'
[00:46] <praedo_> that's suppposed to be the output, no?
[00:47] <JEEBsv> someone is quite out on the moon it seems
[00:47] <iive> praedo_: sorry I confused you, uef.mov is just the name of your file. 
[00:47] <praedo_> could this be useful maybe to fix it? http://renaun.com/blog/code/qtindexswapper/
[00:47] <iive> mplayer can play many files one after the other, so when you give it 2 files, it plays the first and then the second.
[00:47] <JEEBsv> praedo_: uhhh
[00:48] <JEEBsv> considering that ffmpeg et al can't find the index :P
[00:48] <JEEBsv> also there is an app to do that same thing for the index in ffmpeg's source tree as well
[00:48] <iive> i'm not sure it is the index that is missing.
[00:48] <iive> i'm not familiar with mp4 atoms.
[00:49] <JEEBsv> well, boxdumper should tell us
[00:49] <praedo_> what app?
[00:49] <JEEBsv> ...
[00:49] <praedo_> JEEBsv, i'll install that boxdumper and try then... what is l-smash exactly?
[00:49] <iive> boxdumper from l-smash packet.
[00:49] <JEEBsv> you don't need to install it
[00:49] <JEEBsv> just compile
[00:50] <JEEBsv> praedo_: a muxing/parsing library etc. for mp4/mov/similar
[00:50] <iive> isn't it easier to try with apt-get install ?
[00:50] <pasteeater> probably not in repo
[00:50] <JEEBsv> yeah
[00:50] Action: pasteeater makes l-smash AUR build script
[00:51] <JEEBsv> also, praedo_ -- I think the site says it rather well
[00:51] <JEEBsv> Loyal to Spec of Mpeg4 and Ad-hoc Simple Hackwork. Yet another opensource mp4 handler" 
[00:51] <iive> debian is starting to slack more than slackware...
[00:51] <JEEBsv> Also the L-SMASH guys make fixes and other stuff for libavformat as well
[00:51] <JEEBsv> :3
[00:52] <pasteeater> JEEBsv: did you know your name is in AUR?
[00:52] <pasteeater> https://aur.archlinux.org/packages.php?ID=51606
[00:52] <praedo_> i use archlinux
[00:52] <praedo_> i'll see if it's in aur
[00:52] <pasteeater> it is
[00:52] <pasteeater> now
[00:52] <JEEBsv> pasteeater: lawl
[00:53] <praedo_> pasteeater, awesome :)
[00:53] <praedo_> JEEBsv, thanks for the great recommendation of boxdumper... i hope it will be able to fix it
[00:53] <JEEBsv> it won't be able to fix it, but it should give you more hints
[00:53] <JEEBsv> unless it crashes on the file hard
[00:54] <JEEBsv> in which case bug reports are welcome :P
[00:54] <praedo_> what kind of hints?
[00:55] <JEEBsv> like a map of the file?
[00:55] <JEEBsv> 01:45 < JEEBsv> anyways, grab l-smash and build it
[00:55] <JEEBsv> 01:45 < JEEBsv> pastebin the output of boxdumper
[00:55] <JEEBsv> :V
[00:56] <praedo_> installing l-smash from aur now...
[00:56] <praedo_> i'll need you to teach me using it
[00:56] <JEEBsv> I think boxdumper --help or just calling boxdumper should tell you if you actually need to add any settings to it
[00:58] <praedo_> compiling...
[00:59] <JEEBsv> heh, nice -- chikuzen actually made a configure for it
[01:00] <JEEBsv> with various options
[01:00] <praedo_> installed
[01:00] <praedo_> which one should i pastebin of these?
[01:00] <praedo_>     --box          Dump box structure
[01:00] <praedo_>     --chapter      Extract chapter list
[01:00] <praedo_>     --timestamp    Dump media timestamps
[01:01] <JEEBsv> --box
[01:01] <praedo_> and I redirect output with > file ?
[01:01] <JEEBsv> yeah, if you don't want it all on your face
[01:01] <JEEBsv> s/face/terminal/
[01:02] <praedo_> http://pastebin.com/gCu9ZzAF
[01:02] <praedo_> here
[01:02] <praedo_> i don't understand a thing :)
[01:03] <JEEBsv> :/
[01:03] <praedo_> that means no luck?
[01:04] <JEEBsv> you can also try the remuxer in L-SMASH but looking at that output I'm not sure you'll be getting something out of it
[01:04] <JEEBsv> (yes, it has an app called 'remuxer' in it)
[01:04] <praedo_> what info gives that pastebin?
[01:05] <praedo_> how much valid data is there?
[01:05] <JEEBsv> you have an mdat box at zero, then a 'wide' box at 32, and then... mdat but with a lulzy size?
[01:05] <praedo_> # remuxer -i /floppy/UEF_MONTCADA_0.m4v -o uef.mp4
[01:05] <praedo_> Error: failed to set iTunes metadata.
[01:05] <praedo_> Error: failed to set up preparation for output.
[01:06] <JEEBsv> yeah, couldn't parse it
[01:06] <JEEBsv> at least it didn't segfault
[01:06] <praedo_> size is correct because it's what it usually takes to record an hour of live stream at 2500 kbps
[01:07] <JEEBsv> I guess 1694498855 is the correct size?
[01:07] <JEEBsv> or something around that
[01:07] <praedo_> yes
[01:07] <praedo_> 1.5gb
[01:07] <praedo_> any other test i could do?
[01:07] <JEEBsv> anyways, the fact that that thing at 40 has a humongous size kind of welps it
[01:08] <praedo_> at 40?
[01:08] <JEEBsv> yes, the mdat at 40
[01:08] <JEEBsv> look at boxdumper's output :P
[01:09] <praedo_> ah, yes
[01:09] <praedo_> that must be the last bit
[01:10] <praedo_> could i try with other tools?
[01:11] <JEEBsv> feel free, but I don't think you'll get much out of it
[01:13] <praedo_> so it's definately an unrecoverable corrupt file :(
[01:13] <praedo_> no moov atom = dead
[01:13] <praedo_> as a rule
[01:14] <JEEBsv> pretty much
[01:14] <JEEBsv> unless it uses fragments
[01:15] <JEEBsv> in which case it should be playback'able with a relatively new mplayer or whatever
[01:15] <JEEBsv> also, I'm not sure if ffmpeg would throw up errors on such a file either
[01:17] <praedo_> and no fragments are on this file?
[01:18] <JEEBsv> I would guess that boxdumper should find them in that case
[01:18] <JEEBsv> and that ffmpeg wouldn't derp on the file either :P
[01:19] <praedo_> derp?
[01:27] <pasteeater> as in 'fail' or similar. short for 'herp derp' and variants.
[01:28] <cryptopsy> toodles ~~
[01:28] <praedo_> i see
[01:28] <praedo_> so no fragments
[01:29] <praedo_> i heard that a media server could playback the file anyway as VOD... could this be true?
[03:34] <shifter1> I am getting a segfault using ffserver
[03:34] <shifter1> I have some debug output 
[03:34] <shifter1> where should I bring this info?
[09:05] <Boon> hello, is vhook unsupported with latest ffmpeg? watermark feature
[09:07] <Tjoppen> vhook has been removed for quite some time. there's libavfilter now
[09:08] <Boon> so you suggest using libavfilter to do watermark?
[09:09] <ubitux> yes, look at the overlay filter
[09:10] <Boon> ok thank you
[09:10] <ubitux> http://ffmpeg.org/libavfilter.html#overlay
[09:13] <Boon> any example working command to test out?
[09:14] <Boon> i found this on google
[09:14] <Boon> ffmpeg -i 01.mpg -vf "movie=watermark.png [logo]; [in][logo] overlay=10:main_h-overlay_h-10 [out]" -f flv 03.flv
[09:15] <Boon> what is [logo] [in] and [out]
[09:15] <Boon> ?
[09:15] <ubitux> it is the link names
[09:16] <ubitux> http://ffmpeg.org/libavfilter.html#Tutorial
[09:20] <dirtycookie> hello people. i have a ubuntu os runnung and iam using your great software along with the tool youtube-dl, and when i want only to extract the audio if a youtube clip everything starts fine, but when it comes to the conversion of the file I get the follwing " WARNING: error running ffmpeg" can someone poing me to the right direction to fix this?
[09:24] <andrew_46> dirtycookie: You are using youtube-dl's --extract-audio option?
[09:26] <dirtycookie> andrew_46: yes
[09:28] <andrew_46> dirtycookie: I should mention here that I normally ask for help here, not give it :). Can you give the commandline + youtube url you are using?
[09:31] <dirtycookie> andrew_46: one sec
[09:31] <dirtycookie> youtube-dl --extract-audio --audio-format=mp3 [url of youtube]
[09:32] <andrew_46> dirtycookie: Sorry I meant give an exact youtube url so I can test one that has failed for you
[09:36] <andrew_46> dirtycookie: And if you are using Ubuntu you may be aware that the repository FFmpeg normally has mp3 encoding stripped from it?
[09:50] <naxa> how would I find parameters for a video encoder?
[09:50] <naxa> (i mean available parameters)
[09:52] <naxa> for example there is the 'x264opts' parameter. are there any parameters for the other encoders?
[09:53] <naxa> the docs only mentions vpx as far as i can see
[09:53] <naxa> *mentions only
[10:10] <andrew_46> dirtycookie: and the youtube-dl script calls libmp3lame for mp3 conversion
[10:54] <dirtycookie> andrew_46: true but, the package is already installed
[12:03] <burek> if we specify something like this: -f alsa -ar 44100 -ac 1 -i hw:0,0
[12:04] <burek> does it mean ffmpeg will try to read the input @44100 Hz Mono?
[12:05] <burek> dirtycookie, you can try with ffmpeg -codecs | grep lame
[12:05] <burek> naxa, each encoder can have its own specific params
[12:05] <naxa> burek: it's okay but how do I input them?
[12:06] <burek> your best chance is to google something like: ffmpeg vcodec <encoder>
[12:06] <burek> or to go to the official web page of that encoder
[12:06] <burek> and read the docs
[12:06] <naxa> burek: yes. it's just there is a parameter named "x264opts" and I don't know if there is one like "mjpegopts" I doubt it
[12:07] <burek> i see
[12:08] <burek> for mjpeg, there is -qscale
[12:09] <burek> -qscale 1 means the best quality
[12:12] <dirtycookie> burek: well, i got a lot of output
[12:12] <dirtycookie> burek: nothing specific
[12:12] <burek> shifter1: https://ffmpeg.org/trac/ffmpeg
[12:13] <burek> dirtycookie, that command should give you a clue if your ffmpeg was compiled with libmp3lame support or not
[12:13] <burek> regardless if you have the library installed
[12:14] <dirtycookie> burek: this suggests that i dont have it with lame compiled?
[12:15] <burek> exactly
[12:15] <burek> that's why you should always compile your ffmpeg yourself
[12:16] <burek> it takes no more than 15 minutes
[12:16] <burek> but you get what you need
[12:16] <burek> and of course you get the latest (and greatest) version, with all the bugs fixed (lol) :)
[12:19] <dirtycookie> burek: so could you help me here guiding me through this?
[12:20] <dirtycookie> brb
[12:22] <burek> sure
[12:22] <burek> http://ffmpeg.org/download.html
[12:22] <burek> first of all, what is your overall goal
[12:22] <burek> what do you want to achieve with ffmpeg
[12:42] <dirtycookie> burek: i just use ffmpeg to convert videos into different formats and resolutions. I also want to use it in oder extract audio from youtubeclips
[12:42] <dirtycookie> in mp3 form
[12:43] <burek> i see, so you'll need libmp3lame
[12:44] <burek> apt-get install libmp3lame-dev
[12:44] <burek> if you will just extract audio from youtube and convert it to mp3, you can also compile (or just install) libx264
[12:45] <burek> i suggest compile, because its less than 5min
[12:45] <burek> also, I would recommend you to compile libaacplus, and use AAC+ audio encoder, rather than mp3
[12:45] <burek> it's much better quality
[12:46] <dirtycookie> burek: ill do your recommendations
[12:46] <dirtycookie> i installed libmp3lame-dev
[12:46] <dirtycookie> what nex
[12:46] <dirtycookie> t
[12:46] <burek> http://www.videolan.org/developers/x264.html
[12:46] <burek> aac+ http://tipok.org.ua/node/17
[12:46] <burek> (use libaacplus-2.0.2.tar.gz)
[12:47] <burek> http://ffmpeg.org/download.html
[12:47] <burek> and that's basically it
[12:47] <burek> when you configure libx264, you could use ./configure --enable-shared --enable-static
[12:47] <burek> you never know if you are going to compile vlc or something and if you'll need shared/static version
[12:48] <burek> for aac+, just ./compile && make && make install
[12:48] <burek> for ffmpeg, ./configure --enable-aacplus --enable-non-free --enable-libx264 --enable-libmp3lame
[12:49] <burek> or this ./configure --enable-static --enable-shared --enable-gpl --enable-nonfree --enable-postproc --enable-libx264 --enable-libaacplus --enable-libmp3lame
[12:49] <dirtycookie> burek: 1 sec on the phone
[12:49] <burek> ok
[12:49] <vivienschilis> question
[12:50] <vivienschilis> does webm supports CRF?
[12:50] <burek> that's x264's option
[12:50] <vivienschilis> ok just wondering cause ffmpeg accepts to pass a crf option even for an webm format
[12:51] <burek> http://ffmpeg.org/ffmpeg.html
[12:51] <burek> search for crf
[12:51] <burek> I see it only in libvpx
[12:52] <burek> http://www.webmproject.org/tools/encoder-parameters/#10_sample_command_lines
[12:53] <relaxed> there are some libvpx presets in ffmpeg/ffpresets
[12:55] <dirtycookie> burek: i entered "./configure --enable-shared --enable-static", do i enter the others right after it or how?
[12:55] <vivienschilis> what's the different between the vpx and vp8 codec?
[12:55] <vivienschilis> one is ffmepg's
[12:55] <vivienschilis> ?
[12:55] <burek> dirtycookie, what are you configuring right now
[12:56] <vivienschilis> encoding api.
[12:56] <vivienschilis> just wondering if i should expect cry to be just h264 specific
[12:56] <vivienschilis> crf*
[12:58] <dirtycookie> burek: i just entered "./configure --enable-shared --enable-static" i didnt hit enter yet
[13:17] <burek> dirtycookie ok
[13:17] <dirtycookie> burek: what about the other enables?
[13:18] <burek> dirtycookie, what are you configuring right now
[13:20] <dirtycookie> burek: --enable-shared --enable-static
[13:20] <dirtycookie> burek: that is all
[13:20] <burek> yes but what: aac, x264, ffmpeg...?
[13:20] <dirtycookie> burek: no idea really
[13:21] <burek> ?
[13:21] <burek> you should stick to repos then
[13:21] <burek> :)
[13:21] <dirtycookie> burek: well, kinda late i sent it to make and make install
[13:22] <burek> ok :)
[13:22] <dirtycookie> burek: lets see what comes out
[13:22] <dirtycookie> ;)
[13:22] <burek> if you don't know what you are doing, the results can only be good, right :d
[13:22] <dirtycookie> LOL, make was always 4 me voodoo magic
[13:23] <burek> well, for libaacplus only ./configure && make && make install will be enough
[13:24] <burek> x264 ./configure --enable-shared --enable-static
[13:24] <burek> and ffmpeg, read above :)
[13:25] <dirtycookie> burek: i enter "./configure --enable-aacplus --enable-non-free --enable-libx264 --enable-libmp3lame" then make && make install
[13:27] <burek> http://pastebin.com/P2S3SLHn
[13:28] <dirtycookie> burek: ok ill do that thx
[13:29] <burek> http://pastebin.com/LhRkXhzZ
[13:29] <vivienschilis> is ffmpeg's aac enc is better than libfaac now?
[13:31] <burek> http://pastebin.com/7ngnxisS
[13:31] <burek> there it is :)
[13:31] <burek> vivienschilis, honestly, both are kinda the same (low quality) comparing to aac+
[13:34] <vivienschilis> fine ;)
[13:46] <JEEB> note tho that HE-AAC shouldn't be used if you're trying to actually use semi-high bitrates (>64kbps)
[13:46] <JEEB> HE-AAC(v2) takes out a lot of information and tries to replicate it with other kind of stuff
[13:46] <JEEB> which makes it quite useful for <64kbps use cases
[13:47] <JEEB> (this is stereo-wise of course)
[13:47] <burek> yes, and this says it all: "Data from this testing also indicated that some individuals confused 48 kbit/s encoded material with an uncompressed original." :)
[13:47] <JEEB> point being "some individuals"
[13:47] <burek> yes, but still :)
[13:48] <burek> mp3 never had such comments, nor aac-lc :)
[13:48] <JEEB> well, d'oh
[13:48] <JEEB> neither was made to sound good with low bitrates
[13:48] <burek> well low bitrates are good thing, no? :)
[13:49] <JEEB> yes, unless too much data is being taken out. My experience with HE-AAC(v2) usually tends to be that it sounds good, but if you don't have very strict bitrate limitations you'll want to use AAC-LC which takes out less information
[13:49] <JEEB> for phones and such I would use HE-AACv2
[13:49] <JEEB> for video encodes for internets where the video bitrate is low as well, sure'ish
[13:50] <JEEB> for video encodes where the video bitrate is higher, I might as well go for AAC-LC
[13:50] <burek> well you can go with flac then :)
[13:50] <burek> if bitrate is not a problem :)
[13:50] <JEEB> wavpack if I want lossless
[13:50] <JEEB> uhh
[13:51] <JEEB> there's a difference between "less or around 192kbps" and "768kbps+"
[13:51] <JEEB> I don't say that compression algorithms that make stuff sound good with low bitrates in general is bad, just that the ways that HE-AAC(v2) uses generally tends to remove stuff (while still keeping audible artifacts mostly away)
[13:52] <burek> i don't know.. i've been listening to the classic music encoded with aac+ and it was of a superb quality.. so, I can freely say that it's a very good encoder
[13:53] <JEEB> that removal might or might not be a bad thing with source X, but given the algorithms I generally prefer a good AAC-LC encoder (neroaacenc/qaac) and somewhat higher bitrates if I want to do a relatively good quality lossy audio encode
[13:53] <JEEB> or vorbis with aotuv stuff
[13:55] <JEEB> HE-AAC(v2) is very useful for what it's meant for tho
[13:55] <JEEB> which is <64kbps encoding
[13:55] <JEEB> I think I tested it down to 32kbps or so, maybe 16kbps :3
[13:56] <burek> 32kbs is the epicenter.. 48kbps is for high quality (cd like, classic music and stuff)
[13:56] <JEEB> for HE-AAC it was already low'ish, for HE-AACv2 it could take some less bitrate
[14:13] <dirtycookie> burek: hi again
[14:14] <dirtycookie> i get an error message at compiling ffmpeg just as you told me to do, it tells me that libaacplus is not found
[14:15] <burek> did you do this step: http://pastebin.com/P2S3SLHn
[14:16] <dirtycookie> burek: hold let me check again
[14:21] <dirtycookie> burek: did that again now trying my luch with ffmpeg
[14:21] <dirtycookie> ./config of ffmpeg went without any errors... now making
[14:21] <dirtycookie> looking good
[14:22] <burek> ok :)
[14:23] <dirtycookie> burek: in any case i thank you 4 ur patience that you gave me as a noob
[14:23] <burek> :beer: :)
[14:23] <dirtycookie> i dont meet many people in irc having the patience to this, other than answering rtfm
[14:24] <dirtycookie> burek:where u from
[14:24] <burek> well, you should rtfm though ^^
[14:24] <burek> serbia :)
[14:29] <dirtycookie> burek:i would agree but is a little too technical 4 me and i just want to get on with my work
[14:31] <burek> i know exactly what you mean...
[14:31] <burek> the worst thing is, the more you know, the less people can help you..
[14:32] <burek> so it's a good practice to learn to read manuals.. :/
[14:35] <dirtycookie> burek: if i have the time 4 it
[14:36] <dirtycookie> but thanks again :)
[14:36] <burek> :) :beer:
[15:03] <dirtycookie> burek: ok i finished compinling it, tried now the follwing command: "youtube-dl --extract-audio --extract-format=mp3 [target url]" and gave me "youtube-dl: error: noc such option --extract-format"
[15:04] <dirtycookie> burek: i left that out and it started downloading it in a .webm file and gave me a warining that it couldn't obtain the file audio codec with ffprobe
[15:06] <burek> try typing just ffmpeg
[15:06] <burek> to see what ffmpeg has been started
[15:07] <burek> from repo or compiled one
[15:07] <dirtycookie> burek: dont tell me that it has to be like "/home/me/ffmpeg/ffmpeg"?
[15:09] <dirtycookie> burek: when entering ffmpeg in my console i get the follwing
[15:10] <dirtycookie> "ffmpeg: error while loading shared libraries: libpostproc.so.51: cannot open shared object file: Noch such file or directory
[15:11] <burek> oh i see
[15:11] <burek> dpkg -l | grep ffmpeg
[15:11] <dirtycookie> burek: i get,
[15:12] <dirtycookie> ii ffmpeg    4:0.7.2-1ubuntu1 Multimedia player, server, encoder and transcoder
[15:12] <burek> ok
[15:12] <burek> dpkg -r ffmpeg
[15:12] <burek> or apt-get remove ffmpeg
[15:13] <dirtycookie> ii gstreamer0.10-ffmpeg 0.10.12-1ubuntu ffmpeg plugin for GStreamer
[15:13] <burek> that one is ok
[15:13] <dirtycookie> burek: ok removing, now what
[15:13] <burek> hash -r
[15:13] <burek> ldconfig
[15:13] <burek> and try typing ffmpeg again
[15:16] <dirtycookie> burek: it gave me
[15:16] <dirtycookie> ffmpeg: relocation error: /usr/local/lib/libswresample.so.0: symbol av_opt_set_int, version LIBAVUTIL_51 not defined in file libavutil.so.51 with link time reference
[15:17] <burek> ok
[15:17] <burek> dpkg -l | grep libav
[15:18] <dirtycookie> http://pastebin.com/vtkMU1Vc
[15:19] <burek> ok
[15:19] <dirtycookie> burek: u there?
[15:20] <burek> apt-get remove libavutil51 libavformat53 libavfilter2 libavdevice53 libavcodec53
[15:20] <burek> i am
[15:20] <burek> ldconfig
[15:20] <burek> and try again with ffmpeg
[15:24] <dirtycookie> burek: ffmpeg: relocation error: /usr/local/lib/libswresample.so.0: symbol av_opt_set_int, version LIBAVUTIL_51 not defined in file libavutil.so.51 with link time reference
[15:34] <burek> hash -r
[15:34] <burek> ldconfig
[15:34] <burek> ffmpeg
[15:52] <dirtycookie> burek: ffmpeg: relocation error: /usr/local/lib/libswresample.so.0: symbol av_opt_set_int, version LIBAVUTIL_51 not defined in file libavutil.so.51 with link time reference
[15:55] <vivienschilis> burek, so ffmpeg support he-aac+ with libaacplus
[15:55] <vivienschilis> but what about he-aac
[15:55] <vivienschilis> ?
[15:56] <burek> he-aac v2
[15:57] <burek> you can read more here
[15:57] <burek> http://tipok.org.ua/node/17
[16:01] <dirtycookie> burek: ideas running out?
[16:02] <burek> ?
[16:02] <burek> what ideas?
[16:02] <dirtycookie> ffmpeg: relocation error: /usr/local/lib/libswresample.so.0: symbol av_opt_set_int, version LIBAVUTIL_51 not defined in file libavutil.so.51 with link time reference
[16:02] <vivienschilis> oh ok, the lib have support for v1 and v2?
[16:03] <burek> well, dirtycookie, uninstall libavutil with apt-get remove
[16:03] <burek> do ldconfig
[16:03] <burek> and recompile (configure, make..)
[16:09] <dirtycookie> burek: ffmpeg: relocation error: /usr/local/lib/libswresample.so.0: symbol av_opt_set_int, version LIBAVUTIL_51 not defined in file libavutil.so.51 with link time reference
[16:09] <dirtycookie> didnt i removed libavutil?
[16:10] <burek> check in dpkg -l | grep libavutil
[16:12] <dirtycookie> dpkg -l |grep libavutil
[16:12] <dirtycookie> ii  libavutil-extra-51                     4:                        Libav utility library
[16:12] <dirtycookie> rc  libavutil51                            4:0.7.2-1ubuntu1                        Libav utility library
[16:14] <relaxed> dirtycookie: are you using 64bit linux?
[16:14] <dirtycookie> relaxed: no it it is i386 ubuntu
[16:14] <dirtycookie> xubuntu sry
[16:16] <dirtycookie> burek: ok i think i made it, i got now a different output
[16:17] <dirtycookie> http://pastebin.com/gNuM2d7u
[16:25] <Pascal_1> hello
[16:26] <Pascal_1> i'm trying to make a video from several picture (differents size and different orientation) with this command line : ffmpeg -r 2 -b 1800 -i %05d.jpg video.mp4
[16:26] <Pascal_1> but all the frame of the video is a malformed picture
[16:27] <Pascal_1> is there a way to make a video with all picture and ffmpeg keep the format of each pictures ?
[16:46] <Pascal_1> any idea ?
[17:12] <burek> dirtycookie, thats ok
[17:12] <burek> now you have it compiled
[17:13] <burek> Pascal_1, can you make input pictures all the same format/size
[17:42] <pasteeater> burek: there is an ubuntu specific ffmpeg compile guide in /topic.
[17:44] <burek> yes there is :)
[17:51] <burek> maybe it would be a good idea to have 1 static build for linux/win/mac updated weekly, with all the codecs/features enabled, just for those who want to "just install and go", because there a lot of lazy people, coming from m$ world
[18:40] <giwe> How do I produce a "fastforward" version of a movie? I want a 20min movie to play in 1min.
[19:00] <vivienschilis> is there any conflict between libvo-aacenc and libaacplus?
[19:03] <pasteeater> giwe: ffmpeg -i input -vf setpts=0.05*PTS output
[19:04] <pasteeater> frames will be dropped, however
[19:06] <burek> pasteeater, does it reencode video?
[19:11] <pasteeater> yeah
[19:12] <pasteeater> and the 0.05 = 1 minute / 20 minutes
[19:19] <Hyperi> PTS is per time second or what ?
[19:21] <giwe> pasteeater: thanks will try
[19:22] <giwe> pasteeater: is there a webpage that explains this for me too bookmark?
[19:28] <Hyperi> There is this bible
[19:28] <Hyperi> called google .)
[19:28] <giwe> pasteeater: nvm it is in the ffmpeg man
[19:34] <HrznDefeated> Hello all, how good is streaming support in ffmpeg?  If I am planning to consume and decode rtsp/rtp and mpeg2-ts streams, should I be looking at ffmpeg directly, or should I be looking at gstreamer?
[19:39] <burek> pasteeater would this do the same thing: ffmpeg -i input.avi -r 3 -vcodec ... -acodec ... output.avi
[19:39] <burek> or the vf does something more peculiar
[19:43] <vcs> hi, when i use "-vcodec copy" and also set the framerate from a raw h264 stream, the video is copied but it plays back at the framerate i didn't specifcy (the one it guesses the video is at)
[19:44] <vcs> here is the command for refference: "ffmpeg -i 11.264 -vcodec copy -r 10 11.mp4"
[19:44] <vcs> it seems no matter what I do, ffmpeg reads the raw stream at 30fps
[19:44] <vcs> is there some way I can force ffmpeg to realize that the raw stream is only 10fps?
[19:45] <JEEB> properly set it on the encoder's side?
[19:45] <JEEB> I always kind of had the idea of -r being the setting for frame dropping/frame blending/copying
[19:46] <JEEB> so I'd probably just use L-SMASH's muxer or mp4box to mux it with a specific frame rate defined :3
[19:47] <vcs> hmm ok, ill give it a shot thanks
[19:59] <pasteeater> burek: you could probably so something similar with: ffmpeg -i input -an -f rawvideo -r 12 - | ffmpeg -s 1280x720 -r 24 -f rawvideo -i - out
[20:00] <burek> yes, I figured :) I was thinking to pass the stream as-is through the decoder and to drop sufficial frames at the encoder side
[20:00] <burek> i just wanted to see if this could be done without reencoding
[20:01] <burek> to somehow "mark" the stream as faster/slower, but it seems it cant be done :)
[20:01] <pasteeater> oh, i think -vf is ignored with -vcodec copy.
[20:02] <burek> vcs
[20:02] <burek> you could place -r before first -i
[20:02] <burek> that would do what you want
[20:03] <vcs> hmm ill give it a shot
[20:03] <pasteeater> Hyperi: PTS = presentation timestamp in input
[20:04] <vcs> burek: i tried it, got 30 FPS back :|
[20:04] <vcs> after reading the output file with ffprobe
[20:04] <burek> well
[20:04] <burek> try this
[20:04] <burek> ffmpeg -r 10 -i 11.264 -vcodec copy -r 10 11.mp4
[20:05] <vcs> still reads back 30 fps
[20:05] <burek> hmh
[20:05] <burek> wait wait
[20:05] <burek> does raw h264 store fps value?
[20:06] <vcs> i dont think so
[20:06] <vcs> ill check
[20:06] <burek> vcs, try this what pasteeater suggested
[20:06] <JEEB> it can
[20:06] <JEEB> timestamps
[20:06] <JEEB> which some muxers read, others don't
[20:06] <vcs> hm
[20:06] <burek> ffmpeg -i 11.264 -f rawvideo -r 10 - | ffmpeg -s 1280x720 -r 10 -f rawvideo -i - 11.mp4
[20:06] <burek> just fix the -s
[20:07] <burek> i think forcing the rawvideo will get rid of the timestamps
[20:07] <burek> which will give you what you need
[20:08] <burek> anyway, this seems to be a trivial problem, like rearranging timestamps
[20:08] <burek> does ffmpeg have some options which handle that, so the people could easily speed up/slow down videos, without reencoding
[20:11] <vcs> hmm.. that may have worked
[20:11] <vcs> its reading back 10fps now
[20:11] <vcs> the interesting thing is though the stream has the same duration
[20:11] <vcs> as it did when it encoded at 30fps
[20:11] <vcs> well, not encoded i mean muxed
[20:12] <burek> you wanted to speed it up?
[20:12] <burek> slow down?
[20:12] <vcs> slow it down, it was playing back at 30fps but recorded at 10fps
[20:13] <burek> i see, so it just dropped frames
[20:13] <burek> and still plays faster
[20:13] <vcs> right
[20:13] <burek> well
[20:13] <vcs> i may give mp4box a shot
[20:14] <burek> try this
[20:14] <burek> ffmpeg -i 11.264 -f rawvideo -r 30 - | ffmpeg -s 1280x720 -r 90 -f rawvideo -i - 11.mp4
[20:14] <burek> wait
[20:16] <burek> i think we should use named pipes here
[20:16] <burek> im not sure
[20:16] <burek> but it seems to me like the input stream is "faster" than the output, so no buffering will happen, just frame dropping
[20:17] <burek> that's why i think we could save it maybe to a file with -r 30
[20:17] <burek> to have all frames
[20:17] <burek> and rawvideo, to loose timestamps
[20:17] <burek> and after that to read the file with -r 10
[20:18] <burek> ffmpeg -i 11.264 -f rawvideo -r 30 tmp11
[20:18] <burek> ffmpeg -s 1280x720 -r 10 -f rawvideo -i tmp11 out11.mp4
[20:21] <vcs> alright ill give it a shot
[20:26] <vcs> that seemed to do the trick
[20:26] <vcs> thanks
[20:27] <Hyperi> pasteeater: ty
[20:27] <burek> :beer: :)
[20:44] <giwe> pasteeater: the "fastforward" did work with your PTS suggestion. It did drop frames as you said. Do you recommend any other way in such a way that frames are not dropped?
[20:45] <pasteeater> giwe: i'm not sure.
[20:49] <burek> giwe, read above
[20:49] <burek> vcs had exactly the same problem, i guess
[20:59] <burek> general, faq, ffmpeg, ffprobe, ffplay..
[21:31] <vivienschilis> how good is vo-aacenc?
[21:31] <vivienschilis> what does it bring compare to faac
[21:31] <pasteeater> vivienschilis: probably on par with faac, or maybe a little worse.
[21:32] <vivienschilis> why is android not relying on faac? I think it use this one right?
[21:32] <vivienschilis> just curious
[21:32] <pasteeater> and to answer your previous question, i've had to issues with both libvo-aacenc and libfaac enabled.
[21:32] <relaxed> vivienschilis: faac can not be distributed because it's nonfree
[21:33] <pasteeater> *no issues
[21:34] <vivienschilis> to activate libaacplus I had to ditch libvo-aaenc
[21:34] <vivienschilis> not a big deal I wasn't using it
[21:34] <vivienschilis> that's why I asked :)
[21:34] <pasteeater> oh, duh. i now see you said libaaacplus, not libfaac
[21:51] <vivienschilis> pasteeater, related to libaacplus, does supports he-aac and he-aac v2?
[21:51] <vivienschilis> the web page is quite confusing
[21:51] <vivienschilis> does it*
[21:51] <pasteeater> vivienschilis: i don't know. burek would know.
[21:53] <vivienschilis> ok thx
[21:53] <burek> vivienschilis, why would you want he-aac
[21:53] <burek> withous ps
[21:53] <vivienschilis> I though it was depending on the nitrate 
[21:53] <vivienschilis> for middle nitrate 
[21:54] <vivienschilis> bitrate* 
[21:54] <vivienschilis> he-aac was better
[21:54] <vivienschilis> I might have read a bad article about it
[21:55] <vivienschilis> might question was more
[21:55] <vivienschilis> if I use -acodec aacplus
[21:55] <vivienschilis> It would use he-aac v2 by default?
[21:56] <JEEB> <vivienschilis> why is android not relying on faac? I think it use this one right? <- because faac is "officially" GPL, while vo-aacenc is payware, which was then licensed by Google under the BSD license. Google wants Android stuff to be BSD or similar
[21:57] <JEEB> Also, faac was found to be using reference implementation sources
[21:57] <JEEB> which is why it isn't even GPL compatible any more
[21:57] <JEEB> (since the reference implementation source code is not under a GPL-compatible license)
[21:58] <vivienschilis> hum thanks JEEB
[21:58] <relaxed> doesn't libaacplus suffer from that too? (using reference implementation)
[21:58] <JEEB> vo-aacenc seems to similarily contain the source code of the reference implementation, which is why IIRC it is considered GPL-incompatible... If I recall correctly
[21:58] <JEEB> yes
[21:58] <JEEB> so most of those encoders, if you enable them you can't give out your binaries
[21:59] <JEEB> because they're not (L)GPL compatible any more
[21:59] <Mista-D> where can one download a w32 build of FFserver please?
[22:22] <inashdeen> hi, i ran into this : Incompatible sample format '(null)' for codec 'mp2', auto-selecting format 's16'  . what might be the cause. thanks in advance :)
[22:43] <raven> hi
[22:43] <raven> possible to write mp3 files with 8 bit instead of 16?
[22:44] <Tjoppen> mp3 doesn't have bitdepth per se. we had a similar discussion in hear yesterday
[22:45] <Tjoppen> so no. it's all in the decoder
[22:45] <raven> ok i thought so
[22:45] <raven> tnx
[23:09] <pasteeater> inashdeen: use a pastebin site to show your ffmpeg command(s) and the complete console output(s)
[23:46] <Sorikan> Does anyone have or know of performance numbers when running ffmpeg on a dual core Atom system? Thanks.....
[00:00] --- Tue Nov 29 2011

More information about the Ffmpeg-devel-irc mailing list