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

burek burek021 at gmail.com
Mon Feb 27 02:05:01 CET 2012


[00:00] <lucas^> is there a list of those guidelines floating around somewhere?
[00:00] <JEEB> anyways, unless you're setting it yourself if you're getting high profile with an ipod-centric preset something's doing something wrong
[00:01] <lucas^> going to rerun my script and check to see what the command-line arguments actually are
[00:01] <JEEB> lucas^, there's really no guidelines, if it's 3GS level or newer you can just hit it like usual with level 4|4.1 high profile H.264 + AAC, otherwise encode level 3 baseline with 1000kbps vbv-maxrate/bufsize and hope it won't choke
[00:01] <lucas^> basically I'm writing a Python program to transcode, remux, tag, sub, clip commercials, etc. etc. from MythTV / WTV recordings automatically
[00:02] <lucas^> saw a bunch of iPod options in ffmpeg and figured, what the hell, why not support it
[00:02] <lucas^> while I'm here, libvpx crashes immediately in the latest SVN versions of ffmpeg on Windows - is that a known problem?
[00:03] <lucas^> don't think it happens in linux/bsd
[00:04] <JEEB> someone has mentioned some binaries doing that IIRC, but I don't remember anything else
[00:05] <lucas^> could be just a bad build then
[00:05] <lucas^> one other question, if you don't mind
[00:06] <lucas^> ffmpeg -i concat:foo.mpg|bar.mpg <-- this basically just directly joins the files without doing any other preprocessing?
[00:06] <Mavrik> yeah
[00:07] <lucas^> it works pretty well actually, but there seem to be some frames dropped, as programs like ccextractor will extract closed-captions which slowly drift out of sync with more clips concatenated
[00:07] <lucas^> I can't think of a good way to calculate just how many frames are lost
[00:07] <lucas^> the MythTV folks seem to do some additional processing, i.e., the last 10 seconds of foo.mpg and the first 10 seconds of bar.mpg or whatever get converted to i-frames
[00:08] <lucas^> is there a way to accomplish this sort of thing with ffmpeg alone?
[00:14] <lucas^> ha. found the problem, apparently I had some old preset files lying around
[00:25] <lucas^> -intra looks like it does exactly this, awesome
[11:06] <TheFuzzball> Hi, I'm trying to implement HTTP 206 partial content for a streaming service and I need to transcode some stuff, is it possible to feed ffmpeg part of a file to convert, or does it have options to transcode only a byte range?
[11:07] <Kartagis> hi
[11:07] <Kartagis> Error while opening encoder for output stream #0.1 - maybe incorrect parameters such as bit_rate, rate, width or height <--- how to fix this?
[11:08] <Kartagis> I've been trying to  extract audio tp mp3 from webm
[11:08] <Kartagis> s/tp/to/
[11:12] <rav0> what's yoru full command?
[11:14] <Kartagis> ffmpeg -i mhld9Pc3HnU.webm -f matroska -ar 128 -ab 44100 Dropbox/Public/Grup\ Seksendort-Simdi\ Hayat.mp3
[11:17] <Kartagis> rav0: ^^
[11:17] <rav0> -ar 128 -ab 44100
[11:18] <rav0> at least that needs to be soemthing like -ar 44100 -ab 128k
[11:18] <rav0> swapped, and the k added
[11:19] <rav0> er also you are saving a matroska file
[11:19] <rav0> to open as matroska, put the -f argument before the -i
[11:19] <rav0> simplest example would be ffmpeg -i foo.webm bar.mp3
[11:20] <Kartagis> hrm
[11:20] <Kartagis> ffmpeg -f matroska -i foo.webm bar.mp3 ?
[11:21] <rav0> yes
[11:21] <Kartagis> okay then
[11:43] <qxt> I am doing a lot of 2 pass encoding. Was wondering if there is a way to get pass 1 to use threading. Pass 2 automatically kicks threading into gear so no need for -threads 0 there.
[11:44] <qxt> A typical cmd would like like this
[11:44] <Kartagis> rav0: Seems stream 0 codec frame rate differs from container frame rate: 1000.00 (1000/1) -> 30.00 (30/1
[11:44] <qxt> ffmpeg -i movieIn.avi -pass 1 -vcodec libx264 -preset veryslow -b:v 1226.72134943k -f matroska -sn -an /dev/null && ffmpeg -i movie.avi -pass 2 -vcodec libx264 -preset veryslow -b:v 1226.72134943k -acodec libfaac -b:a 128k -ac 2 -sn -y movieOut.mkv
[11:49] <rav0> sorry, add -vn as well (no video)
[11:50] <Mavrik> qxt, as far as I know there are no encoders that do pass 1 analysis in multiple threads
[11:51] <rav0> x264's first pass is a regular encode with some features turned off, and a stats file written. i imagine it's threaded like any pass
[11:51] <theholyduck> x264 can cant it?
[11:51] <theholyduck> yeah its a simple encode
[11:52] <theholyduck> x264 usually doesnt need 2 pass though
[11:52] <theholyduck> crf makes more sense in almost all cases
[11:53] <qxt> Mavrik is this a technical issue. Remember when MT was a fork. As you know MT programming can be a real pain to program.
[11:54] <qxt> theholyduck I know its OK but I have to make files that fit onto a medium of lets say 450.0 MB at work.
[11:55] <theholyduck> qxt, then 2 pass it is
[11:55] <Mavrik> rav0, well, non of the libx264 versions I've used were capable of using different passes for analysis
[11:55] <theholyduck> Mavrik, theres more to 2 pass than just pure analysis though
[11:56] <Mavrik> what's your point?
[11:56] <theholyduck> Mavrik, just because the 2-3 lookahead processes arent threaded individually
[11:56] <theholyduck> it still uses your multicore pretty well
[11:57] <Mavrik> obviously all my monitoring tools on the transcoding farm are wrong then.
[11:57] <theholyduck> it doesnt use it as well as -
[11:57] <theholyduck> *--preset veryslow"
[11:57] <theholyduck> Mavrik, you're using it through ffmpeg?
[11:58] <theholyduck> all my experiences are with x264 itself
[11:58] <Mavrik> through ffmpeg and standard x264 (not the newest this one though)
[11:58] <Mavrik> it used only a single of 16 cores
[11:58] <theholyduck> Mavrik, hmm
[11:59] <theholyduck> honestly, i'm not too sure abut how it works in ffmpeg
[11:59] <Mavrik> if x264 fixed that now it's probably an ffmpeg issue
[11:59] <Mavrik> for us it's impractical to use x264 currently so single-threaded pass 1 is a small price to pay
[11:59] <theholyduck> Mavrik, well, previously, with ffmpeg
[12:00] <theholyduck> you had to  specify threads manually
[12:00] <Mavrik> which we do :P
[12:00] <theholyduck> to 16?
[12:00] <Mavrik> no
[12:00] <theholyduck> or to 0?
[12:00] <Mavrik> it depends on codec
[12:00] <theholyduck> cores*1.5 for xx264?
[12:00] <Mavrik> for libx264 the spec was 0 initialy
[12:00] <qxt> I guess you could moved the entire video into RAM and not have to worry about issues like that when I think about it. Going to really look into the code when I get some time.
[12:01] <Mavrik> but now we're setting it to 4 manually since otherwise the performance is crap
[12:01] <qxt> But you will need huge ram
[12:01] <theholyduck> Mavrik, hm, 0 usually works the best
[12:01] <theholyduck> unless you run multiple encodes at the same time
[12:01] <Mavrik> theholyduck, it didn't in my case
[12:01] <qxt> and it will save your ssd if you have one
[12:01] <Mavrik> it just used alot of time waiting for locks in kernel space
[12:01] <theholyduck> Mavrik, hmm
[12:01] <theholyduck> weird...
[12:01] <Mavrik> so running two transcodes at 4 threads instead of one at 0 threads resulted in way better performance
[12:01] <theholyduck> Mavrik, could be io i guess
[12:02] <theholyduck> depends on how fast each of your core is
[12:02] <Mavrik> that doesn't explain the performance of multiple concurrent transcodes :)
[12:02] <Mavrik> plus, the RAID array is pretty fast
[12:02] <Mavrik> it's a 3.0 GHz 8-core Hyper-threaded Xeon IIRC
[12:03] <theholyduck> Mavrik, hmm indeed.
[12:03] <theholyduck> how do you run ffmpeg on it?
[12:03] <Mavrik> theholyduck, yeah, it's pretty wierd
[12:03] <cbsrobot> Mavrik: can you test something for me on this machine ?
[12:03] <Mavrik> what do you mean "how"?
[12:03] <qxt> Is there a better way to grab the video_duration then doing this
[12:03] <theholyduck> commandline or simelar
[12:03] <qxt> video_duration=$(ffprobe -i blah 2>&1 | awk '/Duration/ {gsub(/,/, "", $2); split($2, a, /:/); print 3600*a[1] + 60*a[2] + a[3]}')
[12:03] <Mavrik> cbsrobot, it's a production machine, so no... in couple of months when we retire it to staging :P
[12:04] <theholyduck> qxt, i think mediainfo has some decent commandline output
[12:04] <cbsrobot> with test I mean do you have ffplay installed ?
[12:04] <theholyduck> outside of using ffmpeg. i dunno
[12:04] <theholyduck> *inside of using ffmpeg
[12:04] <cbsrobot> does ffplay recognize the hyperthreading ?
[12:05] <qxt> Yeah I am grabbing it out of the mediainfo and then converting it into seconds
[12:05] <theholyduck> qxt, mediainfo can atleast output plaintext. xml and stuff
[12:05] <theholyduck> qxt, mediainfo as in the app
[12:05] <Mavrik> theholyduck, ffmpeg -i <input> -codec:v libx264 -aspect <aspect> -vf scale=<size> -preset slow -sws_flags lanczos -g 75 -threads 4 -acodec libfaac -ab 128k -ac 2 -ar 44100 output.mp4
[12:05] <theholyduck> Mavrik, possibly the scale
[12:05] <Mavrik> could be yea
[12:05] <theholyduck> ffmpeg scalng is single threaded remember
[12:06] <theholyduck> might be libfaac aswell. i cant remember how fast it is
[12:06] <qxt> cbsrobot yeah it does if you are using a newer one. I'm on ffmpeg version N-33599-gb008ac1 built on Feb 25 2012 04:53:09 with gcc 4.6.2
[12:06] <Mavrik> libfaac is single-threaded anyway
[12:06] <theholyduck> Mavrik, yeah, but provided its fast enough, its fine
[12:06] <cbsrobot> qxt what machine ? how many cpus ?
[12:06] <theholyduck> lanczos resize is slow and scalingi s single threaded
[12:06] <Mavrik> for us it's ok since we have to transcode each file to about 4 or 5 output videos
[12:06] <Mavrik> so we just run it in parallel
[12:07] <theholyduck> Mavrik, well yaeh, if you hae a single threaded slowdown, its better to do it that way
[12:07] <theholyduck> i do the same when i do avisynth encoding
[12:07] <theholyduck> or atleast i did
[12:07] <cbsrobot> I have a xeon 2x6Core HT and ffplay  uses only 12 cores ....
[12:07] <theholyduck> i hear the new mt avisynth stuff is pretty decent
[12:07] <Mavrik> wonder if they'll let me enroll in GSoC for ffmpeg this year, I could fix some of those issues
[12:07] <theholyduck> Mavrik, thread the scaling stuff?
[12:08] <qxt> cbsrobot I am on a i7 2700 clocked up to 5Ghz using Debian wheezy
[12:08] <theholyduck> ffmpeg has always had a bit stupid interactions with x24
[12:08] <Mavrik> yeah, and fix some dshow input trouble I have with BM devices
[12:08] <theholyduck> *x264
[12:08] <cbsrobot> qxt  how many cores ?
[12:08] <qxt> cbsrobot 4 cores with ht
[12:08] <theholyduck> Mavrik, <BugMaster> all passes are multithread. so yes
[12:08] <theholyduck> <BugMaster> but at first pass there is slicetype decision which sometimes (--b-adapt 2 and a lot of B-frames) can become bottleneck
[12:08] <theholyduck> on x264 first pass threading
[12:09] <Mavrik> ah
[12:09] <cbsrobot> qxt: thanks - I will try again with the latest version
[12:09] <Mavrik> gotta open the issue with ffmpeg people then
[12:09] <qxt> cbsrobot if you are not sure about your how many cores you have or ht just do this
[12:09] <qxt> cbsrobot grep -c ^processor /proc/cpuinfo 2>/dev/null
[12:10] <theholyduck> Mavrik, too bad theres no way of using neroaac with ffmpeg
[12:10] <cbsrobot> qxt i'm on osx - maybe it's a osx bug
[12:10] <theholyduck> libfaac is pretty bad in comparison
[12:10] <lucas^> I use it in my program
[12:10] <theholyduck> Mavrik, i'm glad i'm mostly doing bd rips and stuff
[12:10] <Mavrik> theholyduck, yeah, that's annoying as hell
[12:10] <theholyduck> gives me time to encode video and audio seperatly.
[12:10] <qxt> cbsrobot hmm no proc in OSX. All the same BSD (don't kill me =P ) is a nice OS
[12:11] <Mavrik> theholyduck, we're using libaacplus for the low-quality outputs
[12:11] <Mavrik> makes alot of difference
[12:11] <lucas^> ffmpeg -y -i foo.mpg -vn -acodec pcm_s16le -f wav foo.wav
[12:11] <lucas^> neroAacEnc -q 0.3 -if foo.wav -of foo.aac
[12:11] <Mavrik> but sadly it's limited up to 64k of bitrate
[12:11] <theholyduck> Mavrik, atleast you guys arent dealing with avisynth
[12:11] <theholyduck> as much as i love, it, its a pain aswell
[12:11] <Mavrik> well... don't say too soon
[12:11] <theholyduck> single threaded SLOW filtering pass before encoding
[12:11] <theholyduck> slows everything down to a crawl
[12:12] <Mavrik> right now I have to get a solution that can grab images from Intensity Shuttles, transcode it and pass two streams up to Wowza
[12:12] <Mavrik> preferrably on laptop hardware :P
[12:12] <Mavrik> lucas^, that's nowhere near practical
[12:12] <Mavrik> lucas^, for automated transcoding
[12:12] <lucas^> well, uh, I just transcoded like 100+ TV episodes that way
[12:12] <theholyduck> Mavrik, well its doable with a fair bit of bash scripting, but not reliable no
[12:13] <lucas^> you could also pipe it, but I see no reason
[12:14] <theholyduck> lucas^, i've seen an approach like that bork if theres enough variation between your inputs
[12:14] <lucas^> variation? what do you mean
[12:14] <theholyduck> ofcourse, it shouldnt, because ffmpeg shouldnt drop frames. etc.etc
[12:15] <theholyduck> lucas^, in some cases with some inputs, if you split the audio off that way, it wont fit correctly with the video again
[12:15] <theholyduck> because of delays or what not specified in the container
[12:15] <theholyduck> that wasnt preserved
[12:15] <theholyduck> it wont happen on sane normal content, but who knows what Mavrik 's inputs are
[12:15] <lucas^> the raw MythTV / WTV recordings I have do all sorts of crazy things
[12:16] <lucas^> constant framerate changes, corrupted frames, etc.
[12:16] <theholyduck> lucas^, they usually dont have special metadata and what not.
[12:16] <lucas^> does VBI closed-caption data count?
[12:16] <theholyduck> lucas^, :)
[12:16] <theholyduck> 1 thing i know that occationally does flummux this approach
[12:17] <theholyduck> is if you take a video file, uses mkvmerge to split it or merge it
[12:17] <theholyduck> mkvmerge is a great tool for that, lets you losslessly split and merge almost anything
[12:17] <theholyduck> through mkv trickery
[12:17] <lucas^> I'm using ffmpeg to split / join to cut commercials, and Project-X to demux
[12:17] <theholyduck> but sometimes if you submit a video cut like that into a process like yours
[12:17] <theholyduck> you can end up with unsynced joins
[12:18] <theholyduck> lucas^, mkvmerge is faster, and 100% lossless and frame accurate
[12:18] <theholyduck> its impressive really
[12:18] <theholyduck> it even cuts audio and subtitles
[12:18] <theholyduck> correctly
[12:18] <lucas^> mkvmerge is for Matroska files
[12:18] <lucas^> my raw recordings are MPEG-2
[12:18] <theholyduck> lucas^, it takes any files as input
[12:18] <theholyduck> outputs .mkv yeah
[12:18] <lucas^> I spent god knows how long trying to get accurate cuts
[12:18] <theholyduck> lucas^, take a look at mkvmerge then?
[12:18] <theholyduck> it accepts mpeg2 input
[12:18] <theholyduck> i think it cuts it aswell
[12:19] <theholyduck> doesnt cut on frame but on a timestamp
[12:19] <lucas^> one problem is that if I use mkvmerge to cut, it's going to strip the VBI data
[12:19] <theholyduck> hh:mm:ss.nnnnnnnnnn
[12:19] <lucas^> ffmpeg -c copy -map 0:v -map 0:a doesn't
[12:19] <theholyduck> lucas^, possibly
[12:20] <lucas^> then I'd need to run ccextractor on each separate segment within the file
[12:20] <lucas^> and I know from experience that just doesn't work
[12:20] <lucas^> I'm already using mkvmerge to mux Matroska files, I'll have to check into it, maybe I could get a bit more accuracy out of it
[12:21] <lucas^> but for right now I have it about as close as I'm going to get it
[12:21] <lucas^> any idea if there are any MKV players that actually display metadata correctly?
[12:21] <theholyduck> doesnt mplayer and mpc-hc?
[12:21] <theholyduck> atleast chapter and stuff
[12:21] <theholyduck> works
[12:21] <lucas^> mpc-hc doesn't show anything
[12:21] <lucas^> doesn't have chapter support either, subs work fine
[12:21] <theholyduck> what sort of metadata?
[12:22] <lucas^> vlc supports subs and chapters, but shows all of three ID3-style metadata tags
[12:22] <theholyduck> i got mpc-hc showing chapters, subtitle track names and audio track names
[12:22] <lucas^> dumps the rest into an 'other info' tab, multiple ACTOR tags fail
[12:22] <lucas^> mplayer doesn't really show much of anything
[12:22] <lucas^> actually I think smplayer doesn't even play the damn file
[12:22] <theholyduck> lucas^, really?
[12:23] <lucas^> meanwhile, I mux to MPEG-4 and tag with AtomicParsley
[12:23] <theholyduck> it should, unless your mplayer is old and terrible.
[12:23] <lucas^> everything works beautifully on iTunes
[12:23] <theholyduck> lucas^, well, i dunno how many of them support idv3 stuff though
[12:23] <lucas^> haven't figured out the tag / subtitle format for WMP, VLC and MPC-HC work too
[12:23] <lucas^> I'm using the official tags listed on matroska's website
[12:24] <theholyduck> lucas^, most of them suport the info created/written by mkvmerge
[12:24] <lucas^> some of them like 'artist', 'record', etc. are more popular than others in terms of actually getting implemented in players
[12:24] <lucas^> basically the equivalent tags in ID3v1 for music
[12:25] <Mavrik> theholyduck, yeah, my inputs are "ANY horror a crappy half-pro camera can create and is then raped by an amteur with Cinelerra/Premiere/etc"
[12:25] <theholyduck> Mavrik, figured
[12:25] <Mavrik> which is slightly better than my previous description "ANY horror the broadcasters are capable of stuffing into MPEG2-TS" :(
[12:25] <Mavrik> I still wonder why I'm not an alcoholic after working in this industry
[12:26] <theholyduck> Mavrik, i would never consider doing videoo professionally
[12:26] <theholyduck> doing it as a hobby is fun
[12:26] <theholyduck> dealing with it in real life seems like suffering
[12:27] <theholyduck> sure, i have to deal with industry issues
[12:28] <theholyduck> especially the foundness some studios have for authirng their nice 1080p content as 1080i60 telecine
[12:28] <theholyduck> well not necesarily 1080p originally
[12:28] <theholyduck> but some sort of progressive content
[12:28] <theholyduck> so i have to ivtc the crap
[12:32] <lucas^> what sort of video filters should I use on ATSC content?
[12:32] <lucas^> I noticed that enabling a deinterlace filter in a video player helped quite a bit
[12:33] <theholyduck> lucas^, depends on the content
[12:34] <theholyduck> if its interlaced as in actually interlaced, then a deinterlacing filter is all you can do really
[12:34] <theholyduck> the slower the better
[12:34] <theholyduck> if its interlaced as in telecined
[12:34] <theholyduck> then you can ivtc it
[12:34] <theholyduck> if its some horrible mixture. you really really need avisynth
[12:34] <JEEB> you'd need something else but ffmpeg in any case if it's telecined
[12:35] <JEEB> since ffmpeg lacks an inverse telecine filter
[12:35] <lucas^> when watching lip movements in cartoons, I notice several horizontal lines of alternating colors
[12:35] <theholyduck> lucas^, well in cartoons, its usually a ivtc that sneeded
[12:36] <lucas^> I also noticed a cropdetect filter, that might be useful
[12:37] <theholyduck> not that i rember much of atsc and the net on this train is too bad to look up
[12:37] <theholyduck> but i'm asuming like with other telecined content, there is a pattern you can see
[12:38] <theholyduck> JEEB, you're better at this than me
[12:39] <theholyduck> seems like it should be the same as ntsc in that respect
[12:39] <theholyduck> open the video in mplayer. find a place with continous motion
[12:39] <theholyduck> and hit the . key
[12:39] <theholyduck> to step through the frames
[12:40] <theholyduck> if its telecined, you should see 3 good frames and 2 interlaced frames.
[12:40] <theholyduck> if its actually interlaced. all frames should be interlaced
[12:40] <theholyduck> if some horrible broken mixture
[12:40] <theholyduck> then who knows
[12:41] <lucas^> I'll have to try different filters and read up on it I guess
[12:42] <lucas^> thanks for your help man
[12:42] Action: JEEB usually makes people check field-by-field, but not sure if that can be easily done in anything else but Avisynth
[12:42] <JEEB> separatefields().selecteven() -> make a person check if he gets 1-2-3-4-4 or 1-2-3-4-5, then have him remove selecteven() and check if he gets the same picture twice (or two separate pictures)
[12:43] <theholyduck> JEEB, mplayer framestep works just as fine
[12:43] <JEEB> yes, but it doesn't let you see field-by-field
[12:43] <JEEB> only two fields stuck together :3
[12:43] <theholyduck> the pattern is still there
[12:44] <lucas^> wouldn't suppose there's a way to figure out the versions of various libraries in static ffmpeg builds?
[12:44] <lucas^> e.g., libx264, libvp8, libfaac, libvorbis
[12:48] <Mavrik> um, what exactly is telecine?
[12:51] <theholyduck> a way of converting progressive content into interlaced content
[12:51] <Mavrik> oh I see
[12:51] <theholyduck> normally its done on movies or cartoons/anime
[12:51] <theholyduck> to turn say 24p progressive
[12:51] <theholyduck> into 60i
[12:52] <theholyduck> using a 3:2 pattern
[12:52] <Mavrik> I see, just reading the article. Luckly never had to deal with that particular problem -_-
[12:54] <theholyduck> Mavrik, theres a good article if you're intrested
[12:54] <Mavrik> always :)
[12:54] Action: theholyduck goes to find
[12:54] <theholyduck> http://mod16.org/hurfdurf/?p=12 Mavrik
[12:57] <Mavrik> ooo, thanks
[13:04] <theholyduck> Mavrik, pretty good eh?
[13:04] <Mavrik> yeah, it's pretty neat
[13:05] <theholyduck> fluff writes some pretty decent stuff on video at times
[13:05] <Mavrik> now I just have to find some resources that deal specifically with PAL since I mostly handle that content :)
[13:05] <theholyduck> Mavrik, pal ivtc is easy enough
[13:05] <theholyduck> usually, they just interlace it plainly or speed it up
[13:06] <theholyduck> *and speed it up
[13:06] <theholyduck> or they introduce a duplicate field
[13:06] <theholyduck> every 12 frames?
[13:06] <Mavrik> yeah, that's probably why I've never had to deal with it
[13:07] <theholyduck> http://www.mplayerhq.hu/DOCS/HTML/en/menc-feat-dvd-mpeg4.html Mavrik
[13:07] <Mavrik> usually it's just sped up from
[13:07] <JEEB> 99%+ of all PAL stuff is sped up, yeah
[13:07] <theholyduck> some info on pal pulldowns
[13:07] <JEEB> then you have the few things that are telecined
[13:07] <Mavrik> most cameras I have lying around here record @ 25 fps (or 50i) anyway
[13:07] <JEEB> yeah
[13:07] <theholyduck> JEEB, i have SEEN one file with the PAL 2:2:2:2:2:2:2:2:2:2:2:3 pulldown
[13:08] <theholyduck> but i know its rare
[13:09] <Mavrik> hmm, here one source claims some people just push in 2 dups after every 48 frames
[13:09] <JEEB> also, PAL is a mixed bag in the case you get 30i content with actually either 30 or 60 pictures in a second there's really no pretty way of putting that into PAL
[13:09] <theholyduck> Mavrik, fields
[13:09] <theholyduck> probably
[13:09] <Mavrik> sorry, fields yeah
[13:09] <theholyduck> Mavrik, thats basicly what i mean.
[13:10] <theholyduck> "Every 12th frame is shown for the duration of three fields, instead of just two. This avoids the 4% speedup issue, but makes the process much more difficult to reverse. It is usually seen in musical productions where adjusting the speed by 4% would seriously damage the musical score."
[13:10] <theholyduck> i.e every 24th field
[13:10] <theholyduck> more or less
[13:14] <theholyduck> Mavrik, the wikipedia article is pretty good aswell
[13:14] <theholyduck> on telecine that is
[15:43] <pif> hi, can I losslessy cut a mp4 file with ffmpeg?
[15:52] <sacarasc> Probably, but I'm not sure how accurate it would be.
[15:53] <sacarasc> Unless ffmpeg has non-keyframe seeking now.
[16:29] <adv_> i have a video where a person is talking outdoors and some birds are chirping and there's some outdoor noise. is there a way to postprocess the video and make the human voice louder/more apparent ? or reduce somehow the external noise?
[16:34] <Kartagis> your best bet is play with it with equalizer
[16:35] <adv_> Kartagis, can you please elaborate?
[16:36] <cbreak> adv_: I've just seen someone in an other channel ask the same question
[16:36] <adv_> cbreak, it's me
[16:37] <Kartagis> adv_: open it with a video editor, and use equalizer to achieve what you want
[16:37] <cbreak> an equalizer is a combination of frequency filters
[16:38] <adv_> Kartagis, can you suggest one?
[16:39] <Kartagis> avidemux maybe
[16:39] <Kartagis> what cbreak said
[16:40] <adv_> avidemux and there is an equilizer "filter" in it?
[17:32] <pwlnw> hi! does -f rawvideo works ?
[17:32] <pwlnw> i try 2-pass h.264 and get Unable to find a suitable output format for 'rawvideo'
[17:36] <pwlnw> ok -f work.but -profile not.
[17:39] <pwlnw> what's wrong here http://pastebin.com/J8jqMmMz ?
[17:40] <pwlnw> profile still Main
[17:41] <pwlnw> this options work with libav, but libav broke another option - passlogfile
[17:41] <pwlnw> i need both or them
[17:48] <cbsrobot> pwlnw: try: -vprofile high -preset slow
[17:50] <cbsrobot> or the whole comand:
[17:50] <cbsrobot> ffmpeg -i defy.flv -v verbose -pass 1 -passlogfile 6412 -an -b:v 256k -vcodec libx264 -vprofile high -preset slow -level 30 -f rawvideo -y /dev/null
[17:51] <pwlnw> cbsrobot there are now more presets file in git!
[17:51] <pwlnw> wtf?
[17:52] <pwlnw> i do make install and have two libx264-ipod3*
[17:52] <cbsrobot> pwlnw: ffmpeg passes presets directly to x264: http://mewiki.project357.com/wiki/X264_Settings#preset
[17:53] <pwlnw> cbsrobot your variant still use Main profile
[17:53] <cbsrobot> skip the -level setting
[17:54] <pwlnw> cbsrobot still haven't. will build 0.10 ffmpeg so called "stable"
[17:56] <pwlnw> same shit with  0.10
[17:56] <pwlnw> where is preset files of x264 ?
[17:58] <cbsrobot> pwlnw: my guess would be that for pass 1 it does not matter
[17:58] <burek> pwlnw, what actually doesn't work for you?
[17:58] <cbsrobot> check pass 2 and see if it works
[17:58] <burek> pastebin is ok
[17:59] <pwlnw> oow. profile is not work on first pass
[17:59] <cbsrobot> pwlnw: but it's just a guess - not 100% sure
[17:59] <pwlnw> but I don't need anymore -pre:v ? where is 'slow.preset' files?
[18:00] <burek> there are no preset files anymore
[18:00] <burek> -preset -profile -tune are being directly passed to libx264
[18:00] <JEEB> http://mewiki.project357.com/wiki/X264_Settings#preset
[18:00] <JEEB> ^ list of libx264's internal presets
[18:19] <stf> does this "[matroska @ 0x202cc00] Application provided invalid, non monotonically increasing dts to muxer in stream 1: 3782 >= 3723" looks anyone of you familiar and solvable?
[19:31] <level09> cant get my ffserver to work
[19:32] <level09> I'm trying to stream a small mp4 file from my server
[19:33] <level09> Here is my config file http://paste.ubuntu.com/858151/
[20:41] <brontosaurusrex_> how would i scale/pad to certain resolution (in pixels) with par=1
[20:41] <brontosaurusrex_> ?
[20:42] <brontosaurusrex_> and the same for scale/crop?
[20:43] <brontosaurusrex_> (the input par must be identified/respected)
[20:45] <Mavrik> hmm
[20:45] <Mavrik> brontosaurusrex_, passing "-aspect" with full resolution to scale filter always made PAR 1 video for me
[20:47] <brontosaurusrex_> Mavrik: like -aspect 480:320 ?
[20:47] <Mavrik> like -aspect 1.666 or whatever your video aspect is :P
[20:48] <brontosaurusrex_> ok, then how to auto pad or auto crop?
[20:51] <relaxed> what is the source's par?
[20:53] <Mavrik> brontosaurusrex_, hmm, good question
[20:53] <brontosaurusrex_> relaxed: anything, i am scripting this
[20:54] <brontosaurusrex_> for starters i will try scale 480:-1 and see how many errors i get ...
[21:07] <brontosaurusrex_> lol, well, seems like 480:-1 is all thats needed actually, the phone will play files that are actually a bit larger than its screen size as well.
[21:08] <brontosaurusrex_> also the aspect seems to be preserved with -1
[21:10] <Mavrik> yes, but also PAR
[21:12] <brontosaurusrex_> nope, par is now 1 as it seems
[21:14] <brontosaurusrex_> hrm
[21:14] <brontosaurusrex_> actually not sure
[21:15] <brontosaurusrex_> you are right, par is also the same as input
[21:15] <MindSpark> hi, anyone here with an android phone and willing to help with transcoding rtmp to rtsp using ffserver?
[21:15] <MindSpark> been trying to get this done for over a week now without success
[21:16] <MindSpark> this rtmp://aljazeeraflashlivefs.fplive.net/aljazeeraflashlive-live/aljazeera_ara_med needs to be converted to something viewable by android, any hints?
[21:17] <brontosaurusrex_> Mavrik: so, any clues how to make output par to 1?
[21:17] <Mavrik> I did it by manually setting aspect ratio of output video
[21:18] <brontosaurusrex_> Mavrik: ok
[21:19] <brontosaurusrex_> MindSpark: uhmm, android phones are quite different i believe, different screen size, and so on, Iam just trying to make a workable preset for wildfire S right now
[21:39] <brontosaurusrex_> Mavrik: how about -vf scale=iw*sar:ih, scale=480:-1 ?
[21:39] <brontosaurusrex_> or -vf scale=iw*sar:ih,scale=480:-1,setsar=1:1 even?
[21:41] <MindSpark> brontosaurusrex_, is the videosize crucial for the video to display?
[21:41] <MindSpark> I am getting no video whatsoever
[21:41] <MindSpark> only audio
[21:43] <brontosaurusrex_> MindSpark: what is your command line right now?
[21:44] <brontosaurusrex_> would consequential resizes somehow merge, or are this separated operations?
[21:45] <MindSpark> brontosaurusrex_, I am using ffserver configuration file
[21:46] <MindSpark> brontosaurusrex_, http://pastebin.com/pWDwjBZt
[21:48] <brontosaurusrex_> MindSpark: uf, aim just using a preset and profile: -preset veryfast -profile baseline
[21:48] <brontosaurusrex_> where preset very fast denotes -refs=1
[21:48] <MindSpark> brontosaurusrex_, I recompiled ffmpeg on my ubuntu machine and I don't have any of those presets/profiles. Any idea where I can get them?
[21:48] <brontosaurusrex_> and since Iam the one that requested internal x264 presets, i'd rather stick with them ;)
[21:49] <brontosaurusrex_> MindSpark: they are built in
[21:49] <MindSpark> brontosaurusrex_, so I need nothing in the /.ffmpeg dir?
[21:50] <brontosaurusrex_> nope
[21:50] <MindSpark> can't find "profile" in the ffserver config though
[21:51] <brontosaurusrex_> Mavrik: -vf scale=iw*sar:ih,scale=480:-1,setsar=1:1  <- this works btw, just not sure how dumb it is
[21:51] <MindSpark> ffserver.mpeg.conf:19: AVPreset error: veryfast
[21:52] <MindSpark> hmm, did you mean MindSpark ?
[21:52] <brontosaurusrex_> MindSpark: i'd try to put that into videocoder options
[21:52] <Mavrik> brontosaurusrex_, that's double resizing though
[21:53] <MindSpark> brontosaurusrex_, what do I do?
[21:53] <brontosaurusrex_> Mavrik: yes
[21:53] <MindSpark> I am getting this error anyway
[21:53] <brontosaurusrex_> Mavrik: but in 99% of the cases my video is allready in par=1, so &.
[22:03] <MindSpark> they don't seem to be built in
[22:03] <MindSpark> I keep getting errors
[23:51] <brontosaurusrex_> anything smarter than : -vf scale=iw*sar:ih,scale=480:-1,crop=iw:"floor((ih/2)*2)",setsar=1:1 ?
[23:55] <burek> brontosaurusrex_, it depends
[23:56] <brontosaurusrex_> burek: basically i7d like scale1 and 2 in one step
[23:56] <brontosaurusrex_> *i'd
[23:59] <brontosaurusrex_> or a question: would 2nd scaling step be absolutely ignored if there is no scaling to be done?
[23:59] <brontosaurusrex_> i can't see any speed penalty, but not sure how to test properly
[00:00] --- Mon Feb 27 2012


More information about the Ffmpeg-devel-irc mailing list