[Ffmpeg-devel-irc] ffmpeg.log.20121129
burek
burek021 at gmail.com
Fri Nov 30 02:05:01 CET 2012
[00:11] <samek__> burek looks like it's working (not sure tho) but i ran it several times without a problem (from recorded file to rtmp)
[02:11] <coneone> hi #ffmpeg
[02:11] <sacarasc> Hello, coneone.
[02:15] <coneone> just say "rtfm" if i can find my answer @ ffmpeg.org/ffmpeg.html (because i am currently reading it) -> is there an option to add _all_ available audio-streams and subtitles without specifying each one seperately?
[02:16] <coneone> ok -map 0
[02:20] <coneone> i can't find the answer to my subtitles question especially the one for "how can i dump _all_ available subtitles to a seperate file?"
[02:21] <coneone> i dont want the subtitles rendered into the video-stream
[02:26] <coneone> one SRT file for each language would be nice! does anyone know if i can include a SRT file into MKV and if this works with say vlc?
[02:27] <coneone> i read that it is possible to attach a font, did anyone try to include SRT files as attachment?
[02:28] <mykul> ffmpeg is making my life so easy. that is all
[02:30] <coneone> mykul that sure is true once you have your presets polished.
[02:35] <coneone> also either i did something wrong or ffmpeg really is more efficient compared to mencoder, i managed to get better quality (better deinterlacing) at lower bitrate than with mencoder but i am a total noob at recoding, so this means nothing.
[02:39] <coneone> according to the manual and google i will have to resort to other software to be able to cope with subtitles, please someone tell me that i'm wrong.
[02:42] <wm4> coneone: subtitles are not added as attachment
[02:42] <wm4> coneone: you mux them as subtitle track
[02:42] <wm4> at least with mkv
[02:42] <wm4> coneone: attached fonts typically won't be uswd with SRT, I think
[02:42] <wm4> *used
[02:45] <coneone> wm4 okay you say i can embed the subtitle track directly into the stream without having the text rendered directly into each video-frame, thats good but am i just too blind to find the according options in ffmpeg? or is it not possible to add multiple subtitle-languages to mkv?
[02:46] <wm4> I don't know if ffmpeg can, but you can use mkvmerge to add subs to an existing mkv file
[02:49] <coneone> wm4 thanks, your comment lead me to mkvtoolnix
[02:56] <coneone> eh eh eh "i want to have my presets polished, swedished and finished!" =)
[07:24] <lake> hello, i am trying to write a jack audio stream to a file with ffmpeg.
[07:25] <lake> ffmpeg -f jack -i ffmpeg foo.mp3
[07:26] <lake> the audio file that is output does not have any sound
[07:52] <burek> also, did you configure your jack audio properly?
[09:24] <Element9> i am capturing video (from screen) with audio and the sync isn't good. here are the parameters i am using:
[09:24] <Element9> -c:v libx264 -b:v 512000 -crf 0 -preset UltraFast -tune ZeroLatency -r 20 -c:a vorbis -async 44100 "c:\asdf.mp4"
[09:25] <Element9> -async didn't help. is there anything else I can try?
[09:26] <Element9> (ignore the -b option :) )
[10:34] <Rapper_skull> Ciao a Tutti ;)
[10:34] <Rapper_skull> hello
[10:34] <Rapper_skull> I am triyng to include subs into a video
[10:34] <zap0> try harder
[10:34] <Rapper_skull> but ffmpeg can't load fonts
[10:35] <Rapper_skull> this is my command:
[10:35] <Rapper_skull> ffmpeg -threads 2 -i input.mkv -vf ass=subs.ass -vcodec libx264 -acodec libfaac -profile high -level 4.1 -sn -preset ultrafast output.mkv
[10:36] <klaxa> you will have to make the fonts available globally
[10:36] <klaxa> i.e. extract them from the matroska file to something like ~/.fonts/
[10:36] <Rapper_skull> fonts are included in the input.mkv file and I extracted them in the same folder of input.mkv
[10:37] <klaxa> <klaxa> you will have to make the fonts available globally
[10:37] <klaxa> they are not available globally if you extract them to the current folder
[10:37] <Rapper_skull> so there is no way to load them from a custom path?
[10:37] <klaxa> none that i know of, i'd be pleased of someone can prove me wrong
[10:38] <Rapper_skull> ok thanks
[10:39] <Rapper_skull> there is no ~/.fonts/ in my ubuntu installation
[10:40] <klaxa> Rapper_skull: https://wiki.ubuntu.com/Fonts
[10:56] <Rapper_skull> I opened my /etc/fonts/fonts.conf
[10:57] <Rapper_skull> and added <dir>./</dir> after <dir>~/.fonts</dir>
[10:57] <Rapper_skull> it works with fonts in the current directory
[10:57] <klaxa> ah nice
[10:58] <Rapper_skull> onother question
[10:58] <Rapper_skull> is there any way to make ffmpeg faster
[10:59] <klaxa> no
[10:59] <Rapper_skull> or must I change my computer?
[10:59] <Mavrik> Rapper_skull: depends on which encoder you're using and what your settings are :)
[10:59] <Mavrik> but yeah, if you want faster ffmpeg without loss of quality you have to buy faster cores :)
[10:59] <klaxa> from what i read, ffmpeg is one of the most advanced and fastest utility available (for free)
[10:59] <klaxa> *utilities
[11:00] <Rapper_skull> actually it is encoding at 12 fps, not enough for transcoding
[11:00] <Mavrik> Rapper_skull: I just came, can you paste your ffmpeg command and it's output so we see if there's anything you can do? :)
[11:00] <Rapper_skull> just a minute
[11:01] <klaxa> he already uses the ultrafast preset for libx264
[11:01] <Mavrik> oh
[11:01] <klaxa> i don't think it gets any faster with h.264... right?
[11:01] <Mavrik> yeah, you really can't get any faster than ultrafast :\
[11:01] <Mavrik> downscaling image helps
[11:02] <Rapper_skull> i'm using
[11:02] <Rapper_skull> -vcodec libx264 -acodec libfaac -profile high -level 4.1
[11:02] <klaxa> or using another codec
[11:02] <klaxa> but that might increase filesize and reduce quality
[11:02] <Rapper_skull> because I have 10 bits video and I must convert them to 8 bit
[11:02] <Rapper_skull> + they are level 5.0, not supported by my tv
[11:03] <klaxa> hah more retarded anime encoders
[11:03] <klaxa> (what group if i may ask?)
[11:03] <klaxa> i mean the level 5.0 high 10p release
[11:03] <divVerent> how is it retarded to use features of modern codecs?
[11:03] <klaxa> isn't level 5.0 for 720p tv releases totally overkill?
[11:04] <divVerent> these encodes don't work on any non-computer hardware ANYWAY, due to embedded subtitles
[11:04] <divVerent> klaxa: it depends on the quality you want
[11:04] <Rapper_skull> the group is Task-Force
[11:04] <Rapper_skull> (Italy)
[11:04] <divVerent> for my purposes it's bitrate waste
[11:04] <divVerent> but some people like the excessive quality
[11:04] <Mavrik> divVerent: hmm, there's alot of new TVs/TV STBs that easly play MKV with subtitles but don't handle 10bit input
[11:04] <divVerent> and they shall have it
[11:04] <Mavrik> and that's annoying
[11:04] <klaxa> you don't get that quality from TV rips
[11:05] <divVerent> klaxa: "depends"
[11:05] <divVerent> ;)
[11:05] <klaxa> but yeah depends
[11:05] <divVerent> klaxa: I'd say, if the mkv is bigger than the .ts, then they did something wrong
[11:05] <divVerent> wiothout that, it may be ok
[11:05] <klaxa> there is a lot to discuss, everyone has different views
[11:05] <klaxa> mine might be wrong ;)
[11:05] <Rapper_skull> actually they are BD-Rip
[11:05] <divVerent> half .ts size is probably the largest I wouldn't call total overkill
[11:05] <klaxa> oh, nvm then
[11:05] <divVerent> there is no such thing as a "wrong view" there
[11:06] <divVerent> you just need less quality than some peopöle want
[11:06] <divVerent> same with me
[11:06] <klaxa> actually i do want high quality
[11:06] <divVerent> I only call it overkill if the enocded file actually encodes more visual information than the original
[11:06] <klaxa> but i want it properly encoded
[11:06] <divVerent> i.e. if you spend bandwidth on properly encoding the original MPEG artifacts as close as possible ;)
[11:07] <klaxa> anyways, battery dying
[11:07] <klaxa> bye
[11:07] <divVerent> likme, if your input audio is 48kHz stereo, and you encode as 96kHz flac, then it may be smaller, but it's STUPID STUPID OVERKILL
[11:07] <divVerent> if your input audio had 320kbps, and your encode uses flac, OVERKILL
[11:07] <divVerent> Hi10p is borderline
[11:08] <divVerent> as it often even makes smaller files than 8bit
[11:08] <Rapper_skull> obliviously you must encode at the same quality, overscaling is stupid
[11:08] <divVerent> due to less quantization noise
[11:08] <divVerent> and it reduces banding on decode side
[11:08] <divVerent> so even 8bit to 10bit encodes may actually make sense
[11:09] <divVerent> for audio though, there is no similar situation
[11:11] <Rapper_skull> do you think a raspberry pi can handle transcoding with my current command of ffmpeg?
[11:12] <burek> no
[11:12] <Rapper_skull> it is not enough powerfull, right?
[11:12] <burek> it's not
[11:12] <burek> i tested a lot of them lately
[11:12] <burek> they suck at anything cpu intensive
[11:12] <Mavrik> Rapper_skull: I very much doubt RPi is capable of encoding anything over 320x240 resolution
[11:12] <Mavrik> it's just that slow
[11:13] <Mavrik> and HW Encoder libraries are far from being usable :\
[11:14] <Rapper_skull> so do you know some x64 mini PCs enough powerfull?
[11:14] <Mavrik> practically anything that has a quad i5+ in it can take everything you throw at it
[11:15] <Rapper_skull> ok thanks
[11:15] <Rapper_skull> this pc is 8 years old
[11:15] <Rapper_skull> it is a miracle it still works
[11:18] <Rapper_skull> do you think atom processors wold have a chance?
[11:19] <Rapper_skull> *would
[11:20] <Mavrik> as I tried them they were rather slow and not really meant for this use
[11:20] <Mavrik> but I have no idea how the new generations perform
[11:20] <Mavrik> rule of thumb is to always avoid the low-power versions of CPUs for something that intensive
[11:22] <Rapper_skull> the problem is: I have my pc that is shit a this 8 years old pc, but I can substitute only one of them 2
[11:28] <burek> Rapper_skull, video encoding is a really cpu/ram intensive process..
[11:28] <burek> don't expect to get away with cheap/slow hardware utilizing some "tweaks" or something
[11:29] <burek> whatever you save on buying, you'll pay later on unexpected results :)
[11:29] <divVerent> even if you get it done in the time you want
[11:29] <divVerent> quality will be BAD
[11:31] <Rapper_skull> thaks for the advice
[12:57] <samek_> Hi, is it possible to compile ffmpeg and then change one of the .c files and recompile without recompiling everything ?
[13:16] <juanmabc> ? as it is not a header should be the way it's done, still linkings needs to be redone, fcourse
[13:34] <DonGnom> samek_: thats what make is for. it takes care what needs to be recompiled and only compiles that. so answer is yes.
[13:40] <samek_> dongon
[13:41] <samek_> the funny thing is that if i change rtmpproto.c and do make after it it doesnt
[13:41] <samek_> but if i change mov.c it does?
[14:09] <mdsh> I need to output the average quantizer scale for every frame of an MPEG2 file, along with whether the frame is an I, P or B frame. I cannot see the qscale in FFprobe output, have I missed a parameter for FFprobe?
[14:18] <gxk_> how to get information about h264 es from mpeg2ts file ?
[14:20] <saste> mdsh: patch
[14:20] <siganderson> hi, I'm trying to stream a file with ffserver but there is a problem: when I launch ffmpeg -i filename.mp4 http://localhost:port/filename.swf, I can see the video in the browser only while ffmpeg is working. When it finishes the video is nomore available
[14:24] <saste> siganderson, as expected
[14:25] <siganderson> saste, is there a way to sinchronize ffmpeg's start with the client's get request?
[14:26] <saste> siganderson, no idea
[14:28] <siganderson> let's suppose the video to stream is only 1 or 2 secs... how could a client see it, if while he asks for the video ffmpeg already did its work?
[14:30] <mdsh> saste: thanks Stefano - I take a look
[14:30] <Tjoppen> configure your http server
[14:30] <gxk_> can ffmpeg show SPS and PPS from TS file ?
[14:31] <Tjoppen> oh, ffserver. nm
[14:32] <Guest9497> hi
[14:34] <Guest9497> hhhhiiiiiii lollll
[14:34] <Guest9497> lmao
[14:35] <burek> siganderson, you need video on demand
[14:35] <burek> take a look at the ffserver's "File" directive
[14:35] <siganderson> burek, thanks
[14:43] <Element9> I capturing from the screen (with audio) but the result is out of sync. I asked for help earlier already, but I didn't prepare the log. Here is the whole command line and the output:
[14:43] <Element9> pastebin.com/GxA7Um0Y
[14:44] <Element9> any hints or ideas would be much appreciated
[14:47] <burek> Element9, try this: ffmpeg -y -f dshow -i audio="virtual-audio-capturer" -f dshow -i video="UScreenCapture" -c:v libx264 -crf 0 -preset ultrafast -r 20 -c:a libvorbis -ar 44100 asdf.mp4
[14:47] <relaxed> Element9: Try capturing at a lower framerate and maybe without vsync/async.
[14:47] Action: relaxed forks burek
[14:48] <burek> :)
[14:48] <Element9> I'll try and get back to you
[14:48] <burek> also -r 20 might be better if put before -i video="UScreenCapture"
[14:49] <Element9> so, the order of inputs is important?
[14:50] <burek> shouldn't be in theory, but my experimenting with cameras/desktop captures showed that it's better to first ask for the audio
[14:50] <burek> donno why
[14:51] <relaxed> Element9: with -r 20 after the input you're capturing at 25fps and dropping frames to achieve 20fps
[14:52] <relaxed> while having it before captures at 20fps
[14:53] <relaxed> So that could account for the desync.
[14:54] <Element9> burek's line fixed the problem already
[14:54] <Element9> test just once, but bad sync was pretty consistent so far
[14:56] <Element9> relaxed: that makes sense. does input have to support that or will ffmpeg ask it for a frame on a set interval?
[14:56] <Element9> burek: why did you set -ar? any logic behind it or just from the experience again? :)
[14:57] <burek> well you wrote -async 44100 so I presumed you meant -ar 44100
[14:57] <burek> which is also better to put before -i audio="virtual-audio-capturer"
[14:57] <burek> since there's no need to use -async when capturing both video/audio
[14:58] <Element9> it's just when you mux from two separate files?
[14:58] <burek> ffmpeg -y -f dshow -ar 44100 -i audio="virtual-audio-capturer" -f dshow -r 20 -i video="UScreenCapture" -c:v libx264 -crf 0 -preset ultrafast -c:a libvorbis asdf.mp4
[14:58] <burek> well yes, in your case ffmpeg is generating timestamps for both
[14:58] <burek> so, why syncing?
[14:59] <Element9> got it
[14:59] <Element9> so seems like the order of inputs fixes it
[15:05] <TwisteR> hello!
[15:06] <TwisteR> can I somehow increase the rate of stdout messages from ffmpeg during capture?
[15:07] <TwisteR> I use ffmpeg's console output to generate subtitles
[15:08] <TwisteR> and I want 1 line of console output every 40 ms (@ 25 fps)
[15:09] <Element9> burek: looks like moving -ar in the last command line you pasted made it go out of sync again. but I'll have to test some more.
[15:09] <Element9> burek: thanks for the help!
[15:10] <relaxed> Element9: don't set -ar unless you need to.
[15:11] <Element9> good point
[15:16] <blez> burek any ideas how to get the uscreecapture stream with max quality
[15:18] <gxk_> how to show SPS and PPS from H264 file?
[15:19] <killown> I converted a 1.5GB video for 231MBwebm and it has a good 1080p quality!! webm is amazing
[15:24] <burek> blez -crf 0 -preset ultrafast
[15:24] <burek> i.e. capture in lossless
[15:25] <burek> gxk_ did you try ffprobe ?
[15:26] <burek> TwisteR, there was some talk not that far ago about that same thing
[15:41] <burek> TwisteR, it was suggested that you take a look at -progress option
[15:41] <burek> or read about showinfo filter
[15:46] <TwisteR> burek, ok, thanks for tip
[15:47] <samek_> is there a "central" file which is feeding packets to muxers ?
[15:47] <samek_> i need to debug something and i want to set up some debbuging there also.
[15:50] <Tjoppen> look for ->write_packet in utils.c
[15:52] <gxk_> burek: can you help with command?
[15:55] <burek> gxk_, try man ffprobe
[15:55] <burek> but usually -show_format, -show_streams, etc should help
[15:55] <burek> i don't use it that much so i don't know precisely
[15:57] <burek> -show_packets and -show_frames maybe
[15:58] <samek_> tnx
[15:59] <apo> Hi
[16:00] <apo> I'm doing this: ffmpeg -nostats -nodump -nohex -v quiet -y -i "$song" -acodec libvorbis -aq 6 "$filename", but ffmpeg still calls do_pkt_dump for some reason. Ideas?
[16:01] <apo> ... and only if I call that from a script
[16:01] <apo> as I just found out
[16:16] <gxk_> burek: i'll try
[16:17] <apo> (The script does not export any variables)
[16:29] <apo> ...
[16:29] <apo> it was because ffmpeg was reading the stdin that was supposed to be looped over by the script
[16:32] <mdsh> saste: I think I'm right in thinking that if frame->quality/(float)FF_QP2LAMBDA returned ~0 then I've got a lot more work to do
[16:33] <ubitux> (saste isn't here)
[16:59] <mistym> I can't seem to get ffmpeg to build statically on OS X. I provided --disable-shared and --enable-static to ./configure, and all of the optional libraries I'm using have static libraries available, but the resulting binary is still dynamically linked.
[17:06] <relaxed> mistym: you need --extra-ldflags="-static" too
[17:09] <mistym> relaxed: Hm, that gives me "gcc is unable to create an executable file."
[17:10] <relaxed> try again without any --enable-*
[17:11] <mistym> relaxed: With --extra-ldflags="-static" as the only argument, it fails.
[17:11] <relaxed> you still need --disable-shared --enable-static
[17:12] <mistym> It fails with those too.
[17:12] <relaxed> hmm, I don't have any experience with building on OS X, only Linux.
[17:12] <relaxed> Are you using a modern version of gcc?
[17:14] <mistym> Ah, apparently -static is simply not supported on OS X because the system libs are dynamic-only. It should be possible to link to most libraries statically while linking to the system libraries dynamically, not sure how to tell ffmpeg to do that though.
[18:03] <PMacDiggity> Hello, I can't seem to find a list of OS X SDI video input devices supported by ffmpeg, does anyone know what these are/know a list (the list at http://ffmpeg.org/general.html#Input_002fOutput-Devices only seems to include Windows and Linux devices)
[19:14] <xroberx> hi
[19:15] <xroberx> does anyone know if it is possible to somewhat "sign" a video so I am the only one able to open it ?
[19:15] <retard> you could encrypt it in some kind of archive for which only you have the key?
[19:16] <xroberx> mmm
[19:18] <xroberx> the situation is this: I've developed an application for Android which uses a series of videos I've created. The application is generic enough that a "pirate" could change the videos and make a copy of the application with his own videos...
[19:19] <xroberx> retard: so your solution wouldn't work, because I need to somewhat lock the video playback in my application to only "signed" videos
[19:19] <sacarasc> Time to invent your own DRM! Which is usually a failure...
[19:19] <xroberx> i.e I want my application to ony play the videos I've created
[19:20] <JEEBsv> xroberx: you could sign them and have the app check the signature, but... it too could be easily circuimvented in the end
[19:20] <xroberx> JEEBsv: you mean using something like MD5 or SHA-1 ?
[19:20] <JEEBsv> no
[19:20] <JEEBsv> having a file signed with a certificate
[19:21] <retard> or you could employ a stream cipher
[19:22] <xroberx> retard: yeah, but that would be too much for a mobile CPU to handle
[19:23] <JEEBsv> with a certificate someone could just overwrite the cert you have there, or if you read the cert from the web they could just change the URI
[19:23] <JEEBsv> tl;dr it can be in any case circuimvented
[19:24] <JEEBsv> I think the only way to do it is to not have the videos in the application, but only available on a server that you connect to and ask for credentials... of course that means saying goodbye to offline viewing
[19:24] <JEEBsv> tl;dr DRM is always defective and there are better ways of putting in your development time into something
[19:24] <xroberx> JEEBsv: what about using a hash (MD5, SHA-1, etc) ? How that could be circunvented if I only allow a set of known hashes ?
[19:25] <JEEBsv> same way like with the certificate
[19:25] <JEEBsv> the string could be changed
[19:26] <xroberx> JEEBsv: I could hide the hash string or encode it somewhat...
[19:27] <JEEBsv> still doesn't change the fact that you can still edit the binary and get what you want
[19:27] <xroberx> sure
[19:27] <JEEBsv> in that case the person might just reverse engineer the dalvik byte code
[19:27] <JEEBsv> for the generic features
[19:27] <JEEBsv> and that's it
[19:28] <xroberx> but it's just a matter of making it more difficult to crack
[19:28] <xroberx> not impossible of course
[19:28] <JEEBsv> suit yourself, but personally that just seems like a really dumb thing to put development effort into
[19:29] <xroberx> I've never done something like that, but I know there are some chinese pirates out there that take your application, change some strings and publish it under their brand name
[19:30] <xroberx> and Google won't help me if that happens
[19:31] <JEEBsv> then they might as well change the hashes or the cert... puh-re-tteh futile
[19:31] <xroberx> ok
[19:31] <JEEBsv> if it happens, it happens
[19:31] <xroberx> i'll see then, thanks for your time! :)
[19:32] <JEEBsv> np
[21:05] <danverde> in a video player I am writing I call av_register_all and avcodec_register_all to register the available codecs. Can I only register specific codecs instead of all?
[21:07] <danverde> nm, I'll try to do what av_register_all does for only the codecs I want
[23:34] <lake> if someone could help me undertand why ffmpeg/v4l2 breaks arecord, that would be AWESOME! http://pastie.org/5455090
[23:49] <llogan> lake: try a simpler command and see if the behavior continues
[23:49] <llogan> ffmpeg -f alsa -i hw:6,0 -acodec pcm_s16le -ac 2 -ar 48000 out.wav
[23:49] <llogan> or maybe: ffmpeg -f alsa -i hw:6,0 -acodec copy out.wav
[23:52] <llogan> makybe i should have kept it as mkv
[00:00] --- Fri Nov 30 2012
More information about the Ffmpeg-devel-irc
mailing list