Michael Rampe
Forum Replies Created
-
Can you post a sample file?
I think the “channelsplit” filter in a -filter_complex chain should be able to achieve this….
Michael
-
I just realised my escape slash was removed by the text editor as an escape slash;-(
this:… grep ‘coded_picture_number|pict_type’
should read
grep ‘coded_picture_number\|pict_type’
Michael
-
[Doug Bay] “I know its a long shot for ffmpeg to do something like this”
Not at all!
FFprobe (which installs with newer FFmpeg builds) is your candidate.
$ ffprobe -show_frames input.mp4
This will print out various attributes for each frame.
What you are after is “coded_picture_number=” for the frame and “pict_type=” for frame type (I,P or B).I usually use grep to turn this into useful data without all of the other noise.
For your requirements:
$ ffprobe -show_frames input.mp4 2> /dev/null | grep ‘coded_picture_number|pict_type’It is important to note that the “coded_picture_number” starts logically at 0 so you may need to offset this by 1 depending on how you use the output.
Michael
-
Hi Pandi,
The behavior of the -ss option varies depending on where it is put in the command line.
If it is placed before the input (as in your case) it will begin decoding from this time. The result with many codecs is that is delivers the first I frame it encounters as it cannot decode the frames before that. This method is very fast but not frame accurate.
If it is placed after the input like:
ffmpeg -an -i test.flv -ss 00:01:00 test.jpg
…it will decode all of the frames and deliver a frame accurate result. As this requires decoding all frames, it is slower and this is compounded by how far you are seeking into the material. (ie. setting to 59.59:00 will be very slow as it has to decode a full hour of frames just to get the one you want.)Michael
-
Michael Rampe
September 1, 2012 at 10:56 pm in reply to: Looking for a FFMPEG expert to write a standalone application I’ve been thinking for sometimeWhich language? Which target OS? What functionality?
Michael
-
Michael Rampe
September 1, 2012 at 10:52 pm in reply to: New versions of FFMPEG and command line syntaxCan you post the full output?
It looks like most of your overflow errors are probably caused by the ridiculously low bitrate of 50k. Try 500k or 1000k….. Or it could be an issue with the source.
Michael
P.s. I love the wording of this error:
“brainfart cropping not supported”
Hahahaha -
Michael Rampe
August 2, 2012 at 6:15 am in reply to: combining two .mov files to play along side of one anotherGood advice. It is also important to know that the filter in question (drawtext) has a dependency of libfreetype which you must install first and the enable in FFmpeg by using –enable-libfreetype.
Michael
-
Michael Rampe
March 21, 2012 at 12:30 pm in reply to: wanted: programmer for osx app knowledgeable in FFmpegContact?
-
Just noticed the title of this post…..
Are you referring to the very outdated OSX GUI called ffmpegX or the ffmpeg command line program?
FfmpegX was built on a very old ffmpeg version…. not sure if they changed that recently (doubt it).
If you need a GUI, have a look at iFFmpeg for OSX which lets you update the core libraries and stay up to date with the syntax changes…..Otherwise, bite the bullet and go commando line;-)
Michael
-
Michael Rampe
March 21, 2012 at 12:22 pm in reply to: FFMPEG muxing is a miracle (NOT) – I’m going nuts!If vcodec copy fixes it, you have a container issue.
Can you post command line output for both to compare? (ffmpeg -i file.mov)
Also, ffprobe is useful for investigations like this but may not be complete depending on version…..Best to post your version info and the header reads;-)
Michael