文章目录

  • 1. H.265/HEVC 播放器
  • 2. H.265/HEVC编码器
    • 2.1 CINEMARTIN CINEC
    • 2.2 Internet Friendly Media Encoder
    • 2.3 ffmpeg
    • 2.4 GPAC
      • 2.4.1 MP4Box
      • 2.4.2 mp42ts
  • 參考信息:

1. H.265/HEVC 播放器

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

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

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

2. H.265/HEVC编码器

全部编码器都是基于x265来做的。其參考命令例如以下所看到的:

$ 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

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

2.2 Internet Friendly Media Encoder

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] outfileinfile can be YUV or Y4Moutfile 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.264$ ffmpeg -i ./kayak.mp4 -c copy -bsf h264_mp4toannexb -y out1.ts  //h.264$ ffmpeg -i ./test.mp4 -c copy -bsf h264_mp4toannexb -y out.ts //h.264$ ffmpeg -i ./test.mp4 -vframes 200 -r 25 -s 3840x2160  -aspect 16:9 -b:v 12000000 -vcodec hevc -y out.ts   // h.265/hevc$ ffmpeg -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

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

H265/HEVC Codec编解码(MP4和TS)相关推荐

  1. Hevc 视频编解码并行处理技术

    一 并行处理技术 并行处理一般是指许多指令得以同时进行的处理模式,并行处理通常是将处理的过程分解成小部分,之后采用多个运算单元并以兵法方式加以解决,本章只讨论使用过个处理器的并行处理技术.通常分为两种 ...

  2. ffmpeg 常用命令总结:(avi转MP4、MP4转ts、视频压缩、去除视频声音、合并音频和视频)

    文章目录 配置 说明: 0.ffmpeg一些命令参数: a) 通用选项 b) 视频选项 c)高级视频选项 d)音频选项 e)音频/视频捕获选项 f)高级选项 1.avi转MP4命令: 2.MP4转ts ...

  3. H265/HEVC编解码系列(1):图像分割(Slice、Tile、CTU)

    H265/HEVC编解码系列(1):图像分割(Slice.Tile.CTU) 一.Slice 和 Slice Segment 二.Tile单元 三.CTU.CU 参考 一.Slice 和 Slice ...

  4. 【FFmpeg】支持flv+hevc编解码转码

    背景 当前FFmpeg支持flv+h264的编解码和转码,但是并不支持flv+h265 如果需要在FFmpeg中支持flv+h265,只需要简单的修改代码 源码修改 flv.h diff --git ...

  5. (推荐阅读)H264, H265硬件编解码基础及码流分析

    需求 在移动端做音视频开发不同于基本的UI业务逻辑工作,音视频开发需要你懂得音视频中一些基本概念,针对编解码而言,我们必须提前懂得编解码器的一些特性,码流的结构,码流中一些重要信息如sps,pps,v ...

  6. 手淘H265编解码算法与工程优化

    本文来自淘宝(中国)软件有限公司 高级算法专家 李晓波在LiveVideoStackCon 2018讲师热身分享,并由LiveVideoStack整理而成.在分享中李晓波详细解析了手淘在H.265高效 ...

  7. 硬件编解码,软件编解码,H.263、H.264、H.265/HEVC概念

    概念 硬件编解码通常称为硬编码硬解码,软件编解码称为软编码软解码. 软编码软解码主要依赖的是CPU资源,设备普通使用也是使用CPU做计算,所以开始编解码视频的时候CPU会飙升起来,发热就无法避免. 硬 ...

  8. 基于FFmpeg 实现RTSP, 音视频编解码,视频流添加文字,音视频合成MP4

    前言: 最近闲这没事,整理了一下之前开发过的音视频编解码库,主要基于ffmpeg,实现音视频的编解码.视频流添加文字,音视频同步到MP4等功能.有需要的小伙伴可以参考参考,如果写的有什么不对的地方,欢 ...

  9. H.265/HEVC低延迟编解码FPGA IP

    H265-LowD Codec FPGA/ASIC IP   (zobovision H.265低延迟编解码IP) ■  H.265/HEVC低延迟编码/解码FPGA/ASIC IP ■  YUV42 ...

  10. 编解码--HEVC,ProRes,SVC,AVS,XVID,DIVX

    HEVC HEVC历史: 早在2004年,ITU-T视频编码专家组(VCEG)开始研究新技术以便创建一个新的视频压缩标准.在2004年10月,H.264/ AVC小组对潜在的各种技术进行了调查.200 ...

最新文章

  1. 省钱之道--图解域域树域林根域的含义
  2. plotly可视化绘制混合图
  3. java frame paint_一个简单的java frame画图(paint)问题
  4. linux+正负符号,英文符号大全(转)
  5. 基于Leaflet和高德Web API扩展地理编码服务
  6. 【Python】pandas 重复数据处理大全(附代码)
  7. oracle xe 乱码_关于Linux操作系统下终端乱码的完美解决方法
  8. 整理了一下linux/ubuntu里面卸载软件的方法
  9. 《剑指offer》链表中倒数第k个结点
  10. oracle容错,Oracle DML容错处理方法
  11. 【渝粤教育】国家开放大学2019年春季 2507学前儿童艺术教育(音乐) 参考试题
  12. view工作原理-计算视图大小的过程(onMeasure)
  13. ado.net 查询 小结 c# 1614653302
  14. 【安利UI设计师】电商购物移动应用程序界面设计UI套件包,轻松完成项目需求。
  15. 标准库rand()函数的缺陷以及Blitz++随机数生成的简介
  16. 一款短小精悍的日志分析工具web_log_analyse
  17. apache 软件历史版本查询
  18. java struts xml文件设置----自定义日期转换器(局部,及全局类型转换器类)
  19. 华为手机便签有扫描的功能么
  20. [拼搏到底之龟兔赛跑--Day 16]一套兽医作家写的小说--“大地”系列

热门文章

  1. 用HackRF One模拟GPS信号
  2. matlab数字仿真实验,matlab数值仿真
  3. Axure9桌面无法显示图标
  4. Javascript学习待续
  5. Javascript学习
  6. 数学建模综合评价方法
  7. ANSYS19.0安装(无比详细的图文示范教程)
  8. 单片微型计算机原理及应用pdf,《单片微型计算机原理、应用及接口技术》.pdf...
  9. easyflash 教程
  10. 通信原理基础概念概述