PushRTMP

所属分类:流媒体/Mpeg4/MP4
开发工具:C/C++
文件大小:8631KB
下载次数:9
上传日期:2018-12-11 10:23:09
上 传 者zgqysss
说明:  从摄像机拉取原始rtsp流,将该流转换为rtmp流后推送到流媒体服务器
(Pull RTSP stream from camera and push it with RTMP stream)

文件列表:
PushRTMP\.vs\PushRTMP\v14\.suo (40448, 2018-12-05)
PushRTMP\Common\bin\avcodec-57.dll (12864000, 2017-09-30)
PushRTMP\Common\bin\avdevice-57.dll (577536, 2017-09-30)
PushRTMP\Common\bin\avfilter-6.dll (2770432, 2017-09-30)
PushRTMP\Common\bin\avformat-57.dll (2667520, 2017-09-30)
PushRTMP\Common\bin\avresample-3.dll (546816, 2017-09-30)
PushRTMP\Common\bin\avutil-55.dll (1079808, 2017-09-30)
PushRTMP\Common\bin\ffmpeg.exe (733184, 2017-09-30)
PushRTMP\Common\bin\ffprobe.exe (555008, 2017-09-30)
PushRTMP\Common\bin\SDL2.dll (975872, 2017-09-22)
PushRTMP\Common\bin\swresample-2.dll (523776, 2017-09-30)
PushRTMP\Common\bin\swscale-4.dll (960512, 2017-09-30)
PushRTMP\Common\include\libavcodec\avcodec.h (217231, 2017-08-21)
PushRTMP\Common\include\libavcodec\avdct.h (2570, 2017-08-21)
PushRTMP\Common\include\libavcodec\avfft.h (3111, 2017-08-21)
PushRTMP\Common\include\libavcodec\d3d11va.h (2853, 2017-08-21)
PushRTMP\Common\include\libavcodec\dirac.h (4044, 2017-08-21)
PushRTMP\Common\include\libavcodec\dv_profile.h (3715, 2017-08-21)
PushRTMP\Common\include\libavcodec\dxva2.h (2361, 2017-08-21)
PushRTMP\Common\include\libavcodec\jni.h (1650, 2017-08-21)
PushRTMP\Common\include\libavcodec\mediacodec.h (2825, 2017-08-21)
PushRTMP\Common\include\libavcodec\qsv.h (3763, 2017-08-21)
PushRTMP\Common\include\libavcodec\vaapi.h (4550, 2017-08-21)
PushRTMP\Common\include\libavcodec\vda.h (5928, 2017-08-21)
PushRTMP\Common\include\libavcodec\vdpau.h (7865, 2017-08-21)
PushRTMP\Common\include\libavcodec\version.h (8269, 2017-08-21)
PushRTMP\Common\include\libavcodec\videotoolbox.h (4029, 2017-08-21)
PushRTMP\Common\include\libavcodec\vorbis_parser.h (2285, 2017-08-21)
PushRTMP\Common\include\libavcodec\xvmc.h (6062, 2017-08-21)
PushRTMP\Common\include\libavdevice\avdevice.h (17918, 2017-08-21)
PushRTMP\Common\include\libavdevice\version.h (1861, 2017-08-21)
PushRTMP\Common\include\libavfilter\avfilter.h (42574, 2017-08-21)
PushRTMP\Common\include\libavfilter\avfiltergraph.h (975, 2017-08-21)
PushRTMP\Common\include\libavfilter\buffersink.h (6316, 2017-08-21)
PushRTMP\Common\include\libavfilter\buffersrc.h (6318, 2017-08-21)
PushRTMP\Common\include\libavfilter\version.h (2696, 2017-08-21)
PushRTMP\Common\include\libavformat\avformat.h (115772, 2017-08-21)
PushRTMP\Common\include\libavformat\avio.h (30996, 2017-08-21)
PushRTMP\Common\include\libavformat\version.h (3897, 2017-08-21)
PushRTMP\Common\include\libavutil\adler32.h (1673, 2017-08-21)
... ...

/* * This file is part of FFmpeg. * * FFmpeg is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License * as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * FFmpeg is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with FFmpeg; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #ifndef AVUTIL_THREADMESSAGE_H #define AVUTIL_THREADMESSAGE_H typedef struct AVThreadMessageQueue AVThreadMessageQueue; typedef enum AVThreadMessageFlags { /** * Perform non-blocking operation. * If this flag is set, send and recv operations are non-blocking and * return AVERROR(EAGAIN) immediately if they can not proceed. */ AV_THREAD_MESSAGE_NONBLOCK = 1, } AVThreadMessageFlags; /** * Allocate a new message queue. * * @param mq pointer to the message queue * @param nelem maximum number of elements in the queue * @param elsize size of each element in the queue * @return >=0 for success; <0 for error, in particular AVERROR(ENOSYS) if * lavu was built without thread support */ int av_thread_message_queue_alloc(AVThreadMessageQueue **mq, unsigned nelem, unsigned elsize); /** * Free a message queue. * * The message queue must no longer be in use by another thread. */ void av_thread_message_queue_free(AVThreadMessageQueue **mq); /** * Send a message on the queue. */ int av_thread_message_queue_send(AVThreadMessageQueue *mq, void *msg, unsigned flags); /** * Receive a message from the queue. */ int av_thread_message_queue_recv(AVThreadMessageQueue *mq, void *msg, unsigned flags); /** * Set the sending error code. * * If the error code is set to non-zero, av_thread_message_queue_send() will * return it immediately. Conventional values, such as AVERROR_EOF or * AVERROR(EAGAIN), can be used to cause the sending thread to stop or * suspend its operation. */ void av_thread_message_queue_set_err_send(AVThreadMessageQueue *mq, int err); /** * Set the receiving error code. * * If the error code is set to non-zero, av_thread_message_queue_recv() will * return it immediately when there are no longer available messages. * Conventional values, such as AVERROR_EOF or AVERROR(EAGAIN), can be used * to cause the receiving thread to stop or suspend its operation. */ void av_thread_message_queue_set_err_recv(AVThreadMessageQueue *mq, int err); /** * Set the optional free message callback function which will be called if an * operation is removing messages from the queue. */ void av_thread_message_queue_set_free_func(AVThreadMessageQueue *mq, void (*free_func)(void *msg)); /** * Flush the message queue * * This function is mostly equivalent to reading and free-ing every message * except that it will be done in a single operation (no lock/unlock between * reads). */ void av_thread_message_flush(AVThreadMessageQueue *mq); #endif /* AVUTIL_THREADMESSAGE_H */

近期下载者

相关文件


收藏者