我们可以改变视频的扩展并播放它吗?

时间:2017-03-01 05:58:10

标签: android android-studio video download

目前我正在下载“.mp4”视频并将其保存在文件夹中。我想把它藏在画廊里。我知道如何隐藏文件夹。目前我将它保存在另一个扩展名中。像“.sss”一样,它正在保存。现在我该如何在我的应用程序中播放该视频。

我尝试更改扩展名并在文件中尝试播放,但它不起作用,这是我的代码

    File extStore = Environment.getExternalStorageDirectory()+"/"+"downloadFolder"+"/"+"video1.sss".replace(".sss",".mp4");

    JCVideoPlayer mJcVideoPlayerStandard = (JCVideoPlayerStandard) findViewById(R.id.videoplayer);
    mJcVideoPlayerStandard.setUp(extStore.getPath(),JCVideoPlayerStandard.SCREEN_LAYOUT_NORMAL, "Normal");
mJcVideoPlayerStandard.showContextMenu();

我正在使用此路径播放视频,并且我正在使用JcVideo播放器来播放视频,这里是它的gradle

compile 'fm.jiecao:jiecaovideoplayer:5.4'

当我以“.mp4”格式保存文件时,我可以播放视频。但是当我使用不同的格式时,我无法播放它。任何帮助都会更好

2 个答案:

答案 0 :(得分:0)

我认为你根本无法做到!通过更改视频文件的扩展名,您无法播放它。因为无论扩展名是什么,音频和视频格式编码格式都不会因更改扩展名而改变。如果播放器无法播放此类扩展,则不在其支持的视频编解码器中。

音频和视频格式定义视频文件如何逐字节构建。检查此Wikipedia page

答案 1 :(得分:0)

我认为你要做的是在播放之前将文件重命名为mp4?

如果是这样,上面的代码正在取代' .sss'与' .mp4'在搜索字符串中,而不是在文件系统中重命名。

换句话说:

File extStore = Environment.getExternalStorageDirectory()+"/"+"downloadFolder"+"/"+"video1.sss".replace(".sss",".mp4");

简单地转换为:

File extStore = Environment.getExternalStorageDirectory()+"/"+"downloadFolder"+"/"+"video1.mp4";

由于您的实际文件仍然是video1.sss,当您尝试播放名为video1.mp4的文件时,您会收到错误,因为无法找到它。

如果您确实要重命名文件,可以这样做:

File file1 = new File("Path of file");
File file2 = new File("Path with new name for the file");
boolean ok = file1.renameTo(file2);