[00:19:53 CET] <llogan> axc1298: that's a stream thing i think. stream=height,width,avg_frame_rate:format=duration. the ":" separates section_entries [00:43:24 CET] <axc1298> llogan: thanks. what would i echo in that case? i tried "echo $size $format_duration $avg_frame_rate" but its' not working for the frame rate [00:44:00 CET] <furq> run it witout eval and see what names are printed [00:44:33 CET] <axc1298> i think i got it [00:44:56 CET] <axc1298> rate=${streams_stream_0_avg_frame_rate} then i did echo $rate [00:45:07 CET] <axc1298> and got 1000/1 [00:45:13 CET] <axc1298> does that look like a frame rate? lol [00:46:09 CET] <axc1298> this is good. thanks for the help [00:48:01 CET] <furq> 1000fps is a framerate [00:48:06 CET] <furq> i don't think it's the correct framerate [00:55:34 CET] <axc1298> why not? [01:31:15 CET] <esdwdftty> ffmpg uses the AVX1? [01:32:23 CET] <esdwdftty> ffmpeg [01:35:52 CET] <esdwdftty> Maybe it is better to use AVX1 in place SSE4 - SEE4.2? [01:36:27 CET] <J_Darnley> It might use any instructions from mmx to avx2 [01:38:59 CET] <DHE> a quick code search reveals AVX used in a couple of features. and of course newer versions of gcc with an appropriate -march=... parameter will write code using it [01:53:16 CET] <esdwdftty> http://www.cpu-world.com/CPUs/Bulldozer/AMD-A4-Series%20A4-4020.html [01:55:49 CET] <esdwdftty> The best of commands, choose and use. [01:56:00 CET] <J_Darnley> What? [01:56:40 CET] <esdwdftty> for decode video files [01:56:56 CET] <J_Darnley> Still "What?" [01:56:59 CET] <jkqxz> ffmpeg makes little use of things in AVX1 only, because it's floating point. It's only of significant value for video once you have AVX2 as well. [01:57:02 CET] <J_Darnley> What are you askins? [01:57:05 CET] <esdwdftty> on cpu [01:57:08 CET] <J_Darnley> *asking [01:57:57 CET] <J_Darnley> ffmpeg will detect the features of your CPU and use the fastest code available. [01:58:06 CET] <J_Darnley> Does that satisfy you? [01:58:46 CET] <esdwdftty> ok [02:24:45 CET] <melzza> hi - i am a newbie to ffmpeg. i am running some simulation code that generates a series of .png files over an extended period of time (8-12hrs). currently, i wait until the end and then run ffmpeg on the entire directory of .png. i was wondering if i can make intermediate .mp4 files at various times during the run (say once per hour)& using the start_number flag. and concatenate them at the end? or is there another way of doing [11:56:18 CET] <neouf> hello [11:56:56 CET] <neouf> i am trying to convert x264 to flv [11:57:08 CET] <neouf> but have some problem [11:57:50 CET] <neouf> ./ffmpeg -f mpegts -i /dev/dvb/adapter4/dvr0 -codec:v libx264 -af "volume=5dB" -profile:v high -level 4.0 -r 25 -bufsize 500k -c:a aac -ab 96000 -ar 48000 -ac 2 -strict -2 -f flv rtmp://1.2.3.4/live/me [11:58:24 CET] <neouf> i am using 3.0 [11:58:35 CET] <neouf> i have same probleme with 2.8 [12:02:56 CET] <neouf> http://pastebin.com/2zP5VK2q [12:03:38 CET] <neouf> i think the 1920x1080 is too strong for ffmpeg in this case [12:04:33 CET] <DHE> also ffmpeg didn't find an audio stream in the input [12:05:10 CET] <DHE> and your video settings are inconsistent. -bufsize is a VBR setting for constrained encoding but you're not using the rest of the options required for VBR [12:07:02 CET] <DHE> also you might want to check if the input video is interlaced. if your source is DVB then I find most broadcasts are 1080i [12:09:06 CET] <neouf> yes my source is a DVB [12:09:14 CET] <neouf> some are in full HD [12:09:39 CET] <neouf> other not and pass with this command [14:10:34 CET] <___g> How can I force libav-ffmpeg NOT to multithread? I need a single thread behaviour. [14:10:53 CET] <BtbN> libav-ffmpeg? [14:14:13 CET] <___g> The ffmpeg C libraries. [14:16:07 CET] <BtbN> What exactly is the issue with codecs using multiple threads? The API itself is strictly single threaded. [14:18:06 CET] <___g> The issue is, that my prog is already mutlithreading, exactly 40 threads. FFmpeg start multiple threads per threads what is a mess. A the end, I have 1000 threads. [14:22:43 CET] <___g> Is there any chance to restrict the c-ffmpeg-libs to one thread? [14:24:47 CET] <J_Darnley> You mean like setting the threads option to 1? [14:25:42 CET] <___g> Yes, if there's one. [14:26:20 CET] <BtbN> 1000 threads shouldn't be too much of an issue for any decent scheduler though [14:27:05 CET] <___g> The ffmpeg libs don't use all cores [14:27:21 CET] <___g> only 12 of 40 at my machine [14:28:01 CET] <___g> Is threre any single thread option in ffmepg-libs? [14:29:12 CET] <J_Darnley> If you can't read the headers to find whatever -threads corresponds to then go for the nuclear option and disable threads at compile time. [14:29:36 CET] <BtbN> you can't infinitely scale most codecs/filters to cores [14:32:50 CET] <___g> I've found these: int AVCodecContext::thread_count int AVCodecContext::thread_type int AVCodecContext::active_thread_type [14:33:16 CET] <___g> Shall I use that to force single thread? [14:34:21 CET] <BtbN> The lavc option is litteraly called threads, and you want to set it to 1. [14:38:58 CET] <___g> lavc = libavcodec ?? If I search in ffmpegs doxygen I found this PerThreadContext* FrameThreadContext::threads and #define THREADS HAVE_PTHREADS. Both does not help me. [14:40:24 CET] <BtbN> It's an option, not some field in a struct. [14:40:31 CET] <BtbN> passes to avcodec_open [14:40:32 CET] <BtbN> *d [14:49:02 CET] <___g> I see! I'm using avcodec_open2 but I guess this is what you've meant. I will try to set the AVCodecContext->thread_count = 1 and pass it to avcodec_open2 [14:50:15 CET] <neouf> someone encode from live DVB to rtmp/flv with HD flow ? [14:50:55 CET] <neouf> i don't fine the problem... i am too noob with ffmpeg [14:50:59 CET] <neouf> find [14:51:09 CET] <BtbN> ___g, no, it's litteraly an option, called threads, passed to the options parameter of avcodec_open2. [14:57:22 CET] <___g> BtbN, thanks for your help. I invoke it like if(avcodec_open2(pCodecCtx, pCodec, NULL) return 1; You say altering pCodecCtx nor pCodec helps me. I took a look again at https://ffmpeg.org/doxygen/2.8/group__lavc__core.html#ga11f785a188d7d9df7162... and found av_dict_set(&opts, "b", "2.5M", 0); which I would alter to av_dict_set(&opts, "threads", "1", 0);. Is this correct? [14:57:44 CET] <BtbN> looks correct, yes [14:57:59 CET] <___g> Thank you very much [15:10:08 CET] <Skull0inc> Hey all, I'm just wondering if anyone may have come across an ffmpeg command that may help with doing a caching function to cache lets say 5MB of data of live streams which is then to be re-streamed.. [15:14:37 CET] <bencoh> Skull0inc: if we're talking about mpeg-ts, see multicat [15:15:37 CET] <bencoh> it works based on size, not length... but it'd allow you to doo that [15:16:16 CET] <bencoh> rr, on length, not size [15:22:20 CET] <Skull0inc> dealing with RTSP / RTMP formats [15:44:04 CET] <bencoh> Skull0inc: I'd transmux to mpeg-ts where needed (rtsp usually transports mpegts so that one should be fine) [15:44:38 CET] <bencoh> but you'll have to transmux back, and fiddle with extradata/annexb [16:01:35 CET] <Filarius> hi, do anybody know good codec or/and settings for making "video of thumbnails" - video what must be slow, very low framerate, just to make know what is going on on original video. [16:02:07 CET] <Filarius> slow = i mean small :( [16:02:53 CET] <Filarius> x264 not so good, best what I found - mkv+mjpeg+aac [16:03:28 CET] <Skull0inc> @Filarius try option -vf scale=320x240 [16:08:41 CET] <Filarius> and what about not about scaling ? [16:09:36 CET] <Filarius> source is not so big (about 300x500) and mostly low quality [16:12:31 CET] <Mavrik> Filarius, huh, x264 should be significantly better than those [16:12:57 CET] <Mavrik> set low fps and low compression and you're done [17:08:29 CET] <yarko> hello [17:11:28 CET] <yarko> i have an mpeg2 video file with no audio and a 5.1 surround ac3 file that I would like to put together into a single mpeg2 file, maintaining the 6 channels and not converting to stereo. Can i do this with ffmpeg? [17:17:37 CET] <DHE> something like: ffmpeg -i videofile.mpg -i audiofile.ac3 -c:a copy -c:v copy output.mpg [17:20:31 CET] <yarko> ah let me try [17:40:57 CET] <yarko> I tried "ffmpeg.exe -ss 00:02:50 -i video.mpg -ss 00:02:50 -i audio.ac3 -y -c:v copy -c:a copy -t 00:01:00 out.mpg" and the resulting file has video but no sound. MediaInfo tells me that the file does contain 5.1 dvd audio [17:42:07 CET] <yarko> the video stream looks great. i wonder why there is no sound [17:43:56 CET] <BtbN> you're not mapping your second input [17:44:27 CET] <BtbN> if the mpg file also has some audio track, that one will be used [17:44:41 CET] <BtbN> -map 0:v:0 -map 1:a:0 should work [17:45:00 CET] <yarko> the original video file has no audio [17:45:13 CET] <BtbN> no audio or no audio track? [17:45:22 CET] <BtbN> If it has a silent audio track, that's still audio [17:45:43 CET] <BtbN> also try a diffrent container, not sure if you ac3 in mpg works [17:46:00 CET] <yarko> it has no audio stream [17:47:16 CET] <yarko> i just noticed ffmpeg gave the following message "[mpeg @ 04ff22e0] ac3 in MPEG-1 system streams is not widely supported, consider using the vob or the dvd muxer to force a MPEG-2 program stream." [17:48:05 CET] <BtbN> just use mkv or something like that [17:48:21 CET] <yarko> I cant use mkv [17:48:45 CET] <yarko> so there is no way to get a file with an mpg extension with 5.1 audo? [17:48:59 CET] <BtbN> if it's just about the extensions... [17:48:59 CET] <yarko> audio* [17:48:59 CET] <J_Darnley> Do what the message says [17:49:29 CET] <J_Darnley> "consider using the vob or the dvd muxer to force a MPEG-2 program stream" [17:49:43 CET] <J_Darnley> You said you wanted mpeg2 anyway [17:49:44 CET] <yarko> im sorry. im quite new at this. how do i adjust my parameters to use vob or dvd muxer [17:49:58 CET] <J_Darnley> file.vob [17:50:05 CET] <J_Darnley> or -f vob [17:50:08 CET] <J_Darnley> or -f dvd [17:51:30 CET] <yarko> the point about extensions is that i intend to play the file over a home network on a google tv media player. i dont think it can play less than common extensions [17:51:46 CET] <J_Darnley> Then rename the file [17:51:57 CET] <yarko> ok - ill give it a try [17:52:11 CET] <J_Darnley> or use either other suggestion [17:55:13 CET] <yarko> that seems to have worked! thank you thank you thank you!!! [18:18:20 CET] <Guest80997> I'm trying to apply filtering to a file with a BT2020 colourspace and transform using "-vf lut3d=...". 3D LUTs work on RGB so FFmpeg must be matrixing from Ycbcr to RGB but seems to be assuming the file is BT709. Is there a way of forcing ffmpeg to assume the input is BT2020? [18:19:45 CET] <JEEB> use zscale to convert to RGB [18:20:28 CET] <JEEB> zscale for the width/height (which shouldn't be changed) and then the format meta filter to tell it you want it to convert to RGB [18:20:52 CET] <JEEB> zscale can do YCbCr->RGB and back correctly in that colorspace as long as it's marked correctly :) [18:21:10 CET] <JEEB> the zscale filter bases on the zimg library [18:21:16 CET] <JEEB> https://github.com/sekrit-twc/zimg [18:21:28 CET] <JEEB> so you'll need it to enable it when compiling FFmpeg [18:26:03 CET] <Guest80997> thanks so call zscale to set input and output matrices/transfer function and primaries to 2020 and then the following filters in the chain will know? [20:32:42 CET] <brick> is there a convenient way to indicate that the output file should use the same resolution and bitrate as the input? [20:33:09 CET] <JEEB> latter makes no sense [20:33:13 CET] <c_14> resolution is automatic (assuming you don't insert any scale filters) [20:33:13 CET] <kepstin> same resolution is default, same bitrate... doesn't really make sense and is difficult to determine with some file types [20:34:13 CET] <JEEB> you either copy the input streams into a new container, or you re-encode your content and you just have some target regarding it [20:34:30 CET] <JEEB> depending on the video encoder there's various encoding modes [20:34:31 CET] <brick> hmmm [20:34:51 CET] <J_Darnley> You probably think that the same bitrate means the same quality [20:35:06 CET] <brick> i understand. i was trying to repair a wonky file and it came back (without specifying) at a much lower bitrate. [20:35:20 CET] <JEEB> yes, the default for most formats is like 200kbps [20:35:22 CET] <J_Darnley> because ffmpeg's default is 200k [20:35:24 CET] <brick> well... i know they are correlated. i want a minimal intervention here. [20:35:34 CET] <JEEB> then just -c copy [20:35:40 CET] <kepstin> if you think it's just a muxing issue, you could try with -c copy to copy the media streams into a new container [20:35:42 CET] <JEEB> that copies the bit stream from input [20:36:19 CET] <brick> JEEB, a copy means not reencoding, i think. that part i do want. [20:37:13 CET] <JEEB> ok, then you will also need to know your output video format and if you care more about video quality or hitting a very specific file size [20:37:27 CET] <brick> i do see one mux error but the bulk are in audio actually? (should have looked here first): mpgatofixed32 audio converter error: libmad error: bad main_data_begin pointer [20:37:43 CET] <JEEB> that doesn't sound like FFmpeg [20:37:53 CET] <brick> so i will copy video and reencode audio and see if that does the trick [20:38:04 CET] <JEEB> -c:v copy [20:38:06 CET] <brick> yeah, that was VLC's output, sorry [20:38:26 CET] <JEEB> also to test decoding of a file with ffmpeg you can do `ffmpeg -i file -f null -` [20:38:28 CET] <brick> the ffmpeg errors were: [avi @ 0xd00140] Non-monotonous DTS in output stream 0:1; previous: 54021, current: 52599; changing to 54022. This may result in incorrect timestamps in the output file. [20:39:01 CET] <brick> thanks folks for the quick responses, i appreciate it. [20:58:02 CET] <eksrow> I'm mixing two mp3 files with amix and a few other filter commands but i'm getting: 'Error while filtering: Cannot allocate memory'. I checked free -m and i've around 200mb free. Do i need more or is there something wrong with my syntax? [20:58:52 CET] <pzich> I'm guessing each filter needs some buffer and other memory, so it's possible it needs more than that. [20:59:28 CET] <pzich> are you able to run the filters separately as serial ffmpeg commands? might help debug if that's the problem [21:01:19 CET] <eksrow> Right now i'm running them in seperate filters, but i've no problem with merging them.(http://pastebin.com/xYKLHjSw), I'l merge them and try again [21:08:16 CET] <eksrow> The same error seems to happen when I merge the filters(mostly from output #0). http://pastebin.com/6r3LdKW0 [21:09:10 CET] <J_Darnley> Can you add -loglevel debug? [21:09:19 CET] <J_Darnley> We might see where the error is coming from then. [21:12:22 CET] <eksrow> With the added debug option: http://pastebin.com/YYtUrpNQ, I'l go ahead and try some different input files, maybe there's something wrong with the files. [21:15:10 CET] <J_Darnley> Oh lord [21:15:27 CET] <J_Darnley> I'm not sure that's a problem with your mere 200M free [21:19:48 CET] <J_Darnley> Well I'm not sure where the error comes from but it looks like some problem other than just insufficient memory [21:21:36 CET] <eksrow> Oh oops, how much should I have available? While I'm running these tests on a vm it'l eventually run on a vps with roughly the same amount of memory. ffmpeg seems fine rendering gigabytes of video data. [21:22:16 CET] <mrmenacex> someone please help! i'm trying to encode some prores .mov files and no matter what i do i get a file that just has blank black screen and audio . I've downloaded the newest quicktime player and klite mega pack . Does ffmpeg not have a decoder for prores codec ? [21:24:16 CET] <eksrow> J_Darnley: I just tried two different files and the problem seems to persist, is it perhaps a bug? [21:31:59 CET] <mrmenacex> pzich, here is my output. i'm running this from a script so gimmie a second to get my actual ffmpeg command i'm using http://pastebin.com/HKtgHP0U [21:35:02 CET] <petecout_> When using an RTP input and HLS output. Does any RTP metadata get converted over to ID3 tags? [21:36:31 CET] <mrmenacex> pzich, here is the ffmpeg command http://pastebin.com/fnX3E1yE [21:37:17 CET] <J_Darnley> "-an" and you wonder why there's no audio [21:38:34 CET] <J_Darnley> As for playing back your file, how exacly does a rubbish codec pack and quicktime fir in? [21:38:37 CET] <J_Darnley> *fit [21:40:31 CET] <petecout_> mrmenacex: not seeing the audio set right but maybe thats just me [21:40:40 CET] <petecout_> What happens if you use the VP8 codec instead of 9 [21:40:48 CET] <mrmenacex> well i dont' have a problem with audio it's the video that doesn't play [21:41:04 CET] <mrmenacex> i get a black screen for video [21:41:07 CET] <petecout_> Oh you said blank audio [21:41:17 CET] <mrmenacex> i know that isn't encoding the audio i was just trying to get the video to work on that one [21:41:18 CET] <petecout_> ah gotcha [21:41:27 CET] <mrmenacex> oh my bad i get blank video sorry [21:41:47 CET] <mrmenacex> it's just a black screen [21:42:46 CET] <mrmenacex> I also tried h264 and got the same results [21:42:51 CET] <petecout_> hmm [21:42:56 CET] <petecout_> Well you say you can hear audio? [21:43:05 CET] <petecout_> Based on your ffmpeg report no audio was captured only video [21:43:11 CET] <mrmenacex> yes if i encode audio i can hear audio but i get a black screen [21:43:12 CET] <rocks> http://oortr.com/ZjllYz [21:43:15 CET] <J_Darnley> Of course he can't hear the audio! He disabled it! [21:43:42 CET] <petecout_> Ah gotcha [21:43:47 CET] <J_Darnley> What player are you using? [21:43:57 CET] <TD-Linux> mrmenacex, try opening your .webm file with firefox or chrome [21:44:14 CET] <mrmenacex> i have tried chrome [21:44:26 CET] <TD-Linux> oh it's 4:2:2 [21:44:28 CET] <furq> mrmenacex: chrome doesn't support yuv422p [21:44:30 CET] <mrmenacex> same thing black screen and audio (if i encode the audio) [21:44:37 CET] <furq> -pix_fmt yuv420p [21:44:39 CET] <TD-Linux> yeah use -pix_fmt yuv420p [21:44:53 CET] <TD-Linux> firefox will support it next release [21:44:55 CET] <mrmenacex> oh really ? [21:45:02 CET] <mrmenacex> let me try that [21:49:58 CET] <mrmenacex> yuv420p fixed it thanks everybody :) [22:20:50 CET] <eksrow> I'm trying to mix two inputs, a longer one and a short one, and I recieve them mixed but short. (the longer one is padded with whitenoise). http://pastebin.com/htXbf7bX. individually both output produce the correct result, but amix doesn't seem to respect the duration: longest? [22:24:14 CET] <brick> ffmpeg -i IN -map 0 -c:v copy -c:a libmp3lame -b:a 160k OUT did the trick, thanks J_Darnley JEEB kepstin c_14 [00:00:00 CET] --- Sat Mar 19 2016
participants (1)
-
burek