安卓浏览器媒体播放器(stagefright?)显示的媒体名称

3
当Android浏览器打开可播放的媒体文件时,内置(stagefright?)媒体播放器会打开以流式传输。基于URL,在播放器对话框上显示此媒体的标题。 Android Media Player, with title highlighted 在这种情况下,URL是http://10.0.37.195/waug_mp3_128k。媒体播放器只使用路径的最后一部分作为其标题。
是否可以更改显示的标题?
我尝试了Content-Disposition头,但它没有效果:
Content-Disposition: inline; filename=Some Better Title
2个回答

1
短暂的回答是不行的。我认为你不能从服务器更改显示的标题以显示其他内容。
我相信播放器是默认的AudioPreview活动,来自默认的AOSP音乐应用程序。查看其源代码,显然它将仅使用URI的最后一个路径段来使用HTTP方案进行流式传输(它仅会查询本地内容/文件的媒体数据库)。
以下是相关的代码片段:
@Override
public void onCreate(Bundle icicle) {
    super.onCreate(icicle);

    // ...

    if (scheme.equals(ContentResolver.SCHEME_CONTENT)) {

        // ...

    } else if (scheme.equals("file")) {

        // ...

    } else {
        // We can't get metadata from the file/stream itself yet, because
        // that API is hidden, so instead we display the URI being played
        if (mPlayer.isPrepared()) {
            setNames();
        }
    }
}

// ...

public void setNames() {
    if (TextUtils.isEmpty(mTextLine1.getText())) {
        mTextLine1.setText(mUri.getLastPathSegment());
    }
    if (TextUtils.isEmpty(mTextLine2.getText())) {
        mTextLine2.setVisibility(View.GONE);
    } else {
        mTextLine2.setVisibility(View.VISIBLE);
    }
}

感谢您的明确答复! - Brad
很高兴能帮忙!想了想,你可以尝试一下配置服务器,将http://10.0.37.195/waug_mp3_128k的内容流式传输到类似于http://10.0.37.195/waug_mp3_128k/title_to_display这样的地址,或者干脆直接使用http://10.0.37.195/title_to_display :) - Joe
没错,这就是计划。幸运的是,因为我正在建立服务器,所以那部分很容易。 - Brad

0

尝试使用没有空格的文件名。我发现安卓在文件名中有空格时会出现问题。这可能会有所帮助。

Content-Disposition: inline; filename=Some_Better_Title

您的建议没有任何作用,抱歉。 - Brad

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接