Darwin Streaming Server中mp4文件点播失败,通过抓包发现服务器返回”415 Unsupported Media Type“错误,如下:

RTSP/1.0  Unsupported Media Type

Server: DSS/6.0. (Build/526.3; Platform/Linux; Release/Darwin Streaming Server; State/Development; )

Cseq: 

Connection: Close

解决方案如下:

用mp4box来hint文件

yingc@yingc:~/media/video$ MP4Box  h.mp4 -info
* Movie Info *
Timescale - Duration ::35.062
Fragmented File no - track(s)
File Brand mp42 - version
Created: GMT Sun Jul :: File has root IOD ( bytes)
Scene PL 0xff - Graphics PL 0xff - OD PL 0xff
Visual PL: ISO Reserved Profile (0x7f)
Audio PL: High Quality Audio Profile @ Level (0x0f)
No streams included in root OD iTunes Info:
Encoder Software: tv.sohu.com v3.3.0 Track # Info - TrackID - TimeScale - Duration ::34.920
Media Info: Language "Undetermined" - Type "vide:avc1" - samples
Visual Track layout: x= y= width= height=
MPEG- Config: Visual Stream - ObjectTypeIndication 0x21
AVC/H264 Video - Visual Size x
AVC Info: SPS - PPS - Profile Main @ Level
NAL Unit length bits: yingc@yingc:~/media/video$ MP4Box h.mp4 -hint
Hinting file with Path-MTU Bytes
Hinting track ID - Type "avc1:avc1" (H264) - BW kbps
Hinting track ID - Type "mp4a:mp4a" (mpeg4-generic) - BW kbps
Saving h.mp4: 0.500 secs Interleaving yingc@yingc:~/media/video$ ffprobe h.mp4
ffprobe version 2.2. Copyright (c) - the FFmpeg developers
built on Apr :: with gcc 4.6 (Ubuntu/Linaro 4.6.-1ubuntu5)
configuration: --prefix=/home/yingc/git/thirdparty/av/ffmpeg/output/ffmpeg_build/ --bindir=/home/yingc/git/thirdparty/av/ffmpeg/output/bin --extra-cflags=' -I/home/yingc/git/thirdparty/av/ffmpeg/output/ffmpeg_build/include' --extra-ldflags=-L/home/yingc/git/thirdparty/av/ffmpeg/output/ffmpeg_build/lib --extra-libs=-ldl --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-x11grab --disable-stripping --enable-extra-warnings --disable-optimizations --enable-openssl --enable-static --enable-debug=
libavutil . 66.100 / . 66.100
libavcodec . 52.102 / . 52.102
libavformat . 33.100 / . 33.100
libavdevice . 10.100 / . 10.100
libavfilter . 2.100 / . 2.100
libswscale . 5.102 / . 5.102
libswresample . 18.100 / . 18.100
libpostproc . 3.100 / . 3.100
Input #, mov,mp4,m4a,3gp,3g2,mj2, from 'h.mp4':
Metadata:
major_brand : mp42
minor_version :
compatible_brands: mp42isomavc1
creation_time : -- ::
encoder : tv.sohu.com v3.3.0
Duration: ::35.16, start: 0.000000, bitrate: kb/s
Stream #:(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 640x368, kb/s, fps, tbr, 90k tbn, tbc (default)
Metadata:
creation_time : -- ::
Stream #:(und): Audio: aac (mp4a / 0x6134706D), Hz, stereo, fltp, kb/s (default)
Metadata:
creation_time : -- ::
Stream #:(und): Data: none (rtp / 0x20707472), kb/s (default)
Metadata:
creation_time : -- ::
handler_name : GPAC ISO Hint Handler
Stream #:(und): Data: none (rtp / 0x20707472), kb/s (default)
Metadata:
creation_time : -- ::
handler_name : GPAC ISO Hint Handler
Unsupported codec with id for input stream
Unsupported codec with id for input stream

unhint文件:

yingc@yingc:~/media/video$ MP4Box  h.mp4 -unhint
Removing hint track ID
Removing hint track ID
Saving h.mp4: 0.500 secs Interleaving yingc@yingc:~/media/video$ ffprobe h.mp4
ffprobe version 2.2. Copyright (c) - the FFmpeg developers
built on Apr :: with gcc 4.6 (Ubuntu/Linaro 4.6.-1ubuntu5)
configuration: --prefix=/home/yingc/git/thirdparty/av/ffmpeg/output/ffmpeg_build/ --bindir=/home/yingc/git/thirdparty/av/ffmpeg/output/bin --extra-cflags=' -I/home/yingc/git/thirdparty/av/ffmpeg/output/ffmpeg_build/include' --extra-ldflags=-L/home/yingc/git/thirdparty/av/ffmpeg/output/ffmpeg_build/lib --extra-libs=-ldl --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-x11grab --disable-stripping --enable-extra-warnings --disable-optimizations --enable-openssl --enable-static --enable-debug=
libavutil . 66.100 / . 66.100
libavcodec . 52.102 / . 52.102
libavformat . 33.100 / . 33.100
libavdevice . 10.100 / . 10.100
libavfilter . 2.100 / . 2.100
libswscale . 5.102 / . 5.102
libswresample . 18.100 / . 18.100
libpostproc . 3.100 / . 3.100
Input #, mov,mp4,m4a,3gp,3g2,mj2, from 'h.mp4':
Metadata:
major_brand : mp42
minor_version :
compatible_brands: mp42isomavc1
creation_time : -- ::
encoder : tv.sohu.com v3.3.0
Duration: ::35.02, start: 0.000000, bitrate: kb/s
Stream #:(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 640x368, kb/s, fps, tbr, 90k tbn, tbc (default)
Metadata:
creation_time : -- ::
Stream #:(und): Audio: aac (mp4a / 0x6134706D), Hz, stereo, fltp, kb/s (default)
Metadata:
creation_time : -- ::

参考:

用mp4box来hint文件的操作很简单

Darwin Streaming Server服务器mp4文件点播返回”415 Unsupported Media Type“错误的更多相关文章

  1. request 报错The remote server returned an error: (415) Unsupported Media Type.

    开发时遇到个问题,程序访问数据库数据,给服务器发送请求时,老是报错,返回的错误页面是: HTTP Status 415 - Unsupported Media Type type Status rep ...

  2. System.Net.WebException : The remote server returned an error: (415) UNSUPPORTED MEDIA TYPE

    I am having problems with a bit of code that accesses a restful web service. Running this code, it e ...

  3. (转)CentOS6.5安装Darwin Streaming Server搭建RTSP流媒体服务器

    参考: 1,CentOS6.5安装Darwin Streaming Server搭建RTSP流媒体服务器 http://www.yimiju.com/articles/567.html

  4. Darwin Streaming Server 简介

    Darwin Streaming Server     概要 Darwin Streaming Server简称DSS.DSS是Apple公司提供的开源实时流媒体播放服务器程序.整个程序使用C++编写 ...

  5. Darwin Streaming Server 核心代码分析

    基本概念 首先,我针对的代码是Darwin Streaming Server 6.0.3未经任何改动的版本. Darwin Streaming Server从设计模式上看,采用了Reactor的并发服 ...

  6. Darwin Streaming Server 安裝操作備忘

    Darwin Streaming Server 安裝操作 Darwin Streaming Server是蘋果公司推出的開放源碼.跨平台多媒體串流伺服器, 提供音樂 (mp3) 與影音 (3gp.mp ...

  7. Linux编译安装Darwin Streaming Server 6.0.3

    买回来VPS后就一直想在上面搭建一个流媒体服务,在网上搜索了很多资料,大部分都是介绍Linux中安装Darwin Streaming Server 5.5.5版本,因为这个版本提供了针对linux的安 ...

  8. Darwin Streaming Server Relay Setting

    安装完Darwin Streaming Server,就可以使用VLC通过RTSP协议播放流媒体文件了.但是我现在有一个需求,需要将一台DSS(假设为A机)上的媒体文件发送到另一台DSS(假设为B机) ...

  9. Linux编译安装Darwin Streaming Server 6.0.3。。。

    目前主流的流媒体服务器有微软的windows media server.RealNetworks的Helixserver和苹果公司的Darwin Streaming Server. 微软的window ...

随机推荐

  1. rest模式get,post,put,delete简单讲解

    1.请求方法为get时,会向数据库请求数据,类似于select语言,只能达到查询的效果,不会添加,修改,不会影响资源的内容,无副作用 2.请求方法为post时,该方法,用于向服务器添加数据,可以改变数 ...

  2. Java 之 Web前端(一)

    1.http a.定义:超文本传输协议 b.作用:web服务器与web浏览器之间通信 c.步骤: ①客户端与web服务器建立连接(IP地址与端口号) ②客户端发送http请求(请求资源路径) ③服务器 ...

  3. POJ 1328 安装雷达 (贪心)

    <题目链接> 题目大意: 以x轴为分界,y>0部分为海,y<0部分为陆地,给出一些岛屿坐标(在海中),再给出雷达可达到范围,雷达只可以安在陆地上,问最少多少雷达可以覆盖所以岛屿 ...

  4. snmp 里面oid对应的信息 MIB

    系统参数(1.3.6.1.2.1.1) OID 描述 备注 请求方式 .1.3.6.1.2.1.1.1.0 获取系统基本信息 SysDesc GET .1.3.6.1.2.1.1.3.0 监控时间 s ...

  5. python selenium phantomjs 报错

    报错: webdriver.PhantomJS() raise exception_class(value)selenium.common.exceptions.WebDriverException: ...

  6. Nginx配置以及域名转发

    工程中的nginx配置 #user nobody; worker_processes 24; error_log /home/xxx/opt/nginx/logs/error.log; pid /ho ...

  7. Python接口测试简单框架

    用例设计: 执行用例代码: # -*- coding: UTF-8 -*-import xlrd,logging,urllib,urllib2,json,sysfrom pylsy import py ...

  8. 【Excel】将IP按照IP地址(v4)增长序列排序

    Background: Excel列中,有多个net-block, 将这些net-block按照IP地址(v4)自己的大小从小到大排序. Idea: IPv4地址的格式是点分十进制的,也就是说每一个点 ...

  9. AE视频制作 参考 资源 科幻科技风格 开场 公司企业宣传

    == 人类已经堕落,机器军团大举入侵,开始抹除人类,净化地球!-原创-高清正版视频在线观看–爱奇艺 这个视频片头不错.展示效果和音乐. == 外星人入侵地球,只为收集人类大脑!速看科幻电影<天际 ...

  10. 给有C或C++基础的Python入门 :Python Crash Course 5 if语句

    本章就是Pyhon版的 if语句.原理大家都懂,就不一一说说明了. 值得注意的两点: 1. 在每个if类语句结尾必须加上符号“:”. 2. 注意,在python中是否缩进代表与上一行代码是否有关. 下 ...