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

burek burek021 at gmail.com
Tue May 24 02:05:01 CEST 2016


[00:00:06 CEST] <furq> tlvb: it shouldn't make any difference for mpegts
[00:04:59 CEST] <tlvb> furq: thankyou :)
[00:10:47 CEST] <tlvb> hm, apparently the .MTS files are not likely exactly mpegts but rather the m2ts container (an extension of mpegts it seems) but I can't see any information on wikipedia that would likely change the answer
[00:24:48 CEST] <FlorianBd> Hi there!
[00:25:16 CEST] <FlorianBd> Is there any known issue of uploading a 6fps video file on youtube? (e.g. some devices would not like it?)
[00:27:33 CEST] <m1dnight_> Hrrm, this streaming stuff is confusing. I have an rpi streaming over http, so that would the transfer protocol, right? But from the command I cant make up the codec and format?
[00:27:48 CEST] <m1dnight_> vlc v4l2:///dev/video0 --v4l2-width 1920 --v4l2-height 1080 --v4l2-chroma h264 --sout '#standard{access=http,mux=ts,dst=0.0.0.0:12345}' <- That is what is streaming the video over http.
[00:28:22 CEST] <m1dnight_> h264 is the codec, http is the protocol, but what is the format? I want to take this stream in on my server, and restream it over.. http I guess?
[00:29:20 CEST] <c_14> >mux=ts
[00:29:55 CEST] <m1dnight_> Disclaimer: Ive been spitting through all kinds of posts/docs the last day but it's just really really overwhelming :)
[00:30:44 CEST] <c_14> mux = muxing (the format), ts = transport stream (short for mpeg-ts i.e. MPEG Transport Stream)
[00:32:25 CEST] <m1dnight_> Hrm, so If I get it correctly this command `avconv -i http://192.168.1.167:12345 -f mpegts http://192.168.1.130:1234` expects a server to be listening on port 1234 for the incoming stream?
[00:32:34 CEST] <m1dnight_> Because I get a connection refused on it.
[00:32:46 CEST] <DHE> FlorianBd: youtube reprocesses videos, so if there's any playback issues youtube should fix it for the version actually played to users
[00:33:13 CEST] <FlorianBd> DHE: right, they're quite advanced after all :) ok thanks
[00:36:18 CEST] <furq> FlorianBd: in my experience youtube won't actually change the framerate
[00:37:05 CEST] <furq> not from 6fps, anyway
[00:37:16 CEST] <furq> i've uploaded a bunch of stuff at 5fps and it shows up at 6fps on youtube
[00:37:45 CEST] <furq> i can't imagine it causing any playback issues though
[00:42:02 CEST] <m1dnight_> Ah, I think Ive got something going, just can't see any video. I have avserver running with the default config (according to the docs) and I have, on the same machine, this running as well: avconv -i http://192.168.1.167:12345 -f mpegts http://localhost:8090/feed1.ffm
[00:42:15 CEST] <m1dnight_> But VLC wont show me anything. When I try to connect I do see the GET commands etc on the logs.
[00:44:30 CEST] <FlorianBd> furq: right, my point was to force them to use a low frame rate. Great then :) thanks
[00:46:36 CEST] <furq> now if only there was some way to convince youtube to stop telling me "we detected your video may be shaky" about a static image
[00:56:17 CEST] <m1dnight_> l/go info
[01:01:10 CEST] <DHE> furq: ever actually said yes, deshake it? I did with a video game video. the new video made me a bit motion sick
[01:02:41 CEST] <furq> i tried it once and it just zoomed it in a bit
[01:02:50 CEST] <furq> and screwed up the white balance
[01:03:38 CEST] <furq> https://www.youtube.com/watch?v=ahN7cXDX6oA
[01:03:44 CEST] <furq> look at how shaky it is
[01:07:56 CEST] <DHE> oh wow, I was expecting at least some scanline noise... yeah, good job youtube..
[01:08:11 CEST] <DHE> SOMETHING to "justify" the alert
[01:08:30 CEST] <furq> i can at least understand it bugging me about bad cropping when i have a logo on a black background
[01:08:40 CEST] <furq> but that one's just baffling
[01:55:08 CEST] <m1dnight_> Another question.. I switched to ffmpeg/ffserver from avconv/avserver and now I keep getting the "503 server too busy" error from ffserver.
[01:55:19 CEST] <m1dnight_> Ive tried all the google results from the first page but none really had a fix.
[01:55:36 CEST] <m1dnight_> I have increased the tempfile size to 1g, moved it to my home directory and whatnot. Nothing seems to work.
[01:56:22 CEST] <m1dnight_> And the stats page of ffserver shows that no bandwidth is in use at all..
[01:56:41 CEST] <m1dnight_> http://call-cc.be:8090/stat.html <- see there
[02:05:06 CEST] <m1dnight_> Hrm, when I try to use mpegts it just gives a broken pipe error.
[02:05:17 CEST] <m1dnight_> Ill give it another shot tomorrow :)
[02:51:39 CEST] <Ben321> I notice FFMPEG seems to have a bug in it. I'm using the following command line with FFMPEG in order to set it up to stream raw BGRA format frames via pure TCP/IP (not HTTP) from a webcam. FFMPEG acts as a listening server, while another program I wrote is the TCP client.
[02:52:10 CEST] <Ben321> ffmpeg -rtbufsize 5M -f dshow -framerate 5 -video_size 320x240 -i video="Philips SPC 900NC PC Camera" -f rawvideo -pix_fmt bgra -listen 1 tcp://127.0.0.1:1234
[02:54:59 CEST] <Ben321> But there's a problem with it. FFMPEG seems to feel the compulsive need serve the next piece of data, the INSTANT that the client software received the previous piece of data. Now my TCP client software receives the data as soon as the server makes it available. This causes a problem. Between frames that the webcam produces, there's no data for FFMPEG to serve. The result is that FFMPEG...
[02:55:01 CEST] <Ben321> ...DUPLICATES the previous frame, in order to to keep up with the rule it tries to follow "as soon as the client has received the data, send new data".
[02:55:57 CEST] <Ben321> How do I PREVENT FFMPEG from exhibiting this behavior? How to I keep FFMPEG synced with the webcam, so that it ONLY attempts to serve pixel data, when the webcam makes it available, and between frames sits idle waiting for the next frame from the webcam?
[02:56:40 CEST] <Ben321> I am trying to AVOID having duplicate frames being sent over TCP. Please help.
[03:05:56 CEST] <__jack__> Ben321: maybe -re
[03:06:42 CEST] <__jack__> Ben321: not sure, didn't really understood your stuff :p
[03:55:42 CEST] <lesderid> I'm having this strange error with initialising a codec context for PNG encoding: https://ghostbin.com/paste/k8muw
[03:57:46 CEST] <lesderid> can't find much information about the error, but I've found code snippets online that are very similar to my code, so I'm not sure why mine isn't working correctly
[05:52:46 CEST] <kzisme> I'm currently trying to take some photos and turn them into a video I keep getting "ould not  find file with path DSC_%d.jpg and index in the range 1-5 - no such file or dir
[05:53:03 CEST] <kzisme> I'm on windows and I opened a command prompt in the folder where I have all of my photos
[05:53:31 CEST] <kzisme> Any idea how I could fix this?
[05:58:15 CEST] <white> hi yes hello
[05:58:32 CEST] <white> why on earth is this not working:
[05:58:32 CEST] <white> ffmpeg -i stop.png -i stop.mp4 -filter_complex "[1:v]colorkey=0x3BBD1E:0.5:0.0[ckout];[0:v][ckout] overlay [out]" -map "[out]" -codec:a copy output.mp4
[05:58:37 CEST] <white> it does things like this:
[05:58:47 CEST] <white> frame=    3 fps=2.2 q=-1.0 Lsize=      72kB time=00:00:00.04 bitrate=14821.8kbits/s dup=0 drop=96
[05:58:52 CEST] <white> it drops all the frames except for 3
[07:18:57 CEST] <dedondesta> hello
[07:19:42 CEST] <dedondesta> anyone here?
[07:22:29 CEST] <dedondesta> can anyone please help me converting this command: ffmpeg -f avfoundation -i ":0" -c:a libvo_aacenc -b:a 64k -ac 2 -y 1.wav    to version of ffmpeg 3.0 and higher?
[08:00:42 CEST] <carli> Hi, have one question, if someone get the same problem and know how to solve it. I stream to RTMP server, all works just fine, I only copy mp4 to flv stream. The problem is that sometime stream finises before the end of file?
[08:02:20 CEST] <carli> Last time stream finished 20-30 seconds before the end of video, just droped. Are there any signals that I need to check, or it's maybe just a stream provider thing?
[09:12:25 CEST] <dedondesta> can anyone please help me converting this command: ffmpeg -f avfoundation -i ":0" -c:a libvo_aacenc -b:a 64k -ac 2 -y 1.wav    to version of ffmpeg 3.0 and higher?
[09:16:15 CEST] <Fyr> guys, I need to plot bitrate (bitrate (Mbps)/time (s) plot).
[09:16:21 CEST] <Fyr> what tool should I use?
[09:16:29 CEST] <Fyr> can I use FFMPEG for that purpose?
[09:17:42 CEST] <Fyr> right now I'm encoding a TS and it's gving output: XXXXXX kB time=1:00:00 bitrate = 500 kbps dup,drop,speed
[09:18:02 CEST] <Fyr> I need this, but as a XY file.
[09:19:03 CEST] <Fyr> something like the following:
[09:19:03 CEST] <Fyr> http://smg.photobucket.com/user/Anamnesis/media/GINGER_SNAPS_2_zps47f20b2a.png.html
[10:34:21 CEST] <m1dnight_> FINALLY GOT IT WORKING :)
[10:34:27 CEST] <m1dnight_> Not its time to tweak :p
[10:38:53 CEST] <dedondesta> can anyone please help me converting this command: ffmpeg -f avfoundation -i ":0" -c:a libvo_aacenc -b:a 64k -ac 2 -y 1.wav    to version of ffmpeg 3.0 and higher?
[10:39:03 CEST] <dedondesta> m1dnight_: can you help?
[10:39:21 CEST] <dedondesta> in newer version they removed libvo_aacent
[10:41:08 CEST] <m1dnight_> I have no idea, sorry
[10:41:12 CEST] <m1dnight_> Im a total noob :D
[10:41:22 CEST] <m1dnight_> What is the error you get..?
[11:00:05 CEST] <dedondesta> m1dnight_: The native FFmpeg AAC encoder has been stable since FFmpeg 3.0. If you
[11:00:08 CEST] <dedondesta> were using libvo-aacenc or libaacplus, both of which have been dropped in
[11:00:10 CEST] <dedondesta> FFmpeg 3.0, please consider switching to the native encoder (-c:a aac),
[11:00:13 CEST] <dedondesta> fdk-aac (-c:a libfdk_aac, ffmpeg needs to be installed with the
[11:00:15 CEST] <dedondesta> --with-fdk-aac option), or faac (-c:a libfaac, ffmpeg needs to be
[11:00:18 CEST] <dedondesta> installed with the --with-faac option).
[11:06:34 CEST] <BtbN> so do what the output tells you.
[11:06:49 CEST] <dedondesta> BtbN: i need wav as an output
[11:07:15 CEST] <BtbN> and why are you trying to use an aac encoder then?
[11:07:29 CEST] <dedondesta> am i?
[11:07:33 CEST] <BtbN> yes.
[11:07:48 CEST] <dedondesta> BtbN: thats my command ffmpeg -f avfoundation -i ":0" -c:a libvo_aacenc -b:a 64k -ac 2 -y 1.wav
[11:14:14 CEST] <dedondesta> m1dnight_: the exact error is: Unknown encoder 'libvo_aacenc'
[11:14:44 CEST] <dedondesta> it works in versions prior to 3.0
[11:15:10 CEST] <dedondesta> i need the same result but in ffmpeg 3.0 and higher
[11:15:27 CEST] <dedondesta> it = this command
[11:16:52 CEST] <dedondesta> BtbN: i'm a total noob in this so i'm not sure if i were using acc or not
[11:17:26 CEST] <BtbN> this command never worked. And even if it didn't error, it certainly never did what you expected.
[11:17:30 CEST] <dedondesta> I just know that encoder 'libvo_aacenc' is droped and i need to use something else
[11:17:42 CEST] <BtbN> you don't need to use any encoder for wav.
[11:17:47 CEST] <BtbN> It's uncompressed pcm.
[11:20:46 CEST] <dedondesta> BtbN: So probably i just need to convert this command: ffmpeg -f alsa -ac 1 -ar 44100 -i hw:0 -t 30 out.wav      to use Mac OS's avfoundation, right?
[11:21:16 CEST] <BtbN> If that's what you want to do, yes.
[11:22:28 CEST] <dedondesta> BtbN: something like:  ffmpeg -f avfoundation -i ":0" -t 30 out.wav   ?
[11:22:43 CEST] <BtbN> No idea how avfoundation works, I don't use Macs.
[11:31:38 CEST] <dedondesta> is it possible to set bitrate for this command? ffmpeg -f alsa -ac 1 -ar 44100 -i hw:0 -t 30 out.wav
[11:33:00 CEST] <BtbN> wav is still uncompressed
[11:36:33 CEST] <dedondesta> BtbN: something in this command: ffmpeg -f avfoundation -i ":0" -c:a libvo_aacenc -b:a 64k -ac 2 -y 1.wav   made it so that 10 seconds of recording was only 84 kb and not 2 mb as with ffmpeg -f alsa -ac 1 -ar 44100 -i hw:0 -t 30 out.wav
[11:36:49 CEST] <BtbN> yes, because you encoded it as aac..
[11:44:53 CEST] <dedondesta> BtbN: figured out, thanks for your help
[12:10:53 CEST] <m1dnight_> My guess is the obvious codec that is misaing
[12:11:15 CEST] <m1dnight_> Oh somebody is already on it.  Nvm.
[12:21:07 CEST] <flying_toaster> hi there
[12:21:38 CEST] <flying_toaster> Do someone know here how I can use ffmpeg executable to pass options to the s302m decoder ?
[12:22:10 CEST] <c_14> ffmpeg -h decoder=s302m
[12:22:39 CEST] <flying_toaster> ok, sorry for aksing such a dumb question
[12:22:42 CEST] <flying_toaster> thanks a lot
[12:40:26 CEST] <jonascj> Does it make sense to reencode ACC mp4a to mp3? It is an audiobook I want to store, originally it comes as "Stream #0:0(eng): Audio: aac (mp4a / 0x6134706D), 22050 Hz, stereo, fltp, 62 kb/s"
[12:49:50 CEST] <ritsuka> I see no reason to reencode it
[12:51:07 CEST] <jonascj> so just copy the audio if I want to split it into chapters?
[12:51:44 CEST] <c_14> The only reason to reencode would be if whatever you're going to be playing it one doesn't support AAC (which these days won't be very much)
[12:51:56 CEST] <c_14> So, yes
[13:11:24 CEST] <c_14> *on
[14:34:25 CEST] <lesderid> fwiw, I think I found what was wrong with my code. a mismatch between the libraries and the headers >.>
[15:03:07 CEST] <Fyr> why does frame_bitrate equal to frame_size * frame_rate, while frame_size == pkt_size * 8 / 1000 ?
[15:03:30 CEST] <Fyr> I don't understand actually pkt_size * 8 / 1000.
[15:04:05 CEST] <BtbN> looks like bytes to kilobit to me.
[15:04:22 CEST] <Fyr> and not 1024?
[15:04:52 CEST] <furq> that's a kibibit
[15:05:05 CEST] <Fyr> I thought if one needs to convert bytes into kbytes, he should divide it into 1024.
[15:05:18 CEST] <furq> ffmpeg uses si prefixes
[15:05:56 CEST] <iive> bitrate is always in power of 10
[15:07:13 CEST] <Fyr> ok, how to convert information from ffprobe output, pkt_pts_time and pkt_size into bitrate/time?
[16:06:45 CEST] <Adrien2002> Hello there
[16:11:35 CEST] <Adrien2002> I'm trying to set up a ffserver on a distant machine but when I stream to it, it suddently stops with a conversion failed. I have no idea why, I'm not video expert at all. I can paste server and client config file if you wish to check. I use the same script as the one I use for Twitch with address changed of course
[17:57:28 CEST] <yagiza> Hello!
[17:58:16 CEST] <Fyr> hey!
[17:59:40 CEST] <yagiza> Can any1 tell me meaning of value, returned by swr_get_delay() routine? What should I do with it?
[18:02:04 CEST] <pfelt> DHE: you around?
[18:33:45 CEST] <Zelmoon> Hi, is the Sample_AES encryption possible to decrypt with ffmpeg yet?
[18:35:11 CEST] <c_14> Don't think so
[18:35:48 CEST] <Zelmoon> Ah that's pretty sad then. Got a few files I would like getting, but seems like the encryption is ruining that party then
[19:20:57 CEST] <DHE> pfelt: ???
[19:27:42 CEST] <pfelt> DHE: had a question on your mpeg packet metering app if i could?
[19:28:11 CEST] <DHE> sure
[19:28:49 CEST] <pfelt> you read in the data and buffer it for output.  are you doing that multithreaded so you can ensure you aren't blocking either end?
[19:29:31 CEST] <pfelt> mine right now is just hard coded on rate and reads from a file at the right speed, but i'll need to modify it for live stream
[19:32:32 CEST] <DHE> I ended up doing that, yes. just for ease of coding. one input thread, one output thread
[19:34:34 CEST] <pfelt> ok.  that's what i was headed towards too.  simple mutex based fifor
[19:34:51 CEST] <pfelt> cool.  thx DHE !
[19:35:25 CEST] <DHE> heh. yeah I have a small collection of MPEG-TS applications
[21:40:37 CEST] <fusevagio> why would I be getting `Unrecognized option 'tile-columns'.`? https://bpaste.net/show/bed3f74883fd
[21:43:21 CEST] <wallbroken> hi
[21:43:38 CEST] <wallbroken> how to rotate a .mov video without scaling it? in lossless mode?
[21:44:50 CEST] <fusevagio> wallbroken: you're probably looking for the rotate filter combined with -codec:video copy
[21:46:39 CEST] <fusevagio> but it's most likely going to fail because rotating without reencoding is possible only when using some particular codecs
[21:46:44 CEST] <fusevagio> see this: http://stackoverflow.com/questions/25031557/rotate-mp4-videos-without-re-encoding
[21:51:53 CEST] <Fyr> guys, is there a big difference between AAC and AC-3? I've downloaded a torrent which name contains AC-3, but found out that mediainfo says that it has AAC instead.
[21:52:04 CEST] <wallbroken> fusevagio, and if i want to scale, do i need to reencode?
[21:52:37 CEST] <fusevagio> I can see libvpx listed in `ffmpeg -encoders` and also it was built with --enable-libvpx but it says libvpx-vp9 is not an recognized encoder, anyone's got a clue what's going on?
[21:52:46 CEST] <fusevagio> wallbroken: probably
[21:53:08 CEST] <fusevagio> well, actually I'm pretty sure you have to
[21:53:16 CEST] <wallbroken> fusevagio, do you know why iphone does not allow to set resolution when recording videos?
[21:53:34 CEST] <fusevagio> never had an iphone, sorry
[21:54:21 CEST] <wallbroken> maybe the camera sensor gets the stream at the same costant resolution, and reducing it maybe will need an huge load on the CPU
[21:55:34 CEST] <fusevagio> I would say that's unlikely, have you checked the settings thoroughly?
[21:56:03 CEST] <fusevagio> I've got an android phone and it allows me to choose from a couple of different resolutions, iphones should be no different
[21:56:26 CEST] <wallbroken> yes i just checked
[21:56:28 CEST] <wallbroken> and is not possible
[21:56:44 CEST] <wallbroken> i am not sure that i can rotate the video without reencode
[21:56:50 CEST] <wallbroken> maybe i should just try?
[21:56:51 CEST] <fusevagio> http://www.tech-recipes.com/rx/56843/change-video-recording-resolution-iphone/
[21:57:09 CEST] <TD-Linux> Fyr, AAC is much better than AC3
[21:57:19 CEST] <fusevagio> first try only altering the rotation related metadata
[21:57:30 CEST] <Fyr> TD-Linux, ok but is there a difference in byte sequence?
[21:57:42 CEST] <TD-Linux> yes they are totally different f ormats
[21:58:20 CEST] <Fyr> alright
[21:58:51 CEST] <furq> fusevagio: it's possible to build libvpx without vp9 support, so maybe that's happened
[21:59:09 CEST] <furq> i seem to remember ffmpeg not compiling when i tried to disable vp8 in libvpx though
[21:59:17 CEST] <TD-Linux> also the ABI broke again recently
[21:59:36 CEST] <TD-Linux> make sure you have libvpx 1.5.0 at least
[21:59:59 CEST] <wallbroken> fusevagio, thank you
[22:00:09 CEST] <fusevagio> furq: that seems to be the case, I'm getting these builds at Zeranoe and a different build from March has libvpx-vp9
[22:00:22 CEST] <fusevagio> wallbroken: but have you succeeded?
[22:00:26 CEST] <furq> weird
[22:00:39 CEST] <furq> i can't imagine why he'd disable vp9
[22:00:41 CEST] <furq> not on purpose, anyway
[22:00:50 CEST] <wallbroken> fusevagio, yes, i solved, but right now i need to rotate the past videos
[22:00:59 CEST] <wallbroken> withut scaling
[22:01:08 CEST] <wallbroken> the only thing i need is without reencoding
[22:02:01 CEST] <Fyr> guys, when uploading video onto Youtube, does it always re-encode? or it can keep if it's already encoded h264/aac?
[22:02:08 CEST] <furq> it always reencodes
[22:02:11 CEST] <fusevagio> Fyr: always reencode
[22:02:18 CEST] <Fyr> =(
[22:02:23 CEST] <fusevagio> this is why I always upload my audio as flac
[22:02:30 CEST] <Fyr> fusevagio, is there a reason to?
[22:02:37 CEST] <furq> youtube didn't support flac last time i tried it
[22:02:38 CEST] <fusevagio> but won't be going for lossless video because the bandwidth won't allow me
[22:02:42 CEST] <furq> that was ~4 years ago though
[22:03:05 CEST] <fusevagio> Fyr: I mostly do that to keep the audio quality as good as possible in the future
[22:03:23 CEST] <fusevagio> youtube can produce new encodes of old clips
[22:03:42 CEST] <furq> yeah i believe they keep the original source clip around
[22:07:05 CEST] <fusevagio> in case anyone needs this: lowest bitrate for libopus in cbr mode is 2533.5 bits per second and in the vbr and cvbr modes it's 2400 bits per second
[22:07:19 CEST] <fusevagio> so you don't have to search yourselves
[22:14:32 CEST] <wallbroken> can you suggest to me the line to use to rotate of 90 degrees without reencoding ?
[22:18:28 CEST] <furq> without reencoding, use -c copy -metadata:s:v:0 rotate=90
[22:19:10 CEST] <furq> if you want to reencode then use -vf transpose=1
[22:19:22 CEST] <furq> or -vf transpose=0 to rotate 90 degrees anticlockwise
[22:19:51 CEST] <furq> changing the metadata is only supported in certain containers and by certain players, so you might need to reencode
[22:20:23 CEST] <furq> er, that should be -vf transpose=2 to rotate 90 degrees anticlockwise
[22:24:32 CEST] <wallbroken> no
[22:24:48 CEST] <wallbroken> i haven't asked how to rotate in metadata
[22:24:55 CEST] <wallbroken> i need to rotate the entire video
[22:25:03 CEST] <furq> that is how you rotate the video without reencoding
[22:25:36 CEST] <furq> you set a flag in the metadata which tells the player to flip the video during playback
[22:25:42 CEST] <wallbroken> changing the metadata flag does not mean rotate the video
[22:25:54 CEST] <furq> then you need to reencode
[22:26:01 CEST] <wallbroken> no!
[22:26:15 CEST] <wallbroken> have you ever used a jpeg?
[22:26:19 CEST] <wallbroken> you can rotate it without reencoding
[22:26:26 CEST] <wallbroken> and not using the metadata flag
[22:26:52 CEST] <wallbroken> a jpeg is composed by standard squared
[22:27:01 CEST] <wallbroken> you can change their position
[22:27:08 CEST] <wallbroken> without reencoding
[22:27:11 CEST] <TD-Linux> that's not possible for most video formats due to intra prediction
[22:27:28 CEST] <furq> well that's great if you have an mjpeg stream
[22:27:33 CEST] <furq> it's not possible for most other codecs though
[22:27:39 CEST] <wallbroken> ok
[22:27:48 CEST] <wallbroken> so the only way is use metadata?
[22:28:02 CEST] <furq> i'm not sure if that's supported by mov, you might need to remux to mp4
[22:28:16 CEST] <wallbroken> that's what?
[22:28:17 CEST] <wallbroken> metadata?
[22:28:19 CEST] <furq> yeah
[22:28:24 CEST] <wallbroken> yes is supported
[22:28:31 CEST] <wallbroken> but vlc fails reading it
[22:28:37 CEST] <wallbroken> video is stretched
[22:28:42 CEST] <wallbroken> and not rotated
[22:28:53 CEST] <furq> did you record this off a phone
[22:29:07 CEST] <furq> it might already have the rotate flag set, in which case you just want to remove it
[22:29:26 CEST] <wallbroken> yes, the phone sets it automatically
[22:29:33 CEST] <wallbroken> but vlc does not use it well
[22:29:39 CEST] <furq> try -metadata:s:v:0 rotate=0
[22:29:45 CEST] <Mavrik> VLC indeed doesn't listen to rotation flag.
[22:29:48 CEST] <furq> oh really
[22:29:52 CEST] <furq> never mind then
[22:29:53 CEST] <Mavrik> Which messes up all videos from phones.
[22:30:06 CEST] <Mavrik> We had that issue as well, had to reencode -_-
[22:30:13 CEST] <furq> how dumb
[22:30:24 CEST] <furq> i was going to say "i expect better from vlc" but that would be a lie
[22:30:49 CEST] <wallbroken> Mavrik, looks like it reads the rotation flag
[22:30:55 CEST] <wallbroken> but it uses it wrongly
[22:54:41 CEST] <vade> can someone describe to me when and why AV_TIME_BASE and AV_TIME_BASE_Q would be used rather than a existing time base of a codec or stream ?  Im trying to parse some of the timestamp paths and conversions from stream to codec to stream in FFMPEG :)
[23:01:11 CEST] <vade> ah. I see
[23:01:28 CEST] <vade> its a high resolution time base one can use to sync audio and video or whatever streams
[23:01:49 CEST] <JEEB> was this enlightenment brought by the documentation or reading the fabulous(?) code?
[23:02:10 CEST] <vade> haha. Stack Overflow. I didnt see it in the docs
[23:06:32 CEST] <vade> honestly JEEB I have a hard time following all of the pts/dts and duration branches and why they occur in FFMPEG.c, which is why I was lost on its use
[23:06:49 CEST] <JEEB> ffmpeg.c is a mess
[23:07:00 CEST] <vade> I didnt want to say it, but, yea
[23:07:18 CEST] <JEEB> like, libavformat supports dynamic finding of streams
[23:07:20 CEST] <vade> I mean, its handling a hell of a lot of edge cases
[23:07:26 CEST] <JEEB> what does ffmpeg.c do?
[23:07:33 CEST] <JEEB> "lemme skip this and just log it"
[23:08:04 CEST] <JEEB> yes and it also contains a heckload of hacks because people didn't have time or didn't want to properly implement something
[23:08:17 CEST] <vade> is there a better, or shall I say, more modern best practice of time base adjustments from demux, decode, encode and mux ?
[23:08:37 CEST] <vade> yea, its tricky with Open Source / time management and also supporting formats that inherently make different assumptions
[23:10:21 CEST] <JEEB> usually after decoding you have the correct timestamps for each input packet, container timestamps are DTS-ordered (for obvious reasons)
[23:11:05 CEST] <JEEB> with b-frames there's a reordering that happens during the decoding process
[23:12:50 CEST] <JEEB> also this reminds me that some demuxers fuck up timestamps and expect you to decode things... ugh my head hurts
[23:13:09 CEST] <vade> yea. I totally get that. My use case right now is, im on an amazon G2 instance, I render some stuff / synthesize some frames in GL and send them to an encoder. I also might decode a selection of frames after doing some CV detection for black frames, so I only decode a time-range of one source
[23:13:30 CEST] <vade> and then all of that gets sent to an encoder that needs to deduce how to mux it (and also sync audio)
[23:13:36 CEST] <vade> fortunately im only MP4, not any muxer
[23:14:08 CEST] <JEEB> muxers generally handle timestamps right because you're feeding them
[23:14:10 CEST] <vade> but its still tricky for me since depending on frame rate, I get wildly different time bases for decode vs encode and in the streams and codecs too. I also have to do some normalization, etc.
[23:14:27 CEST] <vade> so you just feed them PTS monotonically and dont worry about duration?
[23:14:47 CEST] <JEEB> if you have a duration available that can be set I guess
[23:15:00 CEST] <JEEB> I would guess it then fills the duration field in the container from the different PTS values
[23:15:19 CEST] <JEEB> (you can use L-SMASH's boxdumper to dump a text version of what's in the container)
[23:15:21 CEST] <vade> well, this is for broadcast, so I need to ensure frame boundaries are exact, and that I dont mess up durations :X
[23:15:39 CEST] <vade> yea, I think you mentioned that to me previously. I have it here
[23:16:26 CEST] <JEEB> I think martin lately worked on improving various parts of movenc although it could be used before as well
[23:16:48 CEST] <JEEB> although he's usually pushing things to libav and then they generally got merged into FFmpeg with the usual merges
[23:17:15 CEST] <JEEB> that said, FFmpeg is so awesome that some people decide to bully people out of merging because they dislike merging Libav things
[23:17:29 CEST] <JEEB> so I'm not sure if those improvements will ever land in FFmpeg :P
[23:18:51 CEST] <vade> :X
[23:18:52 CEST] Action: vade sighs
[23:19:26 CEST] <vade> Strangly this makes me appreciate AVFoundation even more, for all its lacking, it just works and is super clean and conceptually organized well
[23:19:38 CEST] <vade> *strangely
[23:21:47 CEST] <JEEB> I've seen DirectShow and I just want to get as far from it as possible
[23:22:08 CEST] <vade> hahah. Ive not had the joy yet, but a colleague has said similar things
[00:00:00 CEST] --- Tue May 24 2016


More information about the Ffmpeg-devel-irc mailing list