Android URL如何转成视频/音频,可行吗?

Android Java 如何使URL转成音频和视频?
url示例:https://12.12.12.12:1223/mms/abc123.jpg
以上示例URL可以转成bitmap,但是如何将表示视频/音频的URL转成视频/音频,

URL示例:
https://12.12.12.12:1223/mms/abc123.mp4 //视频
https://12.12.12.12:1223/mms/abc123.amr //音频

不是为了播放,上面的bitmap是彩信的附件,现在我想还原代表mp4、amr的url成音频或视频,然后添加到彩信的附件发出去
求指点
String URL 转 bitmap 示例:

private Bitmap urlBitmap(String urlString) {
        HttpURLConnection urlConnection = null;
        BufferedInputStream in = null;
        Bitmap bitmap = null;
        try {
            final URL url = new URL(urlString);
            urlConnection = (HttpURLConnection) url.openConnection();
            in = new BufferedInputStream(urlConnection.getInputStream(), 8 * 1024);
            bitmap = BitmapFactory.decodeStream(in);
            ByteArrayOutputStream bos = new ByteArrayOutputStream();
            bitmap.compress(Bitmap.CompressFormat.PNG, 100, bos);
            byte[] bytes = bos.toByteArray();
            bitmap = BitmapFactory.decodeByteArray(bytes, 0, bytes.length);
        } catch (final IOException e) {
            e.printStackTrace();
        } finally {
            if (urlConnection != null) {
                urlConnection.disconnect();
            }
            try {
                if (in != null) {
                    in.close();
                }
            } catch (final IOException e) {
                e.printStackTrace();
            }
        }
        return bitmap;
    }
如何像上面一样返回视频/音频?

可以更改接收类型,就像下载文件一样,下载就行,然后存入本地,最后调用本地文件发送,本质上图片和视频都是资源都可以下载的。

望采纳哦,深夜回复不易。

不管你是视频还是音频,只需要把它当成附件添加即可。

可参考这篇文章(它就是把 uri 添加成附件的):https://blog.csdn.net/weixin_28867883/article/details/117506814

音视频文件,同样可以像上面图片代码一样,直接转换为相应的url附件的,只不过大小有限制

可以使用Android中的MediaPlayer类来转换URL到视频和音频。

例如:
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource(url);
mediaPlayer.prepare();
mediaPlayer.start();

谢谢各位的指点,尝试了很多种方式,没找到将url转成视频/音频的,但可以将他改成byte[]数组
解决:

private byte[] mmsVideoOrAudio(String urlString) {
        BufferedOutputStream bos = null;
        InputStream is = null;
        ByteArrayOutputStream output = new ByteArrayOutputStream();
        try {
            is = new URL(urlString).openStream();
            byte[] buffer = new byte[1024 * 4];
            int n = 0;
            while (-1 != (n = is.read(buffer))) {
                output.write(buffer, 0, n);
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (is != null) {
                try {
                    is.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }

            if (bos != null) {
                try {
                    bos.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }

        }
        byte[] bytes = output.toByteArray();
        return bytes;

    }