- 25 May, 2023 19 commits
-
-
yuanhecai authored
This patch supports the use of the "checkasm --bench" testing feature on loongarch platform. Change-Id: I42790388d057c9ade0dfa38a19d9c1fd44ca0bc3 Reviewed-by:
Shiyou Yin <yinshiyou-hf@loongson.cn> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
Jin Bo authored
yuv420_rgb24_lsx yuv420_bgr24_lsx yuv420_rgba32_lsx yuv420_argb32_lsx yuv420_bgra32_lsx yuv420_abgr32_lsx ./configure --disable-lasx ffmpeg -i ~/media/1_h264_1080p_30fps_3Mbps.mp4 -f rawvideo -pix_fmt rgb24 -y /dev/null -an before: 184fps after: 207fps Reviewed-by:
Shiyou Yin <yinshiyou-hf@loongson.cn> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
Lu Wang authored
./configure --disable-lasx ffmpeg -i ~/media/1_h264_1080p_30fps_3Mbps.mp4 -f rawvideo -s 640x480 -pix_fmt bgra -y /dev/null -an before: 91fps after: 160fps Reviewed-by:
Shiyou Yin <yinshiyou-hf@loongson.cn> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
yuanhecai authored
./configure --disable-lasx ffmpeg -i 1_h264_1080p_30fps_3Mbps.mp4 -f rawvideo -y /dev/null -an before: 214fps after: 274fps Reviewed-by:
Shiyou Yin <yinshiyou-hf@loongson.cn> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
Lu Wang authored
./configure --disable-lasx ffmpeg -i 1_h264_1080p_30fps_3Mbps.mp4 -f rawvideo -y /dev/null -an before: 199fps after: 214fps Reviewed-by:
Shiyou Yin <yinshiyou-hf@loongson.cn> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
Hao Chen authored
Replaced function(LSX is sufficient for these functions): ff_h264_v_lpf_chroma_8_lasx ff_h264_h_lpf_chroma_8_lasx ff_h264_v_lpf_chroma_intra_8_lasx ff_h264_h_lpf_chroma_intra_8_lasx ff_weight_h264_pixels4_8_lasx ff_biweight_h264_pixels4_8_lasx ./configure --disable-lasx ffmpeg -i 1_h264_1080p_30fps_3Mbps.mp4 -f rawvideo -y /dev/null -an before: 161fps after: 199fps Reviewed-by:
Shiyou Yin <yinshiyou-hf@loongson.cn> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
Shiyou Yin authored
loongson_asm.S is LoongArch asm optimization helper. Add functions: ff_h264_idct_add_8_lsx ff_h264_idct8_add_8_lsx ff_h264_idct_dc_add_8_lsx ff_h264_idct8_dc_add_8_lsx ff_h264_idct_add16_8_lsx ff_h264_idct8_add4_8_lsx ff_h264_idct_add8_8_lsx ff_h264_idct_add8_422_8_lsx ff_h264_idct_add16_intra_8_lsx ff_h264_luma_dc_dequant_idct_8_lsx Replaced function(LSX is sufficient for these functions): ff_h264_idct_add_lasx ff_h264_idct4x4_addblk_dc_lasx ff_h264_idct_add16_lasx ff_h264_idct8_add4_lasx ff_h264_idct_add8_lasx ff_h264_idct_add8_422_lasx ff_h264_idct_add16_intra_lasx ff_h264_deq_idct_luma_dc_lasx Renamed functions: ff_h264_idct8_addblk_lasx ==> ff_h264_idct8_add_8_lasx ff_h264_idct8_dc_addblk_lasx ==> ff_h264_idct8_dc_add_8_lasx ./configure --disable-lasx ffmpeg -i 1_h264_1080p_30fps_3Mbps.mp4 -f rawvideo -y /dev/null -an before: 155fps after: 161fps Reviewed-by:
Shiyou Yin <yinshiyou-hf@loongson.cn> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
Paul B Mahol authored
This also signals EOF to filter inlink so that unnecessary extra processing that is immediately dropped by this filter is not done any more.
-
Paul B Mahol authored
Update fate test, more correct as last packet is not truncated.
-
Paul B Mahol authored
-
Paul B Mahol authored
-
James Almer authored
This removes the overhead of inserting the av1_frame_split bsf as part of the decoding process. Signed-off-by:
James Almer <jamrial@gmail.com>
-
Gyan Doshi authored
-
Zhao Zhili authored
So CJK can be wrapped automatically. Signed-off-by:
Zhao Zhili <zhilizhao@tencent.com>
-
Haihao Xiang authored
Signed-off-by:
Haihao Xiang <haihao.xiang@intel.com>
-
Haihao Xiang authored
Intel MediaSDK and oneVPL expect continuous allocation for data[i], however there are mandatory padding bytes between data[i] and data[i+1]. when calling av_frame_get_buffer. This patch removes all extra padding bytes. Signed-off-by:
Haihao Xiang <haihao.xiang@intel.com>
-
Haihao Xiang authored
The data copy is unnecessary for packed formats when frame width and height are aligned For example: $ ffmpeg -f lavfi -i testsrc=size=1920x1088 -vf "format=yuyv422" -c:v hevc_qsv -f null - Signed-off-by:
Haihao Xiang <haihao.xiang@intel.com>
-
Haihao Xiang authored
Signed-off-by:
Haihao Xiang <haihao.xiang@intel.com>
-
Haihao Xiang authored
The mfx implementation based on D3D11 is expected for an internal session on Windows, however sometimes this implemntation is not supported [1]. A fallback to the default mfx implementation is added in this patch. [1] https://github.com/intel/cartwheel-ffmpeg/issues/246Signed-off-by:
Haihao Xiang <haihao.xiang@intel.com>
-
- 24 May, 2023 1 commit
-
-
Niklas Haas authored
mix->timestamps is expressed relative to the source timebase, which is possibly a different timescale from `base_pts`. We can't mix-and-match here. The only reason this worked in my previous testing was because I was testing on a source file which had an exactly matching timebase. Fix it by always using the exact PTS as tagged on the AVFrame.
-
- 23 May, 2023 3 commits
-
-
Niklas Haas authored
To eliminate need for forward declaration
-
Niklas Haas authored
Failure to do so led to the update s->hooks never getting correctly propagated to the render params.
-
Anton Khirnov authored
Makes the test bitexact on non-x86_64.
-
- 22 May, 2023 17 commits
-
-
James Almer authored
Fixes decoding packets containing split temporal units, as generated for example by the av1_frame_split bsf. Signed-off-by:
James Almer <jamrial@gmail.com>
-
Paul B Mahol authored
-
Marvin Scholz authored
When no drawing is to be performed, tpad can work fine with hardware frames, so advertise this in the query_formats callback and ensure the drawing context is never initialised when just cloning frames. Reviewed-by:
Thilo Borgmann <thilo.borgmann@mail.de> Reviewed-by:
Niklas Haas <git@haasn.dev>
-
Marvin Scholz authored
Reviewed-by:
Thilo Borgmann <thilo.borgmann@mail.de> Reviewed-by:
Niklas Haas <git@haasn.dev>
-
Anton Khirnov authored
This function does not do any decoding anymore.
-
Anton Khirnov authored
The former function is now trivial - it has 3 lines and cannot fail.
-
Anton Khirnov authored
-
Anton Khirnov authored
Not only is this easier to read, this also makes the code shorter.
-
Anton Khirnov authored
-
Anton Khirnov authored
It currently emulates the long-removed avcodec_decode_audio4/avcodec_decode_video2 APIs, which obfuscates the actual decoding flow. Restructure the decoding calls so that they naturally follow the new avcodec_send_packet()/avcodec_receive_frame() design. This is not only significantly easier to read, but also shorter.
-
Anton Khirnov authored
It is currently handled in the same loop as audio and video, but this obscures the actual flow, because only one iteration is ever performed for subtitles. Also, avoid a pointless packet reference.
-
Anton Khirnov authored
-
Anton Khirnov authored
process_input_packet() contains two non-interacting pieces of nontrivial size and complexity - decoding and streamcopy. Separating them makes the code easier to read.
-
Anton Khirnov authored
New placement requires fewer explicit conditions and is easier to understand. The logic should be exactly equivalent, since this is the only place where eof_reached is set for decoding.
-
Anton Khirnov authored
Replace the decode_error_stat global with a per-input-stream variable. Also, print an error message when the error rate is exceeded.
-
Anton Khirnov authored
Passing ist=NULL is currently used to identify stream types that do not decode into AVFrames, i.e. subtitles. That is highly non-obvious - always pass a non-NULL InputStream and just check the type explicitly.
-
Anton Khirnov authored
This cannot be reached, because initialization will fail if decoding is requested for a stream but no decoder can be found.
-