Skip to content

Commit

Permalink
receiver
Browse files Browse the repository at this point in the history
  • Loading branch information
leixiaohua1020 committed Jul 14, 2015
1 parent 2ec7e5c commit 2d6343b
Show file tree
Hide file tree
Showing 114 changed files with 24,490 additions and 11 deletions.
9 changes: 9 additions & 0 deletions simplest_ffmpeg_receiver/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
Debug/
Release/

*.exe
*.obj
*.out
*.exe.manifest
*.out.dSYM/
*.flv
Binary file added simplest_ffmpeg_receiver/avcodec-55.dll
Binary file not shown.
Binary file added simplest_ffmpeg_receiver/avdevice-55.dll
Binary file not shown.
Binary file added simplest_ffmpeg_receiver/avfilter-4.dll
Binary file not shown.
Binary file added simplest_ffmpeg_receiver/avformat-55.dll
Binary file not shown.
Binary file added simplest_ffmpeg_receiver/avutil-52.dll
Binary file not shown.
19 changes: 19 additions & 0 deletions simplest_ffmpeg_receiver/compile_cl.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
::最简单的基于FFmpeg的收流器(接收RTMP)----命令行编译
::Simplest FFmpeg Receiver (Receive RTMP)----Compile in Cmd
::
::雷霄骅 Lei Xiaohua
::leixiaohua1020@126.com
::中国传媒大学/数字电视技术
::Communication University of China / Digital TV Technology
::http://blog.csdn.net/leixiaohua1020
::
::VS2010 Environment
call "D:\Program Files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat"
::include
@set INCLUDE=include;%INCLUDE%;
::lib
@set LIB=lib;%LIB%;
::compile and link
cl simplest_ffmpeg_receiver.cpp /link avcodec.lib avformat.lib avutil.lib ^
avdevice.lib avfilter.lib postproc.lib swresample.lib swscale.lib /OPT:NOREF
exit
13 changes: 13 additions & 0 deletions simplest_ffmpeg_receiver/compile_gcc.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#! /bin/sh
#最简单的基于FFmpeg的收流器(接收RTMP)----命令行编译
#Simplest FFmpeg Receiver (Receive RTMP)----Compile in Shell
#
#雷霄骅 Lei Xiaohua
#leixiaohua1020@126.com
#中国传媒大学/数字电视技术
#Communication University of China / Digital TV Technology
#http://blog.csdn.net/leixiaohua1020
#
#compile
gcc simplest_ffmpeg_receiver.cpp -g -o simplest_ffmpeg_receiver.out \
-I /usr/local/include -L /usr/local/lib -lavformat -lavcodec -lavutil
13 changes: 13 additions & 0 deletions simplest_ffmpeg_receiver/compile_mingw.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#! /bin/sh
#最简单的基于FFmpeg的收流器(接收RTMP) ----MinGW命令行编译
#Simplest FFmpeg Receiver (Receive RTMP) ----Compile in MinGW
#
#雷霄骅 Lei Xiaohua
#leixiaohua1020@126.com
#中国传媒大学/数字电视技术
#Communication University of China / Digital TV Technology
#http://blog.csdn.net/leixiaohua1020
#
#compile
g++ simplest_ffmpeg_receiver.cpp -g -o simplest_ffmpeg_receiver.exe \
-I /usr/local/include -L /usr/local/lib -lavformat -lavcodec -lavutil
288 changes: 288 additions & 0 deletions simplest_ffmpeg_receiver/include/_mingw.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,288 @@
#ifndef __MINGW_H
/*
* _mingw.h
*
* Mingw specific macros included by ALL include files.
*
* This file is part of the Mingw32 package.
*
* Contributors:
* Created by Mumit Khan <khan@xraylith.wisc.edu>
*
* THIS SOFTWARE IS NOT COPYRIGHTED
*
* This source code is offered for use in the public domain. You may
* use, modify or distribute it freely.
*
* This code is distributed in the hope that it will be useful but
* WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
* DISCLAIMED. This includes but is not limited to warranties of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*
*/
#define __MINGW_H

#define __MINGW32_VERSION 3.20
#define __MINGW32_MAJOR_VERSION 3
#define __MINGW32_MINOR_VERSION 20
#define __MINGW32_PATCHLEVEL 0

#if __GNUC__ >= 3
#ifndef __PCC__
#pragma GCC system_header
#endif
#endif

/* These are defined by the user (or the compiler)
to specify how identifiers are imported from a DLL.
__DECLSPEC_SUPPORTED Defined if dllimport attribute is supported.
__MINGW_IMPORT The attribute definition to specify imported
variables/functions.
_CRTIMP As above. For MS compatibility.
__MINGW32_VERSION Runtime version.
__MINGW32_MAJOR_VERSION Runtime major version.
__MINGW32_MINOR_VERSION Runtime minor version.
__MINGW32_BUILD_DATE Runtime build date.
Macros to enable MinGW features which deviate from standard MSVC
compatible behaviour; these may be specified directly in user code,
activated implicitly, (e.g. by specifying _POSIX_C_SOURCE or such),
or by inclusion in __MINGW_FEATURES__:
__USE_MINGW_ANSI_STDIO Select a more ANSI C99 compatible
implementation of printf() and friends.
Other macros:
__int64 define to be long long. Using a typedef
doesn't work for "unsigned __int64"
All headers should include this first, and then use __DECLSPEC_SUPPORTED
to choose between the old ``__imp__name'' style or __MINGW_IMPORT
style declarations. */


/* Manifest definitions identifying the flag bits, controlling activation
* of MinGW features, as specified by the user in __MINGW_FEATURES__.
*/
#define __MINGW_ANSI_STDIO__ 0x0000000000000001ULL
/*
* The following three are not yet formally supported; they are
* included here, to document anticipated future usage.
*/
#define __MINGW_LC_EXTENSIONS__ 0x0000000000000050ULL
#define __MINGW_LC_MESSAGES__ 0x0000000000000010ULL
#define __MINGW_LC_ENVVARS__ 0x0000000000000040ULL

/* Try to avoid problems with outdated checks for GCC __attribute__ support. */
#undef __attribute__

#if defined (__PCC__)
# undef __DECLSPEC_SUPPORTED
# ifndef __MINGW_IMPORT
# define __MINGW_IMPORT extern
# endif
# ifndef _CRTIMP
# define _CRTIMP
# endif
# ifndef __cdecl
# define __cdecl _Pragma("cdecl")
# endif
# ifndef __stdcall
# define __stdcall _Pragma("stdcall")
# endif
# ifndef __int64
# define __int64 long long
# endif
# ifndef __int32
# define __int32 long
# endif
# ifndef __int16
# define __int16 short
# endif
# ifndef __int8
# define __int8 char
# endif
# ifndef __small
# define __small char
# endif
# ifndef __hyper
# define __hyper long long
# endif
# ifndef __volatile__
# define __volatile__ volatile
# endif
# ifndef __restrict__
# define __restrict__ restrict
# endif
# define NONAMELESSUNION
#elif defined(__GNUC__)
# ifdef __declspec
# ifndef __MINGW_IMPORT
/* Note the extern. This is needed to work around GCC's
limitations in handling dllimport attribute. */
# define __MINGW_IMPORT extern __attribute__ ((__dllimport__))
# endif
# ifndef _CRTIMP
# ifdef __USE_CRTIMP
# define _CRTIMP __attribute__ ((dllimport))
# else
# define _CRTIMP
# endif
# endif
# define __DECLSPEC_SUPPORTED
# else /* __declspec */
# undef __DECLSPEC_SUPPORTED
# undef __MINGW_IMPORT
# ifndef _CRTIMP
# define _CRTIMP
# endif
# endif /* __declspec */
/*
* The next two defines can cause problems if user code adds the
* __cdecl attribute like so:
* void __attribute__ ((__cdecl)) foo(void);
*/
# ifndef __cdecl
# define __cdecl __attribute__ ((__cdecl__))
# endif
# ifndef __stdcall
# define __stdcall __attribute__ ((__stdcall__))
# endif
# ifndef __int64
# define __int64 long long
# endif
# ifndef __int32
# define __int32 long
# endif
# ifndef __int16
# define __int16 short
# endif
# ifndef __int8
# define __int8 char
# endif
# ifndef __small
# define __small char
# endif
# ifndef __hyper
# define __hyper long long
# endif
#else /* ! __GNUC__ && ! __PCC__ */
# ifndef __MINGW_IMPORT
# define __MINGW_IMPORT __declspec(dllimport)
# endif
# ifndef _CRTIMP
# define _CRTIMP __declspec(dllimport)
# endif
# define __DECLSPEC_SUPPORTED
# define __attribute__(x) /* nothing */
#endif

#if defined (__GNUC__) && defined (__GNUC_MINOR__)
#define __MINGW_GNUC_PREREQ(major, minor) \
(__GNUC__ > (major) \
|| (__GNUC__ == (major) && __GNUC_MINOR__ >= (minor)))
#else
#define __MINGW_GNUC_PREREQ(major, minor) 0
#endif

#ifdef __cplusplus
# define __CRT_INLINE inline
#else
# if __GNUC_STDC_INLINE__
# define __CRT_INLINE extern inline __attribute__((__gnu_inline__))
# else
# define __CRT_INLINE extern __inline__
# endif
#endif

# ifdef __GNUC__
# define _CRTALIAS __CRT_INLINE __attribute__ ((__always_inline__))
# else
# define _CRTALIAS __CRT_INLINE
# endif

#ifdef __cplusplus
# define __UNUSED_PARAM(x)
#else
# ifdef __GNUC__
# define __UNUSED_PARAM(x) x __attribute__ ((__unused__))
# else
# define __UNUSED_PARAM(x) x
# endif
#endif

#ifdef __GNUC__
#define __MINGW_ATTRIB_NORETURN __attribute__ ((__noreturn__))
#define __MINGW_ATTRIB_CONST __attribute__ ((__const__))
#else
#define __MINGW_ATTRIB_NORETURN
#define __MINGW_ATTRIB_CONST
#endif

#if __MINGW_GNUC_PREREQ (3, 0)
#define __MINGW_ATTRIB_MALLOC __attribute__ ((__malloc__))
#define __MINGW_ATTRIB_PURE __attribute__ ((__pure__))
#else
#define __MINGW_ATTRIB_MALLOC
#define __MINGW_ATTRIB_PURE
#endif

/* Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's
variadiac macro facility, because variadic macros cause syntax
errors with --traditional-cpp. */
#if __MINGW_GNUC_PREREQ (3, 3)
#define __MINGW_ATTRIB_NONNULL(arg) __attribute__ ((__nonnull__ (arg)))
#else
#define __MINGW_ATTRIB_NONNULL(arg)
#endif /* GNUC >= 3.3 */

#if __MINGW_GNUC_PREREQ (3, 1)
#define __MINGW_ATTRIB_DEPRECATED __attribute__ ((__deprecated__))
#else
#define __MINGW_ATTRIB_DEPRECATED
#endif /* GNUC >= 3.1 */

#if __MINGW_GNUC_PREREQ (3, 3)
#define __MINGW_NOTHROW __attribute__ ((__nothrow__))
#else
#define __MINGW_NOTHROW
#endif /* GNUC >= 3.3 */


/* TODO: Mark (almost) all CRT functions as __MINGW_NOTHROW. This will
allow GCC to optimize away some EH unwind code, at least in DW2 case. */

#ifndef __MSVCRT_VERSION__
/* High byte is the major version, low byte is the minor. */
# define __MSVCRT_VERSION__ 0x0600
#endif

/* Activation of MinGW specific extended features:
*/
#ifndef __USE_MINGW_ANSI_STDIO
/*
* If user didn't specify it explicitly...
*/
# if defined __STRICT_ANSI__ || defined _ISOC99_SOURCE \
|| defined _POSIX_SOURCE || defined _POSIX_C_SOURCE \
|| defined _XOPEN_SOURCE || defined _XOPEN_SOURCE_EXTENDED \
|| defined _GNU_SOURCE || defined _BSD_SOURCE \
|| defined _SVID_SOURCE
/*
* but where any of these source code qualifiers are specified,
* then assume ANSI I/O standards are preferred over Microsoft's...
*/
# define __USE_MINGW_ANSI_STDIO 1
# else
/*
* otherwise use whatever __MINGW_FEATURES__ specifies...
*/
# define __USE_MINGW_ANSI_STDIO (__MINGW_FEATURES__ & __MINGW_ANSI_STDIO__)
# endif
#endif
//½â¾öinttypes.hÓÐÎÊÌâµÄ´íÎó
#define __restrict__

#endif /* __MINGW_H */
Loading

0 comments on commit 2d6343b

Please sign in to comment.