summaryrefslogtreecommitdiffstats
path: root/libhb/muxavformat.c
Commit message (Collapse)AuthorAgeFilesLines
* Add SSA subtitle importJohn Stebbins2019-01-141-1/+2
|
* Update copyright dates to 2019.Bradley Sepos2019-01-011-1/+1
|
* Add VideoToolbox hardware encoding thru FFmpeg.Damiano Galassi2018-11-151-0/+2
|
* muxavformat: fix error messagesJohn Stebbins2018-11-141-4/+4
|
* encavcodec: fix passing extradata to muxerJohn Stebbins2018-11-141-12/+64
| | | | | | The extradata handling hasn't changed since 0.7 when we only used encavcodec for mpeg4 encoding. It was not designed to handle the additional codecs we are encoding now.
* Add NVEnc encoder. (Round 3) (#1437)Scott2018-06-291-0/+2
| | | | | | Adding the Nvidia NVEnc H.264 and H.265 encoders. Based on Initial work by sgothel --enable-nvenc is the new compile time configure option to enable for builds.
* muxavformat: silence mp4 frame size warningJohn Stebbins2018-06-151-0/+1
| | | | Set samples per frame for audio tracks
* muxavformat: use alternate API to initialize out contextJohn Stebbins2018-06-151-12/+5
| | | | | | avformat_alloc_output_context2 does several things for us that we were doing in separate steps. It also allocates AVFormatContext.url for us so we do not have a case where we alloc something that ffmpeg frees.
* muxavformat: fix crash on windowsJohn Stebbins2018-06-151-1/+1
| | | | | | We allocate AVFormatContext.url, but libavformat frees it. So we must use an allocation function that is compatible with the free function used by libavformat.
* muxavformat: fix use of deprecated AVFormat.filenameJohn Stebbins2018-06-131-1/+1
| | | | | | The new way is AVFormat.url. AVFormat.filename had lenght limitations that url does not since it is allocated by the caller (and freed by libavformat).
* muxavformat: Fix muxing SSA subtitlesJohn Stebbins2018-06-091-35/+0
| | | | | | ffmpeg expect SSA packets in matroska format. Fixes https://github.com/HandBrake/HandBrake/issues/1379
* Add support for VCE hardware encoding.Michael Wootton2018-06-061-0/+2
|
* contrib: Use AV_CODEC_ID_ASS for FFmpeg.Bradley Sepos2018-05-281-2/+2
|
* FFMPEG #974: Use latest FFMPEG 3.4.1 (1/2)Sven Gothel2018-05-281-0/+2
| | | | | | | | Patch 1/2 for https://github.com/HandBrake/HandBrake/issues/974 moving to FFMPEG 3.4.1 from LIBAV 12.2. The re-ordering of to be linked modules was required to solve statically linked dependencies. See libhb/module.defs etc.
* Missed typo in previous commitluz.paz2018-02-201-1/+1
|
* please review....luz.paz2018-02-201-2/+2
| | | there is a redundant 'the the' in this string, please advise
* Update copyright dates to 2018.Bradley Sepos2018-01-011-1/+1
|
* add sdtp (sample dependency) box to mp4 (#1006)John Stebbins2017-11-281-0/+4
| | | | | * add sdtp (sample dependency) box to mp4 The AppleTV 4K requires this box in order to play 2160p60 video.
* Add adaptive streaming support (#972)John Stebbins2017-11-091-1/+16
| | | | | | | "Adaptive streaming" allows changing video parameters mid-stream at IDR boundaries. Such changes require new SPS and PPS NALs at the IDR. MP4 supports this with 'avc3' and 'hev1' sample entry types.
* tx3g: make font size scale with video heightJohn Stebbins2017-11-031-5/+17
| | | Fixes https://forum.handbrake.fr/viewtopic.php?f=5&t=37034
* fix use of deprecated libav definesJohn Stebbins2017-07-061-14/+14
| | | | Fixes https://github.com/HandBrake/HandBrake/issues/815
* muxavformat: override h.265 'hev1' with 'hvc1' (#782)John Stebbins2017-06-141-1/+2
| | | This provides compatibility with apple software
* qsv: added HEVC 10-bit as encoder, should help for GUI integrationmaxd2017-03-051-0/+1
|
* muxavformat: Inform muxer of encoder delayJohn Stebbins2017-02-151-0/+2
| | | | | | | initial_padding is used to inform libav muxers of initial encoder delay duration. When set for mkv it can be used to remove the silence samples during playback since the delay value gets stored in the mkv CodecDelay element.
* mux: revert shift timestamps by largest encoder delayJohn Stebbins2017-02-141-35/+0
| | | | | | | | Ugh! I need a brain transplant! This would have cause a properly functioning player to insert silence at the start of playback that wasn't in the original source. reverts 5429a92c51682240acbbe7b150d314d993d7d3a0
* mux: shift timestamps by largest encoder delayJohn Stebbins2017-02-141-0/+34
| | | | | This prevents libav from adding an mp4 edit list entry that causes a properly functioning player to drop the first couple of audio frames.
* Update copyright dates to 2017.Bradley Sepos2017-01-011-1/+1
|
* muxavformat: fix use of deprecated libav interfacesJohn Stebbins2016-12-171-90/+106
| | | | | AVStream.codec is deprecated, use AVStream.codecpar av_bitstream_filter is deprecated, use av_bsf
* libhb: rename some masks to better reflect their purpose.Tim Walker2016-09-171-1/+1
|
* libhb: use the new keyframe flag.Tim Walker2016-09-171-4/+5
|
* contrib: Add opus audio encoder.John Stebbins2016-09-021-0/+17
| | | | | | | | | | Remove: hb_audio_samplerate_get_best() Add: hb_audio_samplerate_is_supported() hb_audio_samplerate_find_closest() hb_audio_samplerate_get_sr_shift()
* enable libvpx VP9 encoderJohn Stebbins2016-05-271-0/+6
|
* libhb: send initial chapter through pipelineJohn Stebbins2016-05-171-25/+29
| | | | | Eliminate the need for everyone to assume that the first chapter starts at the first frame.
* muxavformat: fix last subtitle persistence in mp4John Stebbins2016-05-171-0/+22
| | | | | | libav doesn't seems to honor the duration of the subtitle AVPacket. It is required to send an "empty" subtitle packet to terminate all subtitles, including the last one.
* mux: eliminate 2048 byte size limit of SSA subtitlesJohn Stebbins2016-05-081-27/+45
|
* muxavformat: fix mp4 subtitle empty packet durationJohn Stebbins2016-04-141-1/+1
|
* muxavformat: fix muxer interleaving in mkvJohn Stebbins2016-03-271-3/+5
|
* muxavformat: fix sync issue when bframes are enabledJohn Stebbins2016-03-231-19/+16
| | | | | | | libav does not permit negative dts when muxing to mkv even though it does not use dts when writing mkv. When it sees an initial negative dts, it offsets all dts and pts to make it positive. This breaks A/V sync and chapter start times.
* libhb: fix buffer over-reads by libav get_bits()John Stebbins2016-03-061-16/+20
|
* Update copyright dates to 2016.Bradley Sepos2016-01-011-1/+1
|
* x265: add support for 10, 12, and 16 bit x265 libsJohn Stebbins2015-11-121-1/+4
| | | | | automatically pull in shared versions of these libs or allow statically building against any one of them.
* x264: add multilib support (a.k.a. 10-bit)John Stebbins2015-11-121-1/+2
| | | | | This adds the structure to load an libx264 10-bit shared library. The user must install this library themselves to an appropriate place.
* muxavformat: add support for mp4 fallback audio signallingJohn Stebbins2015-11-091-1/+51
|
* libhb: make muxer, sync, and reader behave like other work objectsJohn Stebbins2015-11-091-10/+1
| | | | | | | | | | | | | simplify job initialization sequence, clean up code, and document dependencies in the sequence better. Make hb_add set job->sequence_id. It is no longer necessary for the frontend to do this. If the frontend needs the sequence_id, it is returned by hb_add(). Clean up use of interjob. do_job() now uses sequence_id to detect when a new sequence of related jobs is running and automatically clears interjob.
* qsv: HEVC encoding support.Tim Walker2015-09-201-0/+2
|
* libhb: Clock/frame rate handling improvements.Bradley Sepos2015-09-101-3/+6
| | | | | | | | Allows for arbitrary frame rates between 1 and 1000 fps. Adds min/max frame rates to CLI help. Removes hardcoded instances of the internal clock rate in favor of hb_video_framerate_get_limits(). Unfortunately, much of the codebase generally refers to clock rate as frame rate, so a little extra care is still necessary going forward.
* muxavformat: add "creation_time" metadatajstebbins2015-03-151-0/+5
| | | | | | | Tags mp4 files with current time. This was previously done by mp4v2 for us. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6991 b64f7644-9d1e-0410-96f1-a4d463321fa5
* json: automatically scan title when processing json jobsjstebbins2015-03-071-1/+1
| | | | | | | | | | | | | | | Simplifies the WinGui. This also changes how jobs are processed. Creating the sub-jobs for multiple passes is delayed until after scanning and immediately before running the job. Working status has also changed. Sub-job passes are identified in status with an ID that allows the frontend to definitively identify what pass is in progress. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6976 b64f7644-9d1e-0410-96f1-a4d463321fa5
* muxavformat: only set subtitle "forced" flag when *user* sets default trackjstebbins2015-02-251-3/+6
| | | | | | | | Forced shouldn't be set when hb chooses a default track for mp4, which we do for quicktime compatibility. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6944 b64f7644-9d1e-0410-96f1-a4d463321fa5
* mkv: mark "default" subtitle tracks with both default and forced flagsjstebbins2015-02-241-1/+2
| | | | | | | Makes "default" do the right thing in plex git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6941 b64f7644-9d1e-0410-96f1-a4d463321fa5