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

burek burek021 at gmail.com
Wed Feb 17 02:05:01 CET 2016


[00:03:01 CET] <furq> https://ffmpeg.org/ffmpeg-filters.html#nnedi
[00:03:02 CET] <furq> neat
[01:09:12 CET] <explodes> My AudioTrack decoding 5.1 audio is very very quiet
[01:09:45 CET] <c_14> ac3?
[01:10:02 CET] <explodes> Yea
[01:10:37 CET] <c_14> tyr adding -drc_scale 1
[01:13:47 CET] <explodes> all lower case like that?\
[01:15:28 CET] <c_14> yep
[02:31:43 CET] <explodes> ...Got my build box working again. -drc_scale 1 as CFLAGS is breaking things
[02:38:58 CET] <explodes> I'm wondering if "-drc_scale 1" isn't a flag for the ffmpeg library, not for the build :P
[02:51:42 CET] <J_Darnley> Why would you think otherwise?
[02:55:51 CET] <furq> if only there were some way to find out
[02:55:55 CET] <furq> http://sprunge.us/ASVe
[02:55:57 CET] <furq> but there isn't
[03:00:27 CET] <explodes> ..another library question: After I specify that I'm downmixing to stereo with av_opt_set_int(strm->swr, "out_channel_layout", outChannelLayout, 0), how can I get the new output sample rate?
[03:26:57 CET] <explodes> yayy found the problem-
[03:28:21 CET] <smdrz> trying to convert with h264_qsv, compains  Error initializing an internal MFX session using ffmpeg 3.0
[03:28:22 CET] <smdrz> http://pastebin.com/tiQ0BHWn
[03:29:40 CET] <smdrz> not using intel media server stufio, since i have all dependenciies installed such aslibva and libdrm
[03:30:25 CET] <smdrz> using https://github.com/lu-zero/mfx_dispatch for comiling and linking for "--with-libmfx"
[04:38:38 CET] <_Vi> Can FFmpeg show me sound spectrum as numbers to stdout (not as image such as in showspectrum filter)?
[07:10:04 CET] <situation> Hmmm, no more h264_qsv in ffmpeg 3.0 ?
[07:10:41 CET] <situation> my bad, nvm
[07:10:47 CET] Action: dystopia slaps situation around a bit with a large trout
[07:10:57 CET] <dystopia> such a n00b sit
[07:13:05 CET] <situation> lol
[09:38:52 CET] <frengo> http://pastebin.com/tjhfSikZ
[09:39:02 CET] <frengo> http://pastebin.com/0Apa3D3W
[10:21:47 CET] <andrey_utkin> Hi, I'm interested in subtleties with H.264 Annex B vs AVCC. Willing to pay for good consulting with explanations why things work. The question is related to joining video clips of different origin. Joining AnnexB (mpegts) files work and with AVCC (MP4 container) it doesn't which I assume is legit. But if you convert this joined file to MP4, it still works. I wonder why.
[10:56:01 CET] <termos> I'm unsure of how to set the AVCodecContext::level, is it just an integer where level 3.1 would be the integer 31?
[11:04:37 CET] <jkqxz> termos:  libavcodec does not define level generically; the interpretation depends entirely on the codec you are using.
[11:05:26 CET] <termos> ah, it's x264 should have mentioned. I noticed this line x4->params.i_level_idc = avctx->level;
[11:07:40 CET] <jkqxz> Sure.  Then it is indeed ten times the level number, as you suggested.
[11:08:21 CET] <termos> that's a much better way of thinking of it, thanks
[11:28:42 CET] <sono> how do i extract X seconds starting at time Y from a video, and encode it (with a reasonable quality) in a commandline?
[11:31:08 CET] <grublet> sono: -ss and -t
[11:31:53 CET] <grublet> ffmpeg -ss timecode -i infile.ext -t seconds [other params] outfile.ext
[11:32:14 CET] <sono> grublet: cool :) thanks
[11:32:31 CET] <grublet> np let me know if you have any more issues and if i don't know someone else surely will help
[11:33:07 CET] <sono> what do you recommend as an encoding? i captured  old HI8 tapes and want to encode to share with family online; no need for very good quality
[11:35:22 CET] <grublet> sono: will they be downloading it to view it or will you be putting it on a site like youtube?
[11:36:24 CET] <sono> grublet: most likely on a private sharing website, but not sure yet if streaming or download
[11:36:28 CET] <sono> google drive allows both i think
[11:38:59 CET] <grublet> sono: are you aware of their brwoser or media players file format support? because that will determine a lot of options as well
[11:40:12 CET] <sono> grublet: it will be chrome or vlc
[11:46:58 CET] <grublet> sono: before i suggest anything, what format is the video right now? if it's already compressed you can just use -c:v copy -c:a copy
[11:47:21 CET] <grublet> if they have vlc then container format shouldnt be much of an issue
[11:47:59 CET] <sono> grublet: no it's not compressed; i don't have access to the files right now but they're huge (3GB for 20 minutes i think), and they were captured raw
[11:48:11 CET] <sono> they're in mp4 though iirc
[11:48:30 CET] <grublet> sono: do you know their resolution?
[11:48:36 CET] <grublet> or framerate
[11:50:05 CET] <sono> sorry not sure, maybe 720p
[11:57:17 CET] <grublet> sono: i'd try something like -c:v libx264 -preset slow -crf 24 for the video
[12:00:02 CET] <dystopia> -crf 24 will give you a very low bitrate
[12:00:14 CET] <dystopia> i would up it to like -crf 17 or 18
[12:00:49 CET] <grublet> dystopia: i was thinking of file size, 24 may be too low but id try something around 20 first
[12:01:55 CET] <grublet> i did most of my encoding when 1080p was difficult for a computer to decode so i'm still operating from that mindset so sono i suggest you let dystopia or someone else more up to date guide you from here
[12:03:24 CET] <onodera> Hi, I'm trying to compile the latest ffmpeg git master, and keep getting this:
[12:03:24 CET] <sono> grublet: dystopia: thanks i'll do some tests
[12:03:25 CET] <onodera> make: *** No rule to make target 'libavcodec/x86/dirac_dwt.c', needed by 'libavcodec/x86/dirac_dwt.o'.  Stop.
[12:03:44 CET] <onodera> does anyone know why this happens, google doesn't give me any relevant results
[12:05:13 CET] <saste> onodera: try to fix with make distclean
[12:05:21 CET] <jkqxz> onodera:  Run "make clean".  You've built it before in the same tree and some old dependencies are still there.
[12:05:27 CET] <onodera> ah thanks
[12:30:13 CET] <Bluez_> hey guys, im still loosing hair trying to figure out why quicktime doesnt see my AAC audio at all (media information doesnt even show an aac track) :/
[12:30:18 CET] <thunfisch> hi! is there a easy way to crop different regions depending on timemarks? say, i've got a list (format doesn't matter to me) which has timestamps and a associated region. can i pass this list on to ffmpeg, so it automatically varies the crop region? or do i first have to split the sections, crop them separately and then reassemble?
[12:30:21 CET] <Bluez_> i posted on the list here:  http://libav-users.943685.n4.nabble.com/Libav-user-h264-aac-in-quicktime-container-no-audio-in-quicktime-tc4661856.html
[12:30:27 CET] <Bluez_> if anyone has any ideas (^^code)
[12:31:22 CET] <thunfisch> i've seen in the documentation that you can pass on mathematical functions to vary the cropregion, but didn't see any info on how to do this the way i want (which would be a stepped function essentially)
[12:44:37 CET] <ritsuka> Bluez_: did you set the es descriptor for the aac track?
[12:45:11 CET] <Bluez_> hmm no :/
[12:45:32 CET] <ritsuka> then you just found the problem
[12:45:56 CET] <Bluez_> :)  thanks!
[12:46:03 CET] <Bluez_> looking now for an example on how to set it
[12:54:23 CET] <DHE> which should be faster? deinterlace, scale, encode or leaving it interlacing and scaling+encoding aware mode
[12:56:22 CET] <grublet> DHE: is the material already compressed? most media players can deinterlace and upscale during playback
[12:57:01 CET] <grublet> if you're trying to compress, some encoders like x264 can handle interlaced content
[12:59:40 CET] <DHE> yes, I'm concerned about performance in encoding. it's pretty high-res and I need real-time
[13:00:43 CET] <grublet> DHE: realtime encoding? what is the current file format and audio/video codec. is the material already compressed or is it uncompressed/lossless
[13:01:48 CET] <Bluez_> ritsuka: hmm do you mean where i do AVStream *audioStream = avformat_new_stream(c->oc, NULL); and setup the codec type etc?
[13:02:42 CET] <ritsuka> yes, like you set the extradata for the video track, you need to set the extradata in the audio track too
[13:03:50 CET] <Bluez_> oh, any example of how i might do that?
[13:51:19 CET] <j03> Hi all. I have a folder full of images, with sequential filenames, but not in increments of one - for instance, I have 00000.png, 00060.png, 00120.png. Is there way of passing in a "step" value when converting this series of images to video?
[13:51:44 CET] <j03> I think I can use globbing -- will that preserve the order of my images?
[13:56:33 CET] <brontosaurusrex> j03: what i did in past is generate soft links in tmp
[13:56:50 CET] <brontosaurusrex> and then feed that to ffmpeg
[13:57:16 CET] <j03> soft links with with numerical step of 1?
[13:57:26 CET] <brontosaurusrex> yes
[13:57:54 CET] <brontosaurusrex> i can find the script if you want
[13:58:12 CET] <j03> if it's to hand then that would be great! Don't worry if you can't find it, though!
[14:01:36 CET] <brontosaurusrex> j03: full thing http://paste.debian.net/391526/ (you probably want things from line 100)
[14:02:18 CET] <j03> brontosaurusrex: that's awesome - thank you! i'll give it a try later this afternoon.
[14:21:36 CET] <Bluez_> ritsuka: that fixed it :) thanks!
[14:25:24 CET] <DHE> grublet: mpeg2
[14:25:32 CET] <DHE> and AC3
[14:42:05 CET] <grublet> DHE: I'm assuming it's a DVD or Blu-ray source, in which case I'd suggest letting your media player deinterlace/upscale on the fly. most decoders now have GPU acceleration
[14:59:40 CET] <DHE> grublet: no, it's a over-the-air source from an ATSC receiver. it's all 1080i up there
[15:00:07 CET] <Mavrik> DHE, deinterlacer is pretty CPU intensive
[15:00:11 CET] <Mavrik> so keep it interlaced
[15:00:24 CET] <Mavrik> But also keep in mind that interlaced streams are way less efficient in new codecs.
[15:02:15 CET] <brontosaurusrex> do AVC decoders in TVs support interlaced decoding at all?
[15:02:48 CET] <DHE> HDMI does carry whether the image being sent is interlaced or not. any good TV should then deal with the signal
[15:03:23 CET] <DHE> but in my scenario I am transcoding to H264 after scaling it down (bandwidth and all)
[15:04:23 CET] <Mavrik> brontosaurusrex, of course.
[15:04:49 CET] <Mavrik> brontosaurusrex, interlaced content is still the majority in broadcast TV
[15:05:24 CET] <DHE> yeah... it sucks..
[15:05:32 CET] <Mavrik> DHE, yeah, I'm regularly seeing yadif eat like 5-15% CPU time of live reencode
[15:05:50 CET] <Mavrik> (x264 medium or fast preset)
[15:06:06 CET] <DHE> yeah, and I'd love to get that back, but not if deinterlaced scaling and encoding will just use 10-20% instead
[15:06:46 CET] <Mavrik> m?
[15:11:52 CET] <brontosaurusrex> Mavrik: right, stupid questions I have this days ....
[15:12:18 CET] <Mavrik> :)
[15:12:36 CET] <Mavrik> Here all DVB TV has to be broadcast with AVC.
[15:12:46 CET] <brontosaurusrex> yeah, same here
[15:12:53 CET] <Mavrik> And pretty much everyone standardized on 1080i for HD channels.
[15:13:01 CET] <brontosaurusrex> right
[15:14:59 CET] <DHE> here's it all mpeg2...
[15:15:21 CET] <DHE> it's pretty much all 720p or 1080i with the latter being much more common
[15:15:44 CET] <DHE> one channel in the area actually sends both HD and SD versions on the same frequency.... dunno why but they do
[15:15:58 CET] <bencoh> DHE: vertical scaling of interlaced content without de-interlacing (or special handling) is usually not a good idea :)
[15:16:21 CET] <DHE> the scale filter in ffmpeg has interlacing support...
[15:16:44 CET] <bencoh> ah right you can use that :)
[15:17:45 CET] <bencoh> depending on your receivers and your bandwitdh reduction needs, you might get away with horizontal downscaling and a different SAR, by the way
[15:17:47 CET] <xace> im sshing into my windows machine (using cygwin) and converting a movie file. however I can't seem to press Q to cancel the conversion, ctrl-c seems to corrupt the file. any ideas on how to solve this?
[15:17:57 CET] <bencoh> (soomething like half-width scaling)
[15:18:04 CET] <bencoh> (without deinterlacing, that is)
[15:21:31 CET] <DHE> bencoh: ... interesting idea...
[15:21:55 CET] <DHE> I was going to scale it way down, to like 480
[15:22:02 CET] <bencoh> from?
[15:22:09 CET] <DHE> 1080
[15:22:17 CET] <bencoh> mpeg2 1080i?
[15:22:36 CET] <DHE> yeah that
[15:23:25 CET] <bencoh> how much bw do they need for 1080i mpeg2 to look "good"?
[15:24:05 CET] <DHE> something like 12-15 megabits. the frequency carries a peak of ~18 megabits
[15:25:08 CET] <DHE> the bitrate varies so it's hard to get a good measurement
[15:27:20 CET] <Mavrik> bencoh, I've seen something like 15-20Mbit mostly
[15:27:37 CET] <Mavrik> I think DVB-C here mostly had 25MBit CBR reserved
[15:28:52 CET] <andrey_utkin> Hi, I'm interested in subtleties with H.264 Annex B vs AVCC. Willing to pay for good consulting with explanations why things work. The question is related to joining video clips of different origin. Joining AnnexB (mpegts) files work and with AVCC (MP4 container) it doesn't which I assume is legit. But if you convert this joined file to MP4, it still works. I wonder why.
[15:29:36 CET] <Mavrik> andrey_utkin, how are you joining stuff?
[15:32:52 CET] <andrey_utkin> Mavrik: let's say I have clips A, B, C of same origin and properties (not necessarily encoded by ffmpeg), and then I need to apply filters (and reencode) B clip and concatenate A, B, C clips into single video clip. Concat demuxer does this job, but the resulting file plays fine only if concat is fed with MPEG TS files containing Annex B formatted video data.
[15:33:00 CET] <mbeacom> Does anyone happen to know if ffmpeg's autorotate functionality works with an RTMP source (i.e. an iPhone streaming via RTMP) and the orientation changes from landscape to portrait.  Does ffmpeg pass the Rotation metadata to the outputs (in this case, it splits output to HLS and generates a recorded FLV that gets -copyts'd to MP4.
[15:34:21 CET] <andrey_utkin> I have all input files in MP4 (AVCC H264 format), and I wonder can I avoid translation of all files to Annex B and then back to MP4/AVCC (in case output must be also MP4)
[15:35:43 CET] <andrey_utkin> mbeacom: can ffmpeg be anyhow related to autorotate on iphone?
[15:36:43 CET] <Mavrik> andrey_utkin, that's strange
[15:36:48 CET] <Mavrik> I guess it might be SPS/PSS related
[15:37:04 CET] <mbeacom> @andrey_utkin ...  the iPhone is streaming video and audio via RTMP...  ffmpeg is transcoding the data being pulled from the RTMP server...
[15:37:54 CET] <andrey_utkin> yes, MP4 (AVCC) format seems to store PPS/SPS data in file header (global extradata), and MPEG TS (Annex B) has this data in each keyframe
[15:38:26 CET] <Mavrik> andrey_utkin, one explanation would be that you have different image parameter set (since you're not really reenconding a stream).
[15:38:27 CET] <andrey_utkin> that's it, i just wanted to consult about the subtleties of it, to figure out what are possible optimizations
[15:38:36 CET] <mbeacom> @andrey_utkin ffmpeg is outputting four separate HLS streams, a thumbnail, and a recorded FLV that gets -copyts'd to MP4.
[15:38:42 CET] <Mavrik> MPEG-TS carries SPS/PSS in front of each I-frame so players will reconfigure that.
[15:38:42 CET] <andrey_utkin> Mavrik: i know that
[15:38:52 CET] <Mavrik> While MP4 doesn't... which means that players will crash hard when they get new frames.
[15:39:50 CET] <andrey_utkin> what I wonder about is (how) can I mux straight to MP4 and not to transitional MPEGTS, because it still works when I convert back from MPEGTS to MP4.
[15:52:59 CET] <mbeacom> andrey_utkin: Did you have anything else to add to that statement posed as a question?
[15:53:27 CET] <Mavrik> andrey_utkin, hmm... that sounds like a bug in ffmpeg :/
[15:54:24 CET] <bencoh> andrey_utkin: how do you "convert" back to mp4? codec copy, or transcoding?
[15:55:12 CET] <andrey_utkin> bencoh: yes, codec copy
[15:57:10 CET] <bencoh> have you tried comparing the extradatas?
[15:57:58 CET] <andrey_utkin> mbeacom: the actual question is a bit hard to address because demonstration scripts would be needed, and on my sample data the concat demuxer produces broken files (due to lack of handling of different timebases). So a bit of patching is needed, or usage of custom app. I haven't yet made this all clean enough to make consolidated help request. Maybe a bit later.
[16:53:45 CET] <xace> looking at https://www.ffmpeg.org/ffmpeg-devices.html#toc-gdigrab . running `ffmpeg -f gdigrab -framerate 6 -i desktop out.mpg` results in "Output file #0 does not contain any stream" what am i doing wrong? windows 8.1
[16:55:05 CET] <xace> http://pastebin.com/RS2ggWC0
[16:57:13 CET] <shincodex> it means your video has no streams audio, ass titles, video. which would seem to indicate your file isnt a file.
[16:57:49 CET] <shincodex> oh your doing capture
[16:57:52 CET] <J_Darnley> Try reading his paste to see the actual error
[16:57:54 CET] <shincodex> it probably is broken.
[16:58:13 CET] <xace> shincodex: i took it form the ffmpeg site. i figured those examples should work
[16:58:17 CET] <J_Darnley> Rather than what the user thinks is the error because its the last line.
[16:58:42 CET] <xace> J_Darnley: are you referring to the [gdigrab @ 00000049bf5cb120] Failed to capture image (error 5) ?
[16:58:46 CET] <xace> not sure how to fix that tbh
[16:59:03 CET] <kepstin> xace: that means that the windows api being used to grab a frame image is failing
[16:59:05 CET] <J_Darnley> Niether am I (but I will look at the source to see the meaning)
[16:59:22 CET] <J_Darnley> I mean why wouldn't you paste that in the first place?
[16:59:35 CET] <kepstin> need to look up the error number on msdn (with the function that's failing) to find out what's going on :/
[17:00:24 CET] <kepstin> lets see... that's the BitBlt off the screen pixmap failing.
[17:01:21 CET] <kepstin> error 5 is ... access denied
[17:01:37 CET] <kepstin> however you're running the ffmpeg process, it doesn't have permission to grab the screen image.
[17:02:03 CET] <xace> should i run ffmpeg as administrator?
[17:02:23 CET] <kepstin> it could be that you're running ffmpeg as a different user than the logged in user, or some running app has restricted screencapture maybe?
[17:02:29 CET] <kepstin> dunno what could cause that
[17:02:31 CET] <shincodex> run all as administrator/root UAC is not good concept in any os
[17:02:41 CET] <xace> yeah, henhce me hesitating on running as admin
[17:02:48 CET] <shincodex> huehuehuehue
[17:03:03 CET] <kepstin> it should be fine running it as the same user as you logged in with in most cases.
[17:04:06 CET] <theFam> Hello everyone.
[17:05:00 CET] <J_Darnley> POS ISP
[17:07:26 CET] <theFam> I am currently using ffmpeg on Arch Linux ARM. When I use the command "ffmpeg -i ./Comp\ 1.mp4 -c:v libx264 -q:v 1 -c:a copy Tristam\ -\ Once\ Again.mp4" ffmpeg crashes. fish says "fish: ffmpeg -i ./Comp\ 1.mp4 -c:v li& terminated by signal SIGKILL (Forced quit)". What could be the cause?
[17:09:35 CET] <kepstin> theFam: something sent a SIGKILL to the ffmpeg process
[17:09:50 CET] <kepstin> theFam: check dmesg; the cause might be the OOM-killer (you ran out of memory)
[17:10:19 CET] <theFam> kepstin: possibly o.O let me check
[17:10:39 CET] <theFam> kepstin: do i just grep?
[17:11:00 CET] <kepstin> theFam: just look near the end of dmesg, the oom killer spews a lot of output that's pretty noticable.
[17:11:08 CET] <theFam> kepstin: yes, it's an out of memory thing
[17:11:22 CET] <theFam> [174712.130106] c0  20486 Out of memory: Kill process 20360 (ffmpeg) score 384 or sacrifice child
[17:11:32 CET] <theFam> how do i make it not do that
[17:11:44 CET] <kepstin> use a machine with more ram ;)
[17:11:56 CET] <theFam> kepstin: No machines available atm
[17:12:02 CET] <kepstin> alternately, make sure you're using only one thread in libx264, and reduce the number of reference frames it's using
[17:12:21 CET] <kepstin> kill other processes on the machine that you don't need :)
[17:12:21 CET] <theFam> kepstin: what arguments? I'm kinda new to ffmpeg
[17:12:37 CET] <theFam> --threads 1??
[17:13:04 CET] <theFam> kepstin: is 200MB not enough for ffmpeg?
[17:13:49 CET] <kepstin> theFam: modern video encoders (like x264) buffer multiple raw frames in memory to look for places where the compression can re-use data. In high quality modes, this can use a lot of ram.
[17:14:02 CET] <theFam> hmm
[17:14:16 CET] <kepstin> (and you might need ram for reference frames on the decoding side too)
[17:14:26 CET] <theFam> kepstin: I need to google how to lower referce frames, I guess. :/
[17:14:44 CET] <furq> theFam: try using a faster preset
[17:14:53 CET] <kepstin> yeah, that's probably easiest.
[17:15:39 CET] <J_Darnley> -refs 1 -threads 1
[17:15:49 CET] <theFam> J_Darnley: savior
[17:15:58 CET] <theFam> kepstin: thanks for the help.
[17:21:55 CET] <theFam> if I want to keep high quality on a h264 video but smaller size, what crf value should i go for?
[17:23:00 CET] <kepstin> theFam: you'll really want a more powerful system for that, with that ram limit you can't really use the more efficient encoding modes.
[17:23:58 CET] <theFam> kepstin: I understand, what is a more space-efficient encoding method? Just wondering.
[17:24:42 CET] <kepstin> to increase efficiency, you'll want to use one of the slower presets (e.g. "veryslow") with no limit on reference frames.
[17:25:28 CET] <kepstin> with the reference frame limit you have atm, depending on the source video you can probably choose between 'smaller' and 'about the same quality', but not both at the same time :)
[17:25:44 CET] <theFam> i see
[17:25:53 CET] <theFam> let me try something
[17:26:42 CET] <theFam> hahaha
[17:27:01 CET] <theFam> running ffmpeg is a really easy way to clear ram
[17:27:14 CET] <theFam> because androids kills everything :^)
[17:30:46 CET] <theFam> ffmpeg always dies at 40 frames :(
[17:38:47 CET] <EmleyMoo1> I recently acquired a NextBase "Duo" dashcam, and am wondering if ffmpeg could help me do the following (not all together): (1) lop off the black areas top and bottom (2) cut the left or right half off the video (3) include the top, say, 10% of the left half and the bottom 90% of the right half in the output.
[17:40:33 CET] <kepstin> EmleyMoo1: yeah, that could all be done with various combinations of the crop, overlay, hstack, vstack filters.
[17:45:01 CET] <furq> theFam: if you're on android you'll probably want to use a fast preset anyway so the encode doesn't take forever
[17:47:06 CET] <theFam> furq: thanks
[17:47:36 CET] <furq> also i guess from your question about crf that you already figured this out, but don't use -q:v with x264
[17:52:03 CET] Action: EmleyMoor is testing "crop" right now!
[17:53:39 CET] <EmleyMoor> Nice!
[17:56:00 CET] <EmleyMoor> Sadly I have to go out now, but it is probably not going to take me long to get used to this
[19:04:09 CET] <shincodex> perhaps you are doing it... breaking pthread_exit
[19:04:21 CET] <shincodex> Im wondering iff ffmpeg has broken thread logic
[19:04:31 CET] <shincodex> I dont configure in pthread explicitly nor do i disable it
[19:04:40 CET] <shincodex> yet i call pthread_exit() in main and it hangs.
[19:04:54 CET] <shincodex> All my threads are joined up.... so i wonder if ffmpeg doesnt handle threads correctly
[19:08:32 CET] <shincodex> or perhaps hyperthreading is broken?
[19:10:55 CET] <furq> yeah it's probably an intel bug and not your code
[19:15:33 CET] <shincodex> one is a i7
[19:15:43 CET] <shincodex> another is a i7 but throttled for some rugged environment
[19:15:51 CET] <shincodex> so my only option is to what
[19:15:53 CET] <shincodex> Abort(
[19:15:54 CET] <shincodex> exit?
[19:16:25 CET] <shincodex> raise sig div 0?
[19:16:25 CET] <kepstin> shincodex: the most likely thing I can think of is that you're not fully flushing/closing some codecs or streams in ffmpeg.
[19:16:42 CET] <shincodex> its a network stream
[19:16:43 CET] <kepstin> without knowing what's in your code it could be anything, including not related to ffmpeg at all
[19:16:48 CET] <shincodex> and i can the stream purposely.
[19:17:04 CET] <shincodex> meaning i reboot the machine that does the stream hence av_read_frame returns 0
[19:17:17 CET] <shincodex> i call it a few more times 15 second wait times to keep trying the connection
[19:17:20 CET] <shincodex> then i eventually give up
[19:17:30 CET] <shincodex> and my close process is this...
[19:19:45 CET] <shincodex> http://pastebin.com/7V5wp8cS
[19:20:38 CET] <shincodex> it probably has nothing to do with ffmpeg
[19:20:42 CET] <shincodex> but i saw pthread_cancel
[19:20:51 CET] <shincodex> then somebody bitching on the internet how using the function is wrong
[19:21:16 CET] <shincodex> i switched my two threads from cancel to join and can my while loops but i die in pthread_exit()
[19:21:25 CET] <shincodex> i assumed it was cause cancel is bad.
[19:22:00 CET] <Abbott> I am trying to extract all frames for editing using "ffmpeg -i file.mp4 -r 1/1 $filename%03d.bmp" but this only extracts 5 frames for a video that is ~2 seconds long, where I was expecting something more like 48 frames. Is there some other/different flag I need to use to extract ALL frames?
[19:22:37 CET] <kepstin> Abbott: using "-r" as an output option (after -i) causes it to drop frames to convert the rate to 1fps
[19:22:48 CET] <kepstin> Abbott: you probably just want to completely remove the -r option
[19:23:07 CET] <Abbott> my end goal is to extract frames from a video, edit them in photoshop, then sip them back up into an mp4 or some other container
[19:23:24 CET] <Abbott> kepstin: okay so just do "ffmpeg -i file.mpg 1/1 $filename%03d.bmp" ?
[19:23:38 CET] <kepstin> remove the argument to the -r option as well...
[19:23:52 CET] <Abbott> lol whoops
[19:24:21 CET] <shincodex> you know what? Do I even need to pthread_exit from main thread
[19:24:26 CET] <shincodex> the program is dieing right here anyways.
[19:24:40 CET] <Abbott> kepstin: that looks like it did it. I got 89 frames that time
[19:24:40 CET] <shincodex> i know in windows its very nice about humans leaking shit
[19:24:47 CET] <Abbott> thank you!
[19:26:17 CET] <kepstin> Abbott: if you think the input file might have variable framerate, you might want to use the '-r' option to normalize it, so the timing doesn't get messed up when you turn it back into a video. In that case, you pick an argument to -r that's close to the nominal rate of the file
[19:27:11 CET] <Abbott> kepstin: I didn't even think of that. I'll check if my phone encodes with a variable framerate
[19:30:21 CET] <shincodex> I figure this now....
[19:30:24 CET] <shincodex> I use C++
[19:30:31 CET] <shincodex> Im wondering if that exit is just crap.
[19:30:51 CET] <shincodex> like free(thismemorywasnewedincpluspluss);
[19:34:48 CET] <Alina-malina> How to split a large avi file into 3 or 4 parts with ffpmeg?
[19:35:36 CET] <shincodex> i ditched pthread_exit() and just allowed main to return 0; which is supposed to be same thing even on main thread
[19:35:44 CET] <shincodex> problem seems to go away on box b where process goes defunct
[20:05:55 CET] <ChocolateArmpits> Alina-malina: https://www.ffmpeg.org/ffmpeg-formats.html#segment_002c-stream_005fsegment_002c-ssegment
[20:09:15 CET] <haroldm> is there a way to apply external filters to an ffplay instance?
[20:09:32 CET] <haroldm> such as ffdshow using avisynth
[20:10:15 CET] <Alina-malina> olololo thanks ChocolateArmpits
[20:11:09 CET] <furq> haroldm: you can use an avs script as input to ffmpeg, maybe it works with ffplay too
[20:12:03 CET] <haroldm> right now I'm opening my capture device in media player classic and filtering it through ffdshow http://puu.sh/nak3B/56e5bca8f8.png
[20:12:20 CET] <haroldm> but I'd like to just run it through ffplay so I'm a bit confused how it would be set up
[20:12:53 CET] <haroldm> mainly because I'm having a ton of issues with mpc adding a ton of extra filters I'm not trying to use
[20:13:58 CET] <haroldm> I tried solely using ffplay to capture and apply filters but it had pretty bad slowdown
[20:14:41 CET] <furq> haroldm: ffplay -i myscript.avs
[20:16:02 CET] <haroldm> @furq that would be included along with the device in ffplay correct? I don't think there's a way to capture from within avisynth
[20:18:55 CET] <furq> oh i didn't see that bit
[20:19:01 CET] <furq> idk if that's possible then
[20:19:30 CET] <haroldm> well could it be something like ffplay -f dshow -i myscript.avs video="DEVICE"
[20:19:58 CET] <furq> that wouldn't pass the input to the avisynth script
[20:20:05 CET] <haroldm> oh yeah
[20:23:02 CET] <haroldm> is there a way to filter the capture without bad slowdown?
[20:23:11 CET] <haroldm> using only ffplay?
[20:23:40 CET] <haroldm> had something like this
[20:23:42 CET] <haroldm> ffplay -f dshow -i video="DEVICE":audio="DEVICE" -top 1 -vf "separatefields, crop=644:224:40:8, scale=600:224:flags=bicubic, scale=600:448:flags=neighbor"
[20:23:50 CET] <haroldm> but it would drop frames like crazy
[20:24:10 CET] <haroldm> not sure how avisynth can handle it
[20:28:46 CET] <Zerowalker> Is it possible to make non-interleaved AVI with ffmpeg?
[20:34:58 CET] <kepstin> a non-interleaved "audio-video-interleave" file? ;)
[20:35:08 CET] <kepstin> that said, there might be some format options that could do that.
[20:38:19 CET] <durandal_1707> Nope, bad idea
[20:55:03 CET] <Zerowalker> Virtualdub, though it's kinda controversial. Thanks for answering:)
[21:05:03 CET] <durandal_1707> Why you want to do that?
[21:08:42 CET] <Zerowalker> trying to figure out a way to get audio from an AVI file without having to load through the entire file, takes awhile when it's over 100gb;p
[21:09:58 CET] <furq> remux it to something that's not avi?
[21:10:22 CET] <J_Darnley> How are you going to make a not-interlaved AVI file without reading it all (then writing another)?
[21:12:06 CET] <Zerowalker> I am recording and it saves to an AVI, but i thought that if i could make that AVI non-interleaved it would be easy to access the audio
[21:12:45 CET] <durandal_1707> interesting, buy SSD
[21:12:50 CET] <Zerowalker> It's complicated, but i access the audio several times from the file, but it's so damn slow as i need to read the entire file, even though the audio is small. Yes i can extract it, but i am trying to fine a one way solution;p
[21:13:12 CET] <Zerowalker> well, recordings several 100 of GB on an SSD isn't that great;p
[21:13:42 CET] <Zerowalker> But yeah seems like there isn't much of a solution, was worth looking it up though.
[21:13:51 CET] <furq> the solution is to not use avi
[21:16:00 CET] <Zerowalker> MKV is worse for my use, the best way would be to have the video and audio separate
[21:18:20 CET] <uberushaximus> then just demux the file
[21:18:41 CET] <uberushaximus> I mean, you're going to have to read the whole thing no matter what I assume
[21:18:49 CET] <kepstin> if it would be best to have the video and audio separate, well, that's simple enough to do with ffmpeg...
[21:19:28 CET] <Zerowalker> Yeah i know ,it's just that it basically takes the same amount of time as i usually read it twice.
[21:20:37 CET] <Zerowalker> And well it's OBS that's using ffmpeg to encode, so i don't have that option to not mux them, i think. But well it's not a extremely important thing, was just looking for a way to solve it other than demuxing, but it seems there wasn't such a way, thanks:)
[22:15:48 CET] <milbarge> Hi, is there documentation for the new protocol whitelist feature in 3.0? I've been looking but can't find any.
[22:19:47 CET] <milbarge> I ask because I am getting a "Protocol not on whitelist 'file'!" error when trying to input from an rtp stream via an sdp file. It worked on 2.8.6 and I'm wondering if I'm missing somthing. http://pastebin.com/zvvdxjHs
[22:43:01 CET] <d-fens_> hi, i try to animate some parameters like  unsharp=luma_amount=sin\(%t) , but i only get parse errors, how is that done correctly?
[23:03:35 CET] <d-fens_> nevermind, not possible yet
[23:03:55 CET] <d-fens_> each filter has to support expressions individually
[23:04:29 CET] <J_Darnley> ah yes
[23:04:40 CET] <J_Darnley> I guess that one doesn't then
[23:20:28 CET] <NetworkingPro> Hey everyone, I am having a hard time figuring out what I need to know. Specifically, I have an IP Camera using Live555/RTSP, and Im wanting to rebroadcast it.
[23:20:41 CET] <NetworkingPro> Im not sure what to set the output to in order to correctly transcode it.
[23:20:48 CET] <NetworkingPro> or rebroadcast?
[23:21:50 CET] <NetworkingPro> ffmpeg -i rtsp://admin:password@172.31.84.59/streaming/channels/101/ -vcodec libx264 -tune zerolatency -crf 18 -f rtsp -muxdelay 0.1 rtsp://0.0.0.0:51840?timeout=0
[23:26:45 CET] <furq> ffmpeg isn't an rtsp server
[23:47:20 CET] <cyphix> Hi. I'm still trying to improve my mediacrush server to be faster. I recompiled ffmpeg with less options, but it still runs at 0.5 fps. Here is the output of the command: https://p.cyphix.org/view/94e63120. Any suggestion on what is causing it to work so slow is welcome...
[23:48:24 CET] <furq> single threaded 1080p vp9 is slow
[23:48:29 CET] <furq> vp9 is slow in general
[23:48:52 CET] <c_14> That's vp8
[23:48:52 CET] <J_Darnley> What CPU does that machine have?
[23:48:55 CET] <c_14> Still slow though
[23:49:09 CET] <TD-Linux> you're using an ancient libvpx
[23:49:23 CET] Action: J_Darnley should patch ffmpeg to always print the cpu flags
[23:49:36 CET] <cyphix> TD-Linux: Me?
[23:49:44 CET] <TD-Linux> cyphix, yes
[23:49:57 CET] <cyphix> TD-Linux: Ok, how can I update it?
[23:49:58 CET] <TD-Linux> also -crf 5, that's a bit high
[23:50:08 CET] <furq> yeah -crf 5 -b:v 5M seems like a bad choice
[23:50:12 CET] <TD-Linux> cyphix, I dunno, update your distro?
[23:50:47 CET] <c_14> Or build from source or get a static build
[23:51:01 CET] <TD-Linux> cyphix, also you can set speed options to libvpx to make it go faster
[23:51:43 CET] <TD-Linux> try -speed 4 or something
[23:53:18 CET] <cyphix> On my gentoo machine, which I guess is a bit more up to date, it runs at 4 fps. It's better, but I'm still surprised it's that slow. Am I right to assume that for a 30fps video, it will take about 8 times the length of the video to process?
[23:54:59 CET] <TD-Linux> cyphix, yes. if you want it to go faster use -speed or update libvpx or both
[23:55:37 CET] <cyphix> ok, the -speed option helps a lot. What about this -crf 5 option? What value should I give it?
[23:55:55 CET] <TD-Linux> it's actually probably totally ignored with those settings, it'll just target a bitrate which might be ok for you
[23:56:15 CET] <TD-Linux> cyphix, a higher -speed number makes it go faster. so you can just crank that up until it's as fast as you want
[23:56:23 CET] <TD-Linux> of course this comes at a loss of quality
[23:57:10 CET] <cyphix> Ok, I'll se what's the good balance then
[23:59:00 CET] <cyphix> Mhmmm... I can reach 30fps on my gentoo machine, but my debian server goes at 6fps max. Is upgrading libvpx the only remaining solution? Aren't there other options I could tweak (maybe with a loss of quality) to gain speed?
[00:00:00 CET] --- Wed Feb 17 2016


More information about the Ffmpeg-devel-irc mailing list