音视频相关研究-英年早逝的雷宵骅在读博士的项目
2016-08-08 14:11
633 查看
CSDN的老朋友,博主雷霄骅,于2016年7月17日去世,时年26岁,CSDN博客排名第52位。两届CSDN博客之星、微软MVP。中国传媒大学通信与信息系统专业在读博士。主要从事与广播电视有关的视音频技术的研究。包括视音频质量评价,视音频编解码,流媒体,媒资检索等。
虽然此前没拜读过此公的文章,盖因专业领域不同也;观其一生之成就,令我等望尘莫及,来自心底的唯有敬意!
Github:http://leixiaohua1020.github.io/
CSDN博客:http://blog.csdn.net/leixiaohua1020#
Project Page: https://github.com/leixiaohua1020/VideoEye
Project Page: https://github.com/leixiaohua1020/TIandSI
I also make some batch files for these FFmpeg demos:
Git
Git Clone All:
simplest_ffmpeg_demos_git_clone_all.sh
Git Update All:
simplest_ffmpeg_demos_git_pull_all.sh
Git Reset All:
simplest_ffmpeg_demos_git_reset_all.sh
Git Archive All:
simplest_ffmpeg_demos_git_archive_all.sh
Compile
VC++ Compile All:
simplest_ffmpeg_demos_compile_devenv_all.bat
CL.exe Compile All:
simplest_ffmpeg_demos_compile_cl_all.bat
MinGW Compile All:
simplest_ffmpeg_demos_compile_mingw_all.sh
GCC (Linux/MacOS) Compile All:
simplest_ffmpeg_demos_compile_gcc_all.sh
It contains 3 project:
simplest_ffmpeg_player: Standard Version, suitable for biginner.
simplest_ffmpeg_player_su: SU(SDL Update)Version, Add SDL Event.
simplest_ffmpeg_decoder: A decoder that can demux container format. Uses libavcodec and libavformat.
simplest_ffmpeg_decoder_pure: A pure decoder. Only use libavcodec (Without libavformat).
simplest_video_play_sdl2. Example about using SDL2 play YUV data.
simplest_ffmpeg_helloworld: Output informations about FFmpeg libraries.
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_player
It contains 3 project:
simplest_ffmpeg_audio_player: Audio player based on FFmpeg and SDL.
simplest_ffmpeg_audio_decoder: Audio decoder. Uses libavcodec and libavformat.
simplest_audio_play_sdl2: Example about using SDL2 play PCM data.
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_audio_player
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_picture_encoder
It contains 2 project:
simplest_ffmpeg_video_encoder: Simplest video encoder. It uses libavcodec and libavformat.
simplest_ffmpeg_video_encoder_pure: Pure video encoder. It only uses libavcodec to encode video (without libavformat).
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_video_encoder
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_audio_encoder
It contains 2 project:
simplest_ffmpeg_streamer: stream local media files to streaming media server.
simplest_ffmpeg_receiver: save streaming media to a file.
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_streamer
It contains 2 project:
simplest_ffmpeg_mem_player:Video Player that play video data in memory.
simplest_ffmpeg_mem_transcoder:Video Converter that convert video data in memory.
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_mem_handler
This Project contains 2 examples based on FFmpeg's libavdevice:
simplest_ffmpeg_grabdesktop: Screen Capture.
simplest_ffmpeg_readcamera: Read Camera.
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_device
This Project contains examples about Video Fomat Processing based on FFmpeg:
simplest_ffmpeg_demuxer: Split Audio and Video bitstreams.
simplest_ffmpeg_demuxer_simple: Split Audio and Video bitstreams.
simplest_ffmpeg_muxer: Put Audio and Video bitstreams together.
simplest_ffmpeg_remuxer: Change Container Fomat of Video file.
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_format
This project contains 2 projects:
simplest_ffmpeg_video_filter: Put a PNG picture as watermark to a video file, use some libraries such as libavfilter and libavcodec.
simplest_ffmpeg_video_filter_pure:Add excellent effect to YUV raw data, only use libavfilter.Project Page:
https://github.com/leixiaohua1020/simplest_ffmpeg_video_filter
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_swscale
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_avutil
This project contains examples about handling multi-media data based on FFmpeg on mobile device.
[Android]
simplest_android_player: Video player based on Android API
simplest_ffmpeg_android_helloworld: Simplest HelloWorld program based on FFmpeg in Android.
simplest_ffmpeg_android_decoder: Simplest decoder based on FFmpeg in Android.
simplest_ffmpeg_android_decoder_onelib: Simplest decoder based on FFmpeg in Android - One Library.
simplest_ffmpeg_android_streamer: Simplest streamer based on FFmpeg in Android.
simplest_ffmpeg_android_transcoder: Transcoder transplant from ffmpeg.c in Android.
simplest_sdl_android_helloworld: Simplest program based on SDL in Android.
[IOS]
simplest_ios_player: Video player based on IOS API
simplest_ffmpeg_ios_helloworld: Simplest HelloWorld program based on FFmpeg in IOS.
simplest_ffmpeg_ios_decoder: Simplest decoder based on FFmpeg in IOS.
simplest_ffmpeg_ios_streamer: Simplest streamer based on FFmpeg in IOS.
simplest_ffmpeg_ios_transcoder: Transcoder transplant from ffmpeg.c in IOS.
simplest_sdl_ios_helloworld: Simplest program based on SDL in IOS.
[Win Phone]
simplest_ffmpeg_winphone_helloworld: Simplest HelloWorld program based on FFmpeg in Windows Phone.
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_mobile
Project Page: https://github.com/leixiaohua1020/ffplaymfc
Project Page: https://github.com/leixiaohua1020/ffmpegmfc
It contains following programs:
simplest_audio_play_directsound:Play PCM raw audio data using DirectSound.
simplest_audio_play_sdl2:Play PCM raw audio data using SDL2.
simplest_video_play_direct3d:Play RGB/YUV raw video data using Direct3D's Surface.
simplest_video_play_direct3d_texture:Play RGB raw video data using Direct3D's Texture.
simplest_video_play_gdi:Play RGB/YUV raw video data using GDI.
simplest_video_play_opengl:Play RGB/YUV raw video data using OpenGL.
simplest_video_play_opengl_texture:Play YUV raw video data using OpenGL's Texture.
simplest_video_play_sdl2:Play RGB/YUV raw video data using SDL2.
Project Page: https://github.com/leixiaohua1020/simplest_media_play
This solutions contains examples about video encoders:
simplest_vpx_encoder: simplest encoder based on libvpx
simplest_x264_encoder: simplest encoder based on libx264
simplest_x265_encoder: simplest encoder based on libx265
Project Page: https://github.com/leixiaohua1020/simplest_encoder
It contains following projects:
simplest_librtmp_receive: Receive RTMP streams and save as FLV file.
simplest_librtmp_send_flv: Stream FLV file to RTMP streaming server.
simplest_librtmp_send264: Stream H.264 raw data to RTMP streaming server.
Project Page: https://github.com/leixiaohua1020/simplest_librtmp_example
It contains following project:
playerGUI: Simplest libVLC Player GUI.
simplest_libvlc_example: Simplest libVLC Player.
simplest_libvlc_streamer: Simplest libVLC Streamer.
Project Page: https://github.com/leixiaohua1020/simplest_libvlc_example
It contains following projects:
simplest_directshow_player: Simplest DirectShow Player.
simplest_directshow_player_custom: Simplest DirectShow Player (Custom).
playerGUI: Simplest DirectShow Player GUI.
simplest_directshow_info: Simplest DirectShow Info.
simplest_directshow_filter: Unfinished yet.
Project Page: https://github.com/leixiaohua1020/simplest_directshow_example
This project contains following examples about Flash streaming media:
simplest_as3_rtmp_player: Simplest RTMP Player(ActionScript)
simplest_as3_rtmp_streamer: Simplest RTMP Streamer (ActionScript)
rtmp_sample_player_adobe: Sample Player extracted from Adobe Flash Media Server
rtmp_sample_player_wowza: Sample Player extracted from Wowza Server
rtmp_sample_player_flowplayer: RTMP/HTTP Player based on FlowPlayer (with RTMP plugin)
rtmp_sample_player_videojs: RTMP/HTTP Player based on VideoJS
rtmp_sample_player_jwplayer: RTMP/HTTP Player based on JWPlayer
hls_sample_player_flowplayer: HLS Player based on FlowPlayer (with HLS plugin)
hls_video_player_html5: HLS/HTTP Player based on HTML5
activex_vlc_player: Video Player based on VLC ActiveX
Note: Some example couldn't work directly. You should upload them to web server such as Nginx or Apache.
Project Page: https://github.com/leixiaohua1020/simplest_flashmedia_example
This software is the simplest video website.It support live broadcast and VOD
Project Page: https://github.com/leixiaohua1020/simplest_video_website
Project Page: https://github.com/leixiaohua1020/h264_analysis
虽然此前没拜读过此公的文章,盖因专业领域不同也;观其一生之成就,令我等望尘莫及,来自心底的唯有敬意!
Github:http://leixiaohua1020.github.io/
CSDN博客:http://blog.csdn.net/leixiaohua1020#
Experiment Projects
VideoEye
open-source stream analysis softwareProject Page: https://github.com/leixiaohua1020/VideoEye
TIandSI
Tools used to calculate video's TI and SIProject Page: https://github.com/leixiaohua1020/TIandSI
FFmpeg Development Examples
FFmpeg Examples can be used in different aspect of video / audio processing. The following picture shows the process of transcoding. It shows the position of these demos during the process of transcoding.I also make some batch files for these FFmpeg demos:
Git
Git Clone All:
simplest_ffmpeg_demos_git_clone_all.sh
Git Update All:
simplest_ffmpeg_demos_git_pull_all.sh
Git Reset All:
simplest_ffmpeg_demos_git_reset_all.sh
Git Archive All:
simplest_ffmpeg_demos_git_archive_all.sh
Compile
VC++ Compile All:
simplest_ffmpeg_demos_compile_devenv_all.bat
CL.exe Compile All:
simplest_ffmpeg_demos_compile_cl_all.bat
MinGW Compile All:
simplest_ffmpeg_demos_compile_mingw_all.sh
GCC (Linux/MacOS) Compile All:
simplest_ffmpeg_demos_compile_gcc_all.sh
Simplest ffmpeg player
The simplest video player based on FFmpegIt contains 3 project:
simplest_ffmpeg_player: Standard Version, suitable for biginner.
simplest_ffmpeg_player_su: SU(SDL Update)Version, Add SDL Event.
simplest_ffmpeg_decoder: A decoder that can demux container format. Uses libavcodec and libavformat.
simplest_ffmpeg_decoder_pure: A pure decoder. Only use libavcodec (Without libavformat).
simplest_video_play_sdl2. Example about using SDL2 play YUV data.
simplest_ffmpeg_helloworld: Output informations about FFmpeg libraries.
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_player
Simplest ffmpeg audio player
The simplest audio player based on FFmpegIt contains 3 project:
simplest_ffmpeg_audio_player: Audio player based on FFmpeg and SDL.
simplest_ffmpeg_audio_decoder: Audio decoder. Uses libavcodec and libavformat.
simplest_audio_play_sdl2: Example about using SDL2 play PCM data.
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_audio_player
Simplest ffmpeg pic encoder
The simplest picture encoder based on FFmpegProject Page: https://github.com/leixiaohua1020/simplest_ffmpeg_picture_encoder
Simplest ffmpeg video encoder
The simplest video encoder based on FFmpegIt contains 2 project:
simplest_ffmpeg_video_encoder: Simplest video encoder. It uses libavcodec and libavformat.
simplest_ffmpeg_video_encoder_pure: Pure video encoder. It only uses libavcodec to encode video (without libavformat).
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_video_encoder
Simplest ffmpeg audio encoder
The simplest audio encoder based on FFmpegProject Page: https://github.com/leixiaohua1020/simplest_ffmpeg_audio_encoder
Simplest ffmpeg streamer
The simplest streamer based on FFmpegIt contains 2 project:
simplest_ffmpeg_streamer: stream local media files to streaming media server.
simplest_ffmpeg_receiver: save streaming media to a file.
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_streamer
Simplest ffmpeg mem handler
ffmpeg's example about read/write from memoryIt contains 2 project:
simplest_ffmpeg_mem_player:Video Player that play video data in memory.
simplest_ffmpeg_mem_transcoder:Video Converter that convert video data in memory.
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_mem_handler
Simplest ffmpeg device
FFmpeg's libavdevice examplesThis Project contains 2 examples based on FFmpeg's libavdevice:
simplest_ffmpeg_grabdesktop: Screen Capture.
simplest_ffmpeg_readcamera: Read Camera.
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_device
Simplest ffmpeg format
FFmpeg's mux/demux/remux examplesThis Project contains examples about Video Fomat Processing based on FFmpeg:
simplest_ffmpeg_demuxer: Split Audio and Video bitstreams.
simplest_ffmpeg_demuxer_simple: Split Audio and Video bitstreams.
simplest_ffmpeg_muxer: Put Audio and Video bitstreams together.
simplest_ffmpeg_remuxer: Change Container Fomat of Video file.
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_format
Simplest ffmpeg video filter
use FFmpeg's AVFilter to add watermark in a video fileThis project contains 2 projects:
simplest_ffmpeg_video_filter: Put a PNG picture as watermark to a video file, use some libraries such as libavfilter and libavcodec.
simplest_ffmpeg_video_filter_pure:Add excellent effect to YUV raw data, only use libavfilter.Project Page:
https://github.com/leixiaohua1020/simplest_ffmpeg_video_filter
Simplest ffmpeg swscale
Examples about handle pixel data using libswscale in FFmpegProject Page: https://github.com/leixiaohua1020/simplest_ffmpeg_swscale
Simplest FFmpeg AVUtil
Example about FFmpeg's libavutilProject Page: https://github.com/leixiaohua1020/simplest_ffmpeg_avutil
Simplest ffmpeg Mobile
ffmpeg examples in Android / IOSThis project contains examples about handling multi-media data based on FFmpeg on mobile device.
[Android]
simplest_android_player: Video player based on Android API
simplest_ffmpeg_android_helloworld: Simplest HelloWorld program based on FFmpeg in Android.
simplest_ffmpeg_android_decoder: Simplest decoder based on FFmpeg in Android.
simplest_ffmpeg_android_decoder_onelib: Simplest decoder based on FFmpeg in Android - One Library.
simplest_ffmpeg_android_streamer: Simplest streamer based on FFmpeg in Android.
simplest_ffmpeg_android_transcoder: Transcoder transplant from ffmpeg.c in Android.
simplest_sdl_android_helloworld: Simplest program based on SDL in Android.
[IOS]
simplest_ios_player: Video player based on IOS API
simplest_ffmpeg_ios_helloworld: Simplest HelloWorld program based on FFmpeg in IOS.
simplest_ffmpeg_ios_decoder: Simplest decoder based on FFmpeg in IOS.
simplest_ffmpeg_ios_streamer: Simplest streamer based on FFmpeg in IOS.
simplest_ffmpeg_ios_transcoder: Transcoder transplant from ffmpeg.c in IOS.
simplest_sdl_ios_helloworld: Simplest program based on SDL in IOS.
[Win Phone]
simplest_ffmpeg_winphone_helloworld: Simplest HelloWorld program based on FFmpeg in Windows Phone.
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_mobile
FFmpeg Transplant Projects
ffplay for MFC
ffplay transplant to MFCProject Page: https://github.com/leixiaohua1020/ffplaymfc
ffmpeg for MFC
ffmpeg transplant to MFCProject Page: https://github.com/leixiaohua1020/ffmpegmfc
Multimedia Projects Development Examples
simplest media play
Examples about video/audio's playingIt contains following programs:
simplest_audio_play_directsound:Play PCM raw audio data using DirectSound.
simplest_audio_play_sdl2:Play PCM raw audio data using SDL2.
simplest_video_play_direct3d:Play RGB/YUV raw video data using Direct3D's Surface.
simplest_video_play_direct3d_texture:Play RGB raw video data using Direct3D's Texture.
simplest_video_play_gdi:Play RGB/YUV raw video data using GDI.
simplest_video_play_opengl:Play RGB/YUV raw video data using OpenGL.
simplest_video_play_opengl_texture:Play YUV raw video data using OpenGL's Texture.
simplest_video_play_sdl2:Play RGB/YUV raw video data using SDL2.
Project Page: https://github.com/leixiaohua1020/simplest_media_play
simplest encoder
Examples about video encodersThis solutions contains examples about video encoders:
simplest_vpx_encoder: simplest encoder based on libvpx
simplest_x264_encoder: simplest encoder based on libx264
simplest_x265_encoder: simplest encoder based on libx265
Project Page: https://github.com/leixiaohua1020/simplest_encoder
simplest libRTMP example
Examples about usage of libRTMPIt contains following projects:
simplest_librtmp_receive: Receive RTMP streams and save as FLV file.
simplest_librtmp_send_flv: Stream FLV file to RTMP streaming server.
simplest_librtmp_send264: Stream H.264 raw data to RTMP streaming server.
Project Page: https://github.com/leixiaohua1020/simplest_librtmp_example
simplest libVLC example
Examples about libVLCIt contains following project:
playerGUI: Simplest libVLC Player GUI.
simplest_libvlc_example: Simplest libVLC Player.
simplest_libvlc_streamer: Simplest libVLC Streamer.
Project Page: https://github.com/leixiaohua1020/simplest_libvlc_example
simplest directshow example
Simple Examples about DirectShowIt contains following projects:
simplest_directshow_player: Simplest DirectShow Player.
simplest_directshow_player_custom: Simplest DirectShow Player (Custom).
playerGUI: Simplest DirectShow Player GUI.
simplest_directshow_info: Simplest DirectShow Info.
simplest_directshow_filter: Unfinished yet.
Project Page: https://github.com/leixiaohua1020/simplest_directshow_example
simplest flashmedia example
simple examples about using flash player to play RTMP/HTTP/HLSThis project contains following examples about Flash streaming media:
simplest_as3_rtmp_player: Simplest RTMP Player(ActionScript)
simplest_as3_rtmp_streamer: Simplest RTMP Streamer (ActionScript)
rtmp_sample_player_adobe: Sample Player extracted from Adobe Flash Media Server
rtmp_sample_player_wowza: Sample Player extracted from Wowza Server
rtmp_sample_player_flowplayer: RTMP/HTTP Player based on FlowPlayer (with RTMP plugin)
rtmp_sample_player_videojs: RTMP/HTTP Player based on VideoJS
rtmp_sample_player_jwplayer: RTMP/HTTP Player based on JWPlayer
hls_sample_player_flowplayer: HLS Player based on FlowPlayer (with HLS plugin)
hls_video_player_html5: HLS/HTTP Player based on HTML5
activex_vlc_player: Video Player based on VLC ActiveX
Note: Some example couldn't work directly. You should upload them to web server such as Nginx or Apache.
Project Page: https://github.com/leixiaohua1020/simplest_flashmedia_example
simplest_video_website
simplest video website based JavaEE and FFmpegThis software is the simplest video website.It support live broadcast and VOD
Project Page: https://github.com/leixiaohua1020/simplest_video_website
Small Analysis Tools
H264 Analysis
A H.264 stream analysis software based on MFCProject Page: https://github.com/leixiaohua1020/h264_analysis
相关文章推荐
- 音视频相关研究-雷宵骅在读博士的项目
- HI3531视频编码解码处理芯片项目相关理解和整理
- DM368开发 -- 视频监控系统相关技术研究(转毕设)
- 从今天开始研究Flex的相关项目开发
- 韦东山第三期视频电子书项目轮询输入实验的相关说明
- ThinkPHP项目笔记之RBAC(权限相关视频讲解篇
- 关于讲座“如何更好地做研究以及博士申请相关问题”的总结
- Android开源项目-Jamendo音乐播放器研究与优化-Adapter相关
- VS.NET中必须研究的项目(4)-- Fitch and Mather Stocks
- 项目需求分析研究
- 基于数据挖掘的课程相关 性方法研究与实现
- 《编写有效用例》读书笔记(4)——项目相关人员和执行者
- GEF源码分析(一) eclipse的GEF相关项目说明
- 关于嵌入式图形项目研究
- Cuyahoga代码的研究之一:Cuyahoga.Corel项目
- 由于工作的关系,出差在外,很久没有更新了,最近接触到几个优秀的开源项目,准备研究研究
- [项目管理]Microsoft Office Project 2003 简体中文版(附电子书及视频讲座)
- 值得研究的 工作流 开源项目
- 这两天花了点时间,写了一个为VS.Net项目解除VSS相关信息的小工具。
- VS.NET中必须研究的项目(2)--MSPetshop