Difference between revisions of "SoC 2010/Audio on x264"

From VideoLAN Wiki
Jump to navigation Jump to search
(Undo revision 19205 by Dlarkin (Talk))
 
Line 3: Line 3:
 
== Abstract ==
 
== Abstract ==
  
    Using trellis optimization for motion estimation promises considerable savings while encoding motion vectors; however, if not done carefully, it can be very expensive. I have coded a vastly simplified standalone prototype. Currently, it uses precomputed SAD values to perform single-row optimization over (SAD + BITS_MVD) cost.  The final product will differ in a few respects.
+
Implement an audio filtering system that allows transcoding of audio with resampling, sample format conversion and channel remixing.
    To improve results, we will consider optimizing over an entire frame, using alternating row and column iterations. This can be potentially very slow, especially since optimizing over columns may conflict with the current threading model.
+
 
    Furthermore, the cost function will need to be determined. A full RDO-cost function may be more expensive to evaluate than we want, especially if we can develop a suitable heuristic.
+
This is meant to be used for using with the soon-to-be-merged video filtering system for doing transcoding using only x264.
    Lastly, concerns of efficiency. The simplest ways to improve performance draw on techniques already used in x264 for motion estimation. Rather than aiming for full convergence, we can limit the maximum number of iterations. In the cases where we are already near a local minimum, we can enact early termination. We can also practice early termination in the partial sense - identify static prefixes to reduce trellis depth on the fly.
+
Is also a prerequisite for the planned --device option that will automatically downscale the video if needed, set the appropriate H.264 level options and transcode to the appropriate audio codec.
 +
 
 +
== Milestones ==
 +
 
 +
This list is preliminary.
 +
 
 +
{| class="wikitable"
 +
! Status !! Deadline !! Description
 +
|-
 +
| - || May 30 || Basic audio transcoding working
 +
|-
 +
| - || June 6 || Integrate the audio framework into x264
 +
|-
 +
| - || June 6 || Modify a muxer in x264 to support audio (most likely flv)
 +
|-
 +
| - || - || Implement the essential filters
 +
|-
 +
| - || - || Make the system automatically insert filters if needed for the target codec
 +
|-
 +
|}
 +
 
 +
== Repository ==
 +
 
 +
* http://github.com/Kovensky/x264-audio/tree/audio_new

Latest revision as of 17:48, 19 May 2011

This project is part of Google Summer of Code 2010.
Student: Diogo Franco
Mentor: Jason Garret-Glaser

Abstract

Implement an audio filtering system that allows transcoding of audio with resampling, sample format conversion and channel remixing.

This is meant to be used for using with the soon-to-be-merged video filtering system for doing transcoding using only x264. Is also a prerequisite for the planned --device option that will automatically downscale the video if needed, set the appropriate H.264 level options and transcode to the appropriate audio codec.

Milestones

This list is preliminary.

Status Deadline Description
- May 30 Basic audio transcoding working
- June 6 Integrate the audio framework into x264
- June 6 Modify a muxer in x264 to support audio (most likely flv)
- - Implement the essential filters
- - Make the system automatically insert filters if needed for the target codec

Repository