diff options
author | Rodeo <[email protected]> | 2014-03-13 01:36:22 +0000 |
---|---|---|
committer | Rodeo <[email protected]> | 2014-03-13 01:36:22 +0000 |
commit | 042db50b62739c9a01ed83e225926dbe1de9b843 (patch) | |
tree | 9fd5889fb7e16a564af87bd8447791a431aa2d32 /libhb | |
parent | 74bc2e472c901e75412dd82845e6cc16277eff1d (diff) |
x265: enable MP4 and Matroska muxing.
Also remove the raw muxer.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6105 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'libhb')
-rw-r--r-- | libhb/common.c | 7 | ||||
-rw-r--r-- | libhb/common.h | 1 | ||||
-rw-r--r-- | libhb/encx265.c | 34 | ||||
-rw-r--r-- | libhb/muxcommon.c | 4 |
4 files changed, 1 insertions, 45 deletions
diff --git a/libhb/common.c b/libhb/common.c index 34bc5a047..8f206c69f 100644 --- a/libhb/common.c +++ b/libhb/common.c @@ -57,7 +57,6 @@ enum HB_GID_ACODEC_VORBIS, HB_GID_MUX_MKV, HB_GID_MUX_MP4, - HB_GID_MUX_265, }; typedef struct @@ -207,7 +206,7 @@ hb_encoder_internal_t hb_video_encoders[] = // actual encoders { { "H.264 (x264)", "x264", "H.264 (libx264)", HB_VCODEC_X264, HB_MUX_MASK_MP4|HB_MUX_MASK_MKV, }, NULL, 1, HB_GID_VCODEC_H264, }, { { "H.264 (Intel QSV)", "qsv_h264", "H.264 (Intel Media SDK)", HB_VCODEC_QSV_H264, HB_MUX_MASK_MP4|HB_MUX_MASK_MKV, }, NULL, 1, HB_GID_VCODEC_H264, }, - { { "H.265 (x265)", "x265", "H.265 (libx265)", HB_VCODEC_X265, HB_MUX_X265, }, NULL, 1, HB_GID_VCODEC_H265, }, + { { "H.265 (x265)", "x265", "H.265 (libx265)", HB_VCODEC_X265, HB_MUX_AV_MP4|HB_MUX_AV_MKV, }, NULL, 1, HB_GID_VCODEC_H265, }, { { "MPEG-4", "mpeg4", "MPEG-4 (libavcodec)", HB_VCODEC_FFMPEG_MPEG4, HB_MUX_MASK_MP4|HB_MUX_MASK_MKV, }, NULL, 1, HB_GID_VCODEC_MPEG4, }, { { "MPEG-2", "mpeg2", "MPEG-2 (libavcodec)", HB_VCODEC_FFMPEG_MPEG2, HB_MUX_MASK_MP4|HB_MUX_MASK_MKV, }, NULL, 1, HB_GID_VCODEC_MPEG2, }, { { "Theora", "theora", "Theora (libtheora)", HB_VCODEC_THEORA, HB_MUX_MASK_MKV, }, NULL, 1, HB_GID_VCODEC_THEORA, }, @@ -331,7 +330,6 @@ hb_container_internal_t hb_containers[] = { { "MPEG-4 (mp4v2)", "mp4v2", "MPEG-4 (libmp4v2)", "mp4", HB_MUX_MP4V2, }, NULL, 1, HB_GID_MUX_MP4, }, { { "Matroska (avformat)", "av_mkv", "Matroska (libavformat)", "mkv", HB_MUX_AV_MKV, }, NULL, 1, HB_GID_MUX_MKV, }, { { "Matroska (libmkv)", "libmkv", "Matroska (libmkv)", "mkv", HB_MUX_LIBMKV, }, NULL, 1, HB_GID_MUX_MKV, }, - { { "Raw H.265 (x265)", "x265", "H.265 (raw stream)", "265", HB_MUX_X265, }, NULL, 1, HB_GID_MUX_265, }, }; int hb_containers_count = sizeof(hb_containers) / sizeof(hb_containers[0]); static int hb_container_is_enabled(int format) @@ -348,9 +346,6 @@ static int hb_container_is_enabled(int format) case HB_MUX_AV_MP4: case HB_MUX_AV_MKV: #endif -#ifdef USE_X265 - case HB_MUX_X265: -#endif return 1; default: diff --git a/libhb/common.h b/libhb/common.h index bc790e2d9..4ccac8402 100644 --- a/libhb/common.h +++ b/libhb/common.h @@ -515,7 +515,6 @@ struct hb_job_s #define HB_MUX_AV_MKV 0x200000 #define HB_MUX_MASK_MKV 0x300000 #define HB_MUX_MASK_AV 0x220000 -#define HB_MUX_X265 0x000001 /* default muxer for each container */ #define HB_MUX_MP4 HB_MUX_AV_MP4 #define HB_MUX_MKV HB_MUX_AV_MKV diff --git a/libhb/encx265.c b/libhb/encx265.c index 610d06128..7ed280371 100644 --- a/libhb/encx265.c +++ b/libhb/encx265.c @@ -54,8 +54,6 @@ struct hb_work_private_s } frame_info[FRAME_INFO_SIZE]; - FILE *fout; - char csvfn[1024]; }; @@ -82,18 +80,6 @@ int encx265Init(hb_work_object_t *w, hb_job_t *job) x265_nal *nal; uint32_t nnal; - if (job->mux == HB_MUX_X265) - { - pv->fout = fopen(job->file, "wb"); - if (pv->fout == NULL || fseek(pv->fout, 0L, SEEK_SET) < 0) - { - hb_error("encx265: fopen failed."); - free(pv); - pv = NULL; - return 1; - } - } - x265_param *param = pv->param = x265_param_alloc(); if (x265_param_default_preset(param, @@ -222,15 +208,6 @@ int encx265Init(hb_work_object_t *w, hb_job_t *job) return 1; } - if (job->mux == HB_MUX_X265) - { - for (i = 0; i < nnal; i++) - { - fwrite(nal[i].payload, 1, nal[i].sizeBytes, pv->fout); - } - return 0; - } - /* * x265's output (headers and bitstream) are in Annex B format. * @@ -274,7 +251,6 @@ void encx265Close(hb_work_object_t *w) x265_param_free(pv->param); x265_encoder_close(pv->x265); - fclose(pv->fout); free(pv); w->private_data = NULL; } @@ -380,16 +356,6 @@ static hb_buffer_t* nal_encode(hb_work_object_t *w, } } - if (job->mux == HB_MUX_X265) - { - for (i = 0; i < nnal; i++) - { - fwrite(nal[i].payload, 1, nal[i].sizeBytes, pv->fout); - } - hb_buffer_close(&buf); - return NULL; - } - // discard empty buffers (no video) if (buf->size <= 0) { diff --git a/libhb/muxcommon.c b/libhb/muxcommon.c index fa412cbca..4738bfa2a 100644 --- a/libhb/muxcommon.c +++ b/libhb/muxcommon.c @@ -475,10 +475,6 @@ hb_work_object_t * hb_muxer_init( hb_job_t * job ) mux->m = hb_mux_avformat_init( job ); break; #endif -#ifdef USE_X265 - case HB_MUX_X265: - break; -#endif default: hb_error( "No muxer selected, exiting" ); *job->done_error = HB_ERROR_INIT; |