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

burek burek021 at gmail.com
Wed Aug 12 02:05:01 CEST 2015


[00:00:02 CEST] <klaxa> a pastebin of your command + output could also help
[00:01:51 CEST] <Platonides> old version ’ I know, as packed by debian wheezy
[00:02:09 CEST] <Platonides> I'm confused about ffmpeg vs avconv
[00:02:25 CEST] <Platonides> I thought ffmpeg was deprecated and the prefered command was now avconv¿
[00:04:15 CEST] <Platonides> I see, a really confusing message (present in my ffmpeg version, which seems unrelated to the people in this channel)
[00:05:38 CEST] <Platonides> sorry to bother you
[02:26:13 CEST] <DHE> Is there an option to copy keyframes from input to output? That is, if frame number X in the input is a keyframe, then frame number X will also be a keyframe in the output
[02:26:26 CEST] <DHE> or will I have to add that myself. I could do that, but would rather not duplicate work
[02:36:22 CEST] <mallec> Hi Friends!
[02:37:19 CEST] <mallec> I'm very interested in the nvenc encoder, but I can't find it's options.
[02:37:41 CEST] <mallec> Can somebody help me in this matter?
[02:40:47 CEST] <mallec> "on this matter"
[02:52:55 CEST] <_marco> I have a 24MB .ts file recorded from a tv set which I don't know the format but would like to know if anyone is able to/interested in reverse engineer it. Where do you suggest me to ask about?
[03:00:38 CEST] <relaxed> _marco: pastebin the output of ffmpeg -i file.ts
[03:15:19 CEST] <_marco> relaxed: ffmpeg -i file.ts > out gives an empty file. stderr is full of messages like "[mpegts @ 0x749980] Continuity check failed for pid 1347 expected 4 got 1"
[03:44:12 CEST] <relaxed> _marco: try, ffmpeg -probesize 20M -analyzeduration 30M -i file.ts 2>ffmpeg.log
[03:49:24 CEST] <_marco> relaxed: it is full of messages like "mpegts @ 0x929b80] Continuity check failed for pid 1757 expected 12 got 7"
[03:49:43 CEST] <relaxed> does it play?
[03:49:57 CEST] <_marco> no
[03:52:12 CEST] <relaxed> then I'm out of ideas
[03:54:28 CEST] <_marco> is there a proper substitute for the good old videocassete recorder?
[04:21:30 CEST] <Zeranoe> This might be off topic, but how hard is it to take composite video and turn it into a VGA signal? Are codecs utilized in the circuit?
[04:23:03 CEST] <kepstin> composite video and vga are rather different signal encodings...
[04:23:20 CEST] <kepstin> such a conversion could be done with only analogue circuitry, i think.
[04:24:21 CEST] <kepstin> if you're referring to 'codec' in the sense of something that converts between two digital data formats, it's not really relevant.
[04:24:25 CEST] <Zeranoe> kepstin: Is it easier to go to a digital signal like HDMI/DVI ?
[04:25:49 CEST] <Zeranoe> It was said in another room on the same topic that "the codec decodes the 480i as they come in, and the vga encoder copies the frame buffer into another and encodes it as needed, and sends it out" , though I'm not sure if this is accurate
[04:25:53 CEST] <kepstin> i dunno; converting to a digital signal would require a digitizer/analog capture card, obviously, but those are pretty easy to find now
[04:26:46 CEST] <kepstin> sure, one way to turn composite into vga is to use an analog capture card to turn the composite video into digital video in ram, then display it on a graphics card with vga output.
[04:27:13 CEST] <Zeranoe> I'm looking for as low level as I can get on this, down to the basic circuitry
[04:27:46 CEST] <kepstin> well, either you learn analog signal processing, or you use existing commodity hardware that does all the work for you.
[04:27:55 CEST] <kepstin> i'd personally pick the latter ;)
[04:28:17 CEST] <Zeranoe> I didn't know if there was a straight forward way to do this.
[04:30:16 CEST] <kepstin> like, you can just go buy something like http://www.amazon.com/Composite-S-Video-Converter-Screen-Version/dp/B003NUN7DG plug a composite signal in one side, and a vga monitor/projector out the other side.
[04:30:24 CEST] <kepstin> and don't worry about it :)
[04:31:47 CEST] <kepstin> that box appears to convert the composite signal to digital, upscale it to a common supported vga resolution, then output as vga, if you're curious.
[04:32:28 CEST] <Zeranoe> Isn't VGA still analog?
[04:32:32 CEST] <kepstin> yes
[04:32:42 CEST] <kepstin> so that's an a->d->a conversion
[04:32:51 CEST] <Zeranoe> So it's better to go from analog -> digital -> analog ?
[04:33:03 CEST] <kepstin> it's cheaper to go from analog -> digital -> analog
[04:33:12 CEST] <Zeranoe> thats interesting
[04:33:13 CEST] <kepstin> and gives more flexibility
[04:34:28 CEST] <kepstin> like, even in most audio integrated amplifier/reciever devices, the way they do volume control on analog inputs is by digitizing the signal, running it through a dsp to apply effects, gain, eq, etc., then converting back to analog before amplifying.
[04:34:40 CEST] <Zeranoe> Is it easier to go from Composite to HDMI then? since you don't need to go back to analog?
[04:35:26 CEST] <kepstin> "easier"? dunno. Probably about the same difficultly. Might require slightly less hardware, and would probably give slightly better video quality.
[04:36:57 CEST] <kepstin> for what it's worth, composite to hdmi standalone converters seem moderately more expensive than composite to vga converters.
[04:38:11 CEST] <kepstin> (admittedly, the composite-hdmi boxes tend to do audio as well as video, while the -vga ones are video-only)
[04:40:08 CEST] <Zeranoe> Maybe I'll buy one and see what's inside
[04:44:37 CEST] <kepstin> what'll be inside will be some traces that go through some analog filtering, then into a microchip, then another set of traces that come out of the microchip.
[04:44:47 CEST] <kepstin> all the interesting stuff is on the chip :)
[05:12:41 CEST] <diffuse> i am using the ffmpeg c api to take an mp3 and covert it to pcm, but i want to take that pcm and covert it to a wav with a riff header
[05:12:53 CEST] <diffuse> how exactly do i generate the wav with the riff header?
[05:13:06 CEST] <diffuse> i am using wavepack, but its not quite eright
[05:26:20 CEST] <kepstin> wavpack is a different thing, that's a compression codec. You should be able to use the ffmpeg api to mux the pcm audio into a wav format
[05:29:50 CEST] <diffuse> yeah, i just read up on wavpack
[05:30:01 CEST] <diffuse> i am trying to find out how
[05:30:06 CEST] <diffuse> but i cant find anything
[05:32:05 CEST] <diffuse> avformat_write_header?
[05:34:36 CEST] <kepstin> the api to mux to the wav format should be similar to any other format, e.g. mkv or whatever, i'd think
[05:34:43 CEST] <kepstin> I haven't actually done it before tho :/
[05:37:36 CEST] <diffuse> it should be simple
[05:41:23 CEST] <kepstin> the riff wav header's actually kind of annoying, it only works on seekable output since it contains the length. so the wav muxer writes a placeholder header, writes the audio data, then seeks back and fills in the length field in the header :/
[05:41:58 CEST] <kepstin> (iirc it does kind of work on non-seekable output, it effectively writes '-1' in the length header which many apps interpret as undefined length)
[05:43:41 CEST] <diffuse> so, i have a buffer that has the raw pcm
[05:43:57 CEST] <diffuse> i could always hack in the riff header with my own code
[05:44:02 CEST] <diffuse> but i'd like to use ffmpeg
[05:44:28 CEST] <kepstin> yeah, if you want to do it with ffmpeg, you need to have audio packets in an ffmpeg pcm format, e.g. pcm_s16le to feed to the muxer
[05:45:08 CEST] <diffuse> thats what i have
[07:33:48 CEST] <ln-> Hmm, I compiled FFmpeg 2.7.2 on Windows (MSYS2), and 'make install' installed the .dll files into <prefix>/bin. Is this intentional?
[10:36:18 CEST] <cowai> Anyone know if there is anything different with ffmbc and ffmpeg, codec wise?
[10:36:38 CEST] <cowai> "-r 25 -g 12 -bf 2 -s 720x576 -aspect 4:3 -vcodec mpeg2video -vb 15000k -minrate 15000k -maxrate 15000k -bufsize 30000k -acodec mp2 -ab 384k -ar 48000 -bff "
[10:36:54 CEST] <cowai> will there be any difference in the video quality if I go with ffmbc?
[10:43:09 CEST] <durandal_1707> why you want ffmbc?
[10:43:42 CEST] <cowai> That is what I am asking
[10:43:48 CEST] <cowai> is there any difference?
[10:56:43 CEST] <Mavrik> What exactly is ffmbc? Which libraries does it use?
[10:57:04 CEST] <cowai> https://code.google.com/p/ffmbc/
[10:57:32 CEST] <JEEB> ffmbc by now is rather old and I don't really see a real reason to use it
[10:58:37 CEST] <JEEB> it used to have some hacks/features before which might have been useful for very specific broadcast-related things (done in a way that they couldn't be easily merged back into ffmpeg due to ffmbc's license)
[10:58:58 CEST] <JEEB> but looking at that command line you really are not gaining anything from using ffmbc :P
[10:59:08 CEST] <cowai> I would guess so.
[10:59:26 CEST] <cowai> mpeg2video sucks either way :P
[10:59:53 CEST] <JEEB> also in general I would not set -minrate , you generally only need -maxrate and -bufsize for VBV. you should raise your ABR rate if you feel that the encoder isn't using enough
[11:00:19 CEST] <cowai> I am using it to be compatible with sony vegas smart rendering
[11:00:20 CEST] <JEEB> + -r after -i means you are converting the frame rate
[11:00:45 CEST] <cowai> input is variable, I need stable
[11:00:49 CEST] <JEEB> ah
[11:00:53 CEST] <JEEB> ok, then you know what you're doing :)
[11:01:35 CEST] <JEEB> minrate shouldn't be required, I mean VBV limits maximum rate within buffer size and unless the encoder is broken you shouldn't have to limit the minimum separately. you just use the ABR rate control to raise the overall bit rate then (and it will still be limited by VBV)
[11:01:57 CEST] <cowai> I am recording a live mpegts from a teradek reciever, and making a ready to go mpeg2 that we use in our playout.
[11:02:27 CEST] <JEEB> basically the only case where you should use minrate is where the encoder is broken
[11:02:40 CEST] <cowai> I would guess vegas would not mind having no minrate
[11:02:46 CEST] <cowai> I will test thanks :)
[11:08:57 CEST] <cowai> without minrate the file is about half the size
[11:13:47 CEST] <JEEB> then you can push up the ABR rate, or switch to a constant quantizer kind of rate control
[11:14:24 CEST] <JEEB> also the newer ways of setting "codecs" is -c:a/v/s and for bit rates -b:a/v/s (same goes for profiles as well, for example with AAC it will error out if you have -profile some_video_specific_profile it will yell since you are trying to apply it for all encoded things)
[11:15:54 CEST] <cowai> yes I know the new syntax, it was only for ffmbc which uses the old one.
[11:17:46 CEST] <cowai> Does ffmpeg has a CBR mode similiar to video editors like vegas?
[11:18:44 CEST] <cowai> We have a capture device that produces CBR which vegas likes. I want to stay as close to that as possible
[11:23:39 CEST] <JEEB> cowai: if rising the bit rate and keeping the VBV (maxrate+bufsize) around doesn't help, you should try a quantizer-based rate control limited by VBV
[11:25:05 CEST] <cowai> If there is a fast moving scene in the source file the bitrate will go over 15mbit and that can crash our playout :P
[11:25:47 CEST] <JEEB> VBV should limit the rate there
[11:25:54 CEST] <JEEB> that's why maxrate+bufsize is there :P
[11:26:50 CEST] <cowai> I will try to set up vbv
[11:27:35 CEST] <cowai> https://ffmpeg.zeranoe.com/forum/viewtopic.php?t=1486
[11:27:49 CEST] <cowai> Zeranoe gives an example with minrate
[11:27:57 CEST] <cowai> is minrate really that terrible?
[11:29:33 CEST] <JEEB> yes, zeranoe should not be counted as a person who knows too much of the application. also I have no idea why the CBR example in the H.264 trac wiki page has it, probably was copy-pasted from somewhere else
[11:29:45 CEST] <JEEB> he auto-builds it, and probably builds it well
[11:30:00 CEST] <cowai> what is the downsides of using it ?
[11:30:41 CEST] <JEEB> you should rather poke the rate control's options if you want the rate control to make smaller differences
[11:31:02 CEST] <donguston> What x264 options make fast scenes look the best? i am encoding to a similar quality as youtube but want to avoid the blocky/artifacts on fast scenes
[11:31:26 CEST] <JEEB> minrate is "vague", if you really really need to make sure the rate control doesn't fling around then you limit the rate control specifically
[11:31:31 CEST] <JEEB> I don't remember the exact option for it
[11:31:36 CEST] <fling> D'oh!
[11:31:51 CEST] <fling> Neither I.
[11:32:01 CEST] <JEEB> congratulations on having the lucky nickname :P
[11:32:09 CEST] <fling> :D
[11:32:22 CEST] <Wolloloo> Hi! Is there a way to input a list of per-frame timestamps to ffmpeg?
[11:32:57 CEST] <Wolloloo> I have a sequence of frames (tiff seqence), and a list of timestamps (monotonically increasing, but no fixed FPS).
[11:34:19 CEST] <fling> Wolloloo: you can always script the frame list
[11:34:30 CEST] <JEEB> cowai: basically you want to use the equivalent of qcomp and lower it. which will lead to the bit rate distribution between less demanding and more demanding scenes worse, but it would keep the fluctuation low/stable
[11:35:13 CEST] <JEEB> seems like there is -qcomp in ffmpeg cli
[11:35:16 CEST] <JEEB> try it out
[11:39:30 CEST] <Wolloloo> fling: Sure, that sounds appropriate. Would you mind giving me some pointers on where to get started (examples, google keywords)? I'm a bit fresh at ffmpeg
[11:44:41 CEST] <cowai> JEEB: I will try qcomb
[11:44:45 CEST] <Wolloloo> I originally have my raw data in python, and I know how to pipe the raw data to ffmpeg from there, but I don't know how to include the timestamps
[11:45:05 CEST] <cowai> I just tested same command as before but without minrate, and vegas could smart render it.
[11:45:27 CEST] <cowai> but I saw some blocks at the very first frame
[11:45:39 CEST] <cowai> That were not there with minrate on
[11:46:11 CEST] <cowai> Do I use qcomb with vbv?
[11:51:32 CEST] <fling> Wolloloo: not really an ffmpeg task but a time math.
[11:52:14 CEST] <fling> Wolloloo: you feed your times and frames to the script and it outputs frame list.
[11:54:03 CEST] <cowai> JEEB: I dont find anything vbv for mpeg2
[11:54:12 CEST] <cowai> it seems to be options for libx264
[11:56:22 CEST] <Wolloloo> fling: Sure, I just don't know what format the frame list should be in
[11:56:23 CEST] <Mavrik> -maxrate and -minrate works for MPEG2
[11:56:26 CEST] <Mavrik> just... not well
[12:00:24 CEST] <fling> Wolloloo: ffmpeg -f image2 -i foo-%03d.jpeg -r 12 -s WxH foo.avi
[12:00:37 CEST] <fling> Wolloloo: ffmpeg -f image2 -pattern_type glob -i 'foo-*.jpeg' -r 12 -s WxH foo.avi
[12:01:48 CEST] <dongs> sup
[12:02:01 CEST] <fling> Wolloloo: check the manpage :>
[12:08:17 CEST] <Wolloloo> fling: Sure, I know how to make a video from images, but how do I specify per-frame timestamps?
[12:10:17 CEST] <fling> Wolloloo: try scripting the frame list ;P
[12:10:35 CEST] <fling> Wolloloo: you can count how much frames you need from each image based on the timestamp.
[12:13:59 CEST] <Wolloloo> fling: Oh, so you mean to repeat frames by scripting to get it to line up with the FPS?
[12:23:22 CEST] <fling> Wolloloo: yes.
[12:24:03 CEST] <fling> Wolloloo: or you can set the duration on each image on the ffmpeg commandline.
[12:24:12 CEST] <fling> Wolloloo: choose which one is simplier
[13:28:22 CEST] <eiji> ffmpeg -i "concat:part1.ts|part2.ts" -c copy -bsf:a aac_adtstoasc merged.mp4 = it ends up with variable frame rate when source is constant. any idea what i can do to force constant?
[13:29:00 CEST] <eiji> or what i can do afterwards to fix the fps to constant?
[13:33:56 CEST] <cowai> Is there any static cross platform builds?
[13:34:29 CEST] <cowai> I mean is there somewhere I can get ffmpeg compiled to mac, windows and linux have know that every compile flag is the same?
[13:53:22 CEST] <JEEB> cowai: maxrate+bufsize = vbv
[13:53:42 CEST] <JEEB> and it's q comp
[13:53:48 CEST] <JEEB> not q comb
[14:40:51 CEST] <TheSchaf> so is there a trick to start the daoc setup?
[15:22:18 CEST] <eiji> FFmpeg (?): problem due to technical limitation of TS format, duration are rounded and this rounding is not detected during TS to MP4 (not a bug, only a lack of feature)
[15:23:13 CEST] <DHE> where do you see that?
[15:24:24 CEST] <eiji> instead FFmpeg should detect the CFR in TS to MP4 conversion and created a CFR stts atom. instead of the actual stts (time table) atom which takes lot of space and which is not CFR stricly speaking
[15:24:32 CEST] <eiji> some issues i was encountering
[15:25:27 CEST] <JEEB> MPEG-TS has a really big timebase, yeah
[15:25:56 CEST] <JEEB> and I guess it's not really 100% exact for all rates?
[15:26:15 CEST] <JEEB> and ffmpeg just uses the timebase from input when it can
[15:28:27 CEST] <eiji> it's an issue with how the muxer converts times in the new file. back to questions i was asking about how ffmpeg results in VFR from file that's encoded as CFR. using ffmpeg converting mp4 to ts and concat back to mp4 worked to preserve CFR sometimes but not always due to the issue above
[15:29:16 CEST] <eiji> well i am joining more than 1 mp4 file (all encoded as CFR)
[15:30:06 CEST] <DHE> mpeg-ts runs at 90,000 hz and the framerate is more a matter of the time the frame is supposed to be rendered than it is a specification of a framerate
[15:30:51 CEST] <eiji> i convert it to TS, which as a hard coded (spec) frequency of 90 000 Hz. ffmpeg converts it as it can, with some rounding (in my time time line: sometime 3754, sometime 3753, but the real duration should be 3753.75, and Ts accepts no decimal)
[15:36:28 CEST] <eiji> "If you have MP4 files, these could be losslessly concatenated by first transcoding them to mpeg transport streams." https://trac.ffmpeg.org/wiki/Concatenate
[15:37:35 CEST] <eiji> i guess there is no way for ffmpeg to always retain CFR then?
[15:37:44 CEST] <DHE> that might be technically true but I wouldn't do it as a first choice
[15:38:33 CEST] <eiji> what is your first choice?
[15:39:18 CEST] <eiji> i couldn't produce a result with ffmpeg that was CFR aside mp4->ts->mp4 and that only worked some of the time
[15:39:32 CEST] <DHE> I'm not sure. it hasn't come up yet except when I had raw video to begin with anyway (which is about the most ideal scenario)
[15:40:10 CEST] <DHE> (and by raw I mean literally raw video)
[15:41:28 CEST] <eiji> any chance ffmpeg will create a CFR stts atom during TS to MP4 conversion in future?
[15:43:03 CEST] <Mavrik> If you open a ticket and explain this issue as nicely as you did here, you'll at least get direct answer from the devs :)
[17:02:20 CEST] <`ph8> hi all
[17:02:36 CEST] <`ph8> I'm trying to generate some test files, i don't care what's in them - i just need them to be under 10 hours and a certain size
[17:02:45 CEST] <`ph8> at the moment i'm after ~7.9GB and ~8.5GB
[17:02:54 CEST] <`ph8> has anyone got any ideas about a quickish way to generate these to test my system with?
[17:03:08 CEST] <`ph8> i've tried concatting lots of files together with minimal success
[17:04:31 CEST] <retard> dd if=/dev/zero of=whateverfile bs=1024 count=8283750
[17:05:35 CEST] <retard> dd if=/dev/zero of=whateverfile bs=1024 count=8912896
[17:05:49 CEST] <retard> :]
[17:07:32 CEST] <retard> libavfilter though
[17:08:01 CEST] <retard> ffplay -f lavfi -i smptebars -t 30
[17:09:09 CEST] <retard> for changing image use testsrc in place of smtpebars
[17:09:40 CEST] <retard> see http://trac.ffmpeg.org/wiki/FancyFilteringExamples
[17:09:42 CEST] <`ph8> i should have mentioned i want it to be a valid mp4 :)
[17:09:59 CEST] <`ph8> -t is time, do you think i can specify bitrate as well
[17:10:30 CEST] <retard> you can. remember that it's a chain, so the bitrate goes after the output definition i think
[17:11:17 CEST] <retard> experiment to find some acceptable output with ffplay, then shove it into a file using ffmpeg directly
[17:52:55 CEST] <donguston> ffmpeg wont find the preset files I ahve in ../presets/ (path relative to ffmpeg binary)
[17:54:35 CEST] <JEEB> -preset option is an encoder-specific option that sets a aparmeter currently in libx264 and libx265
[17:55:37 CEST] <JEEB> also I'm not sure if ffpresets for -pre are loaded from all possible relative directories like that
[17:56:04 CEST] <popara> Hello i have an avi file called test.avi , how can i loop it 5 times?
[17:56:08 CEST] <popara> I saw the FFmpeg concat demuxer
[17:56:44 CEST] <popara> i dont want to make a file and read that with -i, i want it on the fly
[17:57:01 CEST] <donguston> JEEB, im using vpx and -vpre libvpx-1080p
[17:57:28 CEST] <JEEB> yeah so the old ffpreset preset stugdd
[17:57:38 CEST] <JEEB> goddamnit touch kb
[17:58:38 CEST] <JEEB> I would make ffmpeg verbose with -v debug and see where it searches for the ffpresets
[17:59:16 CEST] <JEEB> if it tells you of course (hopefully yes)
[17:59:32 CEST] <popara>  -i <(for i in {1..4}; do echo "file 15_1.avi\n"; done)    [ Why that isn't working? ]
[17:59:46 CEST] <donguston> yeah I tried the verbose mode with -v verbose a while ago and it iddnt help
[18:00:10 CEST] <JEEB> uhh
[18:00:16 CEST] <JEEB> try debug :p
[18:00:30 CEST] <JEEB> not sure verbosity verbose is valid
[18:01:13 CEST] <JEEB> debug is the level used for various stuff you don't want to come up under normal circuimstances
[18:02:52 CEST] <donguston> just tried with debug and trace. still no hint of where its looking. Ill just add the arguments to the script instead of loading from the preset file.
[18:03:34 CEST] <JEEB> ok, so it doesn't show the load paths. too bad
[18:04:46 CEST] <JEEB> anyways I was pretty sure it didn't just look in some relative dir but rather somewhere under etc and possibly some other dirs. never used or poked the code so I have no fucking idea
[18:10:13 CEST] <retard> popara: can you use -loop?
[18:11:15 CEST] <popara> let me see
[18:11:35 CEST] <popara> Option loop not found.
[18:14:31 CEST] <popara> the above -i works for you guys?
[18:14:57 CEST] <popara> For me it says "/dev/fd/63: No such file or directory"
[18:18:05 CEST] <popara> http://pastebin.com/RtR3MkbM
[18:19:28 CEST] <klaxa> i suggest you write the concat data to a file?
[18:19:42 CEST] <klaxa> not sure shell redirection like that is supposed to work
[18:20:00 CEST] <popara> i want it for unlimited loops
[18:20:11 CEST] <popara> i know i can write to file 100000000 times but it's not so good way :P
[18:20:19 CEST] <klaxa> or you could do something like: for ... | ffmpeg -f concat -i - ... output.avi
[18:20:54 CEST] <klaxa> unless you need stdin for something else already in which case uh... named pipes maybe?
[18:20:57 CEST] <popara> Well, i want to keep the same FFmpeg pid too for these loops, the one you said changes the pid of ffmpeg each time
[18:21:18 CEST] <klaxa> huh?
[18:21:32 CEST] <klaxa> ah, maybe (for ...) | ffmpeg -f concat -i - ... output.avi
[18:21:40 CEST] <klaxa> (i.e. start the for-loop in a subshell)
[18:21:50 CEST] <popara> that doesn't change the pid each time the ffmpeg starts?
[18:22:02 CEST] <klaxa> i don't see where you start ffmpeg multiple times
[18:22:18 CEST] <popara> if you add a for loop in the beggining then a new ffmpeg instance starts
[18:22:35 CEST] <popara> so the pid change
[18:23:37 CEST] <klaxa> what do you mean with "add a for loop" ? add an iteration in the for-loop? as in increasing the upper bound of it?
[18:23:55 CEST] <klaxa> because then i don't think ffmpeg gets started multiple times
[18:24:04 CEST] <popara> wait.. Can you please give me the complete command you say?
[18:24:41 CEST] <klaxa> (for i in {1..4}; do echo "file '15_1.avi'"; done) | ffmpeg -f concat -i - -c copy output.avi
[18:24:56 CEST] <popara> i'm idiot
[18:24:59 CEST] <klaxa> maybe you have to fix some stuff with escaping to preserve the single quotes
[18:25:02 CEST] <popara> i thought you are saying something else
[18:25:20 CEST] <popara> yes that works fine
[18:25:25 CEST] <popara> thank you
[18:25:45 CEST] <klaxa> glad i could help
[18:28:28 CEST] <popara> xm yeah that works but again i can't have infinite of these
[18:35:21 CEST] <relaxed> infinite loop? why not do that via playback?
[18:36:09 CEST] <popara> what playback?
[18:38:17 CEST] <relaxed> are you playing the output?
[18:39:22 CEST] <popara> it's hard to explain what i want, but in short i'm streaming a movie as LIVE stream, which means if the movie ends, i have to restart it again without loosing a second
[18:39:31 CEST] <popara> the problem though is that the ffmpeg instance has to be the same pid all the time
[18:40:03 CEST] <popara> if the pid was different, we can do that easy, but any way to keep the pid same?
[18:40:48 CEST] <relaxed> did klaxa's command work?
[18:41:21 CEST] <popara> yes that works
[18:41:25 CEST] <popara> but it's not for infinite
[18:41:28 CEST] <relaxed> if so, change it to (while :; do echo "file '15_1.avi'"; done) | ffmpeg -f concat -i - -c copy output.avi
[18:41:43 CEST] <relaxed> that's infinite
[18:41:59 CEST] <popara> that won't work, the concat needs the file ready until it starts
[18:42:04 CEST] <popara> it crashes
[18:43:11 CEST] <popara> also i'm generating HLS output of the movie, and i want the segments to keep up with the number, so a new ffmpeg instance could break it
[18:44:14 CEST] <relaxed> you just said his command works for you
[18:44:42 CEST] <popara> yes but it's for X times only, not for infinite
[18:45:02 CEST] <relaxed> and I just gave you the command for infinite
[18:45:28 CEST] <popara> nop mate, the command with while true isn't working, it crashes before ffmpeg starts, ffmpeg reads the file when it's done
[18:45:35 CEST] <popara> but with the while true command the file never stops writing
[18:45:39 CEST] <popara> so ffmpeg can't start
[18:45:55 CEST] <relaxed> oh, I see
[18:47:00 CEST] <relaxed> you need a while true that pipes the file continuously to another ffmpeg instance that's sending it out
[18:47:10 CEST] <popara> exactly
[18:49:24 CEST] <relaxed> ffmpeg -f nut -i <(while :; do ffmpeg -i input -c copy -f nut /dev/stdout 2>/dev/null) -c copy output.avi
[18:49:51 CEST] <relaxed> er, you need "-y /dev/stdout"
[18:50:17 CEST] <popara> -f nut? :O
[18:50:40 CEST] <relaxed> it's a container
[18:50:51 CEST] <popara> ffmpeg -f nut -i <(while :; do ffmpeg -i 15_1.avi -c copy -f nut /dev/stdout 2>/dev/null) -c copy output.avi
[18:50:58 CEST] <popara> [concat @ 0x46092c0] Impossible to open '15_1.avi'
[18:50:58 CEST] <popara> pipe:: Immediate exit requested
[18:52:44 CEST] <relaxed> ffmpeg -f nut -i <(while :; do ffmpeg -i 15_1.avi -c copy -f nut -y /dev/stdout 2>/dev/null) -c copy output.avi
[18:52:57 CEST] <popara> /dev/fd/63: No such file or directory
[18:54:45 CEST] <klaxa> what shell are you using?
[18:54:56 CEST] <klaxa> maybe your shell doesn't like that sort of pipe-redirecting
[18:55:23 CEST] <c_14> You're missing a ; done
[18:55:25 CEST] <c_14> in the while
[18:55:48 CEST] Action: relaxed slaps head
[18:55:55 CEST] <c_14> ffmpeg -f nut -i <(while :; do ffmpeg -i 15_1.avi -c copy -f nut -y /dev/stdout 2>/dev/null; done) -c copy output.avi
[18:56:09 CEST] <popara> /dev/fd/63: No such file or directory
[18:56:11 CEST] <popara> same :@
[18:56:27 CEST] <c_14> hmm, that works for me
[18:56:29 CEST] <c_14> shell?
[18:56:32 CEST] <popara> bash
[18:56:49 CEST] <relaxed> works here
[18:56:58 CEST] <popara> wtf
[18:58:05 CEST] <c_14> works for me in bash as well
[18:58:11 CEST] <popara> -.-
[18:58:28 CEST] <popara> maybe is the ffmpeg version?
[18:58:29 CEST] <popara> or no?
[18:58:34 CEST] <relaxed> the universe is against you
[18:58:39 CEST] <popara> it must be something around 2.6.x
[18:58:41 CEST] <popara> not sure which one
[18:59:07 CEST] <c_14> bash version?
[18:59:25 CEST] <relaxed> echo $BASH_VERSION
[18:59:32 CEST] <relaxed> 4.3.39(1)-release here
[18:59:36 CEST] <popara> GNU bash, version 4.3.11(1)-release (x86_64-pc-linux-gnu)
[18:59:54 CEST] Action: c_14 is on 4.3.39(1)-release as well
[19:00:28 CEST] <relaxed> debian sid?
[19:00:51 CEST] <popara> Ubuntu 14.04.2 LTS
[19:03:43 CEST] <relaxed> popara: I guess, write a script to do it and use fifos instead
[19:06:59 CEST] <popara> So strange if i run the above command 4-5 times in a row
[19:06:59 CEST] <popara> i get
[19:07:01 CEST] <popara> -bash: process substitution: line 15: syntax error: unexpected end of file
[19:07:40 CEST] <popara> a LOL
[19:07:45 CEST] <popara> i get it everytime
[19:07:48 CEST] <popara> i just didn't see it :P
[19:08:38 CEST] <popara> and if i run it again it says line 16, then 17 and so on
[19:11:27 CEST] <c_14> Create a script that creates a fifo, then have the inner command fork and output to the fifo while the outer command reads from the fifo
[19:11:42 CEST] <c_14> So around 3 lines, one for each ffmpeg command and one for the fifo
[19:49:03 CEST] <helbary> Hey there
[19:50:15 CEST] <helbary> I want to crop a part of a video: cutting a 800x640 size of 1920x1080 video clip
[19:50:40 CEST] <helbary> I think there was a page on ffmpeg website but i can't find it now
[19:58:10 CEST] <helbary> How can I crop a part of a video?!
[19:58:32 CEST] <DHE> -vf crop=...
[19:59:20 CEST] <edoceo> I have a source media with a missing / garbage Video track, if I transcode ffmpeg drops that track.  How can I force ffmpeg to keep a video track and generate blank if the source is no good?
[19:59:37 CEST] <edoceo> I could do a two pass, make the video and if determined to be "bad" then re-process with a second incantation
[20:02:37 CEST] <marshall> Hey all, I have a question.. I want to use ffmpeg to convert a set of jpg images into 1 mp4 video. Is there a way to specify exact file names of those images?
[20:03:26 CEST] <marshall> I know "ffmpeg -i " allows to specify one file or fuzzy match a group of files, but I can do something like "ffmpeg i image_1.jpg image_2.jpg" ?
[20:03:53 CEST] <c_14> -i image_%d.jpg
[20:05:03 CEST] <marshall> Yeah, that would do the fuzzy match, can I specify exact names though? Like "ffmpg -i image_1.jpg image_2.jpg"?
[20:05:17 CEST] <c_14> You can use image2pipe and pipe them in
[20:05:24 CEST] <c_14> Other than that, no
[20:06:35 CEST] <marshall> How do you mean by image2pip2?
[20:08:10 CEST] <marshall> Ah
[20:08:12 CEST] <marshall> cat *.jpg | ffmpeg -f image2pipe -r 1 -vcodec mjpeg -i - -vcodec libx264 out.mp4
[20:08:14 CEST] <marshall> Like that?
[20:08:26 CEST] <c_14> ye, and then you can replace the *.jpg with the filenames you want
[20:09:43 CEST] <c_14> But you probably want -framerate instead of -r
[20:12:28 CEST] <helbary> DHE: `ffmpeg -vf crop=800:640 <SOurceFileHere>` ?
[20:13:24 CEST] <DHE> you don't know how to use ffmpeg do you...
[20:18:12 CEST] <helbary> `ffmpeg -i SOURCE -vf crop=800:640 OUTPUT` !?
[20:18:52 CEST] <c_14> should work if you're fine with the defaults
[20:19:16 CEST] <helbary> I need same quality of original file
[20:19:48 CEST] <c_14> libx264 with crf around 18 is usually considered visually lossless. There is no actual "same quality" setting. You'll have to look at it yourself.
[20:25:44 CEST] <helbary> And, Is it possible to change the cropped rectangular position? I need to crop in 800x600 size started from the bottom edge of original file!
[20:26:15 CEST] <c_14> https://ffmpeg.org/ffmpeg-filters.html#crop
[20:26:22 CEST] <c_14> look at the x and y arguments
[20:46:15 CEST] <cfoch> hello
[20:46:45 CEST] <cfoch> folks, I am trying to install Pitivi using jhbuild but I get this error and the comment say I need to ask in this channel
[20:46:49 CEST] <cfoch> http://fpaste.org/253999/31872314/
[20:49:21 CEST] <cfoch> here it is my config.log content
[20:49:22 CEST] <cfoch> http://fpaste.org/254001/39318872/
[20:50:55 CEST] <BtbN> Well, it clearly says that it's missing yasm or nasm.
[20:58:21 CEST] <cfoch> yes, you are right
[22:13:15 CEST] <frenda> Hey there; I have a question but please be patient, no angry!
[22:13:26 CEST] <retard> you're already ruining it
[22:13:37 CEST] <frenda> Is KAZAM using ffmpeg as base?
[22:13:46 CEST] <retard> ask them?
[22:37:03 CEST] <frenda> ffmpeg -i A.mp4 -ss 00:00:31.000 -to 00:08:47.400 -async 1 -strict -2 B.mp4 --> it tries with `Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264)`
[22:37:19 CEST] <frenda> Can we force it to use x265?
[22:41:23 CEST] <klaxa> yes, use -c:v libx265
[22:42:18 CEST] <klaxa> not entirely sure what you want and why you are using -async 1 and -strict -2 (aac? maybe use libfdk-aac?)
[22:42:28 CEST] <klaxa> also, if the audio is already aac you can just copy it
[23:20:20 CEST] <ATField> Hello, people! I am trying to build a transparent .WEBM from a sequence of transparent .PNGs according to this: http://updates.html5rocks.com/2013/07/Alpha-transparency-in-Chrome-video , but the process chokes on "ffmpeg -i image%04d.png -pix_fmt yuva420p video.raw". FFmpeg is erroring with "Unable to find a suitable output format for ..\video.raw' ..\video.raw: Invalid argument".
[23:21:32 CEST] <ATField> I thought maybe its because one of the image dimensions is odd and cropped to make even, but the error persists. Googling says that the problem usually happens because of a syntax error, but the command seems to be ok.
[23:21:51 CEST] <ATField> Please help me with some ideas on how to fix this.
[23:33:56 CEST] <llogan> ATField: why do you want raw if your target is vp8/webm
[23:39:54 CEST] <ATField> llogan: The second step of the instructions says to convert them into RAW first through yuva420p; and since all this command-line video- and image-converting business is only starting to work out for me, I am trying to follow it to the letter.
[23:40:21 CEST] <ATField> llogan: What would you suggest instead?
[23:40:39 CEST] <llogan> you can possibly just do: ffmpeg -i input -pix_fmt yuva420p -c:v libvpx output.webm
[23:41:04 CEST] <llogan> you'll probably want to add some sort of rate control so it doesn't look so crappy, but i don't use libvpx so i'm not too familiar with it
[23:45:49 CEST] <llogan> maybe this will help http://trac.ffmpeg.org/wiki/Encode/VP8
[00:00:00 CEST] --- Wed Aug 12 2015


More information about the Ffmpeg-devel-irc mailing list