Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
New Contributor I
11 Views

Can I use Intel's Media SDK to wrap a h264 packet within a mp4 container?

Jump to solution

At the moment, I am using the Media SDK to convert YUV frames individually coming into my program into a h264 stream.

I would like to wrap those h264 packets in an mp4 (or mkv would be acceptable) and stream them out.

So, can Intel's Media SDK handle that?

0 Kudos

Accepted Solutions
Highlighted
Employee
11 Views

Hi Matthew,

that question has many answers :)

There are many possible ways to package H.264 stream into containers. See below for some options:

1. Media SDK 2014 introduced a new muxing/demuxing API (which utilizes ffmpeg/libav). The benefits of using this API is that it is tightly integrated with the SDK. However, the feature set of this muxer API is limited. 

2. Use open source project such as ffmpeg/libav for muxing as illustrated in the Media SDK tutorial samples: http://software.intel.com/en-us/articles/intel-media-sdk-tutorial 

3. Integrate with any third party commercial muxing solution

4. Assuming you are using Windows: Use higher level framework such as DirectShow or Media Foundation. Many external muxing component options are available.

 

Regarding network streaming. This is out of scope of the Intel Media SDK, but there are multiple third party solutions you can utilize to achieve this. You can also use ffmpeg for network streaming as illustrated in the "very simplistic" ffmpeg integration sample part of the Media SDK tutorial.

Regards,
Petter

View solution in original post

0 Kudos
3 Replies
Highlighted
Employee
12 Views

Hi Matthew,

that question has many answers :)

There are many possible ways to package H.264 stream into containers. See below for some options:

1. Media SDK 2014 introduced a new muxing/demuxing API (which utilizes ffmpeg/libav). The benefits of using this API is that it is tightly integrated with the SDK. However, the feature set of this muxer API is limited. 

2. Use open source project such as ffmpeg/libav for muxing as illustrated in the Media SDK tutorial samples: http://software.intel.com/en-us/articles/intel-media-sdk-tutorial 

3. Integrate with any third party commercial muxing solution

4. Assuming you are using Windows: Use higher level framework such as DirectShow or Media Foundation. Many external muxing component options are available.

 

Regarding network streaming. This is out of scope of the Intel Media SDK, but there are multiple third party solutions you can utilize to achieve this. You can also use ffmpeg for network streaming as illustrated in the "very simplistic" ffmpeg integration sample part of the Media SDK tutorial.

Regards,
Petter

View solution in original post

0 Kudos
Highlighted
New Contributor I
11 Views

Could you tell me, where is that 'very simplistic' ffmpeg integration example that demonstrates network streaming?

I don't see it here: http://software.intel.com/en-us/articles/media-sdk-tutorial-tutorial-samples-index

Thank you.

0 Kudos
Highlighted
11 Views

It is in the Media SDK tutorials package.  See "simple_6_transcode_opaque - async - ffmpeg".  If you output to UDP you can play with ffplay or VLC.  Other products can read the UDP output and translate to a wider range of streaming formats.

0 Kudos