--
You received this message because you are subscribed to the Google Groups "Codec Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to codec-devel...@webmproject.org.
To post to this group, send email to codec...@webmproject.org.
Visit this group at https://groups.google.com/a/webmproject.org/group/codec-devel/.
For more options, visit https://groups.google.com/a/webmproject.org/d/optout.
still does not work, i also observed something weird, not sure if my system's issue.the command that i used:$ ./vpx_temporal_svc_encoder 1080p_parkjoy_100frames.yuv output.map.vp9 vp9 1920 1080 1 30 9 0 0 1 0 250000
the first thing i observed weird is that:each frame is handled in second, but when I tried yesterday with 2d403737b88f76ce8410237a8eb682cc556ac302, it took ~1 minute to handle each frame. I tried both ROI_MAP with 1 and 0.
the second thing is that:after output.map.vp9_0.ivf is dumped, i tried to play it with ffplay on linux. The first several frames played as normal, then, no frame change on the screen for minutes, and then see the last several frames.
On Wed, Feb 27, 2019 at 12:58 AM <yeju...@intel.com> wrote:still does not work, i also observed something weird, not sure if my system's issue.the command that i used:$ ./vpx_temporal_svc_encoder 1080p_parkjoy_100frames.yuv output.map.vp9 vp9 1920 1080 1 30 9 0 0 1 0 250000I used the park joy clip[1] and encoded with ROI_MAP 1 and I can see the segment ID in analyzer.Could you please let me know your observations? 250000Kbps is very high bitrate and it may be a bit difficult to see the difference.It'll be easier if you use 2500Kbps for target bitrate.
the first thing i observed weird is that:each frame is handled in second, but when I tried yesterday with 2d403737b88f76ce8410237a8eb682cc556ac302, it took ~1 minute to handle each frame. I tried both ROI_MAP with 1 and 0.You were trying with speed 10 which is not supported by VP9.
the second thing is that:after output.map.vp9_0.ivf is dumped, i tried to play it with ffplay on linux. The first several frames played as normal, then, no frame change on the screen for minutes, and then see the last several frames.I tried ffplay and I also had same problem as you.I decoded with vpxdec:vpxdec --i420 output.map.vp9_0.ivf -o out_roi.yuvand out_roi.yuv can be played without problems.
And the Intel analyzer can decode the bitstream.So I don't think it's libvpx issue. It might be ffplay's problem.
On Thursday, February 28, 2019 at 3:21:43 AM UTC+8, Jerome Jiang wrote:On Wed, Feb 27, 2019 at 12:58 AM <yeju...@intel.com> wrote:still does not work, i also observed something weird, not sure if my system's issue.the command that i used:$ ./vpx_temporal_svc_encoder 1080p_parkjoy_100frames.yuv output.map.vp9 vp9 1920 1080 1 30 9 0 0 1 0 250000I used the park joy clip[1] and encoded with ROI_MAP 1 and I can see the segment ID in analyzer.Could you please let me know your observations? 250000Kbps is very high bitrate and it may be a bit difficult to see the difference.It'll be easier if you use 2500Kbps for target bitrate.thanks, i'v described my observations below :). Just thought bitrate in bps, not Kbps, will change.
the first thing i observed weird is that:each frame is handled in second, but when I tried yesterday with 2d403737b88f76ce8410237a8eb682cc556ac302, it took ~1 minute to handle each frame. I tried both ROI_MAP with 1 and 0.You were trying with speed 10 which is not supported by VP9.possible to add a check and report the issue if some one uses the invalid value?
the second thing is that:after output.map.vp9_0.ivf is dumped, i tried to play it with ffplay on linux. The first several frames played as normal, then, no frame change on the screen for minutes, and then see the last several frames.I tried ffplay and I also had same problem as you.I decoded with vpxdec:vpxdec --i420 output.map.vp9_0.ivf -o out_roi.yuvand out_roi.yuv can be played without problems.yes, this way works pretty well.And the Intel analyzer can decode the bitstream.So I don't think it's libvpx issue. It might be ffplay's problem.I found that your patch has been pushed, and so tried with latest libvpx code with 503cb8e63a06ab62ca814bcf79ef9971bdaa745a, but still do not see the quality change with my eyes after changing ROI_MAP=1here are my commands used:$ ./examples/vpx_temporal_svc_encoder /work/media/ffmpeg/video/1080p_parkjoy_100frames.yuv output.map.vp9 vp9 1920 1080 1 30 9 0 0 1 0 2500$ ./vpxdec --i420 output.map.vp9_0.ivf -o out_roi.yuv$ /work/media/ffmpeg/build_vpxroi/ffplay -s 1920x1080 -i out_roi.yuv
i checked again, and yes it works, thanks.i have another two questions fro vp9, thanks.1. it works only if aq_mode is 0?I saw this line: vpx_codec_control(&codec, VP9E_SET_AQ_MODE, 0);i tried other values and found it works with a little quality change (and less bitrate change), but the result is not as clear as value 0.looks that my code should be like below, do you have any comment? thanks.if (aq_mode != 0) {//output an warning for the result}//set the roi map ...
2. how to choose ref_frame?there is code:memset(roi->ref_frame, -1, sizeof(roi->ref_frame));roi->ref_frame[1] = 1;does this mean that the recommendation is roi->ref_frame[i] should be always 1, and the rest ref_frame should be -1?(suppose i is the segment index that is set in roi_map)
Hi,I've been following the thread and thank you for all the discussion posted, it's very informative and helpful in my explorations.I have related two questions:-- can someone point me to where I can read up more on ROI in VP9?
-- according to the source code, I see that for ROI to work, it has to be set up on the encoder side, is there a way to have encoder to produce (possibly using SVC) a stream where ROI selection happens on the decoder side (for example, for the area that falls outside ROI decoder gets only base layer, while for ROI -- all the enhancement layers too)?
On Tue, Mar 5, 2019 at 6:12 PM <yeju...@intel.com> wrote:i checked again, and yes it works, thanks.i have another two questions fro vp9, thanks.1. it works only if aq_mode is 0?I saw this line: vpx_codec_control(&codec, VP9E_SET_AQ_MODE, 0);i tried other values and found it works with a little quality change (and less bitrate change), but the result is not as clear as value 0.looks that my code should be like below, do you have any comment? thanks.if (aq_mode != 0) {//output an warning for the result}//set the roi map ...AQ mode also uses segmentation to boost QP for part of the frame. However, in current implementation, AQ mode always uses segment 1 and 2 (the first 2).Also we give AQ mode higher priority over segmentation:We only apply ROI map when none of AQ mode is on.
2. how to choose ref_frame?there is code:memset(roi->ref_frame, -1, sizeof(roi->ref_frame));roi->ref_frame[1] = 1;does this mean that the recommendation is roi->ref_frame[i] should be always 1, and the rest ref_frame should be -1?(suppose i is the segment index that is set in roi_map)Setting ref_frame in ROI to 1 means forcing using last frame as reference frame.However, in VP9 real-time mode, last frame and golden frame are both used as reference.
And, is there a plan for the next libvpx release? I'm afraid i have to do version check for the ffmpeg+vp9 roi path.