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

burek burek021 at gmail.com
Fri Dec 15 03:05:02 EET 2017


[01:02:48 CET] <WireCat> Hey! Does anybody know why would i get such error "make: *** No rule to make target 'libavcodec/x86/huffyuvdsp_template.asm', needed by 'libavcodec/x86/huffyuvdsp.o'.  Stop.
[01:02:48 CET] <WireCat> "
[01:04:53 CET] <jkqxz> WireCat:  Are you reusing an old build directory without cleaning after file dependencies have changed?
[01:05:25 CET] <WireCat> i think i cleaned it, but let me check
[01:05:57 CET] <WireCat> is 'make clean' enough, or one needs to do something in addition to that?
[01:06:21 CET] <furq> run git clean -dfx if you want to be totally sure
[01:06:30 CET] <furq> assuming you got this from git ofc
[01:06:40 CET] <jkqxz> That wouldn't do anything in the build directory?
[01:06:50 CET] <jkqxz> "make clean" is what you want, yeah.
[01:06:52 CET] <furq> it would delete the build directory wouldn't it
[01:07:10 CET] <jkqxz> Well, only if it's inside the source directory.
[01:07:12 CET] <WireCat> ok i did both and will try again rn :)
[01:07:42 CET] <furq> oh yeah i forget people do out of tree builds
[01:08:20 CET] <WireCat> well i have a problem with opencv actually, it segfaults when trying to load a video fiile
[01:08:30 CET] <WireCat> so im hoping building the thing manually will help.
[01:09:40 CET] <WireCat> the original error I get is " general protection ip:7f1b4a251f01 sp:7ffffb3fd720 error:0 in libavutil.so.55.58.100[7f1b4a23d000+62000]"' but that doesn't mean anything. I'm using  ubuntu 17.04.
[01:10:03 CET] <WireCat> would you say that trying to compile it manually is a possible way to solve this?
[01:11:07 CET] <jkqxz> A backtrace might help.
[01:11:42 CET] <jkqxz> That suggests something wrong in libavutil or a caller, but there isn't enough information to tell anything beyond that.
[01:13:55 CET] <WireCat> oh, i can't do the backtrace anymore, as i seem to have removed the opencv packages already
[01:14:37 CET] <WireCat> i'll just hope then, that the manual compilation will help. :-)
[01:17:03 CET] <WireCat> jkqxz, the cleaning helped, it built ok now :-) Thank you again!
[01:39:25 CET] <SortaCore> is there a way to check if the codec is video?
[01:53:07 CET] <furq> SortaCore: ffprobe -show_entries stream=codec_type
[01:53:27 CET] <SortaCore> I mean in C++, I'm looping via avcodec_next
[02:07:10 CET] <alexpigment> jkqxz: mikhail emailed me back and said he figured out the problem it should be addressed by a driver update in 2-3 weeks
[02:07:48 CET] <alexpigment> jkqxz: clarification - the issue with AMF encoding and the weird artifacting in plaback
[02:07:53 CET] <alexpigment> *playback
[02:14:40 CET] <jkqxz> So that is indeed a driver problem?  Fun.
[02:42:38 CET] <WireCat> i have like another stupid question :)
[02:42:50 CET] <WireCat> the thing now says this /usr/bin/ld: /usr/local/lib/libavcodec.a(vc1dsp_mmx.o): relocation R_X86_64_PC32 against symbol `ff_pw_9' can not be used when making a shared object; recompile with -fPIC
[02:44:27 CET] <SortaCore> add --CFLAGS=fPIC
[02:44:41 CET] <furq> --extra-cflags
[02:44:49 CET] <SortaCore> furq is hax
[02:44:54 CET] <SortaCore> knows too much
[02:45:16 CET] <furq> you could just use --enable-pic though
[02:45:24 CET] <DHE> that looks like an ASM file being built though... does CFLAGS cover that?
[02:45:36 CET] <furq> no idea and it seems hacky anyway
[02:45:36 CET] <SortaCore> cwhadimean
[02:46:00 CET] <furq> maybe --enable-shared is a better solution
[02:46:09 CET] <WireCat> so instead of --static i do that?
[02:46:31 CET] <SortaCore> furq, any idea how to get whether it's a video codec from AVCodec?
[02:46:38 CET] <WireCat> i don't know much about this stuff, but i need to build  the thing :/
[02:46:41 CET] <furq> i've never really used the libs
[02:47:13 CET] <SortaCore> *urge to ask on ffmpeg-devel intensifies*
[02:47:15 CET] <furq> WireCat: if you want a static build then try --enable-pic
[02:48:08 CET] <WireCat> thank you, i will try
[04:18:04 CET] <TheRock2> hi guys, i heard ffmpeg is better than handbrake, is that true ?
[04:35:44 CET] <furq> that's like asking if a truck is better than a car
[05:24:52 CET] <alexpigment> TheRock2: Handbrake is limited in what it can do (although it does have a command line for specific x264 options)
[05:25:20 CET] <alexpigment> FFMPEG also uses x264, but it has a lot of filters which are not available in handbrake
[05:25:59 CET] <alexpigment> lastly, some of the filters in Handbrake seem to do a better job (e.g. the detelecine option)
[05:26:17 CET] <alexpigment> anyway, trucks vs cars ;)
[05:42:55 CET] <furq> i was thinking more about the fact that handbrake can rip dvd and bluray
[05:43:57 CET] <TheRock2> some say handbrake is good because it has  gui
[05:46:19 CET] <memi> hello. I have Analog-Digital video encoder with 2 inputs "composite video" and "s-video", attached to PC via USB. Can i switch input by ffmpeg util?
[05:46:57 CET] <furq> that sounds like the sort of thing that v4l2 would do
[05:47:20 CET] <furq> https://manpages.debian.org/stretch/v4l-utils/v4l2-ctl.1.en.html
[05:47:37 CET] <furq> if you're on linux ofc
[05:47:43 CET] <furq> on windows i have no idea
[05:52:21 CET] <memi> unfortunatly, i need do this on windows. I think, that ffmpeg can do it, but not know, how search that mechanism.
[05:57:16 CET] <furq> !indev dshow @memi
[05:57:17 CET] <nfobot> memi: http://ffmpeg.org/ffmpeg-devices.html#dshow
[05:57:30 CET] <furq> if it's not in there then i doubt ffmpeg can do it
[07:25:20 CET] <memi> 2furq, Yes 'dshow' can do that. With option 'crossbar_video_input_pin_number'
[09:04:49 CET] <baoxiang> Hi, when i execute ffmpeg to record as audio wav format: use the -sample_fmt u8, ffmpeg show that u8 is invalid,but i use ffmpeg -sample-fmts , u8 is in result? could any tell me why?
[09:16:09 CET] <SortaCore> baoxiang, sample is not a codec
[09:16:20 CET] <SortaCore> make sure you're specifying the audio codec
[09:18:53 CET] <baoxiang> my command is : ffmpeg -y -i test.flv -f wav -ar 11025 -ac 1 -sample_fmt u8 -vn test.wav
[09:19:32 CET] <baoxiang> the error is : Specified sample format u8 is invalid or not supported
[09:20:56 CET] <baoxiang> when i use s16 , it execute successfully.
[09:25:57 CET] <furq> baoxiang: the default codec for wav is pcm_s16, which obviously doesn't support u8
[09:26:02 CET] <furq> set -c:a pcm_u8
[09:26:26 CET] <furq> s/pcm_s16/pcm_s16le/ before someone more pedantic comes along
[09:28:22 CET] <baoxiang> furq, thanks, "-c:a pcm_u8" works!
[09:30:08 CET] <baoxiang> thanks SortaCore too.
[12:13:47 CET] <funyun_> hi. i'm trying to compile ffmpeg using this guide https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu. when i get to the x264 part i get this error https://pastebin.com/cF9148eU anyone know what's wrong?
[12:16:41 CET] <BtbN> you cannot link a static lib without PIC into a shared library.
[12:18:17 CET] <funyun_> BtbN: so i should use sudo?
[12:37:03 CET] <sfan5> no you need different build flags
[12:38:12 CET] <JEEB> the person spammed it elsewhere and seems to have already gotten
[12:38:14 CET] <JEEB> *gotten it
[12:38:22 CET] <JEEB> the person also got me really confused by spamming it here too
[12:38:29 CET] <JEEB> since I thought I was replying on #ffmpeg an not #x264 :P
[12:39:11 CET] <funyun_> well i didn't "spam" it. i just asked once. sfan5: thanks
[12:39:48 CET] <JEEB> posting the same thing on N channels is considered spamming
[12:39:52 CET] <JEEB> even if you do it just once
[12:42:49 CET] <durandal_1707> how would you know unless you are on all channels
[12:42:58 CET] <funyun_> i see. sorry for spamming you guys. hope you can still see previous text from other users
[13:02:13 CET] <funyun_> almost done. i'm trying the final step of compiling ffmpeg but i get this error "ERROR: libass not found using pkg-config". libass-dev is installed. anyone know what's wrong
[13:02:44 CET] <JEEB> ffbuild/config.log
[13:02:52 CET] <JEEB> at the end of it you should see the errored out check
[13:12:34 CET] <dradakovic> Is it possible for ffmpeg to detect that input is not available anymore? I am inputing the http radio and outputting it as a multicast. But if an input drops for a moment then ffmpeg process will still run but output only silence.
[13:13:21 CET] <dradakovic> i use -reconnect 1, reconnect_at_eof 1, -reconnect-streamed 1 and reconnect-delay-max 4249
[13:14:34 CET] <dradakovic> If i check the log file, i can see that it is not getting filled anymore. Tailf stays at the same time= played
[13:15:23 CET] <zerodefect> I notice in the C-API, specifically in the AVFrame, there is a concept of 'channel_layout' for audio channels (it's a member of the struct).  For say the #define 'AV_CH_LAYOUT_5POINT1', does ffmpeg assume that the channels are always in given/pre-specified order? Is this implicit knowledge? :)
[13:19:43 CET] <funyun_> JEEB: https://pastebin.com/Tex0ni9s i have installed libpng-1.6.34 but still getting this error
[15:04:32 CET] <shtomik> Hi to all guys, I'm developing some app build on libavdevice and ffmpeg libs at all, at the beginning so sorry about my English, please tell me, who can help me with some my code? I need an advice and review... Thanks to all
[15:14:13 CET] <DHE> you'll have to ask a specific question before you can really get help with what you're trying to do
[15:15:20 CET] <fx159159> Hey, is it possible that libvpx-vp9 massively overshoots the target bit rate if in realtime mode and the cpu is under high load?
[15:16:10 CET] <JEEB> quite possible
[15:16:16 CET] <JEEB> libvpx is not known to have a good rate control
[15:16:22 CET] <JEEB> not to even mention VBV/HRD
[15:17:42 CET] <fx159159> I'm using a res of 640x480, crf is 35 and target bitrate 300k
[15:18:00 CET] <fx159159> vp9 results in 500kbit bit rate, vp8 achieves 190 with roughly the same settings
[15:23:46 CET] <fx159159> Does a low frame rate hurt the effiency of vp8/9?
[15:24:06 CET] <JEEB> I just don't know
[15:24:19 CET] <JEEB> you're better off asking #vp8 (if I recall correctly that's the historical channel for libvpx)
[15:27:42 CET] <fx159159> Ok, thank you
[15:56:36 CET] <shtomik> Okay, I don't understand what do I wrong... I saw all examples, and read all API description, but I fave a trouble with output... My code: https://pastebin.com/50GpcaAA Trouble with output file with error: [flv @ 0x7f99a6807a00] Could not find codec parameters for stream 0 (Video: h264, none, 2000 kb/s): unspecified size
[15:56:37 CET] <shtomik> Consider increasing the value for the 'analyzeduration' and 'probesize' options
[15:57:30 CET] <shtomik> [h264 @ 0x7f99a6808000] decode_slice_header error non-existing PPS 0 referenced
[15:58:01 CET] <JEEB> sounds like you just haven't gotten the parameter sets yet
[15:58:04 CET] <JEEB> the decode shouldn't stop at that
[15:58:23 CET] <JEEB> you just keep feeding it more data from the demuxer until you get your image :P
[15:58:30 CET] <JEEB> if there are parameter sets there in the input
[16:00:31 CET] <shtomik> ffprobe test.flv -> https://pastebin.com/qpaJ5V8s
[16:01:28 CET] <shtomik> I set all params, and this error occurred for all file ;(
[16:09:11 CET] <JEEB> shtomik: if you encoded it then it lacks the parameter sets.
[16:09:28 CET] <JEEB> which go in-band with FLV
[16:09:30 CET] <JEEB> IIRC
[16:12:17 CET] <shtomik> Parameter sets? What don't I set?(
[16:14:32 CET] <JEEB> are you setting this? http://git.videolan.org/?p=ffmpeg.git;a=blob;f=libavcodec/libx264.c;h=9c67c91f33daf9af27a315f9a98f64dff858d8d2;hb=HEAD#l758
[16:17:00 CET] <JEEB> since by your comments I figure that you encoded that FLV file?
[16:19:20 CET] <shtomik> yeah
[16:19:38 CET] <JEEB> yes to what?
[16:19:40 CET] <shtomik> I grab avfoundation input and reencoding it with muxing
[16:19:52 CET] <JEEB> ok
[16:19:57 CET] <JEEB> and what about the flag?
[16:19:58 CET] <shtomik> to flv output
[16:20:15 CET] <shtomik> Now i try to set the flag, thanks ;) 1 min please
[16:20:33 CET] <JEEB> no, you want the repeated headers for that output format (FLV)
[16:20:39 CET] <JEEB> since it's all in-band
[16:20:50 CET] <JEEB> I was asking if you were already setting the flag :P
[16:21:09 CET] <fx159159> When having an input/output framerate of 15 and a GOP of 45 every 3 seconds a webm chunk is emitted, now doubling the input rate to 30 and staying with output rate 15 and GOP 45, whats the expected interval for webm chunks?
[16:21:22 CET] <fx159159> Still 3 sec or 1,5 sec?
[16:27:26 CET] <shtomik> JEEB: AV_CODEC_FLAG_GLOBAL_HEADER is set
[16:27:50 CET] <JEEB> shtomik: that has to be set depending on the output format
[16:28:15 CET] <JEEB> so FLV -> no global header, MP4 -> global header used
[16:28:17 CET] <JEEB> for example
[16:29:53 CET] <shtomik> This does not solve my question ;(
[16:30:36 CET] <JEEB> ok
[16:31:16 CET] <JEEB> without that header the encoder is told to output annex b style packets *and* include the parameter sets in the packets
[16:31:17 CET] <shtomik> Oh... wait...
[16:31:50 CET] <JEEB> while WITH that flag you are telling the encoder to just give you the parameter sets separately into the extradata
[16:32:01 CET] <JEEB> and then not repeat them
[16:32:14 CET] <JEEB> you need to either set or not set the flag depending on the output format
[16:32:23 CET] <JEEB> as I said, FLV needs the stuff in-band
[16:32:30 CET] <JEEB> MP4 needs it out-of-band
[16:32:34 CET] <JEEB> capisci?
[16:33:38 CET] <JEEB> shtomik: you can decide it with https://ffmpeg.org/doxygen/trunk/structAVOutputFormat.html#aad55a00e728a020c1dcfaaf695320445 I think?
[16:33:47 CET] <JEEB> although let me double-check
[16:34:19 CET] <JEEB> wait why does it say global header...
[16:34:53 CET] <JEEB> ok, so flvenc calls ff_isom_write_avcc
[16:35:03 CET] <JEEB> so I was completely incorrect?
[16:35:09 CET] <JEEB> I don't even what is this :P
[16:35:37 CET] <shtomik> I unset that flag(global header for flv)
[16:36:03 CET] <shtomik> and ffprobe now finish without errors ;)
[16:36:11 CET] <JEEB> that's how I expected it to work
[16:36:28 CET] <JEEB> but I will have to check why the code looks like it does
[16:36:51 CET] <JEEB> shtomik: were you writing the header in your code?
[16:36:59 CET] <JEEB> there's an avformat function for that
[16:37:17 CET] <shtomik> I want to try with mp4 now
[16:37:34 CET] <shtomik> I don't... for flv
[16:37:40 CET] <JEEB> ok, that explains
[16:37:48 CET] <JEEB> you should always call that function
[16:38:01 CET] <JEEB> it's expected to be called before you start writing packets
[16:38:08 CET] <JEEB> whether or not it actually does something useful depends on the format
[16:40:27 CET] <shtomik> yeah... with global header I have all problem
[16:41:44 CET] <JEEB> ok, if you are not always calling avformat_write_header() please do that
[16:41:57 CET] <JEEB> and no, "global header" is a thing you do with mp4 for example
[16:41:59 CET] <JEEB> or matroska
[16:42:23 CET] <JEEB> FLV seems to support both, and MPEG-TS is without global headers :P
[16:43:17 CET] <shtomik> Can you review my code please?
[16:44:26 CET] <shtomik> my output files is not play back... but i don't have errors...
[16:45:09 CET] <JEEB> I have my own code to work on, so no. just make sure that you've opened the muxer, added the streams you need and then initialize and write required headers with avformat_write_header
[16:45:16 CET] <JEEB> then start writing the packets
[16:46:09 CET] <JEEB> and then whether or not to use the global header stuff you can see by looking at the output format's  #define AVFMT_GLOBALHEADER  0x0040 /**< Format wants global header. */
[16:46:14 CET] <JEEB> fromt the flag variable
[16:46:29 CET] <JEEB> if it needs you add that to your encoding parameters, if it doesn't you don't
[16:46:58 CET] <shtomik> I done it... ;(
[16:47:59 CET] <JEEB> https://ffmpeg.org/doxygen/trunk/transcoding_8c-example.html
[16:48:03 CET] <JEEB> then compare
[16:50:08 CET] <shtomik> I write my test from that example ;)
[16:50:54 CET] <shtomik> my test is not big ;) it's not a working or production code...
[18:42:35 CET] <neverminder> Hi. My pulseaudio default sample format is set to 32bit, but ffmpeg always shows input as 16bit, why is that?
[18:44:15 CET] <BtbN> I'd guess because it doesn't have more precision
[18:44:41 CET] <neverminder> can you elaborate, please? is there a way to fix that?
[18:45:37 CET] <BtbN> What's your source? Does it even have 32bit?
[18:46:24 CET] <neverminder> my source is external audio interface, so I'm pretty sure it does
[18:47:51 CET] <neverminder> sorry, I might have been wrong, just opened a spec, says "96 KHz, 24-bit conversion"
[18:49:24 CET] <neverminder> would I be able to convince ffmpeg to get input as 24bit then?
[18:50:19 CET] <JEEB> https://www.ffmpeg.org/ffmpeg-all.html#pulse
[18:50:53 CET] <JEEB> it has sample rate there but not sample format
[18:52:15 CET] <JEEB> oh of course
[18:52:19 CET] <neverminder> so it can't be done?
[18:52:31 CET] <JEEB> because it's an audio codec as we're dealing with avformat like abstraction
[18:53:18 CET] <JEEB> -c:a pcm_s24le before -i ?
[18:53:27 CET] <JEEB> if that works
[18:54:09 CET] <JEEB> http://git.videolan.org/?p=ffmpeg.git;a=blob;f=libavdevice/pulse_audio_dec.c;h=95a1d6ecfa6204246cf4f150cb66d1fc59b01187;hb=HEAD#l144
[18:54:56 CET] <neverminder> JEEB, that's briliant, it works, thanks
[18:55:58 CET] <JEEB> as a really personal note, I really hate how avdevice is structured because it's all about AVPackets and not AVFrames for raw capture devices :< but alas, that's how it will be.
[18:56:37 CET] <neverminder> well I hate it too now, just one more thing to hate =]
[19:23:19 CET] <Stadtpirat> Hey guys, I ripped a DVD and want to encode it to x264. I need to crop it some pixels since the edges are blurred out and too bright. I made a screenshot with VLC and loaded it into photoshop. There, the crop area is 1010x430. The weird thing is, vlc tells me the resolution is 720*576.
[19:23:41 CET] <Stadtpirat> I read that this might be because it has some funny SAR DAR values. ffprobe tells me this: Stream #0:0(eng): Video: mpeg2video (Main), yuv420p(tv, top first), 720x576 [SAR 64:45 DAR 16:9], 25 fps, 25 tbr, 1k tbn, 50 tbc
[19:23:59 CET] <sfan5> yes that's due to the SAR
[19:24:11 CET] <JEEB> yes, the actual video is either 720x480 or 720x576 with an aspect ratio flag
[19:24:12 CET] <Stadtpirat> I tried for a long time to just get square pixels and make the video the original resolution. (no crop yet). I don't want to reencode eyet.
[19:24:35 CET] <JEEB> you can check it out with vapoursynth editor if you want to look at how it looks
[19:24:47 CET] <JEEB> and then plan cropping and IVTC/deint
[19:25:06 CET] <Stadtpirat> it's not interlaces, gladly.
[19:25:13 CET] <Stadtpirat> But is there a way to do all this with ffmpeg?
[19:25:16 CET] <sfan5> yes
[19:25:59 CET] <JEEB> it's just that it's hard to preview with just ffmpeg.c
[19:26:25 CET] <sfan5> though i'm wondering why ffmpeg says "top first" if your source is not interlaced
[19:26:30 CET] <Stadtpirat> I tried to "-vf setsar=sar=1" but then it changes the aspect ratio. I tried "-vf setsar=sar=1,setdar=dar=16/9" but then nothing happens
[19:26:44 CET] <illegal> how do I add fonts to a mkv with ffmpeg? I keep getting attachment stream 3 has no minetype or font doesn't exist
[19:26:44 CET] <Stadtpirat> oh, maybe it is then. didn't look like it when watching
[19:26:47 CET] <JEEB> the aspect ratio is already correctly ('ish) read
[19:26:47 CET] <sfan5> well yeah you can't just "set" these, you need to scale
[19:26:57 CET] <sfan5> (if you absolutely want a 1:1 SAR)
[19:27:06 CET] <illegal> ffmpeg -i "vd.mkv" -codec copy -attach "OpenSans-SemiBold.ttf" -metadata mimetype=application/x-truetype-font "out.mkv"
[19:27:12 CET] <Stadtpirat> But scale would mean a quality loss, right?
[19:27:21 CET] <sfan5> not necessarily
[19:27:24 CET] <Stadtpirat> like scaling a picture in photoshop
[19:27:48 CET] <JEEB> well yes it is no longer original. if you don't want to touch the image just crop it and the SAR should stay correct
[19:28:05 CET] <JEEB> just find out the correct amount of crop with vapoursynth editor or something
[19:29:24 CET] <sfan5> -vf "scale=1024:576,setsar=1/1" is what I meant by scaling
[19:29:39 CET] <JEEB> yes
[19:29:51 CET] <JEEB> that will stretch the thing like the video player would
[19:32:15 CET] <alexpigment> the crop can be derived pretty easily by the way. your original display width is 1024x576 (pal 16x9) and the crop version is 1010x430. simple algebra says that the actual cropped resolution should be 710x430, which means you need to crop 10 from the sides and 50 from the top and bottom (assuming they're completely even)
[19:32:45 CET] <alexpigment> and honestly, for that amount, I wouldn't even worry about the crop. it's going to be letterboxed anyway and there are only a small amount of pixels on the left and right
[19:33:27 CET] <alexpigment> people will say that you waste a lot of bits on the left and right, but I don't think that's really true anymore unless you just have noisy letterboxing or VHS lines (I'm guessing you don't)
[19:34:48 CET] <Stadtpirat> sfan5, just so I understand this correct. The picture is actually 720/576, while stretched by the player to 1024. This means that for that particular DVD, those missing 304 pixels each line are interpolated ANYWAY?
[19:35:14 CET] <alexpigment> 720 is stretched to 1024 for 16x9 PAL DVDs
[19:35:41 CET] <JEEB> (there's some extra details there that I will leave out because it will get newbies just even more confuzzled)
[19:35:49 CET] <alexpigment> because 720x576 is 1.25:1, which is not a standard for anything
[19:35:56 CET] <sfan5> the picture is not 720x576, the stored pixels are
[19:36:14 CET] <Stadtpirat> alexpigment, I want to crop because I hate that the letterbox is a slightly brighter than true black, which makes it visible on my vlc player, when i watch it
[19:36:18 CET] <sfan5> but the pixels are non-square, so for display on a computer it will need to be streched according to the SAR which results in 1024x576
[19:36:31 CET] <JEEB> you can just get confuzzled by teh sar value mentioned here ;) http://www.x264bluray.com/home/576p-pal
[19:36:46 CET] <JEEB> (and yes, that is based on the SD BD spec which bases on the DVD spec)
[19:36:46 CET] <alexpigment> Stadtpirat: ok, it's your call. the vertical resolution isn't stretched, so that's a pretty simple crop
[19:37:07 CET] <Stadtpirat> alexpigment, yeah, but thanks anyway :) helped me understand
[19:38:30 CET] <alexpigment> no problem
[19:39:37 CET] <Stadtpirat> But about the interlaced thing. I don't spot any interlace lines, even in very quick movements. Should I deinterlace the video somehow anyway?
[19:39:56 CET] <alexpigment> Stadtpirat: you mentioned that the letterbox is brighter than true black. you don't have an nvidia graphics card, do you?
[19:40:13 CET] <JEEB> Stadtpirat: if you don't see any stuff in movement then try just adding fieldmatch there just in case
[19:40:16 CET] <JEEB> that should do it
[19:40:16 CET] <sfan5> "bright than true black" could just be vlc being stupid
[19:40:30 CET] <sfan5> also VLC may deinterlace automatically
[19:40:31 CET] <alexpigment> if it's pal, it's proabably 1 field per field. 25% speedup
[19:40:50 CET] <alexpigment> vlc doesn't deinterlace by default still
[19:40:55 CET] <Stadtpirat> alexpigment, nvidia, yes
[19:40:57 CET] <alexpigment> it treats interlacing like it doesn't exist
[19:41:13 CET] <alexpigment> Stadtpirat: it's because VLC is horrible and doesn't know how to deal with Nvidia's color settings
[19:41:19 CET] <sfan5> i see, wasn't sure whether the defaults have changed recently
[19:41:30 CET] <alexpigment> sfan5: not to my knowledge, but i could be wrong
[19:42:02 CET] <Stadtpirat> to be fair, nvidia doesn't know how to deal with color settings.
[19:42:34 CET] <Stadtpirat> okay, i could follow with the sar/dar thing. I don't understand a word about the interlace stuff. I think I'll just leave it at that
[19:42:42 CET] <alexpigment> Stadtpirate: go into the Nvidia Control Panel > Video  > Adjust Video Color Settings > "With the Nvidia Settings" > Advanced and set it to Full (0-255)
[19:43:02 CET] <Stadtpirat> btw, this is my filter now. works really well: -vf "scale=1024:576,setsar=1/1,crop=1010:430"
[19:43:05 CET] <Stadtpirat> alex, its full.
[19:43:33 CET] <alexpigment> Stadtpirate: still, I'd guess VLC is just being dumb. I'd personally use a real media player and confirm whether the letterboxing is the wrong color first
[19:44:09 CET] <JEEB> just use vapoursynth editor or so :P
[19:44:18 CET] <JEEB> vapoursynth uses zimg internally
[19:45:33 CET] <alexpigment> Stadtpirate: PAL video is 25fps interlaced. film is 24fps progressive. Instead of trying to convert that framerate through doubling, they often just speed the movie up by 4% so that 24 turns to 25fps. in this case, each field will be the same, so there won't be any interlacing lines by default. having said that, i'm not sure whether ffmpeg blends the frames by default when converting to progressive or if it drops every other field completely
[19:45:33 CET] <alexpigment> (thereby losing vertical resolution)
[19:46:15 CET] <alexpigment> JEEB would know best on that
[19:47:31 CET] <JEEB> well you've kind of started from the wrong side to begin with
[19:47:45 CET] <alexpigment> me?
[19:47:46 CET] <Stadtpirat> oh god ^^
[19:47:49 CET] <JEEB> you start by opening the content in either AvsP or vapoursynth editor or whatever sane that lets you go through the clip
[19:47:55 CET] <Stadtpirat> alexpigment, the windows 10 video app shows true black
[19:47:55 CET] <alexpigment> oh
[19:47:55 CET] <Stadtpirat> hm
[19:48:12 CET] <alexpigment> Stadtpirat: I assumed so. It's a real media player :)
[19:48:14 CET] <Stadtpirat> okok, ill get the vaporthin :)
[19:48:20 CET] <Stadtpirat> I always thought vlc is really good
[19:48:27 CET] <Stadtpirat> what would you recommend
[19:48:48 CET] <alexpigment> VLC is the worst in almost every aspect. the only benefit to VLC is it plays most everything, even if it doesn't play them correctly
[19:48:50 CET] <JEEB> for video rendering mpv is my recommendation
[19:49:02 CET] <JEEB> alexpigment: VLC is really good with broadcast sources though
[19:49:17 CET] <alexpigment> JEEB: not if they're interlaced (which most are in the US)
[19:49:25 CET] <JEEB> no, I mean with the MPEG-TS layer
[19:49:30 CET] <JEEB> and deint seemed to work the last I checked
[19:49:32 CET] <JEEB> :P
[19:49:43 CET] <JEEB> although I've mostly tested the 3.0 nightlies during the last few years
[19:49:47 CET] <JEEB> because the 2.2 branch is ancient by now
[19:50:17 CET] <Stadtpirat> I'll try mpv, thanks. and I need to go now. I'll check the vaporstuff later. thanks a lot for the explanation. i think you all just wasted your time :D
[19:50:22 CET] <alexpigment> i work primarily with broadcast content and I can confirm that the deterlacing in VLC sucks, because Yadif2x is the best you can do, and it can't perform smoothly on most computers
[19:50:26 CET] <Stadtpirat> in all seriouslyness, thanks, it helped
[19:50:50 CET] <alexpigment> I really like Windows Media Player as a non-fullscreen player, and I like Kodi as a fullscreen player
[19:50:54 CET] <JEEB> alexpigment: oh? never noticed that. I've been dealing with 1080i25/30 stuff (50/60 fields per sec)
[19:51:06 CET] <alexpigment> both of those are due to interlacing and scaling performance
[19:51:08 CET] <JEEB> although as I said I really haven't used vlc 2.2
[19:51:13 CET] <JEEB> in years by now
[19:52:06 CET] <alexpigment> JEEB: in my experience, it takes a beefy system to do Yadif2x without dropping frames. but the other thing is that if you have something that's completely round, VLC will show stairstepping when deinterlacing
[19:52:37 CET] <alexpigment> and damn, if I could figure out what the hell awful scaling is happening with 720x480 SD content, I might actually find more use for it from time to time
[19:53:08 CET] <JEEB> yea the video rendering part is something that was not really up to snuff with 2.2 (no idea about 3.0 where the rewrote a whole crapload of stuff during the N years of development)
[19:53:17 CET] <JEEB> mpv's renderer is the one I have most trust right now
[19:53:53 CET] <alexpigment> i'm using 3.0, but haven't noticed any benefits or improvements in the short time i've used it
[19:53:59 CET] <JEEB> ok
[19:54:02 CET] <JEEB> oh well
[19:54:10 CET] <alexpigment> MPV would be really nice, but the automatic deinterlacing script doesn't work for me
[19:54:13 CET] <JEEB> too bad since the demuxing is pretty good
[19:54:23 CET] <JEEB> I just press 'd' if my content is interlaced
[19:54:34 CET] <JEEB> since yadif with field speed is OK for me
[19:54:37 CET] <alexpigment> and the deinterlacing methods feel subpar
[19:54:48 CET] <JEEB> you could use any of the libavfilter ones
[19:54:51 CET] <JEEB> there's like three or four now
[19:54:58 CET] <JEEB> not sure if DXVA2 deint is usable
[19:55:02 CET] <JEEB> which would use whatever the GPU does
[19:55:16 CET] <alexpigment> DXVA2 would be ideal if i had access to it through MPV
[19:55:18 CET] <alexpigment> maybe that's changed
[19:55:27 CET] <alexpigment> that's what i use in Kodi
[19:55:27 CET] <JEEB> hwdec is there but not sure about deint
[19:55:43 CET] <JEEB> the problem with dxva2 deint is that it's really easy to get whatever the driver decided to /also/ include with that
[19:55:52 CET] <JEEB> random post-processing etc
[19:56:02 CET] <JEEB> will have to check with rossy I guess
[19:56:03 CET] <alexpigment> and honestly, pressing d seems pretty minor, but if almost every single video you play is interlaced, it doesn't seem worth it
[19:56:57 CET] <alexpigment> JEEB: i'm assuming the driver isn't applying a bunch of random crap that makes the video worse (and if it is, I can disable it through a control panel). i'd be ok if it was deint+whatever
[19:57:19 CET] <JEEB> I've dealt with DirectShow and MF and that used to be a complete mess depending on the vendor
[19:57:33 CET] <JEEB> like nvidia auto-enabling color fucking and filtering if you had a "TV" connected
[19:57:48 CET] <JEEB> AMD just had random "color correction and stuff" enabled by default
[19:57:55 CET] <alexpigment> yeah, AMD is bad about fucking with the color
[19:58:02 CET] <JEEB> intel seemed to depend on the driver
[19:58:10 CET] <alexpigment> with nvidia it's just the full/limited thing that's mainly where players don't handle it properly
[19:58:21 CET] <JEEB> nah, this was not related to the full/limited thing
[19:58:27 CET] <alexpigment> intel has its own quirk that i can't recall. i think it's also related to full/limited
[19:58:30 CET] <JEEB> it would actually auto-enagle post-processing
[19:58:43 CET] <JEEB> the full/tv range stuff is separate altogether
[19:59:06 CET] <JEEB> and as someone who had to support a playback package it was a mess
[19:59:13 CET] <alexpigment> i haven't seen post processing stuff be set to anything but neutral, but ymmv
[19:59:14 CET] <JEEB> so mpv's rendering not being affected by any of that BS was just bliss
[19:59:22 CET] <JEEB> oh trust me
[19:59:30 CET] <JEEB> I should pull the darn forum back up
[19:59:35 CET] <JEEB> there was plenty of crap
[19:59:39 CET] <JEEB> from various years, various versions
[19:59:58 CET] <JEEB> as I noted the exact logic they used to or still do changes according to driver versions
[20:00:10 CET] <alexpigment> i mean i trust you fully. i just haven't personally dealt with it
[20:00:24 CET] <alexpigment> anyway, gotta run for a bit
[20:02:33 CET] <JEEB> as an extra even directaudio was not free of bullshit. asus xonar and some other vendor that mimic'd it used to just force-load a filter into directaudio if it was called the usual way
[20:02:45 CET] <JEEB> and it would always apply filtering - even if it didn't know the sample format
[20:03:07 CET] <JEEB> > audio decoder outputs float > forcibly inserted audio filter fscks it up
[20:57:15 CET] <alexpigment> JEEB: yeah, i've seen audio cards do filtering by default. that's one of the reasons I only install drivers via inf files on windows
[20:57:49 CET] <alexpigment> just give me the basics. i don't need a control panel that gives me options for "stadium echo" on my fucking sound card ;)
[20:58:37 CET] <JEEB> I actually found out the registry entry that enabled that crap in the driver and asked in an installer if the user wants to disable that bit
[20:58:57 CET] <JEEB> meanwhile foobar2000 just uses directaudio in some weird-ass manual loading way which conveniently skips the place where those drivers plug in
[20:59:20 CET] <alexpigment> well fortunately audio is pretty simple
[20:59:23 CET] <JEEB> yea
[20:59:38 CET] <JEEB> I think I herped a derp at intel if I recall correctly
[20:59:40 CET] <alexpigment> video, on the other hand, has a lot of things that need to be addressed, otherwise it's wrong
[20:59:55 CET] <JEEB> to find out how I could check if their "added value" filtering was enabled or not
[21:00:22 CET] <JEEB> I don't think I ever got an answer
[21:01:07 CET] <alexpigment> well, it *is* intel. they're way too big to even make time for the little guys
[21:01:18 CET] <alexpigment> "little guys"
[21:01:26 CET] <alexpigment> almost everyone is little to them
[22:05:17 CET] <vush> hello #ffmpeg community, im new in this channel :):(:?
[22:06:26 CET] <therage3> hi
[22:07:57 CET] <vush> what are you up to?
[22:57:46 CET] <SortaCore> JEEB, any idea how to check if an AVCodec is video?
[22:59:17 CET] <JEEB> https://www.ffmpeg.org/doxygen/trunk/structAVCodec.html
[22:59:19 CET] <JEEB> third from top
[23:00:16 CET] <SortaCore> delectable
[23:01:47 CET] <JEEB> ?
[23:21:33 CET] <SortaCore> so MPEG4, are those containers...
[23:21:54 CET] <DHE> if they're part of libavcodec, then no. if they're part of libavformat, then yes
[23:24:58 CET] <SortaCore> I want the user to be able to select a container, video, audio
[23:26:44 CET] <SortaCore> so ideally I can just find all the codecs that were in the ffmpeg static library
[23:28:05 CET] <DHE> there's a codec iterator option, yeah...
[23:31:54 CET] <kepstin> there is, however, no way to tell whether you can put x codec in y container without actually trying to do it :/
[23:39:49 CET] <SortaCore> why not kepstin?
[23:40:16 CET] <kepstin> because the api do to that is not fully implemented, so for most codec/container combinations it just returns "maybe"
[23:42:47 CET] <SortaCore> why it no implemented
[23:42:56 CET] <BtbN> because nobody implemented it
[23:44:22 CET] <SortaCore> why nobody implemented
[23:49:46 CET] <SortaCore> how do I iterate containers?
[23:50:02 CET] <SortaCore> av_oformat_next
[00:00:00 CET] --- Fri Dec 15 2017


More information about the Ffmpeg-devel-irc mailing list