Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
Z
ZLMediaKit
概览
Overview
Details
Activity
Cycle Analytics
版本库
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
问题
0
Issues
0
列表
Board
标记
里程碑
合并请求
0
Merge Requests
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
Snippets
成员
Collapse sidebar
Close sidebar
活动
图像
聊天
创建新问题
作业
提交
Issue Boards
Open sidebar
张翔宇
ZLMediaKit
Commits
124cce34
Commit
124cce34
authored
Aug 01, 2019
by
zqsong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
mp4录制全部替换mp4v2为media-server
parent
7e92a0b7
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
43 行增加
和
28 行删除
+43
-28
3rdpart/media-server
+1
-1
CMakeLists.txt
+33
-12
src/MediaFile/Mp4Maker.cpp
+0
-0
src/MediaFile/Mp4Maker.h
+9
-15
没有找到文件。
media-server
@
a32fe104
Subproject commit
e399b93802610dcf574ff64bcb7677572cd028c
1
Subproject commit
a32fe104c0290bc01a7ee73d50b568e8d9ded93
1
CMakeLists.txt
查看文件 @
124cce34
...
...
@@ -2,6 +2,14 @@
cmake_minimum_required
(
VERSION 3.1.3
)
#使能c++11
set
(
CMAKE_CXX_STANDARD 11
)
SET
(
CMAKE_C_COMPILER aarch64-himix100-linux-gcc
)
SET
(
CMAKE_CXX_COMPILER aarch64-himix100-linux-g++
)
#SET(CMAKE_LINKER aarch64-himix100-linux-ld)
SET
(
CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER
)
SET
(
CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY
)
SET
(
CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY
)
#加载自定义模块
set
(
CMAKE_MODULE_PATH
${
CMAKE_MODULE_PATH
}
"
${
PROJECT_SOURCE_DIR
}
/cmake"
)
...
...
@@ -14,6 +22,7 @@ set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
set
(
ToolKit_Root
${
CMAKE_SOURCE_DIR
}
/3rdpart/ZLToolKit/src
)
set
(
MediaKit_Root
${
CMAKE_SOURCE_DIR
}
/src
)
#设置头文件目录
INCLUDE_DIRECTORIES
(
${
ToolKit_Root
}
)
INCLUDE_DIRECTORIES
(
${
MediaKit_Root
}
)
...
...
@@ -32,11 +41,14 @@ endif ()
set
(
ENABLE_HLS true
)
set
(
ENABLE_OPENSSL true
)
set
(
ENABLE_MYSQL
tru
e
)
set
(
ENABLE_MYSQL
fals
e
)
set
(
ENABLE_MP4V2 true
)
set
(
ENABLE_FAAC true
)
set
(
ENABLE_X264 true
)
set
(
MP4_H265RECORD true
)
set
(
ENABLE_FAAC false
)
set
(
ENABLE_X264 false
)
set
(
ENABLE_MP4RECORD true
)
#添加两个静态库
if
(
ENABLE_HLS
)
...
...
@@ -48,19 +60,28 @@ else()
set
(
LINK_LIB_LIST zlmediakit zltoolkit
)
endif
()
if
(
MP4_H265
RECORD
)
message
(
STATUS
"
MP4_H265
RECORD defined"
)
add_definitions
(
-D
MP4_H265
RECORD
)
if
(
ENABLE_MP4
RECORD
)
message
(
STATUS
"
ENABLE_MP4
RECORD defined"
)
add_definitions
(
-D
ENABLE_MP4
RECORD
)
set
(
MediaServer_Root
${
CMAKE_SOURCE_DIR
}
/3rdpart/media-server
)
list
(
APPEND LINK_LIB_LIST mov flv
)
endif
()
set
(
OPENSSL_INCLUDE_DIR /nand/hi3559/openssl/include/
)
set
(
OPENSSL_LIBRARIES /nand/hi3559/openssl/lib/
)
#set(OPENSSL_CRYPTO_LIBRARIES /nand/hi3559/openssl/lib/libcrypto.so)
set
(
MP4V2_INCLUDE_DIR /nand/hi3559/mp4v2/include/
)
#set(MP4V2_LIBRARY /nand/hi3559/mp4v2/lib/libmp4v2.a)
set
(
MP4V2_LIBRARY /nand/hi3559/mp4v2/lib/libmp4v2.so
)
#查找openssl是否安装
find_package
(
OpenSSL QUIET
)
if
(
OPENSSL_FOUND AND ENABLE_OPENSSL
)
if
(
1
)
message
(
STATUS
"found library:
${
OPENSSL_LIBRARIES
}
,ENABLE_OPENSSL defined"
)
include_directories
(
${
OPENSSL_INCLUDE_DIR
}
)
include_directories
(
/nand/hi3559/openssl/include/
)
add_definitions
(
-DENABLE_OPENSSL
)
list
(
APPEND LINK_LIB_LIST
${
OPENSSL_LIBRARIES
}
)
list
(
APPEND LINK_LIB_LIST
/nand/hi3559/openssl/lib/libssl.so /nand/hi3559/openssl/lib/libcrypto.so
)
endif
()
#查找mysql是否安装
...
...
@@ -111,14 +132,14 @@ set(VS_FALGS "/wd4819 /wd4996 /wd4018 /wd4267 /wd4244 /wd4101 /wd4828 /wd4309 /w
if
(
ENABLE_HLS
)
aux_source_directory
(
${
MediaServer_Root
}
/libmpeg/include src_mpeg
)
aux_source_directory
(
${
MediaServer_Root
}
/libmpeg/source src_mpeg
)
include_directories
(
${
MediaServer_Root
}
/libmpeg/include
)
include_directories
(
${
MediaServer_Root
}
/libmpeg/include
)
add_library
(
mpeg STATIC
${
src_mpeg
}
)
if
(
WIN32
)
set_target_properties
(
mpeg PROPERTIES COMPILE_FLAGS
${
VS_FALGS
}
)
endif
(
WIN32
)
endif
()
if
(
MP4_H265
RECORD
)
if
(
ENABLE_MP4
RECORD
)
aux_source_directory
(
${
MediaServer_Root
}
/libmov/include src_mov
)
aux_source_directory
(
${
MediaServer_Root
}
/libmov/source src_mov
)
include_directories
(
${
MediaServer_Root
}
/libmov/include
)
...
...
src/MediaFile/Mp4Maker.cpp
查看文件 @
124cce34
差异被折叠。
点击展开。
src/MediaFile/Mp4Maker.h
查看文件 @
124cce34
...
...
@@ -27,11 +27,10 @@
#ifndef MP4MAKER_H_
#define MP4MAKER_H_
#ifdef ENABLE_MP4
V2
#ifdef ENABLE_MP4
RECORD
#include <mutex>
#include <memory>
#include <mp4v2/mp4v2.h>
#include "Player/PlayerBase.h"
#include "Util/util.h"
#include "Util/logger.h"
...
...
@@ -41,10 +40,10 @@
#include "Extension/Track.h"
#ifdef MP4_H265RECORD
#include "mov-writer.h"
#include "mpeg4-hevc.h"
#endif
#include "mpeg4-avc.h"
using
namespace
toolkit
;
...
...
@@ -66,17 +65,15 @@ public:
class
MovH265Info
{
public
:
#ifdef MP4_H265RECORD
mov_writer_t
*
pMov
;
struct
mpeg4_hevc_t
hevc
;
struct
mpeg4_avc_t
avc
;
int
videoTrack
;
int
audioTrack
;
int
width
;
int
height
;
const
uint8_t
*
ptr
;
uint32_t
startPts
;
FILE
*
pFile
;
#endif
};
class
Mp4Maker
:
public
MediaSink
{
...
...
@@ -109,19 +106,16 @@ private:
//时间戳:参考频率1000
void
inputAAC
(
void
*
pData
,
uint32_t
ui32Length
,
uint32_t
ui32TimeStamp
);
void
inputH264_l
(
void
*
pData
,
uint32_t
ui32Length
,
uint32_t
ui
64Duration
);
void
inputH264_l
(
void
*
pData
,
uint32_t
ui32Length
,
uint32_t
ui
32TimeStamp
);
void
inputH265_l
(
void
*
pData
,
uint32_t
ui32Length
,
uint32_t
ui32TimeStamp
);
void
inputAAC_l
(
void
*
pData
,
uint32_t
ui32Length
,
uint32_t
ui
64Duration
);
void
inputAAC_l
(
void
*
pData
,
uint32_t
ui32Length
,
uint32_t
ui
32TimeStamp
);
private
:
MovH265Info
_movH265info
;
int
_h265Record
=
0
;
uint32_t
_startPts
;
uint8_t
_sBbuffer
[
2
*
1024
*
1024
];
MP4FileHandle
_hMp4
=
MP4_INVALID_FILE_HANDLE
;
MP4TrackId
_hVideo
=
MP4_INVALID_TRACK_ID
;
MP4TrackId
_hAudio
=
MP4_INVALID_TRACK_ID
;
string
_strPath
;
string
_strFile
;
string
_strFileTmp
;
...
...
@@ -141,6 +135,6 @@ private:
}
/* namespace mediakit */
#endif ///ENABLE_MP4
V2
#endif ///ENABLE_MP4
RECORD
#endif
/* MP4MAKER_H_ */
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论