音视频相关研究-英年早逝的雷宵骅在读博士的项目

CSDN的老朋友,博主雷霄骅,于2016年7月17日去世,时年26岁,CSDN博客排名第52位。两届CSDN博客之星、微软MVP。中国传媒大学通信与信息系统专业在读博士。主要从事与广播电视有关的视音频技术的研究。包括视音频质量评价,视音频编解码,流媒体,媒资检索等。

虽然此前没拜读过此公的文章,盖因专业领域不同也;观其一生之成就,令我等望尘莫及,来自心底的唯有敬意!

Github:http://leixiaohua1020.github.io/

CSDN博客:http://blog.csdn.net/leixiaohua1020#

Experiment Projects

VideoEye

open-source stream analysis software
Project Page: https://github.com/leixiaohua1020/VideoEye

TIandSI

Tools used to calculate video's TI and SI
Project 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.Test picture


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 FFmpeg
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

Simplest ffmpeg audio player

The simplest audio player based on FFmpeg
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

Simplest ffmpeg pic encoder

The simplest picture encoder based on FFmpeg
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_picture_encoder

Simplest ffmpeg video encoder

The simplest video encoder based on FFmpeg
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

Simplest ffmpeg audio encoder

The simplest audio encoder based on FFmpeg
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_audio_encoder

Simplest ffmpeg streamer

The simplest streamer based on FFmpeg
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

Simplest ffmpeg mem handler

ffmpeg's example about read/write from memory
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

Simplest ffmpeg device

FFmpeg's libavdevice examples
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

Simplest ffmpeg format

FFmpeg's mux/demux/remux examples
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

Simplest ffmpeg video filter

use FFmpeg's AVFilter to add watermark in a video file
This project contains 2 projects:

Simplest ffmpeg swscale

Examples about handle pixel data using libswscale in FFmpeg
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_swscale

Simplest FFmpeg AVUtil

Example about FFmpeg's libavutil
Project Page: https://github.com/leixiaohua1020/simplest_ffmpeg_avutil

Simplest ffmpeg Mobile

ffmpeg examples in Android / IOS
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


FFmpeg Transplant Projects

ffplay for MFC

ffplay transplant to MFC
Project Page: https://github.com/leixiaohua1020/ffplaymfc

ffmpeg for MFC

ffmpeg transplant to MFC
Project Page: https://github.com/leixiaohua1020/ffmpegmfc


Multimedia Projects Development Examples

simplest media play

Examples about video/audio's playing
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

simplest encoder

Examples about video encoders
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

simplest libRTMP example

Examples about usage of libRTMP
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

simplest libVLC example

Examples about libVLC
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

simplest directshow example

Simple Examples about DirectShow
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

simplest flashmedia example

simple examples about using flash player to play RTMP/HTTP/HLS
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

simplest_video_website

simplest video website based JavaEE and FFmpeg
This 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 MFC
Project Page: https://github.com/leixiaohua1020/h264_analysis


评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值