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

burek burek021 at gmail.com
Tue Sep 15 02:05:01 CEST 2015


[01:53:00 CEST] <cgkades> I'm having issues with a cross-compile tool chain for the Intel Galileo. Besides never using a cross-compile toolchain&. I'm not able to figure out the configure options. the $CONFIGURE_FLAGS set up by the tool chain are --target=i586-poky-linux --host=i586-poky-linux --build=x86_64-linux --with-libtool-sysroot=/opt/iot-devkit/1.6.1/sysroots/i586-poky-linux. I've translated them to --target-os=i586-poky-linux --host-os=i586-poky-linux --sysroot=/opt/
[03:59:09 CEST] <KraftyWA> I'm downloading a live stream to a file. Then I use ffmpeg to party on it. The problem is ffmpeg transcodes faster than the broadcast. Soon enough it overtakes the broadcast and dies. Can I do something like force ffmpeg to encode 1 second of video output per second?
[04:04:02 CEST] <Max-P> KraftyWA: It shouldn't die unless it gets EOF. How are you feeding the stream to ffmpeg?
[04:04:48 CEST] <Max-P> You can use the -re flag to do exactly what you asked for, but in this situation that's more of a kludge around the actual problem than anything else
[04:05:13 CEST] <KraftyWA> That's where it gets interesting. It's 4 different HLS streams. I was plugging them all in as inputs, but I was getting a lot of errors. So now I'm using 4 different ffmpegs to download each stream, then another ffmpeg to encode them all in 4 boxes on the final out.
[04:05:28 CEST] <KraftyWA> And my problem was I wasn't using the -re flag before every input. I added that and it seems to have solved my problem.
[04:07:08 CEST] <KraftyWA> When I had all the streams going into one ffmpeg call, it would get stuck on a frame. Just outputting the same frame over and over.
[04:07:38 CEST] <Max-P> That could probably be better solved with a bunch of pipes
[04:08:11 CEST] <KraftyWA> I'm still learning the wonders of ffmpeg. I'll look into what pipes are.
[04:08:48 CEST] <Max-P> They're OS features, mainly on Linux/Unixes
[04:09:02 CEST] <Max-P> mkfifo stream_1 stream_2 stream_3 stream_3
[04:10:23 CEST] <Max-P> that creates special files. Then you get your ffmpeg that merges them all input from them (-i stream_1 -i stream_2 -i stream_3 -i stream_4). And finally, as soon as your other ffmpeg will output to stream_1, stream_2, it will be received at the other end
[04:10:59 CEST] <KraftyWA> hmm interesting. I was going to attempt to write a bunch of error handling to detect when the steams get messed up.
[04:11:23 CEST] <Max-P> Basically the setup stays identical, except you use fifos instead of real files
[04:11:53 CEST] <Max-P> And this way ffmpeg will only receive EOF when the program pushing data to the fifo closes it, making it impossible for any to go too fast
[04:12:55 CEST] <KraftyWA> I see. With them separated, if one stream dies, I can restart/append before the 4-video-encoder catches up to that spot.
[04:14:38 CEST] <Max-P> Err, no, because as soon as the program writing to it dies it will close the file, also closing it at the other end. So you'll have to restart them all
[11:24:06 CEST] <the_gamer> how to tell ffmpeg in a script when it should stop and save https://trac.ffmpeg.org/wiki/Capture/Desktop ?
[11:24:54 CEST] <c_14> If you can control stdin, send 'q'. Otherwise SIGINT should work.
[11:25:25 CEST] <iive> setting time limit with -t should also work
[11:25:37 CEST] <c_14> If you know how long it's going to be ahead of time, yes.
[11:25:45 CEST] <the_gamer> iive: i don't know the time beforehand
[11:26:03 CEST] <the_gamer> bash script, i start a program and after the program is done ffmpeg should stop
[11:26:13 CEST] <the_gamer> i want to record that said program
[11:27:21 CEST] <the_gamer> so i need to save the pid and do kill -2? alright
[11:28:05 CEST] <iive> looks like it.
[11:28:54 CEST] <the_gamer> thanks
[11:44:50 CEST] <oreWizard> can someone help me with de function avcodec_encode_video
[11:50:43 CEST] <BtbN> It's still deprecated.
[11:51:03 CEST] <BtbN> Or maybe even gone on git master, depending on how long it was deprecated.
[11:52:33 CEST] <c_14> oreWizard: https://git.videolan.org/?p=ffmpeg.git;a=blob;f=doc/APIchanges;h=958035ce777d8d5af4d03a7c34fff7f58ec08a96;hb=HEAD#l1245
[11:52:44 CEST] <c_14> I think this is the second time I've directed you to look at the APIchanges
[11:54:37 CEST] <oreWizard> c_14
[11:54:43 CEST] <oreWizard> i am reading it
[11:54:47 CEST] <oreWizard> but i need more help
[11:55:00 CEST] <oreWizard> i was usign return value of this function
[11:55:03 CEST] <oreWizard> on pkt.size
[11:55:15 CEST] <oreWizard> but now if the new function i have the return always 0
[11:55:34 CEST] <oreWizard> i need to know how to return  number of bytes used from the output buffer
[11:57:39 CEST] <c_14> If avpkt->data is NULL, the encoder will allocate it and set avpkt->size to the size of the output packet.
[11:58:32 CEST] <c_14> I'm confused as to what you're trying to do.
[11:59:25 CEST] <c_14> You have to use an AVPacket and its corresponding buffer instead of manually passing a buffer.
[11:59:29 CEST] <oreWizard> i am using the AVPACKET on the funciton av_interleaved_write_frame
[11:59:47 CEST] <oreWizard> and on this avpakcet ia am setting the parameters
[11:59:59 CEST] <oreWizard> flags, stream_index, data, size
[12:00:35 CEST] <oreWizard> AVPACKET.size = was the return of the avcodec_encode_video
[12:00:41 CEST] <oreWizard> but i cant use it now
[12:01:13 CEST] <c_14> If you set pkt->data to NULL before calling encode_video2 you don't have to worry about that anymore as the function will allocate a buffer of the correct size by itself
[12:01:32 CEST] <c_14> If you want to allocate the packet buffer beforehand, you need to know the size before anyway
[12:01:42 CEST] <c_14> Otherwise the amount of data you alloc might not be enough
[12:01:47 CEST] <oreWizard> i talking about the last parameter right?
[12:01:53 CEST] <c_14> yes
[12:02:00 CEST] <oreWizard> ok let me say something
[12:02:13 CEST] <oreWizard> i am getting an error on the function av_interleaved_write_frame
[12:02:28 CEST] <oreWizard> it is saying some division by 0 is breaking my app
[12:03:03 CEST] <oreWizard> so i am lookint at the parameters of the AVPacket to check the numbers
[12:03:31 CEST] <oreWizard> and the only thing wrong until now was this size...
[12:04:58 CEST] <c_14> How are you creating your packet?
[12:06:26 CEST] <oreWizard> av_init_packet,pkt.flags |= AV_PKT_FLAG_KEY, pkt.stream_index = stream->index, pkt.data = (uint8_t *)picture, pkt.size = sizeof(AVPicture);
[12:11:03 CEST] <oreWizard> c_14 thanks man
[12:11:13 CEST] <oreWizard> i will try to do what u say
[12:11:25 CEST] <oreWizard> but i am getting this error av_interleaved_write_frame
[12:11:33 CEST] <oreWizard> Integer Division by 0
[12:19:10 CEST] <c_14> If you enable FF_FDEBUG_TS in AVFormatContext->debug, you should get a trace log which shows the pkt size, dts and pts. I'm not currently seeing where a division by 0 could happen in interleaved_write_frame though.
[12:21:18 CEST] <oreWizard> c_14 ok
[12:58:51 CEST] <oreWizard> c_14 how i enable it?
[13:03:59 CEST] <Cinek> hi there
[13:04:04 CEST] <Cinek> any1 got a minute ?
[13:05:42 CEST] <NotoriousCin> I have got a weird problem with restreaming my ip cameras using ffmpeg and crtmpserver
[13:14:19 CEST] <rugubara> Hello there!
[13:14:28 CEST] <oreWizard> hello
[13:14:47 CEST] <rugubara> I tried to register for a ffmpeg trac to post a new bug (I think I discovered)
[13:15:17 CEST] <rugubara> I found out that they blocked my entire ISP and I can't
[13:15:27 CEST] <rugubara> Where shall I aplly to remove this block?
[13:16:16 CEST] <NotoriousCin> the problem with ffmpeg is
[13:16:18 CEST] <rugubara> Or alternatively, if I can submit my bug by other means?
[13:16:28 CEST] <NotoriousCin> I can connect to my camera and get the stream with rtsp
[13:16:36 CEST] <NotoriousCin> but there are 2 profiles for HD and SD quality
[13:16:44 CEST] <NotoriousCin> and I cant connect to both simultaneously
[13:16:47 CEST] <NotoriousCin> with ffmpeg
[13:16:54 CEST] <NotoriousCin> while I can do it directly with crtmpserver
[13:17:07 CEST] <NotoriousCin> when I try to connect to second stream
[13:17:15 CEST] <NotoriousCin> it gives me the 400 bad request error
[13:17:35 CEST] <NotoriousCin> rtsp://XXX:XXX@XXX.XXX.XXX.XXX:554/profile2: Server returned 400 Bad Request
[13:17:38 CEST] <NotoriousCin> like this
[13:18:17 CEST] <NotoriousCin> the problem is, crtmp doesnt support PCM_ALAW audio codecs
[13:18:30 CEST] <NotoriousCin> and there is no sound, so I use ffmpeg to transcode audio to aac
[13:18:46 CEST] <NotoriousCin> and it works, but I cant make both SD and HD quality profiles work at the same time :/
[15:44:18 CEST] <C0nundrum> what screen capture method has the lowest latency
[15:57:37 CEST] <BtbN> There is more than one per platform?
[15:58:44 CEST] <BtbN> And i think they all have pretty much no latency.
[15:58:54 CEST] <BtbN> Some might be quite slow and only provide limited framerates
[16:29:15 CEST] <C0nundrum> BtbN what command do i use to set the screen as input ?
[16:33:35 CEST] <BtbN> Depends entirely on your platform.
[16:33:43 CEST] <BtbN> x11grab isn't going to work on windows or osx.
[16:50:08 CEST] <C0nundrum> what would i use for windows ? also, is there anyway to acclerate transcoding with my nvidia gpu ?
[16:52:54 CEST] <DHE> not with ffmpeg at this time. there's some opencl support in x264 but it doesn't provide nearly as much benefit as you might expect.
[17:03:27 CEST] <n00b12345> how can i make ffmpeg only convert 30 frames per second?
[17:03:47 CEST] <n00b12345> e.g. if the file im converting is to is being written to live
[17:15:15 CEST] <n00b12345> The FFmpeg's "-re" flag means to "Read input at native frame rate
[17:15:19 CEST] <n00b12345> i should try that :)
[21:39:38 CEST] <genio> https://www.cwhitener.com/2015-09-14t12.47.26.avi  terrible video with errors galore.  using latest ffmpeg in github.  What would be the suggested "best practice" way of getting this type of crappy video cleaned up?
[21:40:32 CEST] <durandal_1707> what command was used?
[21:40:51 CEST] <genio> ffmpeg -i crap.avi -an -vcodec copy -movflags faststart output.mp4   is more or less what I'm trying now.
[21:41:15 CEST] <genio> durandal_1707: No idea.  It's autogenerated by a Huacam IP Camera on motion detection and FTPed to a server of mine
[21:41:45 CEST] <genio> I'm trying to cleanup those videos on my server after the fact
[21:42:33 CEST] <llogan> can anything playback the files normally? some sort of player from the device maker?
[21:42:49 CEST] <llogan> often these cams seem to take a dump on a format and make it proprietary
[21:43:48 CEST] <genio> The device maker has no player I can use, but VLC seems to not complain too much and show the video 99% of the time
[21:44:51 CEST] <llogan> so that's what the dog does all day
[21:45:17 CEST] <genio> pretty much.  walk back and forth firing off motion detection.  it's kind of his thing :)
[22:55:21 CEST] <itsslo_> Hi everyone I was wondering if i have an audio file stored on s3 that i have access to through a URL
[22:55:32 CEST] <itsslo_> could ffmpeg take that as a path and convert the file to a different format
[22:55:35 CEST] <itsslo_> thank you
[22:55:57 CEST] <llogan> what protocol?
[22:56:03 CEST] <llogan> http?
[22:59:38 CEST] <itsslo_> https
[22:59:42 CEST] <itsslo_> it seems to have worked
[00:00:00 CEST] --- Tue Sep 15 2015


More information about the Ffmpeg-devel-irc mailing list