小编slh*_*hck的帖子

我可以使用FFmpeg为视频流设置旋转字段吗?

我有一个视频文件.我用MediaInfo实用程序打开它,我可以看到该文件中的视频流具有属性Rotation 90(以及其他属性,如CodecID,bitrate等).

现在我有另一个没有该属性Rotation 90的视频文件,它根本没有Rotation属性.

我可以使用ffmpeg.exe,以便生成添加了Rotation 90属性且没有其他更改的输出文件吗?我真的不想做任何变换,只想设置Rotation属性.

我试过这个-metadata选项无济于事.

ffmpeg video-conversion

33
推荐指数
1
解决办法
2万
查看次数

如何计算两个向量的余弦相似度?

如何找到矢量之间的余弦相似度?

我需要找到相似度来衡量两行文本之间的相关性.

例如,我有两个句子,如:

用户界面系统

用户界面机器

...和tF-idf之后的各自向量,然后使用LSI进行归一化,例如 [1,0.5][0.5,1].

如何衡量这些向量之间的熟悉程度?

java trigonometry vector tf-idf

31
推荐指数
4
解决办法
6万
查看次数

通过用零填充来批量重命名顺序文件

我有一堆像这样命名的文件:

output_1.png
output_2.png
...
output_10.png
...
output_120.png
Run Code Online (Sandbox Code Playgroud)

重命名那些匹配约定的最简单方法是什么,例如最多四位小数,以便命名文件:

output_0001.png
output_0002.png
...
output_0010.png
output_0120.png
Run Code Online (Sandbox Code Playgroud)

这在Unix/Linux/BSD中应该很容易,尽管我也可以访问Windows.任何语言都可以,但我对一些非常简洁的单行(如果有的话)感兴趣.

rename batch-file batch-rename

30
推荐指数
3
解决办法
3万
查看次数

如何只使用一列对data.frame进行排序,而不会丢失rownames?

data = c(1,2,3,4)
names = c("foo", "bar", "baz", "yak")
d = data.frame(data, row.names=names)
Run Code Online (Sandbox Code Playgroud)

返回:

    data
foo    1
bar    2
baz    3
yak    4
Run Code Online (Sandbox Code Playgroud)

现在,我想按列对此数据框进行排序,而不会丢失附加的行名称.所以,我的结果是:

    data
yak    4
baz    3
bar    2
foo    1
Run Code Online (Sandbox Code Playgroud)

我已经尝试过以下方法:

  • d[order(-d$data),],这当然只给我一维列表.

  • arrange(d, desc(data))plyr包中删除行名称.

  • 找出订单o = order(-d$data),然后重建框架

    data.frame(d[o,], row.names=rownames(d)[o])
    
    Run Code Online (Sandbox Code Playgroud)

    ...仍然留下错误的列名.

有没有理智的方法来做到这一点?

sorting r dataframe

28
推荐指数
1
解决办法
2万
查看次数

如何从MySQL Workbench目录中删除表?

最近我开始使用MySQL Workbench用UML图设计我的数据结构.但是,我有一点可以弄明白.

似乎如果我从EER图表视图中删除一个表,该表将保留在目录视图中(如下面的屏幕截图所示).我可以找到一种从目录视图中删除的方法,它仍然在外键表引用选择屏幕中列出.

这非常令人困惑.如何有效地删除表格(不仅从视图中而且从整个项目中删除?

工作台

请注意,这两个问题表是我在视图中删除并重新设计的.

mysql-workbench

28
推荐指数
3
解决办法
2万
查看次数

轻量级JDBC帮助程序库替代Apache Commons DbUtils

我刚刚开发了自己的小型JDBC帮助程序库,我已经意识到它将成为一个维护噩梦.

我不是在寻找一个完整的ORM,比如Hibernate,只是一些简单而有用的东西可以快速地使JDBC调用传递SQL语句而不会弄乱已检查的异常,手动关闭资源等等......

从您的经验中,您能推荐一个不错的JDBC帮助程序库吗?

到目前为止,我已经看过Apache Commons DbUtils了,看起来还不错.还有其他想法吗?

java jdbc helper apache-commons

27
推荐指数
3
解决办法
3万
查看次数

在Ruby中读取CSV时如何跳过标题行?

Ruby的CSV类可以很容易地迭代每一行:

CSV.foreach(file) { |row| puts row }
Run Code Online (Sandbox Code Playgroud)

但是,这总是包含标题行,所以我将得到输出:

header1, header2
foo, bar
baz, yak
Run Code Online (Sandbox Code Playgroud)

我不想要标题.现在,当我打电话给...

CSV.foreach(file, :headers => true)
Run Code Online (Sandbox Code Playgroud)

我得到这个结果:

#<CSV::Row:0x10112e510
    @header_row = false,
    attr_reader :row = [
        [0] [
            [0] "header1",
            [1] "foo"
        ],
        [1] [
            [0] "header2",
            [1] "bar"
        ]
    ]
>
Run Code Online (Sandbox Code Playgroud)

当然,因为文档说:

此设置使#shift将行返回为CSV :: Row对象而不是Arrays

但是,如何跳过标题行,将行作为简单数组返回?我不希望CSV::Row返回复杂的对象.

我绝对不想这样做:

first = true
CSV.foreach(file) do |row|
  if first
    puts row
    first = false
  else
    # code for other rows
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby csv

24
推荐指数
3
解决办法
2万
查看次数

如何在Android上的活动之间传递值?

这是我的应用程序的导航:

Activity1来电Activity2Activity2.finish(),拨打Activity3Activity3.finish()

Activity3完成后,它调用onResume的方法Activity1.现在我如何将值传递Activity3Activity1

android android-activity

21
推荐指数
1
解决办法
4万
查看次数

Ruby中数组哈希的所有可能组合

是)我有的:

假设我有这样的哈希值,各种值属于一个参数.

a = {}
a[:bitrate] = ["100", "500", "1000"]
a[:fps] = ["15", "30"]
a[:qp] = ["20", "30"]
Run Code Online (Sandbox Code Playgroud)

我需要的:

我需要一些方法来迭代地获得这些值的所有可能组合,因此,使用所有参数/值对:

  • bitrate = 100,fps = 15,qp = 20
  • bitrate = 500,fps = 15,qp = 30
  • ...

参数的数量(即键)和值的数量(即值阵列的长度)事先是未知的.理想情况下,我会做以下事情:

a.foo do |ret|
  puts ret.keys   # => ["bitrate", "fps", "qp"]
  puts ret.values # => ["100", "15", "20"]
end
Run Code Online (Sandbox Code Playgroud)

...为每个可能的组合调用块.我该如何定义foo


我(可能)不需要的东西:

现在,我知道这一点:将数组数组合成所有可能的组合,仅在Ruby中转发,建议类似于:

a.first.product(*a[1..-1]).map(&:join)
Run Code Online (Sandbox Code Playgroud)

但是这只对数组中的值和数组进行操作,我需要对参数名称的原始引用.

ruby hash combinations

19
推荐指数
1
解决办法
2666
查看次数

什么可以导致生成SIGHUP?

我们有大约40台运行相同硬件和软件的计算机.他们都运行Ubuntu 11.10.它们都只有一个用户帐户才能登录..profile文件设置为启动守护程序进程.守护程序的代码用C编写.

几周后,我们会收到一份报告,告知该守护程序不再运行.这不会发生在所有计算机上,只会发生一两个.我们不能始终如一地重现这个问题.

查看代码,应用程序在收到SIGHUP或SIGTERM时退出.

据我了解,当用户注销时会生成SIGHUP.在我们的例子中,用户从不注销.我想知道是否有可能因为其他原因而生成SIGHUP.任何其他想法将不胜感激.

linux ubuntu linux-kernel

18
推荐指数
2
解决办法
3万
查看次数