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

burek burek021 at gmail.com
Sat Jan 3 02:05:01 CET 2015


[00:07] <smo_> hi :)
[00:07] <smo_> still loving ffmpeg more and more .... :p
[00:08] <smo_> i m trying some visualisations thru ffmpeg with exemples on this page http://video.stackexchange.com/questions/9644/how-do-i-turn-audio-into-video-that-is-show-the-waveforms-in-a-video
[00:08] <smo_> is there some others viz availables?
[00:09] <smo_> i search visualisation by band like html5 visualisations http://www.smartjava.org/sites/default/files/localhost_Dev_WebstormProjects_webaudio_example3.html.png
[00:09] <smo_> possible?
[00:11] <c_14> The only other filter that does A->V that I know of is:  ... showcqt          A->V       Convert input audio to a CQT (Constant Q Transform) spectrum video output.
[00:11] <justinX> I normally don't use visualisations on music, but yesterday it could have been nice to have one that presents the music as fireworks :-)
[00:11] <ubitux> smo_: ffmpeg -v 0 -filters|grep 'A->V'
[00:12] <ubitux> also note that you have many option for these
[00:12] <smo_> humm i use -i and -ss yet
[00:12] <ubitux> http://ffmpeg.org/ffmpeg-filters.html#showspectrum
[00:12] <smo_> i look thx
[00:12] <ubitux> showspectrum=mode=separate:color=intensity:slide=1:scale=cbrt  this one from the doc is cool
[00:18] <smo_> works but it really show a spectrum, nice but not what i search :p really search something likemy exemple image
[00:18] <smo_> avectorscope seems right too but it only draw a thine line
[01:17] <smo_> ok ubitux i ll use this finally , pretty cool
[01:17] <smo_> ffmpeg -ss 00:00:00.00 -i /home/smo/T\u00E9l\u00E9chargements/Ideal J - Le Combat Continue 1998 FLAC/11-j'ai mal au coeur.opus -filter_complex [0:a]showwaves=mode=cline:rate=25,format=yuv420p[vid] -map [vid] -map 0:a -codec:v libx264 -crf 18 -preset ultrafast -codec:a libvorbis -threads 0 -copyts -sn -f matroska pipe:1
[01:18] <smo_> so i have visualisations in my node-webkit app
[01:18] <smo_> LOOOOOOOOOOOOOVE ffmpeg :p
[01:19] <smo_> thanks to the devs for all this work !
[01:20] <smo_> a "classic" visualisation by band (horizontals bars by frequencies ) might be a good idear :p
[03:54] <Keshl> Thank you, whoever worked on hqdn3d! o_o.... I just fed it some footage shot at the equlivant of 128,000 ISO and it looks like it's around 800 now. o_o...
[07:43] <fmax30> Hello, ffmpeg current is very slow even on the latest android devices. converting a 15 second 480p video takes on average 14-15 seconds. Here is the command that i am using.
[07:45] <fmax30> -y -i input.mp4 -strict -2 -threads 4 -b:v 700k -s 640x360 -r 30 -vcodec libx264 -acodec aac -ac 1 -b:a 64k -ar 44100 -preset ultrafast -crf 24 -vf vflip
[07:45] <fmax30> output.mp4
[08:28] <fmax30> anyone ?
[12:25] <Mavrik> fflogger, and?
[12:25] <Mavrik> bah.
[12:25] <Mavrik> damn slow logs
[12:52] <kaotiko> hi
[13:46] <shevy> does anyone happen to know whether the ffmpeg filters also have an example of a filter that removes or blurs out a logo?
[13:46] <shevy> ah they do
[13:46] <shevy>  T.. delogo           V->V       Remove logo from input video.
[13:46] <shevy>  T.. removelogo       V->V       Remove a TV logo based on a mask image.
[14:52] <Marcin_PL> Hello! I got some problem with fps here& The point is I got MJPEG file (with PCM sound) at 30 fps (easy Canon PowerShot) and I cannot make it the same duration time in my rotating script. I used -r 30 and it worked somehow (default is 25), but not well (movie is going to be longer). I learned some time ago to work on ffmpeg separately with audio and video, so if it's not the reason pls don't irritate about separating sound off.
[14:52] <Marcin_PL> Here's the script: http://pastebin.com/mDi9NjD6
[15:53] <Glanzmann> Hello; I tried to cut some parts out of h264/mp4 video and merge them together with copy. ffmpeg -i k1_last_day.mp4 -ss 0:00:00 -c copy -t 0:01:00 1.mp4 ... ffmpeg -f concat -i list.txt -c copy output.mp4 the resulting video does not open in google chrome. What did I do wrong or what do I do to reencode it. I tried ffmpeg -i output.mp4 -codec:v libx264 -profile:v high -threads 0 -f mp4 output2.mp4 which gave me Unable to parse option value "-1" as p
[15:56] <c_14> Did you make sure that the videos you were trying to concat all had the same settings? (pixel format, codec, fps, etc)
[15:58] <Glanzmann> c_14: Yes, they came from the same original video.
[15:58] <Glanzmann> If I play it with mpv the picture hangs when I go to clip 1 to clip 2.
[15:58] <Glanzmann> If I seek, everything is fine.
[16:00] <Glanzmann> But even the first extract that I took using copy does not work in google chrome, so I assume it needs reencoding.
[16:00] <c_14> If the original works, then the copied sub-portion should work as well.
[16:01] <Glanzmann> It does not.
[16:02] <Glanzmann> I try to do the same with a static build from the website.
[16:03] <Glanzmann> Same problem.
[16:04] <Glanzmann> Give me one second.
[16:07] <Glanzmann> https://pbot.rmdir.de/2mbCXLirKwXiltAJoQrwWw
[16:11] <c_14> try adding -pix_fmt yuvj420p as an input option to the last command
[16:13] <Glanzmann> (lenovo) [~] ffmpeg -y -f concat -i list.txt -c copy -pix_fmt yuvj420p output.mp4 2>&1 | pbot
[16:13] <Glanzmann> https://pbot.rmdir.de/rDBfz_JYKkeIfgednyxpkA
[16:13] <Glanzmann> Same problem.
[16:13] <c_14> input option
[16:13] <c_14> before -i list.txt
[16:14] <Glanzmann> Another error: (lenovo) [~] ffmpeg -y -f concat -pix_fmt yuvj420p -i list.txt -c copy output.mp4 2>&1 | pbot
[16:14] <Glanzmann> https://pbot.rmdir.de/uUQI_MQhO-mzG4CtAQq0QQ
[16:14] <c_14> -pix_fmt
[16:14] <c_14> wait
[16:15] <c_14> you did right -pix_fmt, why is it saying it can't find pixel_format...
[16:15] <Glanzmann> My assumption is that when I do the extraction part, it screws up the extracted parts.
[16:15] <Glanzmann> Because I used copy before and it worked.
[16:16] <c_14> try adding -pix_fmt yuvj420p as an output option to all the ones before
[16:16] <c_14> *commands
[16:16] <Glanzmann> My GOPRO splits up in multiple 4 GB files, I used ffmpeg to reencode to h264 360p and than I used ffmpeg cocnat to merge it.
[16:17] <Glanzmann> Okay. Where do I put the output option?
[16:17] <c_14> somewhere before the 1.mp4 etc
[16:17] <c_14> and after the k1_last_day.mp4
[16:19] <Glanzmann> I see. That worked. But same problem: https://pbot.rmdir.de/WqfljlZtfVAlpFgSR64Evg
[16:23] <Glanzmann> If you cut with stream copy (-c copy) you need to use the -avoid_negative_ts 1 option if you want to use that segment with the #concat demuxer .
[16:23] <Glanzmann> Source: https://trac.ffmpeg.org/wiki/Seeking
[16:25] <c_14> mhm, try that?
[16:26] <Glanzmann> Yes, did not fix the problem.
[16:26] <Glanzmann> I got it.
[16:26] <Glanzmann> Problem was that the offsets need to go in front of the input file.
[16:27] <c_14> putting the -ss in front of the input file fixed it?
[16:27] <Glanzmann> Yes, it did.
[16:27] <c_14> that's weird
[16:27] <Glanzmann> I now try to get a minimal modification.
[16:27] <Glanzmann> It also now takes a lot longer to encode.
[16:27] <Glanzmann> I read somewhere that one is better and the other one is faster.
[16:28] <Glanzmann> c_14: Thanks for the help.
[16:29] <Glanzmann> Minimal example is: https://pbot.rmdir.de/gnX26WXQj0vw9qG6vgBSKw
[16:33] <Glanzmann> Sorry the last script had an error. https://pbot.rmdir.de/H2wxt7fkGcdQ0wYs-Wzh6A
[16:36] <c_14> hmm, k. Still not sure why the -ss as an output option broke it, but I'll keep it in mind
[16:40] <diffuse> hi, i am trying to write an app to decode any audio format and covert it to AV_CODEC_ID_PCM_S16LE
[16:40] <Glanzmann> c_14: Thanks again for your help.
[16:41] <Mavrik> diffuse, you might want to ask an actual question :P
[16:41] <diffuse> getting there :-)
[16:41] <diffuse> I have the mp3 decode working fine, and i am invoking the decoder, [pcm_s16le @ 0x6030a0] nb_samples (1152) != frame_size (0) (avcodec_encode_audio2)
[16:41] <diffuse> and i get that error
[16:42] <Mavrik> diffuse, um, you don't really have to encode PCM audio
[16:42] <Mavrik> when you decode audio it's already in PCM format :)
[16:42] <diffuse> well
[16:43] <diffuse> is there a way to set specific flags when decoding the mp3 to make it decode to AV_CODEC_ID_PCM_S16LE?
[16:44] <diffuse> i am trying to reproduce the results of what -acodec pcm_s16le -ar 16000 would produce
[16:44] <Mavrik> hmm, not really because it'll decode to whatever the mp3 is in
[16:44] <Mavrik> diffuse, use filters for that, not encoder
[16:44] <Mavrik> diffuse, initialize a filter chain in form of "aformat=s16,aresample=16000"
[16:45] <Mavrik> since filters are the ones that convert raw frames, not encoders per-se
[16:45] <Mavrik> PCM encoder just does passthrough :)
[16:46] <diffuse> Mavrik: ok, do you have a url to the api doc handy?
[16:46] <Mavrik> diffuse, doc/examples/filtering or whatsit
[16:47] <Mavrik> diffuse, also look at filtering documentation for ffmpeg binary, all filters you have available are listed there
[16:47] <diffuse> ok
[16:47] <diffuse> so, do i decode the mp3 then run it through the filter to get my desired output?
[16:47] <Mavrik> yep
[16:47] <Mavrik> filter chain actually, since you'll have to resample the audio and convert the format :)
[16:48] <diffuse> so, i first run the mp3 through a filter, then run it through decode?
[16:48] <diffuse> or can all this be done in a filter chain directly?
[16:49] <Mavrik> ugh
[16:49] <Mavrik> you filter decoded raw audio
[16:49] <Mavrik> you can't filter encoded data :)
[16:50] <Mavrik> you grab a raw PCM audio frame in whatever format the decoder gives you and you push it into filter chain
[16:50] <diffuse> ok, that makes more sense
[16:50] <Mavrik> then you grab it out of the filter chain filtered :)
[16:50] <Mavrik> see the example code, that's probably the easiest to understand
[17:34] <anshul_mahe> is there any filter which merge 2 program stream
[17:36] <Mavrik> define merge.
[17:39] <anshul_mahe> Mavrik: anything which takes 2 program (2 audio 2 video pair ) and give one 1 program in output
[17:40] <Mavrik> anshul_mahe, ok, and how would that look like? Muxed together in a single TS, picture by picture, audios separate or mixed?
[17:41] <anshul_mahe> I was trying to implement a filter which takes 2 programs and give 1 programs in output, putting some advertisement in video stream
[17:41] <anshul_mahe> I wanted some filter for reference
[17:42] <anshul_mahe> means taking 2 video of 1 hour and 10 minute and give output of 1.10 hr
[17:42] <c_14> So basically concat? or trim + concat?
[17:43] <anshul_mahe> c_14: thnks I will look at it
[17:45] <anshul_mahe> I cant use anything already inside there, because timing are in 1 of the program, abt when to trim and when to concat, but that filter would be good start
[17:47] <SuperSQL> Hi, I would like to extract a single frame from long video to a jpg file, I use this command: "ffmpeg -ss xx:xx:xx.xx -i filepath  -vframes 1 output.jpg" it works great for most video files but on some file it takes way lot longer to extract frame, is there any faster way of seeking? is there a way to reach same speeds as VLC or any other player wh
[17:47] <SuperSQL> en seeking? Percision is not important, I would just want to extract frame with rough timestamp. Can anyone help me with that?
[17:49] <mcnesium> i accidentally quit an ffmpeg transcoding session. can i somehow resume it instead of starting over? it took quite a while so far&
[17:51] <c_14> mcnesium: if you didn't output to mp4, you can check how far the output got, seek to that point in the input and keep encoding then concat the 2 files
[17:51] <c_14> SuperSQL: afaik, that is the fastest method of seeking
[17:52] <mcnesium> c_14: output file was .webm
[17:52] <c_14> mcnesium: use ffprobe to check how long the webm is, then use the same command as before with a different output file and -ss [time]
[17:52] <c_14> Then later concat them with -c copy
[17:53] <c_14> should work
[17:54] <SuperSQL> wow thanks for that
[17:58] <mcnesium> c_14: ffprobe says Duration: N/A, start: 0.000000, bitrate: N/A - both firefox and vlc can play the file but neither can jump within the file. its broken, i guess
[17:59] <c_14> mcnesium: try remuxing it into another webm
[17:59] <c_14> that might recreate the timestamps
[17:59] <mcnesium> like ffmpeg -i old.webm new.webm ?
[17:59] <c_14> ie with ffmpeg -i webm -c copy -map 0 out.webm
[17:59] <mcnesium> ok :)
[18:06] <mcnesium> c_14: so my original command included concat:VTS_01_1.VOB\|VTS_01_2.VOB& and so on. will -ss time work with that?
[18:06] <c_14> should
[18:06] <mcnesium> ok i will try. thank you
[18:18] <diffuse> Mavrik: i am making some progress here, but i am getting an error when setting up my filter
[18:19] <diffuse> Mavrik: av_get_default_channel_layout(pDecCtx->channels) is returning a NULL
[18:20] <Mavrik> what's the value of channels?
[18:21] <diffuse> Mavrik: 0
[18:22] <Mavrik> well, thats your problem then
[18:22] <Mavrik> did you probe input?
[18:22] <Mavrik> or did you set it manually?
[18:23] <diffuse> if(avformat_open_input(&fmt_ctx, filename, NULL, NULL) != 0
[18:23] <diffuse> i did that
[18:25] <diffuse> Mavrik: ok, i was missing a call to find stream info
[18:26] <SuperSQL> I guess that didn't fix :/ Video file is encoded in h264 and in mkv container, it looks like if I put normal -ss infront of input file it would still try to decode whole thing from the beginning. If I put -vcodec copy and output as mkv and then run ffmpeg again for converting first frame to jpg picture is then black, nothing there as for other form
[18:26] <SuperSQL> ats it works great
[18:27] <diffuse> Mavrik: ok, it works
[18:27] <diffuse> Mavrik: i appreciate you pointing me in the right direction
[18:27] <diffuse> thanks
[21:39] Action: shevy points at a pit and looks at diffuse expectingly.
[22:31] <diffuse> Mavrik: i had a chance to run some audio through and the audio produced is way to fast
[22:35] <Mavrik> diffuse, then play it slower
[22:35] <Mavrik> :P
[22:35] <Mavrik> (you're messing something up with playback)
[22:47] <shevy> hmm
[22:47] <shevy> when trying the filters
[22:47] <shevy>   ffplay -f lavfi -i life=s=300x200:mold=10:r=60:ratio=0.1:death_color=#C83232:life_color=#00ff00,scale=1200:800:flags=16
[22:47] <shevy> I don't seem to get much at all? only a black video
[22:48] <shevy> seems to be the case for all filters :(
[22:48] <shevy> but the examples at https://trac.ffmpeg.org/wiki/FancyFilteringExamples looked so fancy!
[22:55] <llogan> shevy: works for me
[22:55] <shevy> hmm
[23:27] <squeegily-OtherC> AWW YES I tried out the XVid encoding and NOW I CAN PLAY ANIME ON MY Asus Eee PC 1000!
[23:27] <squeegily-OtherC> ffmpeg is the best
[23:28] <squeegily-OtherC> I am unbelievably happy right now\
[23:30] <JEEB> -tune fastdecode libx264 should work as well, and probably be simpler to use / get better compression / possibly better encoding speed
[23:31] <nasojlsu> ffmpeg = awesomeness
[23:31] <JEEB> (fastdecode + lower bit rate is usually a good combo)
[23:31] <llogan> and maybe better battery loife
[23:31] <squeegily-OtherC> You guys don't get how old this thing is
[23:31] <JEEB> I do
[23:31] <JEEB> I had the eeepc 900
[23:32] <squeegily-OtherC> Hmm I'll give that a try then
[23:32] <JEEB> I played normal H.264 encodes on it (barely, but I did). The 1000 IIRC has the first-gen atom so it's a wee bit slower, but SD -tune fastdecode encodes should still be fine
[23:32] <JEEB> maybe even 720p
[23:32] <squeegily-OtherC> As for the battery, I spilled coffee on it and fried it. It's essentially a desktop computer with a lame screen right now
[23:32] <squeegily-OtherC> I had no idea -fastdecode existed
[23:33] <JEEB> too bad I broke the hinge and decided to give my 900 back to the university after five years
[23:33] <JEEB> not -fastdecode, -tune fastdecode
[23:33] <JEEB> -tune is a libx264-specific option
[23:33] <llogan> i still have a HP Mini. would still use it if i could find the power cord...
[23:33] <llogan> hadly see anyone using netbooks these days. i can't stand tablets
[23:34] <JEEB> ultrabooks pretty much took over
[23:34] <Mavrik> yep
[23:34] Action: llogan is now officially old
[23:34] <JEEB> actual performance in a nice size
[23:34] <JEEB> I don't really dislike tablets but I see the reasons for having small portable laptops
[23:34] <Mavrik> and tablets as well - my Nexus 9 is faster and has better screen (+keyboard) than any of those notebooks ever had
[23:34] <Mavrik> also those 11" chromebooks are cheap as hell
[23:35] <Mavrik> I blame crappy desktop OSes for the reign of tablets tho
[23:35] <squeegily-OtherC> Mavrik: I assume you use Mac?
[23:35] <Mavrik> ?
[23:35] <squeegily-OtherC> You mentioned desktop OSes being not good
[23:36] <squeegily-OtherC> Which one do you use?
[23:36] <Mavrik> I run pretty much everything lately :)
[23:36] <squeegily-OtherC> I recently gave up on maintaining an Arch installation and switched to Xubuntu
[23:36] <Mavrik> But, try teaching an elder person how to use a computer and you'll quickly see just how non-sensical alot of desktop OS stuff is
[23:37] <JEEB> if you want rolling I'd go for either debian testing/unstable or opensuse tumbleweed
[23:37] <Mavrik> like... explaining double-vs-single click :)
[23:37] <Mavrik> "But why is this picture special?"
[23:37] <nasojlsu> i like opensuse
[23:37] <squeegily-OtherC> That is one irritation is I have to add a PPA for every little thing
[23:37] <nasojlsu> just works
[23:37] <JEEB> I've had opensuse break GNOME for me a few times in a VM
[23:37] <JEEB> (tumbleweed)
[23:37] <Mavrik> I run ElementaryOS on my Linux boxes, I like the fact they actually made a pretty desktop on an Ubuntu base
[23:37] <squeegily-OtherC> Since I went with the LTS release to minimize my troubles, ironically, the PPA thing is a slight inconvenience
[23:46] <llogan> i didn't think there was much to maintain in arch. doesn't give me any trouble.
[23:46] <llogan> using it on a few servers too
[23:46] <squeegily-OtherC> What's the mplayer flag for the framebuffer? -vo directfb bricked the TTY
[23:48] <tdr> squeegily-OtherC, mplayer -vo help will list your video out options
[00:00] --- Sat Jan  3 2015


More information about the Ffmpeg-devel-irc mailing list