为什么BufferedReader类有一个readLine()方法,但是BufferedWriter类没有writeLine(String)方法?现在我们要做的write(str + "\n")还是write(str)和newLine().
我已经看到一个示例,其中使用以下代码将double转换为float:
Double.valueOf(someDouble).floatValue()
Run Code Online (Sandbox Code Playgroud)
我会这样做的
(float)someDouble
Run Code Online (Sandbox Code Playgroud)
使用前者有什么好处吗?
我一直在浏览一些Android源代码,我注意到他们将float值设置为0使用0.0f.我知道只是0一个int被隐含地转换为float,然后0.0是一个double,但据我所知,0f它是相同的0.0f.为什么他们会努力输入额外费用.0?:)
我正在使用 avconv/ffmpeg 将从 DVD 复制的 VOB 文件转换为 mp4。我正在使用的命令是
avconv -i "concat:1.VOB|2.VOB|3.VOB|4.VOB|5.VOB" -c:v libx264 -crf 28 -c:a libvo_aacenc -b:a 128k output.mp4
Run Code Online (Sandbox Code Playgroud)
这是有效的,但我已经看到许多不同的命令使用不同类型的参数,我想知道这是否是“正确”的方法,如果有人对我应该(不)使用哪些参数有建议和为什么不)。该文件应与移动设备和智能电视兼容。我还看到“libmp3lame”被用作音频编解码器,使用 AAC 还是 MP3 更好?
00:58:37时长的视频文件大小为732.6MB,这合理吗?也许我可以使用一些东西来进一步减小文件大小而不会造成太多质量损失?
我也对 Avconv 和 FFmpeg 之间的区别感到困惑。我认为 FFmpeg 已被弃用,而 Avconv 是“更新更好”,我有两个 Linux Mint 安装,当我在 17.1 安装上运行“avconv --help”时,我看到
avconv version 9.20-6:9.20-0ubuntu0.14.04.1, Copyright (c) 2000-2014 the Libav developers
Run Code Online (Sandbox Code Playgroud)
当我在 18.1 安装上运行相同的命令时,我看到
ffmpeg version 2.8.11-0ubuntu0.16.04.1 Copyright (c) 2000-2017 the FFmpeg developers
Run Code Online (Sandbox Code Playgroud)
avconv 比 ffmpeg 新,还是只是同一个东西的不同名称?