[01:14] <blizzow> I'm sure this has been answered a million times before, but I don't see a quick google answer. Can ffmpeg read and convert the gotomeeting g2m4 codec to another format? [01:37] <posciak> hi, I'm trying to extract elementary stream from an mp4 container, I tried various combinations of ffmpeg -i foo.mp4 -vcodec copy -f h264 out, but it doesn't seem to be producing what I'm looking for... I can't find valid start code prefixes in output file... What am I doing wrong? [02:01] <zerwas> When i use -sameq to process a asf file, the audio quality drops extremely, why is that? [02:01] <zerwas> Is -sameq only valid for video and not audio? [02:07] <posciak> ok, figured it out, needed the h264_mp4toannexb filter [02:19] <iiu7> I'm converting a MKV file and somewhere while running I get this error and ffmpeg quits. [02:20] <iiu7> Application provided invalid, non monotonically increasing dts to muxer in stream 1: 401137 >= 401077 av_interleaved_write_frame(): Invalid argument [02:20] <LexSfX> i've seen that before too; never did figure it out :L [02:20] <LexSfX> (sorry for the unhelpful comment) [02:20] <iiu7> Is there a way to deal with it? [02:20] <iiu7> np [02:21] <LexSfX> i used a different tool instead, but that's obviously not ideal [02:21] <iiu7> I could try with mencoder, but I really prefer ffmpeg [02:22] <LexSfX> might try using mkvextract to extract the streams, then using ffmpeg from there [02:35] <iiu7> Gonna use mencoder I think, but thanks! [02:35] <iiu7> ;) [03:01] <linuxis> Excuse me, I've been trying to edit this bash script to pipe shoutcast streams through ffplay but I can't seem to do it right [03:02] <linuxis> No matter what, I get errors [03:05] <linuxis> ( http://yp.shoutcast.com/sbin/tunein-station.pls?id=93492 ) [03:05] <linuxis> Uhh sorry disregard that [03:14] <treund> does ffplay take stdin ffplay - [03:16] <xxthink> I use ffmpeg to stream a video on the fly [03:17] <xxthink> ./ffmpeg -i mmsh://10.1.104.130:80/fxqiyi1m?MSWMExt=.asf -vcodec libx264 -preset fast -g 60 -vb 500000 -strict experimental -acodec aac -ab 64000 -ar 44100 -ac 2 -f flv http://10.1.30.82:8989 [03:17] <xxthink> but if fails [03:17] <xxthink> [tcp @ 0x1c25fbe0] TCP connection to 10.1.30.82:8989 failed: Connection refused [03:17] <xxthink> How to give the output parameters? [03:19] <xxthink> ? [03:30] <xxthink> does ffmpeg support http streaming? [03:30] <xxthink> output [03:55] <EOF-sensei> http://se.xlu.be/thaicp.jpg [04:42] <llrcombs> Anyone know much about libavcodec on iOS? [08:38] <piece3> Hi [08:39] <spaam> hi there [08:39] <piece3> Excuse me ppl, is there a way to break 1 video into smaller videos by time? [08:40] <piece3> Say I have 1 minute video and I want to divide it into 6, 10s videos, the "-t 10" option only stops after the first video has been created [08:41] <piece3> e.g. ">ffmpeg -i in_video -t 10 out_video" [08:42] <spaam> then you needd to start at 10s and encode 10s.. then 20s encode 10s and so on. [08:43] <piece3> Ok, the issue I need to resolve is we have an rtsp feed that runs 24h 7 days a week. I need to break that feed up into 30minute segements [08:43] <spaam> -ss 10 .. -ss 20 [08:44] <spaam> ok. [08:44] <piece3> Not missing a frame [08:44] <spaam> then i dont know how you can do it. [08:46] <piece3> Hmm, ok, do you think it may be possible, or for sure it can't be done? [08:51] <piece3> I think I could program a script that every nth amount of time, it started another thread recording the rtsp and then stopped the current one [08:56] <piece3> another question if you don't mind. I keep getting the following error "timebase 1/90000 not supported by MPEG 4 standard, the maximum admitted value for the timebase denominator is 65535" [08:57] <piece3> Any clues on this, sometimes my tbr from my rtsp feeds are 90K other times they are 25 [08:57] <piece3> It seems to be random. [09:06] <piece3> Anybody got any clues on this one, or is this more a devel question? [09:24] <cbreak-work> piece3: 90000 fps? [09:27] <piece3> Yeah, something's not right [09:28] <rfx> I know this Q is not related to ffmpeg, but is there software to recommend (win or linux) which is able to edit containers/streams meta data? i.e. owner, copyright, name of title, etc.? [09:29] <cbreak-work> hex editor + wikipedia? :/ [09:29] <Mavrik_> rfx, depends on a container really [09:29] <Mavrik_> you use your container tools [09:30] <Mavrik_> (or ffmpeg :) ) [09:30] <piece3> cbreak: The media boxes sending out the rtsp feed are actually only sending 25fps, I don't know why sometimes the feeds register on ffmpeg as 25 tbr other times 90k tbr [09:49] <Milos> libaacplus: bad aac setting: br:128000, AACch:2, AACsr:24000 [09:49] <Milos> [libaacplus @ 0x9a1de0] libaacplus doesn't support this output format! [09:49] <Milos> Hmm? [09:49] <Milos> I'm trying to drop side channels, I want only stereo. [09:49] <Milos> The stream apparently has 6 channels. [09:50] <Mavrik_> Milos, libaacplus doesn't support encoding over 64k of bitrate [09:50] <Milos> Which causes "[libaacplus @ 0x8ec110] encoding 6 channel(s) is not allowed" [09:50] <Milos> So I used -ac 2 [09:50] <Milos> Ohhh [09:50] <Milos> Ok, I can change that by doing -ab 32k? [09:50] <Mavrik_> -ab 64k :) [09:50] <Milos> sure [09:50] <Milos> ok thanks [09:50] <Mavrik_> or, in new versions -b:a 64k is preferred [09:50] <Milos> you're super helpful, are you a dev? [09:50] <Milos> :) [09:50] <Mavrik_> I'm not an ffmpeg contributor no... but I do develop software that uses ffmpeg extensively ;) [09:51] <Milos> ah I see! :D [09:51] <Milos> you know a lot, and I thank you for continually giving really good answers, I've been here a few times [09:59] <rfx> Mavrik_: understood .. in my case, it's "only" mp4 and webm right now; just in case, any tools to recommend for those formats? [09:59] <rfx> I mean, wiping all meta data with ffmpeg and writing my own I do probably prefer, for automating ... hmm [10:00] <Mavrik_> rfx, I've heard mp4box is nice for mp4 files... wouldn't know what to use for WebM, sorry [10:03] <Milos> Is it possible to ignore errors like "incomplete frame" when encoding a live stream (which is what I am doing?) [10:04] <Milos> I don't want that to abort the process. [10:05] <Mavrik_> hmmm... it shouldn't fail when encoding [10:08] <Mavrik_> Milos, does it just give warnings or does it crash? [10:10] <Milos> Mavrik_, http://dpaste.com/690157/ [10:10] <Milos> Mavrik_, then it just stops [10:10] <Milos> Mavrik_, doesn't always happen at the same time, sometimes takes seconds, sometimes minutes [10:11] <Mavrik_> hmmm... [10:11] <Mavrik_> it seems your stream is so broken at times it cannot recover [10:11] <Milos> yeah can ffmpeg ignore that [10:11] <Milos> it's broken on purpose; the antenna is not perfect [10:11] <Mavrik_> I don't think so... it's already ignoring all errors it can recover from :\ [10:12] <Milos> I see [10:12] <Milos> well fair enough [10:12] <Milos> although, VLC can do it [10:12] <Milos> if I restream from VLC it works just fine [10:12] <Mavrik_> yeah, ffmpeg is kinda wierd when it comes to receiving TS streams [10:12] <Milos> I see. [10:12] <Mavrik_> which version are you using? [10:12] <Milos> 0.9.1 [10:13] <Mavrik_> is that a DVB-T input? [10:13] <Milos> correct [10:13] <Milos> I basically want to make it crappy [10:13] <Mavrik_> hrm... can't help you there sadly. [10:14] <Milos> it comes in at 1080p, all flash and HD [10:14] <Milos> I just wanna make it crappier so I can stream it off myself [10:14] <Milos> etc [10:14] <Milos> and no worries [10:14] <Milos> I will figure something out! [10:14] <Mavrik_> I've been using ffmpeg to grab MPEG2-TS streams for IPTV and it was kinda capable of recovering from buffer underruns... but badly [10:14] <Milos> 1080i I mean. [10:15] <Milos> Mavrik_, is it supposed to say the input is mpegts though? [10:15] <Milos> Mavrik_, because DVB-T is x264 [10:16] <Mavrik_> yeah, DVB-T is MPEG-TS stream [10:16] <Milos> oh ok [10:16] <Mavrik_> with either H.264 or MPEG-2 video [10:16] <Milos> I'm not so great with codec terminology yet [10:16] <Milos> ah right [10:16] <Mavrik_> depending on country you live in :) [10:16] <Milos> yupyup [10:16] <Milos> well it says x264 [10:16] <Mavrik_> the problem ffmpeg is having with those stream is that it doesn't have a large enough decoder buffer [10:16] <Mavrik_> looking at source it only allocates 64k [10:16] <Milos> aha [10:17] <Milos> and when it runs out? [10:17] <Milos> boom? [10:17] <Mavrik_> you get errors [10:17] <Mavrik_> blocky video [10:17] <Mavrik_> or failure :) [10:17] <Milos> I love blocky video [10:17] <Milos> :D [10:17] <Mavrik_> I've avoided that issue by writing my own IP receiving and buffering routine, but I was developing a live transcoder app [10:17] <Mavrik_> that's probably the reason why VLC can cope [10:17] <Milos> ooo [10:17] <Milos> cool [10:18] <Mavrik_> You'll probably have to use VLC to reencode (it can do that)... even though VLC is a crappy piece of software for that .) [10:18] <Milos> the reason is, VLC is on my laptop here, which gets overutilised especially when restreaming so I'm trying to offload it to a bored quad-core xeon [10:18] <Milos> which is command-line only [10:18] <Milos> but I'll see [10:23] <Mavrik_> you can do command-line only with VLC [10:23] <Mavrik_> it'll leak memory a little (if they didn't fix it by now) [10:23] <Mavrik_> Milos, you can also try appending ?pkt_size=13160 to your http URL to see if it helps [10:24] <Milos> Thanks! I'll see how long it can run for before it stuffs up. [10:25] <Mavrik_> (I'm not sure if that parameter works on HTTP input, it does on UDP :) ) [10:25] <Milos> Another question though. Unfortunately the audio if off, probably because of the frame delays/skips. [10:25] <Mavrik_> yeah [10:25] <Milos> Do you know of a way to get the audio fixed or is that totally impossible [10:25] <Milos> when I say off by the way I mean at the wrong time, not completely turned off [10:25] <Mavrik_> yeah, that's because the video is broken [10:26] <Mavrik_> and timestamps start drifting [10:26] <Mavrik_> if you fix the video problem, the sync problem will go away [10:26] <Mavrik_> you can also try something like -async 50 to tell ffmpeg to try to resync [10:26] <Mavrik_> but that won't help if your video keeps throwing errors [10:26] <Milos> what if a random environmental issue causes the video to mess up for 2 seconds, will everything after that be permanently 2 seconds late? [10:28] <Milos> Mavrik_, that did it!!! [10:28] <Mavrik> does it work? :) [10:29] <Milos> Mavrik, it fixes the sync issue yup! [10:29] <Milos> even with continus frame problems; once the frames recover the audio is correct [10:29] <Milos> is the 50 the frame rate? [10:29] <Milos> or what [10:29] <Milos> since it's 25 interlaced [10:29] <Mavrik> that's the max. number of audio samples ffmpeg can fix per "packet" [10:29] <Milos> ic [10:30] <Mavrik> meaning, if you have a packet of 44100 audio samples [10:30] <Mavrik> it can add/remove/break 50 samples to try to resync [10:30] <Milos> wow [10:30] <Milos> well it does the job [10:30] <Mavrik> if you give a large number it'll recover from drift very fast... but you'll hear the audio "slow" or "speed up"... like the slowmo scenes with exaggerated audio ;) [10:31] <Milos> haaaaahahahah [10:34] <Milos> now is this as easy to restream as typing -f mpegts udp://[interface-ip]:port ? [10:34] <Mavrik> yup [10:34] <Mavrik> if you're doing H.264 [10:35] <Milos> yup [10:35] <Milos> well I hope I am [10:35] <Milos> does ffmpeg support any other protocols? [10:35] <Mavrik> then you'll also need -bsfs mp4_h264toannexb [10:35] <Mavrik> Milos, RTSP and RTP afaik... RTMP as well maybe [10:35] <Milos> ok cool [10:35] <Mavrik> but I've found MPEG-TS to work the most rliably [10:36] <Milos> thanks I will look into all of that [10:36] <Milos> your help is so much appreciated, you have no idea [10:36] <Mavrik> I really need to write a blog post on that topic :P [10:36] <Milos> :D [10:38] <Milos> Mavrik, man that's so cool, the sound is all robotic when it's fixing the sync [10:39] <Mavrik> ^^ [10:39] <Mavrik> btw, how are you getting input over HTTP? [10:39] <Mavrik> do you have a HTTP server on your capture card? [10:39] <Milos> Mavrik, I am using mumudvb [10:39] <Milos> I didn't want to use multicast [10:39] <Milos> so I used http unicast [10:39] <Milos> works really well except it's 1080i and I can't stream that out of my house [10:39] <Milos> I only have ADSL2+ [10:40] <Milos> so I have to re-encode into a lower quality/bitrate and then I can. [10:40] <Mavrik> if you can, try setting up RTSP [10:40] <Mavrik> that could fix your problems [10:40] <Milos> sweet [10:40] <Mavrik> or at least UDP [10:40] <Milos> wouldn't you think that UDP is even worse [10:40] <Milos> because it's a connectionless protocol [10:41] <Mavrik> not really, pretty all IPTV is broadcasted over UDP [10:41] <Mavrik> you don't have all the connection and negotiation overhead [10:41] <Mavrik> and if you miss a packet you don't really care to retransmit it [10:41] <Mavrik> so UDP is an overall better choice [10:41] <Milos> btw, been running for at least 15 mins now without crashing, so either the signal's just better or your additional parameter solved it [10:41] <Milos> and cool, I will look into making it UDP [10:41] <Mavrik> hm [10:42] <Mavrik> it seems RTSP is in alpha on mumudvb [10:42] <Mavrik> Milos, I suggested RTSP because it has transmission control [10:42] <Milos> aha [10:42] <Mavrik> meaning, receiver can tell server "hey, stop sending" [10:42] <Mavrik> which you don't have on HTTP and UDP [10:42] <Mavrik> that could fix your problems [10:42] <Milos> ohoo [10:42] <Milos> s/h// [10:42] <Milos> I see [10:42] <Milos> thanks for that info [10:53] <Milos> final bit of advice... [10:53] <Milos> ffmpeg -i http://192.168.2.1:4242/bynumber/2?pkt_size=13160 -s 711x400 -codec:a libaacplus -ac 2 -b:v 700k -async 1000 -ar 44100 -b:a 32k -f mpegts udp://192.168.2.2:4243 [10:54] <Milos> I've set iptables input policy to ACCEPT so it's not a firewall issue but [10:54] <Milos> when I try connect using VLC it does nothing [10:54] <Mavrik> to the UDP address? [10:54] <Milos> the problem with UDP is you can't get help, because it's connection-less [10:54] <Milos> yeah [10:54] <Mavrik> hmmm [10:54] <Mavrik> usually you need a streaming server for that [10:54] <Mavrik> lemme check [10:54] <Milos> :O [10:55] <Mavrik> hrm [10:55] <Mavrik> -_- [10:55] <Milos> ya [10:55] <Mavrik> no idea, it should work :\ [10:55] <Milos> D: ! [10:55] <Milos> I'll keep trying. [10:56] <Mavrik> I have to run now, g'luck :) [10:56] <Milos> Thanks a lot! [10:56] <Milos> Bye :D [14:46] <Cervajz> Hello guys :) [14:46] <spaam> Hey girl! [14:46] <spaam> wzup? [14:48] <Cervajz> Could anyone tell me what could be wrong if "avformat_find_stream_info" needs a lot of time during opeenning MPEGTS file and my log is full of messages like this: [14:48] <Cervajz> 6060) [mpegts @ 0084F3A0]Continuity check failed for pid 100 expected 15 got 6 [14:48] <Cervajz> (6060) [mpegts @ 0084F3A0]PES packet size mismatch [14:48] <Cervajz> Thank you [14:48] <Cervajz> openning* [14:48] <Mavrik> seems like your input is broken [14:48] <Mavrik> did you pass correct packet_size to demuxer? [14:49] <Cervajz> It could be wrongly "assembled" TS stream, because we do it "manually" in our device. [14:50] <Cervajz> I mean - Our company develops video recorder for aircraft and the output of this recorder is TS stream [14:50] <Mavrik> hmm [14:50] <Mavrik> do you have any way of inspecting that? [14:50] <Mavrik> Cervajz, either your packet sizes are wrong or your continuinity counters are wrong [14:50] <Mavrik> I'd guess the first :) [14:52] <Cervajz> Mavrik: Thank you. "packet sizes" - what should I inspect? I am guy who develop's player for this device - "client side". So should I inspect my side or side where the TS is recorded? [14:53] <Cervajz> who develop* [14:53] <Cervajz> Where the TS is "assembled", a.k.a. in the HW device [14:59] <Mavrik> Cervajz, I suggest you save a stream to a .ts file [14:59] <Mavrik> and find a .TS inspector to check the file [15:00] <Mavrik> to see if the file is OK [15:00] <Mavrik> that will also tell you what the packet size is (it should be 1316) [15:00] <Mavrik> which you can pass to the ffmpeg when reading the stream via ?packet_size=<number> if you're using UDP/HTTP [15:01] <Cervajz> Mavrik: I have got TS in .ts file. This device records it to sdcard [15:16] <Cervajz> Mavrik: Thank you, I will try to focus on the packet size [15:16] <Cervajz> Mavrik: Interesting is, that VLC doesn't have problem and open this file quickly [15:18] <Mavrik> yeah, VLC can survive more garbage than FFMPEG's demuxe [15:18] <rfx> Hmm ... -ab is not documented on http://ffmpeg.org/ffmpeg.html ; is this report-worthy? [15:18] <Mavrik> btw, which ffmpeg version are you using? [15:18] <Mavrik> rfx, -ab is deprecated [15:18] <Mavrik> rfx, new notation is -b:a [15:18] <Mavrik> pretty much all such parameters have been changed to <paramerer>:<v|a> notation so they don't get mixed up between video and audio [15:18] <rfx> Mavrik: achso .. because it's still listed in ffmpeg -h (using snapshot from a few days) but not marked as deprecated there [15:19] <rfx> Mavrik: thanks a lot [15:19] <Mavrik> so now you have -codec:v, -codec:a, -profile:v, -profile:a, -b:v, -b:a etc :) [15:19] <Mavrik> rfx, yeah, it's a slow change, most of the "old" parameters still work [15:19] <Mavrik> except in some cases ;) [15:19] <rfx> :D [15:20] <Cervajz> Mavrik: 0.9.1 [15:20] <Mavrik> (like if you want to use -profile with libx264 and you also have libfaac :P ) [15:21] <rfx> Mavrik: is it worth reporting to mark -ab deprecated in the ffmpeg? or shall i just forget about it [15:21] <Mavrik> hm [15:22] <Mavrik> rfx, I'm not sure what the "official" stance on this is ;) [15:22] <Mavrik> maybe I shoudl start reading -devel lsit :\ [19:42] <elupus> Hi, i have a question about avfilter_graph_parse, the ouput open_input_ptr and open_output_ptr the docs say should be freed. But when should they be freed? Can they be freed directly without it breaking the open graph? [19:43] <elupus> ffplay never seem to free them [21:09] <linuxis> Is anyone here? [21:16] <spaam> no [00:00] --- Fri Jan 20 2012
participants (1)
-
burek