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

burek burek021 at gmail.com
Fri Jun 17 02:05:01 CEST 2016

[00:05:04 CEST] <CoJaBo> spirou: I get that error with every possible option and input format lol
[00:05:26 CEST] <CoJaBo> I think it's just an ffmpeg bug?
[00:10:13 CEST] <spirou> another thing, when I have convert a video to have half framerate 25fps instead of 50fps, wouldn't it be half amount of frames in the new file?
[00:11:40 CEST] <spirou> (when I looked for show size parameters for ffprobe I stumbled upon something that shows number of frames ffprobe  -show_streams -count_packets -count_frames and it show  nb_frames=112 for the new file and nb_frames=220 for the old)
[00:11:55 CEST] <spirou> not important, just a bit strange :)
[00:22:17 CEST] <Regda> hm seems to be the combination of -loop with shortest or map will do that :/
[00:40:17 CEST] <swain> How can I fit a video to a certain size, but not upscale it? I've checked out this post: https://superuser.com/questions/566998/how-can-i-fit-a-video-to-a-certain-size-but-dont-upscale-it-with-ffmpeg but nothing seems to work.
[00:40:41 CEST] <swain> tried using -filter_complex "scale=iw*min(1\,min(1280/iw\,720/ih)):-1"
[00:40:50 CEST] <hyponic> I have an mpegts stream with teletext subtitles. i would like to encode the stream with dvb_subtitles instead. can i encode the teletext subtitles to something else?
[00:44:21 CEST] <spirou> hyponic: I suppose you would use the  -scodec   parameter somehow
[00:45:14 CEST] <hyponic> spirou haven't been able to figure out yet
[00:52:11 CEST] <spirou> swain: something like   -vf scale=min(iw,1280):-1  you mean?,
[00:53:26 CEST] <spirou> swain: what are you using min twice?
[00:54:36 CEST] <swain> @spirou I'm honestly at a loss with filters. Would -vf scale=min(iw,1280):-1  only downscale if the width is larger than 1280?
[00:55:56 CEST] <spirou> I haven't really used it, but my guess is that min(iw,1280) would return the smallest number of iw (that is the input files width) and 1280
[00:57:14 CEST] <spirou> and -1 on height is to make sure to keep the the same x:y ratio that it have, so would be same as input height (ih) if iw is not changed
[00:58:25 CEST] <swain> Let me give it a try :D
[00:58:29 CEST] <swain> Thanks a ton for your input
[00:58:35 CEST] <swain> been tearing my hair out
[00:58:53 CEST] <spirou> swain:  I think the maybe the complicated stuff they talk on the webpage is for make sure it works even for vertical oriented files... it you don't have any video that is higher than wide it shouldnn't be a problem
[00:59:29 CEST] <swain> Yea i shouldn't I'm building a test command right now
[00:59:33 CEST] <swain> I'll let you know how it goes
[01:02:00 CEST] <spirou> Good thing you asked about it though, a "make sure all these hundreds of files are never larger than 720P but don't shrink them otherwise" command could be nice to have
[01:03:24 CEST] <swain> seriously ! Its a pretty big issue for me at the current moment
[01:03:40 CEST] <swain> This one is almost done so i have my fingers crossed
[01:03:47 CEST] <spirou> :)
[01:09:04 CEST] <spirou> I'm quite a newbie myself, and was about to push a whole lot of files downto half resolution, half framerate, and then something really small filesize too (I'm not sure what to set for that), but maybe I should somehow check that they all are the resolution (and orientation) that I think they are
[01:10:59 CEST] <swain> @spirou so far so good ! tested on a high res clip and worked
[01:11:04 CEST] <swain> Now testing a low res "D
[01:12:54 CEST] <swain> @spirou YOU ARE AMAZING
[01:12:58 CEST] <swain> Thank you ;D
[04:52:43 CEST] <CoJaBo> so this is.. curious; I'm transcoding a stream from a live source, and am getting a faster-than-realtime "speed". Has the latest build added a "see into the future" function? >_>
[05:57:51 CEST] <Guest35> Hi there ffmpeg experts, is the videotoolbox decoder supposed to be working on iOS in v3.0.2? I've been trying to use it (programmatically), with no luck.
[05:58:24 CEST] <Guest35> When I call videotoolbox_default_init, the call to VTDecompressionSessionCreate is failing with error code kVTVideoDecoderMalfunctionErr.
[06:01:14 CEST] <Guest35> Which in turns results in a EINVAL error code
[07:23:31 CEST] <Fyr> I have a corrupted video file. is it possible to fix it somehow?
[09:05:44 CEST] <CoJaBo> Fyr: Depends on the format and how it was corrupted
[09:06:16 CEST] <CoJaBo> If it's webm, and the middle was cut out, it is looking more and more like "not a chance in hell" is the answer. :/
[09:06:29 CEST] <CoJaBo> (unless anyone does know a way, which I'd love to hear >_>)
[09:19:12 CEST] <Fyr> CoJaBo, MPEG, AC-3.
[09:19:23 CEST] <Fyr> it's a DVD video.
[09:19:46 CEST] <Fyr> the SD card seems to be overheated once or twice.
[09:22:44 CEST] <CoJaBo> Fyr: ..what container tho? .MPG?
[09:22:49 CEST] <Fyr> VOB
[09:23:28 CEST] <CoJaBo> Those are usually pretty durable..
[09:23:40 CEST] <CoJaBo> What's the problem with it?
[09:23:55 CEST] <Fyr> some parts are absent.
[09:23:57 CEST] <Fyr> =(
[09:24:03 CEST] <Fyr> (parts of the files)
[09:26:37 CEST] <CoJaBo> yeh, any bit that's completely missing won't play, but you can usually play everything else
[09:27:20 CEST] <CoJaBo> With MP4, even the loss of a few KB off then end will doom the file; it won't play, and all the time and effort in the world usually cannot recover anything from it
[09:27:57 CEST] <Fyr> CoJaBo, ok, how does the repairing go? I need to remux it?
[09:28:22 CEST] <CoJaBo> Pretty much, I think
[09:47:12 CEST] <Eylith> Hi !
[09:54:46 CEST] <Fyr> CoJaBo, ffmpeg reports:
[09:54:46 CEST] <Fyr> [matroska @ 000000000056f9c0] Can't write packet with unknown timestamp
[09:54:52 CEST] <Eylith> I'm working on a commercial product (CAD), and I'm looking for "dumping" OpenGL frames into a video
[09:54:53 CEST] <Fyr> but the player can play it.
[09:55:24 CEST] <Eylith> Thing is, I'm not sure I can use FFmpeg with its license, and i'm not an english native
[09:55:56 CEST] <Eylith> any advice ?
[09:56:00 CEST] <CoJaBo> Fyr: Yeh, you have to have ffmpeg correct the timestamps; tho I forget the option to do that..
[09:57:44 CEST] <CoJaBo> Eylith: You can pipe the output to ffmpeg
[09:58:32 CEST] <Eylith> CoJaBo: yes FFmpeg might be the solution here, but I can't redistribute the FFmpeg code, that kind of thing
[09:59:05 CEST] <furq> you can't link with the ffmpeg libs unless you redistribute the ffmpeg source
[09:59:33 CEST] <Eylith> furq: what if I ship the exe and use it ?
[09:59:40 CEST] <furq> same thing
[09:59:46 CEST] <Eylith> :'(
[10:00:00 CEST] <furq> what's the problem with redistributing the ffmpeg source
[10:00:18 CEST] <Eylith> I'm not sure, but we don't have anything to redistribute code actually
[10:00:27 CEST] <furq> just a .tar.gz is fine
[10:00:41 CEST] <furq> as long as you host it in the same place as your binaries, and it's the same version you used
[10:00:55 CEST] <Eylith> that's good to know, thank you
[10:01:54 CEST] <furq> other than that you pretty much just need to make sure that your ffmpeg wasn't built with --enable-gpl
[10:02:02 CEST] <furq> assuming you don't want to release your application source code
[10:02:46 CEST] <furq> you probably also want to explicitly disable any decoders and encoders you're not using to minimise the attack surface for patent trolls
[10:06:02 CEST] <Eylith> furq: ok
[10:06:43 CEST] <Eylith> furq: Im not even sur of how it's work: there's no software patent in EU
[10:06:57 CEST] <Eylith> but I guess we could still be sued if we sell the product in the US
[10:07:04 CEST] <furq> that's my understanding of it
[10:07:04 CEST] <CoJaBo> Patents have nothing to do with license
[10:07:22 CEST] <furq> no, but it's still an issue for commercial vendors who are using ffmpeg
[10:07:31 CEST] <CoJaBo> But yeh, you still have to worry about both
[10:07:32 CEST] <Eylith> decoder/encoder has to do with patent right ?
[10:07:41 CEST] <furq> yeah
[10:07:44 CEST] <furq> particularly encoders
[10:08:03 CEST] <CoJaBo> If you make a lot of money off an app, you will get sued, period.
[10:08:17 CEST] <furq> right, so it would be wise to make sure you don't lose
[10:09:32 CEST] <Eylith> this is too complicated and too boring \o/
[10:09:45 CEST] <Eylith> i'll ask the big chief about it
[10:09:47 CEST] <furq> what are you actually doing with the video
[10:09:50 CEST] <Eylith> thank you guys :)
[10:10:03 CEST] <furq> you might be able to completely avoid patented codecs
[10:10:17 CEST] <furq> in which case you should be fine as long as you're lgpl compliant
[10:10:28 CEST] <Eylith> the goal is just to record an openGL scene
[10:10:52 CEST] <Eylith> i've done a prototype already
[10:11:46 CEST] <furq> that sounds like you can make it work without invoking the ghost of mpeg-la
[10:13:32 CEST] <Eylith> furq what do y ou mean ?
[10:14:47 CEST] <furq> i mean you can probably avoid patent-encumbered codecs
[10:16:25 CEST] <Eylith> I'm soo ignorant in that field, I'll do some research about codec/patent
[10:16:34 CEST] <Eylith> video is kindda new to me
[10:19:18 CEST] <Eylith> ogg seems fine though
[10:28:33 CEST] <furq> webm (vp9+opus) is probably what you want
[10:28:55 CEST] <furq> or ffv1 for lossless video
[11:43:16 CEST] <GundaMawali> I am working on a project where I need to get the RTCP info (specifically bitrate).
[11:44:05 CEST] <GundaMawali> Can somebody point out how does ffserver get this RTCP info ?
[11:44:26 CEST] <GundaMawali> I want to get the entire RTCP payload
[11:58:57 CEST] <GundaMawali> certaindestiny: can you help with this RTCP issue.?
[11:59:19 CEST] <certaindesitny> Hi all. I am trying to read an RTSP stream and convert it with a decklink card. However the immage is terrible. we are getting allot of these messages http://pastebin.com/Btmjn5y6
[11:59:31 CEST] <certaindesitny> GundaMawali: What is the problem?
[11:59:49 CEST] <GundaMawali> I need to get the.RTCP payload.
[12:00:13 CEST] <GundaMawali> certaindestiny: Specifically if it has the datarate.
[12:01:00 CEST] <GundaMawali> certaindestiny: Ffserver has a http-receive-data that receives data on some sequnetial port probably.
[12:01:34 CEST] <GundaMawali> I just want to know how can I get the entire RTCP payload
[12:01:50 CEST] <certaindesitny> I have absolutely no clue, haha
[12:02:09 CEST] <certaindesitny> I just started using ffmpeg so i am afraid i cannot help you
[12:05:32 CEST] <certaindesitny> GundaMawali: You can try to use ffprobe on the stream but i am not sure that wil get you anything valuable
[12:06:14 CEST] <certaindesitny> If you are using linux you might be able to parse it using awk and run that script ever x seconds to get some kind of reading
[12:07:25 CEST] <GundaMawali> certaindestiny: actually , I have to adjust the encoding parameters using this datarate somehow. So, I wanted to use the API of ffserver so:mehow
[12:08:04 CEST] <certaindesitny> Can you not get that information from the transmitting side?
[12:08:07 CEST] <GundaMawali> certaindestiny: ffprobe wont do it, I guess.
[12:09:09 CEST] <Fyr> guys, if ":" is prohibited character in file name, what do people use to replace it?
[12:09:17 CEST] <GundaMawali> certaindestiny: RTCP would actually contain the parameters of the receving side I guess. Need to use those parameters to adjust transmission parameters somehow. :P
[12:09:54 CEST] <furq> you could use 
[12:09:58 CEST] <furq> or ideally nothing
[12:10:04 CEST] <Fyr> many thanks!
[12:10:54 CEST] <certaindesitny> I have no clue how to do that Perhaps furq has an idea:P
[12:11:12 CEST] <certaindesitny> Furq: Are you able to help me with my issue?
[12:11:15 CEST] <GundaMawali> furq: help ?
[12:11:15 CEST] <furq> no
[12:11:54 CEST] <GundaMawali> furq: Anyone who.l might have worked with RTCP before ?
[12:12:53 CEST] <GundaMawali> jkqxz: help ?
[12:14:30 CEST] <certaindesitny> Furq: Alright thanks for taking a look
[12:14:54 CEST] <GundaMawali> certaindestiny: Do have an idea how ffserver establishes an RTSP session ?
[12:15:09 CEST] <GundaMawali> I can proably get the port no atleast for RTCP
[12:15:14 CEST] <Fyr> furq, next time recommend "‰"
[12:15:19 CEST] <Fyr> it's much better.
[12:16:26 CEST] <certaindesitny> Probably some kind of 3 way handshake but i have no clue
[12:16:53 CEST] <certaindesitny> I am wondering what kind of information you need from the rtsp session as mine is working without any information from the transmitting side
[12:17:45 CEST] <furq> Fyr: bear in mind that a lot of browsers will block that character in urls because of the obvious phishing potential
[12:17:58 CEST] <Fyr> ok
[12:18:28 CEST] <Fyr> furq, even magnet urls?
[12:18:29 CEST] <furq> likewise for any lookalikes of : and /
[12:18:43 CEST] <furq> i assume it's done indiscriminately in the url handler
[12:18:53 CEST] <GundaMawali> certaindestiny: All I need is the bitrate at which data is being received. And then, I want to adapt my transmission.accordingly
[12:40:03 CEST] <certaindesitny> GundaMawali: Wouldnt ffmpeg do that automatically?
[12:40:21 CEST] <certaindesitny> It cannot transmit more data then the bitrate that is being recieved
[12:48:56 CEST] <certaindesitny> Anybody who can help me? When using rstp as input we get the following http://pastebin.com/Btmjn5y6
[12:49:06 CEST] <certaindesitny> rtsp*
[13:44:48 CEST] <spirou> I am trying to make a couple of video files as small as possible, and considered make the sound mono, any thoughts about that?
[13:47:01 CEST] <spirou> The thing is I used  ffmpeg -i in.mp4 -vcodec copy -ac 1 -profile:a aac_he -b:a 32k out.mp4 but then VLC refuse to play the sound, and ffmpeg itself can't use the resulting file that ffmpeg made either
[13:47:55 CEST] <spirou> it says "[aac @ 0xad70d00] Audio object type SBR+21 is not implemented" "Failed to open codec in av_find_stream_info" so perhaps I was writing something wrong
[14:05:37 CEST] <oelsen> Hello all. I am looking for a very introductory page explaining how audio options map onto ffmpeg. Generally, I just remember what I use the most (mostly c&p and google around), but I can only understand the part of the documentation, where I already know some options of the codec or filter. It specifically is about libopus and all its options.
[14:10:15 CEST] <spirou> hi oelsen
[14:11:16 CEST] <oelsen> hi
[14:12:59 CEST] <TD-Linux> oelsen, the source is probably your best bet. are you looking for a specific parameter?
[14:15:56 CEST] <spirou> you mean those options? https://www.ffmpeg.org/ffmpeg-codecs.html#Option-Mapping
[14:30:01 CEST] <viric> Hello
[14:30:08 CEST] <viric> One question for interlaced video in general....
[14:30:44 CEST] <viric> In cameras that deliver interlaced video, are the rows of different fields being captured by the same sensor pixels?
[14:30:56 CEST] <viric> or one row is for one field, another row for the next field?
[14:34:34 CEST] <viric> in other words, do PAL tubes paint different fields in the same rows?
[14:42:22 CEST] <Regda> can i set advanced options (thread_queue_size) for every input or is that global like -y ?
[14:43:23 CEST] <oelsen> hmpf, now spirou is gone... yes, I meant those, but not all work
[14:49:14 CEST] <furq> Regda: if it's listed as an input option then it's per input
[14:53:06 CEST] <Regda> hm yes, i have problems with the queue size
[14:55:24 CEST] <Regda> the size raise continuously
[14:56:47 CEST] <Regda> i know that i need shortest=1 because the loop 1 option does loop infinity
[14:58:07 CEST] <Regda> i can set thread_queue_size how large i want, at a specific frame ffmpeg throws a "Thread message queue blocking"
[14:58:24 CEST] <furq> does it actually affect the output
[14:59:01 CEST] <Regda> if i set the Thread message queue blocking higher then 2048 i get performance impacts
[14:59:12 CEST] <Regda> *thread_queue_size
[15:00:29 CEST] <Regda> is there a way to create only the frames i need instead of creating endless frames and stop them producing endless frames through another command ?
[15:02:04 CEST] <Regda> i've testet it without the shortest option, then he repeats only the last frame from the first input because the second input loops infinity
[15:38:33 CEST] <certaindesitny> Hi all, I have run into a problem when decoding RSTP, Every 5 or 10 seconds it gives me this message http://pastebin.com/RPhSP1bN
[16:04:12 CEST] <consolers`> recent ffmpeg N-77715-gfc703f5 - seems to ignore -skip_initial_bytes. lame3.93 input encoder. it starts at offset 0 (actually 288) whatever -skip_initial_bytes I give. however -skip_initial_bytes works with ffplay
[16:07:32 CEST] <thebombzen> consolers`: that sounds like a regression bug that should be posted to trac
[16:07:57 CEST] <consolers`> i can hardly use a browser nowadays
[16:08:14 CEST] <consolers`> thats why i reported it here :)
[16:08:33 CEST] <thebombzen> unfortunately, #ffmpeg is for user quetsions and help. I'd try #ffmpeg-devel.
[16:10:06 CEST] <DHE> you know how to bisect with git?
[16:10:40 CEST] <consolers`> yeah i think it took some 3 hours or something to compile on my hardware...
[16:12:09 CEST] <consolers`> this was from git 6 months ago
[16:17:49 CEST] <Regda> how can i use -frames:v to limit only a specific video stream (e.g. second video stream) ?
[16:18:00 CEST] <Regda> -frames:1:v ?
[16:18:42 CEST] <Regda> or does i have to set the parameter behind an input ?
[16:22:52 CEST] <arduinoob> After I convert a .wma file to .mp3 I only hear audio in one ear
[16:23:20 CEST] <arduinoob> is there a way to copy audio to both left and right?
[16:24:09 CEST] <CruX|> arduinoob: for i in *; do ffmpeg -y -i "$i" -vn -acodec libmp3lame -aq 5 "$i.mp3"; done
[16:24:24 CEST] <CruX|> i'm using this and it works
[16:25:37 CEST] <furq> arduinoob: you might need -ac 1 if it's a mono wav
[16:25:54 CEST] <furq> i forget if that's passed through or if it just defaults to stereo
[16:25:55 CEST] <Illya> arduinoob: you could downmix to mono, i.e. ffmpeg -i input.wma -ac 1 output.mp3
[16:27:24 CEST] <Zaneo> I'm decodoing a H264 stream (which I think is in YUV420P), then trying to convert it to BGR24 (cv::mat). Based on these two images (src http://imgur.com/gd5CNnQ ), (displayed http://imgur.com/fO08dPh ) is it the decoding, or conversion more likely to be incorrect? Is there an easy way to view the decoded image, before converting?
[16:30:32 CEST] <BtbN> (untested) ffmpeg -i something.ts -an -sn -c:v rawvideo -pix_fmt bgr24 -f rawvideo out.bgr
[18:19:35 CEST] <Mavrik> Zaneo, that's conversion that's totally messed up :)
[18:19:46 CEST] <Mavrik> Since you can see shapes of chroma channel
[18:30:54 CEST] <Wader8> hello
[18:31:49 CEST] <Wader8> is it possible to analyze video for very similar frames and choose what to discard, I have 30FPS video of mostly landscape and I don't need it to be 30FPS since it's moving slow, but I don't want to add 500 videos into the timeline, id like to do it batch
[18:32:16 CEST] <Wader8> or I would just speed it up and discard frames based on that ?
[18:33:57 CEST] <Wader8> that approach would also drop the good frames and those areas that change a lot
[18:34:01 CEST] <Wader8> so it's not perfect
[18:37:07 CEST] <c_14> try using the select filter select with the scene value?
[18:42:43 CEST] <Zaneo> Thanks BtbN
[18:43:13 CEST] <Zaneo> Mavrik: somebody suggested that it looked like it was being double converted
[18:43:37 CEST] <Mavrik> Possibly, but something is going wrong for sure :)
[19:20:21 CEST] <viric> Helllo ffmpeg
[19:20:34 CEST] <viric> I'm transcoding mp4 to mkv...
[19:20:42 CEST] <viric> and the metadata 'creation date' tag is lost
[19:21:25 CEST] <viric> isn't ffmpeg supposed to map metadata?
[19:23:50 CEST] <furq> viric: -map_metadata 0
[19:24:04 CEST] <viric> furq: that should be the default
[19:24:44 CEST] <viric> "By default, global metadata is copied from the first input file, ......"
[19:25:07 CEST] <viric> I somehow tested that before, and it worked. Now I can't get it working...
[19:26:25 CEST] <viric> damn it, it makes a difference. How can it be?
[19:32:48 CEST] <viric> furq: is the manual wrong then? or I misunderstand it?
[20:04:53 CEST] <n1cky> Can anyone recommend software which takes an http stream and allows me to sort of buffer it, so that if something interesting happens I can immediately have a file ready?
[20:05:12 CEST] <BtbN> wget?
[20:05:15 CEST] <n1cky> What I'd really like is the ability to just press my spacebar and have that make a keyframe, and have the last 3 keyframes saved
[20:05:39 CEST] <n1cky> err, have segments made on the last 3 keyframes.
[20:06:14 CEST] <n1cky> I have a legal satellite stream coming from Mexico, free to air satellite, of the upcoming Euro game between germany and poland
[20:06:22 CEST] <BtbN> run ffmpeg, transmuxing to hls or something, with a few segments. And then copy the output folder when you want to make your snapshot.
[20:07:04 CEST] <BtbN> At least in germany there are freely available livestreams of it.
[20:07:25 CEST] <n1cky> that's a great idea, transmuxing to hls.
[20:08:02 CEST] <BtbN> Or just record the whole thing and note the timestamps
[20:10:14 CEST] <furq> the problem with hls and copying the folder is that the latest segment won't be written until it's complete
[20:11:16 CEST] <BtbN> If you watch the very same stream it's writing, that won't be a problem.
[20:11:28 CEST] <BtbN> That will be quite some delay though
[20:11:30 CEST] <furq> that's true
[20:15:23 CEST] <n1cky> I'm watching on my TV, my laptop is streaming separately. I just ended up doing a direct copy -f segment. Works perfectly
[20:15:46 CEST] <n1cky> I'll make a shell script which removes files older than 5 minutes and that will keep my /tmp drive from filling up
[20:16:23 CEST] <BtbN> just tell ffmpeg to remove old segments
[20:16:29 CEST] <furq> are you trying to be the first one to upload goals to youtube or something
[20:17:15 CEST] <n1cky> I'm not using hls, so making ffmpeg do it isn't listed in the documentation
[20:17:19 CEST] <n1cky> furq: pretty much yeah
[20:17:25 CEST] <n1cky> furq: not youtube though, just reddit
[20:18:17 CEST] <furq> just do what i do and upload a 90-second clip of someone playing pro evo with the title "L@@K BALE WONDER GOAL WAL 1:0 ENG REAL FOOTAGE WHICH IS REAL" and then a fake thumbnail stolen from AP
[20:18:41 CEST] <furq> make sure to use a colon instead of a hyphen or else people will know something's up
[20:22:03 CEST] <n1cky> hahahaha
[20:22:10 CEST] <n1cky> Why do people do that, seriously?
[20:22:22 CEST] <n1cky> Does google actually pay adsense out for videos like that? I can't imagine that lasts long
[20:22:26 CEST] <furq> for that sweet $3.54 in ad revenue
[20:34:14 CEST] <moeg> hi.. i am trying to package an mp4 with alternative audio track using hls muxer. from what i gather, ffmpeg doesn't support this natively but i am researching to see if I can manually accomplish this.
[20:34:44 CEST] <moeg> here is an example playlist..
[20:35:38 CEST] <moeg> i can individually generate transport streams for 3 audio streams and then generate a master playlist..
[20:36:02 CEST] <moeg> but vlc and quicktime barf most likely the timing betweeen audio & video are not unaligned..
[20:49:01 CEST] <DHE> moeg: small tangent because I'm curious, where do you get the CODEC="xxx" values from?
[20:55:37 CEST] <moeg> DHE: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/StreamingMediaGuide/FrequentlyAskedQuestions/FrequentlyAskedQuestions.html
[20:55:57 CEST] <moeg> Question# 11
[21:42:48 CEST] <EJGW> good evening, I am currently trying to stream webm through Icecast. playing the stream unfortunately doesn't work
[21:43:06 CEST] <EJGW> http://paste.debian.net/plain/739739 this is the command to feed my icecast server
[21:43:30 CEST] <EJGW> I'm playing with a simple ffplay -i
[21:44:03 CEST] <EJGW> but playing stops immediately a rather unspecific "[matroska,webm @ 0x7f6180009280] Read error"
[21:44:32 CEST] <EJGW> does anyone know why?
[21:50:31 CEST] <kbarry> I'm trying to generate a A3 Tone, in stereo, with a bitrate of 16hz, and a sample rate of s32p:
[21:50:32 CEST] <kbarry> ffmpeg -f lavfi -i aevalsrc="sin(220*2*3.14*t)|sin(220*2*3.14*t):c=stereo:s=16000" -t 60 -sample_fmt:a s32p c:\c\noteA3_Stero_16hz_s32_60sec.mp3
[21:51:41 CEST] <kbarry> ffprobe: Stream #0:0: Audio: mp3, 16000 Hz, stereo, s16p, 48 kb/s
[21:51:52 CEST] <kbarry> Still appearing as s16p
[22:14:00 CEST] <BtbN> 16Hz is not a bitrate, and s32p not a sample rate.
[22:14:19 CEST] <BtbN> If you mean a sample rate of 16 Hz... I'm not sure if that's even possible.
[22:16:42 CEST] <furq> i assume from s=16000 that he meant 16khz
[22:17:24 CEST] <BtbN> I'm also not sure if mp3 supports s32
[22:22:06 CEST] <kepstin> for mp3 encoding, you'd want to just drop the -sample_fmt option completely, and let ffmpeg pick the right thing
[22:22:25 CEST] <kepstin> (which will probably end up being some floating point format, depending on the mp3 encoder used)
[22:54:15 CEST] <furq> n1cky: bad luck
[23:01:25 CEST] <kbarry> So, I am cretign test-samples
[23:01:32 CEST] <kbarry> creating*
[23:02:07 CEST] <kbarry> According to http://forum.videohelp.com/threads/373264-FFMpeg-List-of-working-sample-formats-per-format-and-encoder: MP3 sample_fmt="s16p,s32p,fltp"
[23:04:01 CEST] <kbarry> BtbN: Man I really messed up my initial statement. I'm just wondering why I am not seeing the sample format change to what I have specified.
[23:04:39 CEST] <kbarry> The stdout appears to show its going to get the correct sample format, but then ffprobe shows no change.
[23:07:31 CEST] <kepstin> kbarry: ffmpeg (and most other lossy formats) don't support multiple sample formats internally - that's just a list of the sample formats that the encoder can use as input
[23:07:55 CEST] <kepstin> most lossy codecs effectively behave as if the internal format is floating point, more or less
[23:08:31 CEST] <kepstin> er, s/ffmpeg/mp3/ there :)
[23:10:00 CEST] <kbarry> kepstin: Are you saying its not possible to produce a s32p MP3 ?
[23:10:37 CEST] <kepstin> mp3 doesn't "preserve" the input sample format. it has its own internal representation that everything is converted to
[23:11:21 CEST] <kbarry> Ahh. I thought that -sample_fmt was how one specified the sample format on the output. Good to know.
[23:11:33 CEST] <kepstin> as far as I know, mp3 decoders only exist that decode to either float or s16. But that's a property of the decoder, not the file.
[23:12:22 CEST] <kepstin> i.e. a float decoder will decode *all* mp3 files to float, an s16 decoder will decode *all* mp3 files to s16.
[23:16:48 CEST] <kbarry> Ohh (audio nube here), Sample Format is not a property of the file.
[23:24:23 CEST] <kepstin> it is - for some formats
[23:24:40 CEST] <kepstin> e.g. wav can store raw audio in various sample formats
[23:25:07 CEST] <kepstin> and lossless codecs like flac restore the audio bit-for-bit identical, which obviously means the same sample format
[23:27:18 CEST] <kbarry> kepstin:  Thanks for the information.
[23:30:22 CEST] <Sashmo> has anyone used ffmpeg to do a perceived quality analysis or check?
[23:30:52 CEST] <Sashmo> Looking for a way to check a general quality of a file without having to eyeball each file
[23:32:38 CEST] <kepstin> not sure what exactly you're looking for. An estimate of quality loss due to compression?
[23:33:27 CEST] <kepstin> iirc, ffmpeg has 'psnr' and 'ssim' filters for video, which (more or less) do that sort of thing for video, but nothing for audio
[23:33:30 CEST] <Sashmo> something like this http://picpaste.com/upload.php
[23:33:45 CEST] <Sashmo> blue is audio, red is video
[23:34:03 CEST] <kepstin> Sashmo: you need to link to your picture, not the upload page :)
[23:34:10 CEST] <Sashmo> oooooooops
[23:34:16 CEST] <Sashmo> http://picpaste.com/Screenshot_2016-06-16_17.32.52-I3UPzdOc.png
[23:35:41 CEST] <Sashmo> I can make the graph easily
[23:35:56 CEST] <kepstin> hmm. that looks like it might be derived from something like MOS scores in a UDP live stream. That's usually just guessed based on packet loss and a formula based on the codec used
[23:35:57 CEST] <Sashmo> just need to fine out which filters to apply to the command to get the data
[23:36:08 CEST] <Sashmo> nothing to do with packet loss
[23:36:23 CEST] <Sashmo> its perceived video quality
[23:37:35 CEST] <kepstin> do you have a reference video for comparison?
[23:38:01 CEST] <kepstin> if so, the psnr or ssim filters in ffmpeg might be useful for the video. But there's nothing like that for audio in ffmpeg atm.
[23:38:19 CEST] <Sashmo> yeah I do, that was my next step, I was going to use the psnr filter to see what the output would be
[23:38:31 CEST] <Sashmo> thanks kepstin
[23:38:35 CEST] <Sashmo> Illl give that a try
[23:38:54 CEST] <Sashmo> I guess for audio I could measure the level of audio, instead of trying to figure out the compression
[23:39:24 CEST] <Sashmo> because I think thats whats there if you look at the blue line, it looks like its either 100 or 0, nothing in between
[23:40:45 CEST] <kepstin> yeah, I have no idea what that graph you showed is actually measuring
[23:40:52 CEST] <Sashmo> thanks kepstin
[23:40:54 CEST] <kepstin> on its own, it's pretty much meaningless :/
[23:41:04 CEST] <Sashmo> I think its macro blocking that its looking for
[23:41:32 CEST] <kepstin> macroblocking is something kinda codec-specific
[23:41:39 CEST] <kepstin> vp8/9 tend to go blurry instead :)
[23:41:56 CEST] <Sashmo> Its measuring the level of macroblocking on the decode side
[23:42:02 CEST] <Sashmo> in the fast motion and scene changes
[23:42:10 CEST] <Sashmo> wouldnt psnr be able to report back that?
[23:42:38 CEST] <kepstin> if you have a reference video, psnr will report that some scenes are more similar or more different from the reference than others
[23:42:58 CEST] <kepstin> this does not necessarily correspond to whether a person would actually notice a quality degredation
[23:44:03 CEST] <kepstin> e.g. x264 *on purpose* allows macroblocking in "noisy" high-frequency patterns where a person won't really notice, and significantly reduces quality on frames in high-motion scenes, since people can't concentrate on detail in those.
[23:45:01 CEST] <kepstin> but yeah, it might be a good enough estimate, in some circumstances, to know if e.g. you're running out of bitrate on a stream in certain spots.
[23:45:53 CEST] <kepstin> (and an audio version of the psnr filter would probably be a pretty easy and useful addition to ffmpeg :)
[23:48:04 CEST] <Sashmo> so im curuious then what that graph is actually measuring, because it was sent to me about one of my files
[00:00:00 CEST] --- Fri Jun 17 2016

More information about the Ffmpeg-devel-irc mailing list