Re: [FFmpeg-user] Zoompan filter, frame counts seem to start from 2 and 1, not 0 -- expected behaviour?
Opened ticket https://trac.ffmpeg.org/ticket/7242 "zoompan filter variables 'in' and 'on' start at 2, 1 instead of at 0" . -- --Jim DeLaHunt, j...@jdlh.com http://blog.jdlh.com/ (http://jdlh.com/) multilingual websites consultant 355-1027 Davie St, Vancouver BC V6E 4L2, Canada Canada mobile +1-604-376-8953 ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] Question regarding encoding a file
2018-06-02 10:47 GMT+02:00, Paweł Więch : > Im having huge difficulties with a decoding file/batch decoding multiple > files at once from source audio file which is a WAV file to an mp3 lossy > format. I want to do a very specific thing. > > Is it possible with ffmpeg libraries to encode WAV file to MP3 320cbr > stereo or joiint stereo with build in libmp3lame/lavfformat? Every time > output file is encoded using lavc instead lavf. > > Somehow it must be possible because google play store encodes that way i > supose. > > Please have a look at the file i have attached. Tool: lavf | This is > what foobar2000 says. > > If you know how to do it i would apreaciate it a command line tip :) Instead of trying to understand the issue you have and asking us something based on this understanding, please explain what you originally wanted to do, what you tried (this includes providing the command line you tested together with the complete, uncut console output) and what did not work. (If you were able to analyze the issue, you would not have to ask here.) Carl Eugen ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] Tag mp4s incompatible with output codec ?
> > You do (from around Oct 12 2017), but that's not the point, I believe. Maybe not.. Anyways I downloaded the latest version (I believe). I ran the original command line (w/o "-dn"), same error message. (BTW: why does it say "Tag mp4s incompatible with output codec id '0'" ? I don't see where I am setting a tag 'mp4s'.) Then I ran the command again, with "-dn" . This seems to work. Complete command line below. One question regarding option "-dn": I checked the manual and it says "Disable data recording". So what is "data recording"? Are subtitles also a kind of data? What about meta data, will that be killed by "-dn" ? Thanks a lot in advance. Best regards, Gabriel % ffmpeg -i "Neuroscience of VR, Congruency, pain distraction, presence, Enfacement effect, rubber hand, tools as part of the body, redirected walking - Bruno Herbelin, CERN, 2017.mp4" -map 0 -c:s copy -map_metadata 0 -map_metadata:s:v 0:s:v -map_metadata:s:a 0:s:a -c:a aac -b:a 128k -codec:v hevc -tag:v hvc1 -dn -preset faster -crf 25 -profile:v main -x265-params "me=umh:subme=5:ref=4:aq-mode=2:aq-strength=1.0:psy-rd=2.0:psy-rdoq=1.0:rd=6:log-level=1" -f mp4 "Neuroscience of VR, Congruency, pain distraction, presence, Enfacement effect, rubber hand, tools as part of the body, redirected walking - Bruno Herbelin, CERN, 2017.mp4_converting" ffmpeg version N-91200-g1616b1be5a-tessus Copyright (c) 2000-2018 the FFmpeg developers built with Apple LLVM version 9.1.0 (clang-902.0.39.1) configuration: --cc=/usr/bin/clang --prefix=/opt/ffmpeg --extra-version=tessus --enable-avisynth --enable-fontconfig --enable-gpl --enable-libaom --enable-libass --enable-libbluray --enable-libfreetype --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopus --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-version3 --pkg-config-flags=--static --disable-ffplay libavutil 56. 18.102 / 56. 18.102 libavcodec 58. 19.104 / 58. 19.104 libavformat58. 17.100 / 58. 17.100 libavdevice58. 4.100 / 58. 4.100 libavfilter 7. 24.100 / 7. 24.100 libswscale 5. 2.100 / 5. 2.100 libswresample 3. 2.100 / 3. 2.100 libpostproc55. 2.100 / 55. 2.100 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Neuroscience of VR, Congruency, pain distraction, presence, Enfacement effect, rubber hand, tools as part of the body, redirected walking - Bruno Herbelin, CERN, 2017.mp4': Metadata: major_brand : mp42 minor_version : 0 compatible_brands: mp42isomavc1 creation_time : 2017-11-09T15:56:49.00Z compilation : 0 encoder : Sorenson Squeeze Duration: 00:26:06.00, start: 0.00, bitrate: 5280 kb/s Stream #0:0(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 96 kb/s (default) Metadata: creation_time : 2017-11-09T15:56:49.00Z handler_name: soun Stream #0:1(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709/bt709/unknown), 1920x1080, 5002 kb/s, 25 fps, 25 tbr, 90k tbn, 50 tbc (default) Metadata: creation_time : 2017-11-09T15:56:49.00Z handler_name: vide encoder : AVC Coding Stream #0:2(und): Data: none (mp4s / 0x7334706D) (default) Metadata: creation_time : 2017-11-09T15:56:58.00Z handler_name: sdsm Stream #0:3(und): Data: none (mp4s / 0x7334706D) (default) Metadata: creation_time : 2017-11-09T15:56:58.00Z handler_name: odsm Stream #0:4(eng): Data: none (rtp / 0x20707472), 13 kb/s Metadata: creation_time : 2017-11-10T15:56:58.00Z Stream #0:5(eng): Data: none (rtp / 0x20707472), 162 kb/s Metadata: creation_time : 2017-11-10T15:57:00.00Z File 'Neuroscience of VR, Congruency, pain distraction, presence, Enfacement effect, rubber hand, tools as part of the body, redirected walking - Bruno Herbelin, CERN, 2017.mp4_converting' already exists. Overwrite ? [y/N] y Stream mapping: Stream #0:0 -> #0:0 (aac (native) -> aac (native)) Stream #0:1 -> #0:1 (h264 (native) -> hevc (libx265)) Press [q] to stop, [?] for help Output #0, mp4, to 'Neuroscience of VR, Congruency, pain distraction, presence, Enfacement effect, rubber hand, tools as part of the body, redirected walking - Bruno Herbelin, CERN, 2017.mp4_converting': Metadata: major_brand : mp42 minor_version : 0 compatible_brands: mp42isomavc1 creation_time : 2017-11-09T15:56:49.00Z compilation : 0 encoder : Lavf58.17.100 Stream #0:0(eng): Audio: aac (LC) (mp4a /
Re: [FFmpeg-user] what's print() used to do in filter graph?
Hi, Thanks for reply. Another question: I want to print frame number on video, where each frame has their own frame number. If text is set to frame number, the width of some frame number will become different, such as 6, 13 and 370. Is there any way to show the text of frame number and keep the same width of text by adding some space at the same time? Thanks regards andrew | | qw 邮箱:applema...@163.com | 签名由 网易邮箱大师 定制 在2018年06月01日 22:55,Gyan Doshi 写道: On 01-06-2018 08:10 PM, qw wrote: > I don't find the description of print() in the vf filtergraph in ffmpeg > website, i.e. http://ffmpeg.org/ffmpeg-filters.html#drawtext-1 print() function is part of the eval API. All available functions are documented at https://ffmpeg.org/ffmpeg-utils.html#Expression-Evaluation > Where to get the detailed description of fontsize? The text is rasterized by the freetype lib, not ffmpeg. See some background on fontsizes at https://www.freetype.org/freetype2/docs/glyphs/glyphs-2.html Regards, Gyan ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe". ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] Question regarding encoding a file
On 2018-06-02 at 4:47 AM EDT, Paweł Więch wrote: Hello guys. Im having huge difficulties with a decoding file/batch decoding multiple files at once from source audio file which is a WAV file to an mp3 lossy format. I want to do a very specific thing. Is it possible with ffmpeg libraries to encode WAV file to MP3 320cbr stereo or joiint stereo with build in libmp3lame/lavfformat? Every time output file is encoded using lavc instead lavf. Somehow it must be possible because google play store encodes that way i supose. Please have a look at the file i have attached. Tool: lavf | This is what foobar2000 says. foobar2000 is a notoriously bad way to read the metadata from MP3 files. I will immediately start by suggesting two alternatives that are far better, less ambiguous, and are both Free Software: Mutagen Works with MP3s, M4As (AAC audio compression algorithm, generally), Ogg/Vorbis, FLAC, WAV, and many formats. https://mutagen.readthedocs.io/en/latest/ eyeD3 Works with MP3 files only, far more powerful than Mutagen. Harder to learn initially. http://eyed3.readthedocs.io/en/latest/ Notice that foobar2000 is proprietary software (not Free Software, i.e foobar2000 is freedom-denying software), so you don't have the freedom to look at the source code, see what it is doing, or fix what it is doing. It was almost more popular and more actively developed about 10 years ago, so many problems that emerged more recently have not been addressed at all. foobar2000 must be understood using deduction and black box analysis, and cannot be fixed. Here are some specific clues that foobar2000 is misbehaving on your MP3 in your screenshot: 1. The fact that it says "tool" is troubling and ambiguous. It is entirely unclear where that came from. The term "encoder" would be a bit less ambiguous, unless it is being misused. The term "encoder", if used correctly, should give the string in the TSSE frame of an ID3v2 tag. foobar2000 sometimes populates the "encoder" metadata using the LAME Info Tag, but it does this incorrectly because the code to do so has not been updated since prior to 2012. Specifically, foobar2000 reads until it sees a lowercase ASCII letter, it includes that letter, and then stops. In fact, it should stop after exactly 9 bytes no matter what, because this is a fixed-width field that doesn't necessarily end in a lowercase letter. (Note: This behavior is quite likely different in different versions of foobar2000, I have no idea, I determined this through black box analysis of just one version. There is no changelog saying when they may have fixed or changed this bug, and the source code is secret and cannot be searched.) 2. The "tool" value of "Lavf" cannot have come from the LAME Info Tag, it is too short and in practice the LAME Info Tag is either absent or the encoder field starts with the four uppercase letters "LAME". 3. The "tool" value of "Lavf" may have come from searching for ASCII strings toward the top of the MP3 file, especially inside padding characters. Information in this part of the file is fairly durable even if the ID3 tags are repeatedly deleted and re-created. This is most likely what foobar2000 is doing. This is most likely where "Lavf" came from. 4. In theory, the "tool" value may have come from the filesystem. It may not even be in the MP3 file itself. foobar2000 uses the Windows filesystem API heavily to read the mtime and size, but also other things. I think this is unlikely to be happening with the string "Lavf". 5. The screenshot says it has an ID3v1 tag, which will never have the TSSE frame and will thus never say the encoding tool. The only thing we know for sure is that the "tool" value came from the wrong place. Also, it clearly does have an ID3v1 tag because of the date, the genre (it is one of the one-byte WinAmp genres), and the "? - ?" because the artist and song name are blank in the ID3v1 tag, and it has used the filename with the ".mp3" stripped off the end. The file may have both an ID3v1 tag and an ID3v2 tag, but foobar2000 will ignore the ID3v2 tag if it finds both. 6. ID3v1 tags always have certain fixed fields. foobar2000 is hiding the fields that it thinks are blank, which makes it hard to tell what it going on. Where is the comment? Where is the artist? Why does foobar2000 feel they are blank, what are they filled with? They are a fixed number of bytes, so they are full of something. eyeD3 will show you what they are full of. foobar2000 will not, and if one of the fields starts with whitespace, foobar2000 may assume the whole field is empty, even though the value is " Irving Berlin" (that is a space character then Irving Berlin, a valid artist name). Also, it is not clear what you want to achieve eventually. No matter what you want to achieve eventually, it seems to be related to the metadata inside the MP3 files. I do not recommend using foobar2000 to analyze the metadata
[FFmpeg-user] How add expression in drawtext's text
Hi, I can use the following command to add frame number on video: /usr/local/bin/ffmpeg -t 180 -i input.mp4 -acodec libfdk_aac -ac 2 -b:a 48k -vcodec libx264 -b:v 500k -g 25 \ -vf "fps=fps=25, scale=w=320:h=240, drawtext='box=1:fontcolor=red:fontsize=20:fontfile=OpenSans-Regular.ttf:text=%{frame_num}'" \ -f mp4 out.mp4 But the width of the text box will increase as frame number increases. I want to make the width of the text box unchanged. If the largest frame number is 9, I want to make the width of the text is of 5 numbers. How to do it? Another question: I want to make the following logic for text: if frame number < 10 text=%{frame_num} else if frame number < 100 text=000%{frame_num} else if frame number < 1000 text=00%{frame_num} else if frame number < 1 text=0%{frame_num} else text=%{frame_num} How to do it? How can I add expression in text? Is there any command example? Thanks regards andrew ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] How add expression in drawtext's text
On 04-06-2018 09:24 AM, qw wrote: But the width of the text box will increase as frame number increases. I want to make the width of the text box unchanged. If the largest frame number is 9, I want to make the width of the text is of 5 numbers. How to do it? You have to know the final frame count beforehand. Once you do, use the text expression: text='%{eif\:n\:d\:4}' where 4 is the width of the text with padding. Regards, Gyan ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".