首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏悟空被FFmpeg玩

    FFmpeg 加密 mpegts 文件的处理方式

    Output #0, mpegts, to 'crypto:output.mpegts':   Metadata:     major_brand : mp42      Input #0, mpegts, from 'crypto:output.mpegts':   Duration: 00:03:18.77, start: 1.433367 不用key播放: 点击(此处)折叠或打开 liuqideMacBook-Pro:hls liuqi$ ffmpeg -i output.mpegts output.mpegts 确认文件是否存在: 点击(此处)折叠或打开 liuqideMacBook-Pro:hls liuqi$ ls output.mpegts output.mpegts liuqideMacBook-Pro:hls liuqi$ 到这里,使用ffmpeg为mpegts加密相关介绍完毕。

    2.2K30发布于 2019-03-05
  • 来自专栏音视频开发技术

    FFmpeg封装格式处理

    mpegts输入封装格式中并未指定文件扩展名,而mpegts输出封装格式中则指定了文件扩展名为"ts,m2t,m2ts,mts"。 , .read_header = mpegts_read_header, .read_packet = mpegts_read_packet, .read_close = mpegts_read_close, .read_timestamp = mpegts_get_dts, .flags = AVFMT_SHOW_IDS 实验3:为输出文件指定错误的扩展名但显式指定封装格式 通过-f mpegts选项显式指定封装格式为mpegts: ffmpeg -i tnhaoxc.flv -map 0 -c copy -f mpegts tnhaoxc.mpegts 命令执行成功,看一下文件内容是否正确: diff tnhaoxc.mpegts tnhaoxc.ts 发现tnhaoxc.mpegts和tnhaoxc.ts文件内容完全一样

    3.5K20发布于 2019-04-02
  • 来自专栏全栈程序员必看

    视音频数据处理入门:UDP-RTP协议解析「建议收藏」

    if(parse_mpegts! =0&&payload==33){ MPEGTS_FIXED_HEADER mpegts_header; for(int i=0;i<rtp_data_size;i=i+188){ =0x47) break; //MPEGTS Header //memcpy((void *)&mpegts_header,rtp_data+i,sizeof(MPEGTS_FIXED_HEADER ffmpeg -re -i sintel.ts -f mpegts udp://127.0.0.1:8880 下面的命令可以推流首先经过RTP封装,然后经过UDP封装的MPEG-TS。 ffmpeg -re -i sintel.ts -f rtp_mpegts udp://127.0.0.1:8880 推流之后,本文的程序会通过Socket接收到UDP包并且解析其中的数据。

    1.9K30编辑于 2022-09-13
  • 来自专栏实战docker

    Golang流媒体实战之三:转推和录制

    /lal_record/flv/", "enable_mpegts": false, "mpegts_out_path": ". /lal_record/mpegts" }, 本次实战暂定用flv格式录制,于是将enable_flv的值改为true "record": { "enable_flv": true, /lal_record/flv/", "enable_mpegts": false, "mpegts_out_path": ". /lal_record/mpegts" }, 将修改后的配置存盘,执行以下命令启动 .

    1.6K20编辑于 2023-03-27
  • 来自专栏实战docker

    Golang流媒体实战之七:hls拉流服务源码阅读

    lal推流服务源码阅读》一文中咱们已经看过,lal收到媒体数据后,具体的处理逻辑是group__core_streaming.go#broadcastByRtmpMsg方法,里面有这么一段 // # mpegts #FeedRtmpMessage -> rtmp2mpegts_filter_.go#Push -> rtmp2mpegts.go#onPop -> feedVideo (这段代码比较复杂,值得细看) -> onFrame -> muxer.go#OnTsPackets -> FeedMpegts -> fragment.go#WriteFile 上面这复杂的调用栈,重点是rtmp2mpegts_filter ) case int(base.RtmpCodecIdHevc): q.observer.onPatPmt(mpegts.FixedFragmentHeaderHevc) default: = nil { Log.Errorf("[%s] record mpegts write fragment header error. err=%+v", group.UniqueKey, err

    1.6K20编辑于 2023-04-24
  • 来自专栏全栈程序员必看

    使用FFmpeg命令行进行UDP、RTP推流(H264、TS),ffplay接收

    使用UDP发送TS流 FFmpeg的推流命令: ffmpeg -re -i d:\videos\1080P.264 -vcodec copy -f mpegts udp://127.0.0.1:1234 使用RTP发送TS流 很多人以为这种情况跟上面差不多,使用如下的推流命令(错误): ffmpeg -re -i d:\videos\1080P.264 -vcodec copy -f mpegts rtp 实际上,正确的命令是: ffmpeg -re -i d:\videos\1080P.264 -vcodec copy -f rtp_mpegts rtp://127.0.0.1:1234 ffplay接收的命令 RTP/AVP 33 a=rtpmap:33 MP2T/90000 (注意:FFmpeg发送TS流的RTP PayloadType不是96而是33) 还有一个问题:早期的ffmpeg版本是不支持rtp_mpegts

    6.7K20编辑于 2022-07-02
  • 来自专栏全栈程序员必看

    简单粗暴无需拼接下载 blob (ts)视频文件

    start=0&end=334451&type=mpegts 我们会看start和end两个参数,分别表示当前ts文件的视频开始和结束位置。 start=2267468&end=312421407&type=mpegts 这一次我们记下end的数值,end=312421407 5、修改第一个下载链接的end参数为end=312421407,我们即可得到完整视频的开始和结束位置 start=0&end=312421407&type=mpegts 6、将修改后的链接复制到浏览器地址栏,或者新建下载任务,就可以下载完整视频。 搞定。

    9.7K30编辑于 2022-09-09
  • 来自专栏SRS开源服务器

    感谢大家支持,SRS成为20k Star开源项目

    MPEG-DASH by FFmpeg •  PUSH HEVC over WebRTC •  PULL HEVC over WebRTC •  Play HEVC over HTTP-TS by mpegts.js [23], by Chrome 105+ MSE, NO WASM. v6.0.1[24] •  Play HEVC over HTTP-FLV by mpegts.js[25], by Chrome 178e40a5fc3cf0856ace914ae61696a73007f5bf [24] v6.0.4: https://github.com/ossrs/srs/commit/70d5618979e5c8dc41b7cd87c78db7ca2b8a10e8 [25] mpegts.js : https://github.com/xqq/mpegts.js [26] v6.0.1: https://github.com/ossrs/srs/commit/7e02d972ea74faad9f4f96ae881d5ece0b89f33b [27] mpegts.js: https://github.com/xqq/mpegts.js [28] v6.0.1: https://github.com/ossrs/srs/commit/7e02d972ea74faad9f4f96ae881d5ece0b89f33b

    1.6K20编辑于 2022-11-24
  • 来自专栏smy

    ffmpeg 安装,转视频格式为m3u8,压缩视频

    ffmpeg转视频格式为m3u8 ffmpeg -i test.mp4 -codec:v libx264 -codec:a mp3 -map 0 -f ssegment -segment_format mpegts playlist.m3u8 -segment_time 10 out%03d.ts -i : 引入视频源 -codec:v : 视频格式 -codec:a : 音频格式 segment_format: 来指定输出格式为mpegts

    2K70发布于 2018-04-03
  • 来自专栏SRS开源服务器

    SRS6.0: 七年长跑,全面支持H.265

    第三部分,浏览器H5播放流,MSE支持,但也需要上层播放器库支持: •  原生支持:使用Chrome播放HTTP-TS流,需要硬解支持,SRS使用mpegts.js。 •  原生支持:使用Chrome播放HTTP-FLV流,需要硬解支持,SRS使用mpegts.js。 •  配置支持:使用Safari拉WebRTC流,需要手动点下菜单栏开启。 Note: Media Source Extensions (MSE)是浏览器支持流媒体的底层接口,可以认为是把点播或直播转成fMP4切片送给H5 video对象,比如mpegts.js、hls.js和 H5播放器目前mpegts.js支持,hls.js和dash.js还没有支持。 在某些场景下,HEVC的应用完全成熟了,具体就需要各位开发者自己评估了。 最后,特别感谢mpegts.js,谦谦大神的H5播放器,支持了HTTP-FLV和HTTP-TS的H.265能力,这是flv.js的延续的项目,我觉得大家都欠他一个Star哇。

    3.7K40编辑于 2023-04-02
  • 来自专栏流媒体音视频

    使用nginx搭建简单的流媒体服务器(rtmp)

    patching file doc/directives.md patching file hls/ngx_rtmp_hls_module.c patching file hls/ngx_rtmp_mpegts.c patching file hls/ngx_rtmp_mpegts.h patching file hls/ngx_rtmp_mpegts_crc.c patching file hls/ngx_rtmp_mpegts_crc.h

    1.6K20发布于 2021-06-29
  • 来自专栏txp玩Linux

    必须要掌握的音视频编码、解码基础!

    常见的复合流有flv封装复合流、mpegts封装复合流(这两种具体的区别,在后面会说到)。 比方说RTMP用的是FLV格式,SRT/RTSP用的是mpegts复合流格式)。 所谓解封装处理就相当于把flv、mpegts等复合流分割成视频裸流(H264/H265视频流)和音频裸流(AAC音频流)。

    1.2K40编辑于 2023-08-31
  • 来自专栏腾讯IMWeb前端团队

    看前端如何通过WebAssembly实现播放器预览能力

        --disable-logging \     --disable-everything \     --enable-protocol=file \     --enable-demuxer=mpegts 这里我3需要解复用ts文件的格式、即mpegts。 libswscale:图像伸缩和像素格式转化。 libavutil:工具函数。 start=260400&end=382047&type=mpegts #EXT-X-KEY:METHOD=AES-128,URI="http://getkeyurl",IV=0x00000000000000000000000000000000 start=623456&end=748303&type=mpegts ..... AES解密ts文件 获取解密Key由于点播HLS资源已经进行了加密,ts文件数据无法直接给到wasm截取帧画面。 由于我们只需要解复用mpegts和h624decoder,编译wasm大小2.6MB左右。主要受限于加载分片的网络耗时,从hover进度条到预览图展示约在1.1秒左右,wasm解帧耗时60ms以内。

    3K10编辑于 2022-06-29
  • 来自专栏码客

    低延时播流之Jsmpeg

    FFMpeg 推流时使用 sudo apt install ffmpeg 第2个Terminal中推流 ffmpeg -stream_loop -1 -i /data/video.mp4 -f mpegts :a 128k \ http://49.233.81.68:8081/supersecret 推送桌面流 ffmpeg -f gdigrab -i desktop -framerate 30 -f mpegts

    1.6K20发布于 2021-02-26
  • 来自专栏FFmpeg实战

    FFmpeg开发笔记(四十三)使用SRS开启SRT协议的视频直播服务

    ffmpeg -re -stream_loop -1 -i "/usr/local/src/test/cctv5.ts" -c copy -f mpegts 'srt://127.0.0.1:10080 SRS对视频源文件的封装格式也有要求,不仅要求源文件为ts格式,还要求推流格式也为ts格式,所以ffmpeg命令中添加了“-f mpegts”表示转换成mpeg的ts流格式。 如果源文件不是ts格式,或者没转成mpegts格式,后续通过ffplay播放srt链接都会报下面的错误。

    82110编辑于 2024-08-03
  • 来自专栏音视频开发技术

    FFmpeg libswscale源码分析2-转码命令行与滤镜图

    /hevc_4k_422_10b_5994_60m_vibe.ts -c:v hevc_nvenc -preset fast -profile:v main10 -c:a aac -f mpegts 5994_60m_vibe.ts -vf format=yuv420p10le -c:v hevc_nvenc -preset fast -profile:v main10 -c:a aac -f mpegts _10b_5994_60m_vibe.ts -vf format=p010le -c:v hevc_nvenc -preset fast -profile:v main10 -c:a aac -f mpegts

    94020发布于 2021-02-04
  • 来自专栏IT杂症

    如何下载小程序直播视频回放

    start=760526740&end=762244119&type=mpegts 将URL复制到浏览器回车 download.png

    3.5K50编辑于 2023-10-18
  • 来自专栏流媒体

    RTMP服务器搭建(crtmpserver和nginx)简介

    一般都是按时间戳读取文件, 格式: h264: 表示输出的是h264的视频裸流 mp4: 表示输出的是mp4的视频 mpegts: 表示ts视频流 命令行加入-re,表示按时间戳读取文件 示例 H264 -f video4linux -s 320*240 -r 10 -i /dev/video0 test.asf udp视频流的推送 ffmpeg -re -i 1.ts -c copy -f mpegts

    3.6K20发布于 2018-08-23
  • 来自专栏腾讯IVWEB团队的专栏

    IVWEB玩转wasm系列-纯web视频剪辑/转换工具

    start=0&end=781327&type=mpegts #EXTINF:5, 122070284_485656995_1.ts? start=781328&end=1351343&type=mpegts #EXTINF:5 ... 第一个片段是122070284_485656995_1.ts? start=0&end=781327&type=mpegts,它的时长为6.002,第二个片段122070284_485656995_1.ts? start=781328&end=1351343&type=mpegts,它的时长为4.005。

    3.4K31发布于 2020-06-27
  • 来自专栏FFmpeg实战

    FFmpeg开发笔记(四十二)使用ZLMediaKit开启SRT视频直播服务

    ffmpeg -re -stream_loop -1 -i "/usr/local/src/test/cctv5.ts" -c copy -f mpegts 'srt://127.0.0.1:9000? ZLMediaKit对视频源文件的封装格式也有要求,不仅要求源文件为ts格式,还要求推流格式也为ts格式,所以ffmpeg命令中添加了“-f mpegts”表示转换成mpeg的ts流格式。 如果源文件不是ts格式,或者没转成mpegts格式,后续通过ffplay播放srt链接都会报下面的错误。

    1.5K10编辑于 2024-07-28
领券