首先技术调研,自学android,有不对的地方请指教。

android 多媒体视频播放: https://www.cnblogs.com/yishujun/p/5378114.html

想先找android原生播放视频的方式:

菜鸟教程:https://www.runoob.com/w3cnote/android-tutorial-mediaplayer.html

一、MediaPlayer播放音频

MediaPlayer + SurfaceView播放视频

VideoView来直接 播放视频

跟着下载项目,解决编译报错。运行,可以播放本地的MP4

http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4

https://flv2.bn.netease.com/videolib1/1811/26/OqJAZ893T/HD/OqJAZ893T-mobile.mp4

AndroidManifest.xml 加入权限
<uses-permission android:name="android.permission.INTERNET"/>

但只有VideoView 可以播放rtsp。但播放不流畅,这种方式只能播放rtsp流文件,不能播放实时流。

二、ijkPlayer

https://blog.csdn.net/a910626/article/details/93657087

基于FFmpeg的轻量级Android/iOS视频播放器

https://github.com/Bilibili/ijkplayer

ijkplayer是b站基于FFmpeg开源的播放器,ijkplayer提供了个IjkMediaPlayer,功能和用法跟MediaPlayer类似,但是强大很多

https://blog.csdn.net/y331271939/article/details/83217507

https://blog.csdn.net/qwe511455842/article/details/80373217

https://www.jianshu.com/p/0ae5924cc7d6

https://www.jianshu.com/p/a57bbdd78798

https://github.com/AriaLyy/BlogDemo

https://github.com/AriaLyy/BlogDemo/tree/master/FlowVideoTest

我下载的例子播放不了rtsp, 但是可以播放rtmp

三、GiraffePlayer

下载demo跑起来。可以播放本地MP4、http、 m3u8、rtsp不行。

四、vlc

https://www.cnblogs.com/tangchun/p/9686570.html

https://www.cnblogs.com/brooks-dotnet/p/5406110.html

https://github.com/mymbrooks/VLCAndroidDemo

https://blog.csdn.net/banketree/article/details/39575973

Vlc for android是一款开源安卓播放器,具备播放多媒体文件、光盘、设备以及网络流媒体协议等功能,支持ARMv7 CPU或一个x86 CPU的设备,所有播放控制特性都已经开发完整。

https://code.videolan.org/videolan/libvlc-android-samples/tree/master/

https://blog.csdn.net/lp8800/article/details/62221092

vlc 可以播放rtsp

流传输协议。我们最常见的有三种:
rtsp, hls, rtmp. Android系统的多媒体框架本身已经对除了rtmp以外的流媒体协议和视频格式都已经有所支持,但是问题在于支持的程度根据硬件平台不同行为可能有些许不同

https://www.jianshu.com/p/e744e5a8028c

对比ijkplayer和vlc,两个都是在ffmpeg基础上进行开发的媒体框架,各自有各自的长处。ijkplayer的性能表现和软硬解码的切换的灵活性十分好,并且支持SurfaceView, TextureView可更换渲染视频,并且可以选择使用OpenGLES渲染视频。ijkplayer解析和使用已有很多文章说明,其本质是SDL配合FFMPEG渲染解码。

https://blog.csdn.net/MX_Dream/article/details/86629642

五、使用VLC把MP4转成rtsp协议视频成功播放详细步骤

https://blog.csdn.net/qq_40015157/article/details/111238330

获得rtsp 视频源用于测试

六、编译问题

编译碰到的问题:
java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.lis.huapro-2/base.apk"],nativeLibraryDirectories=[/data/app/com.lis.huapro-2/lib/arm64, /vendor/lib64, /system/lib64]]] couldn't find "libijkffmpeg.so"找不到对应的so文件。
原文链接:https://blog.csdn.net/cjm2484836553/article/details/78725483ndk{abiFilters("armeabi-v7a", "x86")
}

编译时包support.v4报错:

gradle.properties

import android.support.v4.app.Fragment;

//import androidx.fragment.app.Fragment;

写法变了,下载support-v4包

七、安卓模拟器

http://www.genymotion.net/

https://www.genymotion.com/download/

android开发播放直播视频rtsp方案总结相关推荐

  1. Android开发 之 直播视频技术探究之---基础知识大纲介绍

    一.前言 最近各种视频直播app到处都是,各种霸屏,当然我们也是需要体验的,关于视频直播的软件这里就不介绍了,在不是技术的人来看,直播是一种潮流,是一种娱乐方式,但是作为一个高技术的,我们除了看看,更 ...

  2. android 3.0 m3u8,在Android中播放m3u8视频

    我想直播视频,并且它采用m3u8格式.所以,我想下面的代码在Android中播放m3u8视频 public class StreamingPlayer extends Activity impleme ...

  3. Android开发记录:视频提取音频

    文章目录 前言 使用方法 前言 Android开发中从视频中提取音频主要有三种方式结合FFmpeg,MP4Parser,MediaExtractor. 多媒体视频处理工具FFmpeg有非常强大的功能包 ...

  4. flv 播放直播视频

    flv播放直播视频 https://github.com/gwuhaolin/blog/issues/3

  5. android播放音乐权限,android开发播放音乐需要声明什么权限

    android开发播放音乐需要声明什么权限以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! android开发播放音乐需要 ...

  6. jsmpeg+websocket 播放单个或多个直播视频rtsp协议低延迟视频方案源码

    JSMpeg 是用 JavaScript 编写的视频播放器.它包括 MPEG-TS 解码器,MPEG 1 视频和 MP2 音频解码器,WebGL 和 Canvas2D 渲染器和 WebAudio 声音 ...

  7. 智能电视TV开发---手机直播视频客户端与智能电视通信

    在智能电视TV开发---直播视频客户端结构设计和实现中,我们设计出了简单的客户端,这里这个客户端与智能电视上面的TV服务端进行通信,实现手机控制电视来播放节目. 一.手机端UDP的client实现 在 ...

  8. 开源播放器 ijkplayer (一) :使用Ijkplayer播放直播视频

    1.ijkplayer 编码 IjkPlayer支持硬解码和软解码. 软解码时不会旋转视频角度这时需要你通过onInfo的what == IMediaPlayer.MEDIA_INFO_VIDEO_R ...

  9. Android 无法播放此视频

    1 概述 作为一个C语言开发的代码搬运工,想写个Android程序相当不容易.花了两天时间,翻了n篇帖子,感觉每个帖子都不完整,比如各个函数之前参数如何传递,如何把结果显示出来,这些都不完整.于是写这 ...

最新文章

  1. 随机梯度下降(Stochastic gradient descent)和 批量梯度下降(Batch gradient descent )的公式对比、实现对比
  2. Py之requests:python的requests包的简介、安装、使用方法详细攻略
  3. From Agile To DevOps - 微软开发部门 DevOps 经验谈
  4. 数据库事务、存储过程、函数以及触发器之间的区别和联系
  5. 自动放大_放大招!滴滴自动驾驶汽车通过图灵测试,quot;车技quot;不输老司机...
  6. 数据结构笔记(二十一)--二叉树的遍历
  7. 这个爬虫是你五一假期所需要的!
  8. authorization 传 就跨域_将Token添加到请求头Heade
  9. c语言课程设计作业五子棋,C语言课程设计报告五子棋游戏课程设计
  10. 计算机硬盘驱动器可以删吗,有关删除存储驱动器上的数据的注意事项
  11. iframe透明解决方案
  12. K100多功能嵌入吞吐式电动发卡读写一体机|读卡器技术选型问答
  13. html5+自动播放轮播插件,15个超强的jQuery/HTML5图片轮播插件
  14. CSS系列之修改滚动条的样式
  15. 字符串之间的大小比较方法
  16. 【添坑】高博ORB_SLAM
  17. Axure 8.1.0.3377 注册码激活
  18. 用双十一的故事串起碎片的网络协议(上)
  19. 有道翻译机,能让环球之旅一路畅通吗?
  20. UC研发团队热招中!(12月20日更新版)

热门文章

  1. 电源完整性系统设计总结
  2. 软件缺陷及其生命周期
  3. sublime text3 镜像下载_Sublime Text 3
  4. 实验四-1:输入一个字符,请判断是字母、数字还是其它字符。
  5. CCF 201712-4行车路线
  6. Windows Defender 打开后一片空白,安全中心不显示
  7. 第2节 部署虚拟机及常用系统配置
  8. Java DVD租借系统
  9. Android应用开发之RelativeLayout (相对布局)+梅花效果案例
  10. mybatis按姓名或手机号搜索