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

burek burek021 at gmail.com
Thu Mar 21 02:05:01 CET 2013


[00:21] <Jordan_> do i need to worry about deinterlacing input when i convert to h264
[00:43] <llogan> Jordan_: what is the output going to be played on?
[00:43] <Jordan_> desktop
[00:45] <kangstarr> Jordon, if your source is interlaced and your target is TV you should maintain interlacing if you can
[00:46] <kangstarr> since your target is desktop i'd suggest deinterlacing the content using something like yadif before feeding the h264 encoder
[00:47] <kangstarr> you can maintain interlacing for desktop purposes but not all video players have deinterlacing filters which is why i suggest you deinterlace for a progressive output
[00:48] <llogan> Jordan_: http://ffmpeg.org/ffmpeg-filters.html#yadif
[00:50] <Jordan_> so -deint
[00:52] <kangstarr> Jordan_: use "-filter:v yadif"
[00:52] <kangstarr> no quotes
[00:53] <Jordan_> i'm already using -vf
[00:53] <kangstarr> then add yadif to the filter chain
[00:54] <kangstarr> -vf "yadif, scale=720:480, etc"
[00:54] <kangstarr> keep the quotes
[00:54] <Jordan_> got i
[00:54] <Jordan_> it*
[00:54] <kangstarr> :)
[00:57] <Jordan_> http://mewiki.project357.com/wiki/X264_Settings#resize i think i like this better than what i'm using, if i'm downscaling to lower resolution, i can set the new sar to 1:1 and it will do the conversion for me?
[00:58] <kangstarr> i always prefer to define all the parameters manually myself so i know what's going on
[00:58] <kangstarr> but choose whatever scaling process you want
[00:59] <Jordan_> fittobox height setting
[01:01] <kangstarr> sure, that will make sure your image is scaled to the height you specify, scale the width to maintain the proper aspect ratio at an sar=1:1
[01:01] <Jordan_> yea, do i do that in vf?
[01:02] <kangstarr> that is part of the x264 filter chain...which is not to be confused with the ffmpeg filter chain
[01:04] <Jordan_> i see so how do i apply that?
[01:06] <kangstarr> are you using ffmpeg built with x264?
[01:06] <Jordan_> yes
[01:07] <Jordan_> nvm this works too scale=trunc(oh*dar/hsub)*hsub:240
[01:07] <kangstarr> --x264opts will allow you to specify any x264 specific options
[01:08] <Jordan_> would there be any benefit to use either one or would they be the same?
[01:08] <kangstarr> with ffmpeg you can specify the scaling algorithm you want to use
[01:09] <kangstarr> can't remember off the top what x264 uses for its scaler
[01:09] <kangstarr> for downsizing i always prefer to use the lanczos scaler
[01:09] <kangstarr> it's better than the default bicubic scaler
[01:09] <kangstarr> just a little slower
[01:10] <kangstarr> ahh, you can set the scaler method in x264 as well...
[01:10] <kangstarr> method (Default bicubic): when resizing frames, use the specified resizer method fastbilinear, bilinear, bicubic, experimental, point, area, bicublin, gauss, sinc, lanczos, spline
[01:11] <kangstarr> i'd suggest using lanczos for downscaling, whichever way you choose to scale
[01:15] <Jordan_> I don't see how to set the scale mode for -scale
[01:19] <kangstarr> -sws_flags lanczos
[01:20] <kangstarr> make sure that comes before your -scale parameter
[01:20] <Jordan_> is that in -vf?
[01:20] <kangstarr> actually, it can come after the scale parameter
[01:20] <kangstarr> no...it's its own parameter
[01:21] <kangstarr> example: -vf scale=1920:1080 -sws_flags lanczos .....
[01:26] <Jordan_> i'm trying to figure out a good size to downscale to, my candidates are 240p,320p,360p.  I first thought this would reduce the size on disk and allow for better seeking, because I require fast seeking.  And the seeking is true, but the size really isn't affected as much as i thought
[01:27] <kangstarr> the size is affected by your rate control setting / bitrate settings on the x264 side
[01:27] <kangstarr> 240,320 and 360 should be your widths...not heights
[01:28] <kangstarr> can you copy/paste your ffmpeg command?
[01:29] <Jordan_> why widths?
[01:29] <Jordan_> i'm setting heights, and allowing the scale to figure the width based on the aspect ratio
[01:30] <Jordan_> ffmpeg -i "C:\Users\Jordan\Desktop\Video\00007.mts" -c:v libx264 -pix_fmt yuv420p -r 12 -g 250 -vf "yadif, scale=trunc(oh*dar/hsub)*hsub:240" -sws_flags lanczos -crf 23 -maxrate 400000 -bufsize 800000 -preset slower -tune fastdecode -an 240h-fps12-g5s-slower-crf23-fastdec.mp4
[01:33] <kangstarr> so you want to tweak your maxrate and bufsize settings
[01:33] <kangstarr> you're encoding at 40 mbps peak (which is as high as bluray)
[01:34] <Jordan_> to it's 400k
[01:34] <kangstarr> oh nm
[01:34] <kangstarr> you have crf set to 23 that's why
[01:35] <Jordan_> but the rate is 400k not 400000k
[01:35] <kangstarr> that's your maxrate
[01:35] <kangstarr> what is the final file size?
[01:35] <kangstarr> and what is the duration?
[01:35] <Jordan_> well 2min ~4mb
[01:35] <kangstarr> i made a mistake with 40mbps
[01:37] <kangstarr> 4mb is about correct for crf 23 and 400k peak
[01:37] <kangstarr> if you do the math...
[01:39] <kangstarr> 120 s * 400000 bps = 48,000,000 bits ~ 6,000,000 bytes ~ 6 mbytes
[01:40] <kangstarr> you're getting about 4 mbytes which makes sense
[01:40] <kangstarr> if you want to change the size on disk, change the crf number higher, or just go with a 2-pass vbr encode instead
[01:41] <Jordan_> my goal is to get the size down, fast decoding, without much loss in quality
[01:41] <kangstarr> now you're getting into the art of encoding :)
[01:42] <Jordan_> well lowering the fps helps some
[01:42] <kangstarr> is this going to be delivered over the internet?
[01:42] <Jordan_> no
[01:42] <kangstarr> or strictly played locally on a computer?
[01:43] <kangstarr> you have to give up some encoding efficiency if you're going to want fast decoding
[01:43] <Jordan_> locally
[01:44] <kangstarr> you can gain anywhere from 5-15% efficiency if you use CABAC, but your CPU requirements on the decode side will go up as well
[01:44] <Jordan_> well i've found lower resolutions help most with fast seeking
[01:44] <kangstarr> yes, lower resolutions will help with CPU decode requirements
[01:44] <kangstarr> if you want fast seeks you want to have a smaller GOP size
[01:44] <Jordan_> then i can make my gops larger
[01:45] <Jordan_> with the lower resolutions i don't need to lower it i found
[01:45] <Jordan_> the higher you go the lower gop you need
[01:45] <Jordan_> also fastdecode allows a higher gop
[01:46] <Jordan_> with larger gops you can get better quality give the contraint
[01:47] <Jordan_> but the lower resolution, seems to max out the upper quality you can get
[01:47] <kangstarr> you've found the crux of the issue :)
[01:47] <Jordan_> yup
[01:48] <kangstarr> you have to make a concession at some point on what is acceptable in quality with the requirements you have
[01:48] <kangstarr> aka "the art" of encoding
[01:48] <kangstarr> and to be able to get the best quality
[01:48] <Jordan_> yea, the fps seems to be a good target
[01:48] <kangstarr> yea, lowering your fps is a good start if it's not a requirement
[01:49] <Jordan_> but it doesn't help as much as i thought
[01:49] <kangstarr> lol
[01:49] <kangstarr> it will up your quality
[01:49] <kangstarr> as opposed to encoding at full frame rate
[01:49] <Jordan_> just means there will be more information in each frame
[01:49] <kangstarr> if you don't change your crf and bitrate settings
[01:49] <kangstarr> exactly
[01:49] <kangstarr> file size is determined by your rate control method and bitrate/vbv settings
[01:50] <kangstarr> you're better off encoding a 2-pass VBR if you really want to maximize size
[01:50] <kangstarr> get rid of the crf parameter
[01:50] <Jordan_> maybe i'll try that
[01:51] <Jordan_> does it take 2x as long to run?
[01:51] <kangstarr> the 1st is usually faster than real-time
[01:52] <kangstarr> the 2nd pass can be faster or longer than real-time depending on your settings
[01:52] <kangstarr> and yes, it takes longer to run than a single pass
[01:52] <kangstarr> but 2-pass is more efficient since it knows which scenes need more bits
[01:54] <Jordan_> but i read 2 pass won't give you better quality than crf
[01:54] <kangstarr> but it's more efficient than CRF
[01:54] <kangstarr> you'll end up with a bigger file with CRF
[01:55] <kangstarr> in 2-pass you set the average bitrate so you can control the final file size
[01:56] <kangstarr> CRF is good if you want to preserve quality
[01:56] <kangstarr> 2-pass VBR is good if you want to crunch the file down to something smaller
[01:57] <kangstarr> try setting your CRF value to something like 26 or 28
[01:57] <kangstarr> you have to experiment since not all source files are the same and they all have different charcateristics which make them easy/hard to encode
[02:01] <kangstarr> gotta run, i'll talk to you later.
[06:21] <elkng> can ffmpeg extract subtitles from mkv ?
[06:24] <ubitux> yes
[06:25] <elkng> how ?
[06:25] <elkng> -dump_attachment:t:0 ?
[06:26] <ubitux> ffmpeg -i in.mkv -c:s copy out.ass
[06:27] <elkng> why they call it "ass" ?
[06:27] <ubitux> because that's fun
[06:28] <ubitux> https://en.wikipedia.org/wiki/SubStation_Alpha
[06:28] <elkng> it says: "Output file is empty, nothing was encoded (check -ss / -t / -frames parameters if used)"
[06:31] <elkng> the command: http://sprunge.us/jPTT the output: http://sprunge.us/QSUS
[06:32] <ubitux> this is very old
[06:33] <ubitux> and thus likely the reason it fails
[06:33] <ubitux> 0.11, 0.12, 1.0, 1.1 and 1.2 got release since then
[06:33] <ubitux> try to upgrade
[06:51] <elkng> what is more fresh ?  FFmpeg 1.1.4 "Fire Flower"   or    FFmpeg 1.2 "Magic"   ?
[06:52] <elkng> or those are different branches ?
[06:52] <elkng> the "1.1.4" was released on 2013-03-18 after "1.2" version
[06:52] <elkng> is it fresher ?
[06:52] <ubitux> it's a revision release
[06:52] <ubitux> take 1.2
[06:53] <elkng> why do one need revision of 1.1.4 if all new stuff goes in 1.2 anyway ?
[06:53] <ubitux> that's call maintaining an old release
[06:54] <ubitux> because api/abi compatibility is not maintained between releases
[06:54] <ubitux> some fixes are sometimes backported to old release
[06:54] <ubitux> and then you get a new revision for the old release
[09:53] <pr0digy1> hello
[09:54] <pr0digy1> i have a questions about ffmpeg api, more directly with drawbox, can anyone try and help me out?
[10:00] <pr0digy1> I would like to recreate the following command in code "ffmpeg -i in.mp4 -vf "drawbox=0:0:100:100: red at 1.0:290" -qscale 0 -y out.mp4".  Can anyone give me some pointers on where to start and what api's to look at?
[10:04] <kaffeebohne> Hi, i still have got a problem with avisynth and ffmpeg. :( http://paste42.de/47a319e6116b2f22d1fc8e68c6f970d5/5151/ (ffmpeg stops with an "input/output error")
[10:19] <relaxed> kaffeebohne: add -v debug
[10:28] <kaffeebohne> ok relaxed :)
[10:53] <praveenmarkandu> hi
[10:53] <praveenmarkandu> is mpeg-ts a patented technology?
[10:54] <praveenmarkandu> does it fall under the mpeg2 patent?
[10:58] <Bor0> could anyone explain me this piece of code (h264.c) http://pastebin.com/MwwAM6U4. in what cases will the if() clause fail?
[10:59] <Bor0> what's the meaning of those variables?
[11:04] <kaffeebohne> Strange, with -v debug it works. o.0
[11:05] <kaffeebohne> And it encoded a 30fps-video which runs 15 minutes in 15 minutes but with 14fps..
[11:05] <kaffeebohne> oh, no
[11:05] <kaffeebohne> thit was wrong
[11:05] <kaffeebohne> but it worked
[11:15] <praveenmarkandu> #mpegla
[11:20] <elkng> is ffmpeg developed by some company or all developers are scattered all over the world and doing it for free ?
[11:23] <praveenmarkandu> the later
[11:25] <JEEB> do note that the ffmpeg does have a software license tho
[11:25] <JEEB> so there are some rules you have to abide to
[11:25] <JEEB> if you want to use ffmpeg
[11:25] <JEEB> it is either LGPL or GPL depending which components you choose to enable
[11:35] <Guest48296> Hello there, Is there any way to obtain the packages from av_read_frame() ordered by PTS instead of DTS? Maybe some flag or whatever...
[11:35] <onto> Hi! I am trying to use libav* to create a simple program to capture audio + video. I am following the tutorial here (http://dranger.com/ffmpeg/ffmpegtutorial_all.html) and here is my code so far (http://pastebin.ca/2336458)
[11:35] <onto> However it cannot open "/dev/video0"
[11:38] <Mavrik> Guest21475, nope
[11:38] <Mavrik> Guest21475, wouldn't make any sense anyway
[11:38] <Mavrik> you can't decode video in PTS order
[11:39] <Guest48296> But we have a hardware decoder external from the ffmpeg decoder and it seems that it will reorder the packages accordingly. If it receives another order (by DTS like av_read_frame does) it doesn't work.
[11:39] <Mavrik> onto, you're not telling the input context that you have a v4l source that has to be enabled
[11:40] <Mavrik> onto, and IIRC ffmpeg won't guess it for v4l sources
[11:40] <Mavrik> Guest21475, use a heap then
[11:40] <onto> Mavrik: how would I do that?
[11:41] <Guest48296> That was what I was thinking but I was trying to avoid that as it may create audio/video desynchronization
[11:41] <durandal_1707> onto: what OS are you?
[11:41] <Mavrik> try passing AVFormat to avformat_open_input
[11:41] <Mavrik> onto, if that fails, check ffmpeg.c source code on how they handle "-f" parameter
[11:41] <Mavrik> when opening input
[11:42] <Mavrik> Guest21475, hmm, why would it create desync if you're ordering packets in presentation order?
[11:42] <Mavrik> the packets have to be reinterleaved on output anyway
[11:42] <onto> durandal_1707: ubuntu 12.04
[11:43] <Guest48296> Mavrik: But the problem only affects video and not audio. So my idea was to use the heap only for video.
[11:43] <onto> Mavrik: ok
[11:43] <Guest48296> Mavrik: I tried with av_interleaved_write_frame to an intermediate memory buffer. But it complains about Application provided invalid, non monotonically increasing dts to muxer in stream
[11:44] <Mavrik> Guest21475, if you're doing reordering do it on both streams
[11:44] <Mavrik> or you'll have hell to pay
[11:45] <Mavrik> also, you're not allowed to pass DTS which don't increase monotonically into most demuxers
[11:45] <Mavrik> so if you have a broken encoder
[11:45] <Mavrik> you'll have to do reordering on the output as well
[11:45] <Guest48296> Mavrik: Ok then. I'll try to reorder the packages by PTS manually for both streams. Thank you for your time.
[11:46] <Mavrik> also, kicking your decoder designers into their heads is appropriate ;)
[11:47] <Guest48296> Mavrik: I'll send regards from you :)
[11:48] <durandal_1707> onto: and you do not have videoX in /dev ?
[11:49] <onto> durandal_1707: I do
[11:51] <durandal_1707> and it is ?
[11:53] <Mavrik> durandal_1707, you can't just read video0 without enabling input with v4l ctl first
[11:53] <Mavrik> he needs to initialize video4linux2 format
[11:54] <onto> Mavrik: finding AVInputFormat using av_input_find_format("v4l2") gives a segmentation fault
[11:54] <onto> durandal_1707: /dev/video0
[11:56] <Mavrik> onto, hmm, it definetly shouldn't
[11:56] <Mavrik> onto, what does gdb say?
[11:57] <durandal_1707> onto: perhaps you do not have permissions
[11:57] <onto> Program received signal SIGSEGV, Segmentation fault. 0x00007ffff7b88c0a in avformat_open_input () from /usr/lib/x86_64-linux-gnu/libavformat.so.53
[11:57] <onto> durandal_1707: I'll try running as root
[11:57] <durandal_1707> ahh 53 is really old
[11:58] <durandal_1707> update your ffmpeg
[11:58] <Mavrik> onto, yeah
[11:58] <Mavrik> onto, and do yourself a favour
[11:58] <Mavrik> compile ffmpeg with "--enable-debug --disable-stripping"
[11:58] <Mavrik> so you'll be able to see what goes wrong when something crashes
[11:58] <onto> Mavrik: ok, I'll compile ffmpeg from source then (this is from the repository)
[11:58] <Mavrik> wow
[11:58] <Mavrik> that's ancient :)
[11:59] <onto> Yeah, ubuntu repository is quite slow, I'll probably use a PPA next time. Thank you for the help though.
[12:00] <onto> Is there a definitive guide to libav*?
[12:05] <Mavrik> onto, sadly... not really :\
[12:05] <Mavrik> onto, official doxygen is your greatest friend
[12:05] <Mavrik> onto, there are examples in "doc/examples" in ffmpeg source
[12:05] <Mavrik> and ffplay.c / ffmpeg.c are your fallbacks
[12:10] <onto> Mavrik: ok! I will look into those as well! Thank you again.
[15:54] <divVerent> JEEB: found the N900 issue
[15:54] <divVerent> it was user error, I used refs=6 where the level only allows 5
[15:55] <divVerent> it's odd that some other files with the same error DID play
[15:55] <divVerent> but I will take that as oddness then and rather fix my use of refs=
[15:55] <divVerent> mixed-refs, trellis were found to NOT fix the playback issue on the same file (but they do delay the playback abort by a few frames)
[15:58] <divVerent> is it generally "safe" quality-wise to use higher refs?
[15:59] <divVerent> or can higher refs potentially worsen quality/increase size?
[15:59] <divVerent> to ME it sounds like nit can only get better at higher refs, not worse
[16:15] <divVerent> jeeb: what refs is refs=2,tune=animation,refs=3 supposed to set?
[16:16] <divVerent> currenltly it sets 3
[16:16] <divVerent> but refs=2,tune=animation sets 4 in x264 and 2 in ffmpeg :P
[16:16] <divVerent> because x264 applies stuff from left to right, and ffmpeg in fixed order
[16:17] <divVerent> (with tunes first)
[18:16] <reindeer> Q: Im trying to combine three audio streams into one myfile.mka, what is the correct ffmpeg syntax, thanks!
[18:22] <reindeer> so im trying to make a 3 channel MKA file, with just copy encoding, no re-encoding of mp3 audio stream, any helps?
[18:23] <reindeer> i have tried for the -map options from the ffmpeg wiki but wont seem to work
[18:25] <reindeer> and for what i've understand, mapping three inputs without re-encoding, should be simple
[18:25] <Mavrik> what's an "mka" file?
[18:26] <reindeer> matroska audio file
[18:26] <Mavrik> ah, I see
[18:26] <reindeer> supports multiple channels
[18:29] <Mavrik> that should work
[18:29] <Mavrik> can you show your output please?
[18:29] <Mavrik> with the command line
[18:32] <reindeer> im getting "Unrecognized option 'c:a:0' "  when i try to map the inputs to outputs with  " -map 0:0 -map 1:1 -map 2:2  -c:a:0 copy ... etc"
[18:33] <Mavrik> full output.
[18:33] <Mavrik> please.
[18:33] <Mavrik> with command line
[18:33] <reindeer> im running ffmpeg 0.7.6
[18:40] <iive> reindeer: the latest release is 1.2
[19:01] <reindeer> so its not possible when running ffmpeg 0.7.6?
[19:03] <iive> reindeer: try with -acodec instead of using c:a:0 these are new syntax elements
[19:04] <iive> reindeer: Mavrik already asked you for your full command line, don't ignore him.
[19:04] <reindeer> Mavrik: can not post, sorry
[19:07] <reindeer> iive: i tried -acoded and it works past that error, not its comlaining about input output maps must match.. I mean i have 3 inputs that should go to this one output file, should not be too hard to 'map' for ffmpeg
[19:07] <reindeer> acoded-> acodec,  not->now
[19:09] <reindeer> and actually it does not matter what my version is, what errors i have in my commands, what is my output etc..there is still one simple command to do this thing, thats what im after.
[19:09] <reindeer> hence my first question.
[19:23] <mark4o> reindeer: there are many reasons for asking for the output.  one is to clarify exactly what you are doing.  the output usually explains it a lot better than trying to explain in english.  for example if you have audio only, with your 3 audio inputs in 3 separate files with one stream each then it would be -map 0:0 -map 1:0 -map 2:0 (or just -map 0 -map 1 -map 2)
[19:27] <Jordan_> is there a way to estimate the duration and size of transcode based on all the input options?
[19:28] <reindeer> mark4o: agreed. That is what i have exactly, now how to output that so that it wont complain "number of stream maps must match number of output streams"
[19:40] <llogan> Jordan_: you can estimate size depending on the options you use
[19:40] <Jordan_> well at the moment i'm using -crf so i'm not setting a bitrate
[19:41] <llogan> then the answer is "no"
[19:42] <Jordan_> what about length of transcode
[19:42] <Jordan_> time to transcode
[19:42] <Jordan_> like the -medium -slow -slower
[19:43] <Jordan_> it appears the lower the resolution i output the faster it encodes
[19:43] <Jordan_> as well
[19:44] <Jordan_> i suppose what i could do is do a sample transcode of 10 seconds and analyze that
[19:48] <llogan> it depends on your encoding settings, your hardware, your ffmpeg/x264 configuration, and the complexity of your input, and probably some other things i forgot
[20:03] <tuxy> what tools can I use to get info of a mkv using cli on linux?
[20:03] <JEEB> mkvinfo and ffprobe
[20:04] <sacarasc> Or mediainfo
[20:04] <sacarasc> Which does it for just about everything.
[20:04] <tuxy> mediainfo has a cli?
[20:04] <sacarasc> Yes.
[20:05] <JEEB> mediainfo can also fail a lot of stuff
[20:06] <JEEB> which is why I'd be vary of it when looking for certain info
[20:07] <tuxy> when it says overall bitrate 11.9 Mbps on a CRF encode, that's probably wrong, right?
[20:07] <Jordan_> when i use two tune settings do i use -tune fastdecode -tune film?
[20:07] <Jordan_> separately
[20:18] <reindeer> Ive tried many commands but allways some error message, so this cant be very difficult to basically do:
[20:18] <ocrete>  /clo
[20:19] <reindeer> ffmpeg -i url1 -i url2 -i url3 -map 0 -map 1 -map 2 -acodec copy output.mka
[20:21] <reindeer> so what is the correct syntax for that kind of command?
[20:24] <reindeer> this seems to be a quite difficult subject..
[20:26] <Mavrik> look
[20:26] <Mavrik> if you can't help us help you
[20:26] <Mavrik> then go read the damn docs.
[20:28] <llogan> in other words...
[20:32] <reindeer> yeah, i know about pastebin, but this is just a simple command just like "ffmpeg -i file.avi -sameq file.flv" so how complicated can this be? If you would have to write the command how would you do it?
[20:39] <llogan> i would not use sameq because it no longer exists (and never meant same quallity)
[20:40] <llogan> but without the console output nobody can help you as mentioned multiple times
[20:40] <llogan> we are all volunteers here, and asking for help without providing enough detailed information is just a waste of time for us and you
[20:46] <llogan> "my car is broken. how do i fix it?"
[20:46] <llogan> what is wrong with it?
[20:46] <llogan> "who cares. tell me how to fix it"
[20:47] <frogs> gooday fokes
[20:48] <Jordan_> does this look right? -x264opts resize:fittobox=height=240
[20:51] <llogan> ive never seen anyone use -x264opts resize.
[20:52] <frogs> git commit df804041bd42 has broken vdpau for mplayer. is this mplayer or ffmpeg issue?
[20:59] <brontosaurusrex> <llogan> "my car is broken. how do i fix it?" , llogan , please park your car in my living room and of course take the engine out, otherwise i can't help you ;)
[21:03] <Jordan_> should i favor a lower gop for faster seeking than the -tune fastdecode
[21:07] <llogan> Jordan_: i don't think fastdecode changes default -g/--keyint
[21:07] <Jordan_> yes i know
[21:07] <intracube> hi, I'm trying to convert a directory of jpeg2000 images to a video. Other image formats (jpg, png, etc) work fine, but not had much luck here.
[21:08] <intracube> more details and errors here: http://pastebin.com/tpVbjs32
[21:09] <Zeeflo> hey guys
[21:09] <Zeeflo> is libx264 the same as h.264?
[21:09] <hughmanwho> The biggest difference between the two as I understand it is licensing
[21:10] <Zeeflo> currently i use  -c:v libx264
[21:10] <Zeeflo> some devices say they only support h.264
[21:10] <Zeeflo> would this be a problem?
[21:10] <Zeeflo> isnt x264 the same??
[21:10] <sacarasc> x264 is an encoder of H264.
[21:10] <Zeeflo> what do you mean?
[21:11] <Zeeflo> is it the same?
[21:11] <hughmanwho> x264 allows you to decode/encode H264
[21:11] <sacarasc> It outputs H264.
[21:11] <llogan> hughmanwho: x264 is not a decoder.
[21:11] <hughmanwho> Only encode?  Not Decode?
[21:11] <hughmanwho> k
[21:11] <Zeeflo> guys..
[21:11] <Zeeflo> im confused..
[21:11] <llogan> ffmpeg has a native H.264 decoder
[21:11] <Zeeflo> is x264 the same?
[21:12] <sacarasc> Zeeflo: NO! IT IS AN ENCODER. IT ENCODES H264 STREAMS.
[21:12] <frogs> x264 is a software project
[21:12] <Zeeflo> if a TV only supports MP4 with h.264 encoding, is libx264 sufficient?
[21:12] <sacarasc> Coke and Pepsi are both cola drinks, but not the same.
[21:12] <frogs> x264 encodes video to h.264, but there are other encoders available as well. and x264 is not a decoder
[21:12] <Zeeflo> the question is pretty simple...
[21:13] <llogan> Zeeflo: ffmpeg only supports one H.264 encoder and that is "libx264". if you want to make H.264 video, then you'll need to use libx264 as the encoder.
[21:13] <sacarasc> And we're giving you the simple answer. x264 is an enocder. It encodes H264 streams.
[21:13] <Zeeflo>  -c:v libx264
[21:13] <Zeeflo> this one right?
[21:13] <Zeeflo> llogan,
[21:13] <llogan> yes
[21:13] <Zeeflo> this produces h.264
[21:13] <Zeeflo> ok
[21:13] <Zeeflo> then its the manufacturer of the smart tv who has the problem.. not me :)
[21:14] <Zeeflo> thanks for the answer :)
[21:15] <mark4o> Zeeflo: H.264 has many different profiles.  Most devices do not support all of them.
[21:15] <Zeeflo> im not using a profile
[21:15] <Zeeflo> my encode command is:
[21:15] <brontosaurusrex> drums
[21:15] <mark4o> The default is high profile so you are probably using that.
[21:16] <Zeeflo> ffmpeg -i FILE.mkv -map_chapters "-1" -map "0:0" -map "0:1" -sn -vf "scale=1280:720" -c:v libx264 -metadata title=BLABLA -b:v 1800k -maxrate 1800k -bufsize 3200k -c:a aac -strict experimental -ac 2 -b:a 128k -movflags +faststart FILE_720p.mp4
[21:16] <Zeeflo> yes, if its the default, then thats what I use
[21:16] <hughmanwho> I currently have ffmpeg decoding H264 video, however it seems to be skipping every 16 frames, which seem to be the iframes based on the message I'm getting
[21:17] <mark4o> Your tv may not support high profile.  You could try baseline profile to see if it supports that.  Or it may have only support a limited bitrate.  Check the tv specs to see what it claims to support.
[21:18] <Zeeflo> it supports MP4 HP
[21:18] <hughmanwho> Anyone have any ideas on how to fix that? Does ffmpeg support any other H264 decoders?
[21:18] <Zeeflo> HP i guess stands for high profile
[21:18] <Zeeflo> sound is AAC stereo, no problem there
[21:19] <brontosaurusrex> Zeeflo, my tv doesnt like 5 b-frames for example (it can happen if content is anime-like)
[21:19] <Zeeflo> it wont play the streamed file though
[21:19] <Zeeflo> a baseline profile, wouldnt that make the picture quality terrible?
[21:20] <Zeeflo> Ah wait..
[21:20] <Zeeflo> Isnt a streamed MP4 with rtmp converted on the fly to FLV???
[21:21] <Zeeflo> when its to a flash player..
[21:21] <Zeeflo> Ah.. I dunno.. It looks like my encoding is just as it should be..
[21:21] <Zeeflo> I cant be bothered with 1000 different smart tv's and all their different requirements..
[21:22] <Zeeflo> im off to bed, have a good one fellas
[21:22] <llogan> just use baseline for max compatbility and hope for the best.
[21:23] <Zeeflo> where would I tell ffmpeg to use baseline?
[21:23] <Zeeflo> in the c:v ?
[21:23] <Zeeflo> -profile baseline ?
[21:23] <llogan> -profile:v baseline
[21:23] <Zeeflo> got it
[21:24] <Zeeflo> ill try and see if it would make a difference, but not losing quality
[21:24] <brontosaurusrex> Zeeflo, can you pastebin the output of mediainfo yourcurrentfile.mp4?
[21:24] <Zeeflo> i could
[21:26] <Zeeflo> http://pastebin.com/0ySeN1U3
[21:26] <hughmanwho> I am using code not console, does anyone here have any coding experience using ffmpeg as a library?  Just want to know before I spend a lot of time copying stuff to pastebin
[21:27] <brontosaurusrex> Zeeflo, doesnt tell a lot, mediainfo not installed?
[21:27] <Zeeflo> nah
[21:27] <Zeeflo> debian production server
[21:28] <hughmanwho> Or simply know of any other decoders supported by ffmpeg which would allow me to try to connect to them instead of using CODEC_ID_H264 as my decoder?
[21:28] <Zeeflo> is it in the dvd-rw tools?
[21:29] <brontosaurusrex> Zeeflo, example, http://paste.debian.net/plain/243207
[21:30] <Zeeflo> I cant find any mediainfo packages in the repositories
[21:30] <brontosaurusrex> i have it in wheezy
[21:30] <llogan> mediainfo is often wrong. just use ffprobe or ffmpeg
[21:30] <Zeeflo> im used to only use ffprobe
[21:31] <brontosaurusrex> llogan, ffprobe doesnt seem to show # of referenced frames
[21:31] <Zeeflo> anyways, ill try to encode some videos with the -baseline profile after this weekend and see if some of our customers can view it on their god damn smart tv's browsers..
[21:31] <llogan> hughmanwho: try the libav-user mailing list
[21:31] <llogan> http://ffmpeg.org/mailman/listinfo/libav-user
[21:32] <hughmanwho> Thanks llogan!
[21:54] <Jordan_> if i remove audio, i don't need a container format? how do i do that in ffmpeg?
[22:06] <luc4> Hi! I'm writing a player which uses ffmpeg. It is working with a specific version of ffmpeg compiled a couple of months ago. Now I ported it to the last version in git but it is not working anymore. What do you suggest to do to try to find out what changed? Check the commits to see what has changed?
[22:48] <onto> Hi! I am just trying to install opencv 2.4.4 but I am getting the following error: "error: use of enum CodecID without previous declaration" -- did the latest version of ffmpeg remove an enum definition?
[23:51] <onto> Hi! I am getting segmentation fault when using av_find_input_format for the v4l2 format
[23:52] <onto> I was told to upgrade, so I did. Here is the backtrace from gdb
[23:52] <onto> #0  0x00007ffff7b75e08 in avformat_open_input () from /usr/local/lib/libavformat.so.55
[23:52] <onto> #1  0x00000000004009d5 in main ()
[23:52] <ubitux> how to reproduce?
[23:53] <onto> Let me post the code
[23:54] <onto> http://pastebin.ca/2336868
[23:55] <Sashmo_> im trying to capture video from my webcam, but its saying that the video is 15fps, when I set -r to 30.....
[23:55] <Sashmo_> any ideas?
[23:56] <frogs> your webcam may not support 30fps at the resolution it is set to
[23:56] <Sashmo_> 4l2-ctl --list-formats-ext says that it can ?
[23:56] <ubitux> onto: compare with example code or simple tools like ffprobe
[23:57] <ubitux> make sure to check your null pointers
[23:59] <beastd> Sashmo_: try ffmpeg with -loglevel debug . then look at the v4l2 messages. it should tell you if your rate (-r 30) got accepted or if it was changed by v4l
[23:59] <Sashmo_> beastd: thanks, will do
[00:00] --- Thu Mar 21 2013


More information about the Ffmpeg-devel-irc mailing list