博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
H.265/HEVC Codec 编解码 (MP4 和 TS)
阅读量:5253 次
发布时间:2019-06-14

本文共 3095 字,大约阅读时间需要 10 分钟。

1. H.265/HEVC 播放器

    1) (眼下不支持H.265 TS播放)

    2)中的ffplay (如:ffplay  hevc.ts)

    3) 中的MP4Client (如:MP4Client hevc.ts, 或MP4Client hevc.mp4)

2. H.265/HEVC编码器

         全部编码器都是基于来做的。其參考命令例如以下所看到的:
ffmpeg.exe -i "E:\video\yak.mp4" -pix_fmt yuv420p -f yuv4mpegpipe - 2> nul | x265.exe -p medium --crf 26 --fps 30 -f 2283 -o "E:\video\test\temp0.hvc" --y4m -
经常使用的工具例如以下所看到的:

2.1 CINEMARTIN CINEC v.2.7.5 Gold

     是一个商业软件,做4K H.265压缩时常常出现crash。且占用大量硬盘空间。对于H.265可产生hevc文件,可供MP4Box作为输入以生成.mp4文件,从而使用mp42ts生成.ts文件。

2.2 Internet Friendly Media Encoder

   是一款ssf开源项目,其性能和功能非常好。仅仅是眼下可用,代码还没有开放。且在运行过程中,还会显示其具体log信息,不占用硬盘空间,共关键的命令例如以下所看到的:
Internet Friendly Media Encoder工作步骤:1)[ ok ] Loaded ffmpeg.exe[info] Command: -i "E:\video\kayak.mp4" -vn -ar 44100 -y "E:\video\test\temp1.wav"2)[ ok ] Loaded libfaac.dll[info] Command: -b 96 -o "E:\video\test\temp1.aac" "E:\video\test\temp1.wav"3)[info] Command: ffmpeg.exe -i "E:\video\kayak.mp4" -pix_fmt yuv420p -f yuv4mpegpipe - 2> nul | x265.exe -p medium --crf 26 --fps 30 -f 2283 -o "E:\video\test\temp0.hvc" --y4m -4)[ ok ] Loaded libmp4.dll[info] Command: -add "E:\video\test\temp0.hvc#video:name=Encoded with IFME v3.2.0.0:fmt=HEVC:fps=30" -add "E:\video\test\temp1.aac#audio:name=Track 1" "E:\video\test\kayak.mp4"Syntax: x265 [options] infile [-o] outfile    infile can be YUV or Y4M    outfile is raw HEVC bitstreamffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...
     眼下仅仅能输出H.265 .mp4和.mkv文件。

2.3 ffmpeg

    ffmpeg是一款功能强大且基础的软件,其使用示比例如以下所看到的:
ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...ffmpeg -i ./kayak.mp4 -c copy -bsf h264_mp4toannexb  -mpegts_original_network_id 0x1122 -mpegts_transport_stream_id 0x3344 -mpegts_service_id 0x5566 -mpegts_pmt_start_pid 0x1500 -mpegts_start_pid 0x150 -metadata service_provider="Some provider" -metadata service_name="Some Channel" -y out0.ts //h.264ffmpeg -i ./kayak.mp4 -c copy -bsf h264_mp4toannexb -y out1.ts  //h.264ffmpeg -i ./test.mp4 -c copy -bsf h264_mp4toannexb -y out.ts //h.264ffmpeg -i ./test.mp4 -vframes 200 -r 25 -s 3840x2160  -aspect 16:9 -b:v 12000000 -vcodec hevc -y out.ts   // h.265/hevcffmpeg -i ./test.mp4 -vframes 200 -r 25 -s 3840x2160  -aspect 16:9 -b:v 12000000 -vcodec hevc -mpegts_original_network_id 0x1122 -mpegts_transport_stream_id 0x3344 -mpegts_service_id 0x5566 -mpegts_pmt_start_pid 0x1500 -mpegts_start_pid 0x150 -metadata service_provider="Some provider" -metadata service_name="Some Channel" -y out.ts  //h.265/hevc
 
   使用ffmpeg能够生成H.265 .TS和.MP4文件。

2.4 GPAC

      能够把x265生成的hevc流(.hevc)打包成.mp4和.ts文件,其用法例如以下:

2.4.1 MP4Box

   How to embed HEVC into MP4 file format
./MP4Box -add name_of_annexB_bitstream.(bit,bin,265) -fps 50 -new output.mp4./MP4Box -v -add Catus_1920x1080_50_qp32.bin:FMT=HEVC -fps 50 -new output.mp4./MP4Client output.mp4    # to play HEVC mp4 content

2.4.2 mp42ts

   How to embed HEVC into TS
./mp42ts -prog=hevc.mp4 -dst-file=test.ts./mp42ts -prog=output.mp4 -dst-file=hevc.ts./MP4Client test.ts  # to play HEVC transport streams

參考信息:

1.  Handbrake Support H.265: 

2. H.265 官网:

3. OpenHEVC:

转载于:https://www.cnblogs.com/mfrbuaa/p/4035175.html

你可能感兴趣的文章
jQuery插件开发详细教程
查看>>
Crontab 在linux中的非常有用的Schedule Jobs
查看>>
ProxySQL Scheduler
查看>>
源代码的下载和编译读后感
查看>>
Kafka学习笔记
查看>>
Octotree Chrome安装与使用方法
查看>>
用CALayer实现下载进度条控件
查看>>
Windows 环境下基于 Redis 的 Celery 任务调度模块的实现
查看>>
趣谈Java变量的可见性问题
查看>>
C# 强制关闭当前程序进程(完全Kill掉不留痕迹)
查看>>
ssm框架之将数据库的数据导入导出为excel文件
查看>>
语音识别中的MFCC的提取原理和MATLAB实现
查看>>
验证组件FluentValidation的使用示例
查看>>
0320-学习进度条
查看>>
解决windows系统的oracle数据库不能启动ora-00119和ora-00130的问题
查看>>
ip相关问题解答
查看>>
MetaWeblog API Test
查看>>
反弹SHELL
查看>>
关闭Chrome浏览器的自动更新和升级提示
查看>>
移动、尺寸改变
查看>>