如何在Amazon S3上使用MediaInfo?

时间:2015-09-28 22:10:50

标签: amazon-s3 mediainfo

根据MediaInfo ChangeLog,在v0.7.76中添加了Amazon S3支持,甚至在v0.7.77(最新版本)中进行了补丁。

但是,我找不到任何关于如何实现它的文档。它不在CLI帮助菜单中,也不在SourceForge项目页面中。我希望有人可以在SourceForge论坛关闭时获得一些见解。

如何制作MediaInfo命令以将Amazon S3与Access Key&密钥?我正在使用CLI。

我能找到的最接近的东西是某人的Java代码示例: http://fossies.org/linux/MediaInfo_CLI/MediaInfoLib/Source/Example/HowToUse_Dll.JNA.java

看起来他们正在为S3制作自定义HTTP请求并将响应流式传输到MediaInfo。我不确定。我不懂Java;我只知道Bash,Ruby,PHP。

有没有人成功让MediaInfo使用S3;这样的事情?

mediainfo https://AWSAccessKeyId:AWSSecretAccessKey@s3.amazonaws.com/bucketname/filename

3 个答案:

答案 0 :(得分:3)

Java示例是关于如何使用Java下载并从Memory向MediaInfo发送数据的示例。现在,MediaInfo对S3有本机支持。所以只需提供此网址。

唯一的问题是你必须拥有libcurl和使用libcurl支持编译的MediaInfo。这在所有平台上都不可用(例如,在Windows上,您必须将libcurl网站上的libcurl.dll放在与mediainfo相同的文件夹中)。

计划更好地提供此类支持(在所有平台上直接提供libcurl并进行全面测试),但没有ETA。

答案 1 :(得分:2)

可以使用以下命令在linux发行版上使用libcurl构建Mediainfo可执行文件:(我使用了centos)

yum groupinstall 'Development Tools'
yum install libcurl-devel
yum install wget
wget http://mediaarea.net/download/binary/mediainfo/17.12/MediaInfo_CLI_17.12_GNU_FromSource.tar.xz
tar xvf MediaInfo_CLI_17.12_GNU_FromSource.tar.xz
cd MediaInfo_CLI_GNU_FromSource/
./CLI_Compile.sh --with-libcurl
cd MediaInfo/Project/GNU/CLI
./mediainfo --version

然后,以下命令将为Amazon S3网址提供媒体信息。

mediainfo --Output=XML https://AWSAccessKeyId:AWSSecretAccessKey@s3.amazonaws.com/bucketname/filename

上述命令无法使用具有特殊字符的AWS密钥(文件名)。通过使用预先签名的URL,可以在AWS Keys中使用特殊字符。

aws s3 presign 's3://bucketname/testing/mini & bar™©.mp4' 
mediainfo 'presignd url'

答案 2 :(得分:0)

我面临同样的问题。请试试这个,它会起作用

https://{yourAwsAccessKey}:{yourAwswsSecretKey}@{yourBucketName}.s3.awsamazon.com/{file_path_in_bucket}