diff --git a/C2VDAComponent.cpp b/C2VDAComponent.cpp
index 20ebfb6..e3f9886 100644
--- a/C2VDAComponent.cpp
+++ b/C2VDAComponent.cpp
@@ -115,9 +115,9 @@
     return static_cast<int32_t>(frameIndex.peeku() & 0x3FFFFFFF);
 }
 
-const C2String kH264DecoderName = "c2.v4l2.h264.decoder";
-const C2String kVP8DecoderName = "c2.v4l2.vp8.decoder";
-const C2String kVP9DecoderName = "c2.v4l2.vp9.decoder";
+const C2String kH264DecoderName = "c2.vda.avc.decoder";
+const C2String kVP8DecoderName = "c2.vda.vp8.decoder";
+const C2String kVP9DecoderName = "c2.vda.vp9.decoder";
 
 }  // namespace
 
diff --git a/cmds/codec2.cpp b/cmds/codec2.cpp
index f7cc142..85f94c8 100644
--- a/cmds/codec2.cpp
+++ b/cmds/codec2.cpp
@@ -62,9 +62,9 @@
 
 namespace {
 
-const std::string kH264DecoderName = "c2.v4l2.h264.decoder";
-const std::string kVP8DecoderName = "c2.v4l2.vp8.decoder";
-const std::string kVP9DecoderName = "c2.v4l2.vp9.decoder";
+const std::string kH264DecoderName = "c2.vda.avc.decoder";
+const std::string kVP8DecoderName = "c2.vda.vp8.decoder";
+const std::string kVP9DecoderName = "c2.vda.vp9.decoder";
 
 const int kWidth = 416;
 const int kHeight = 240;  // BigBuckBunny.mp4
diff --git a/tests/C2VDACompIntf_test.cpp b/tests/C2VDACompIntf_test.cpp
index 844c9c1..ace13d2 100644
--- a/tests/C2VDACompIntf_test.cpp
+++ b/tests/C2VDACompIntf_test.cpp
@@ -28,7 +28,7 @@
     return ptr;
 }
 
-const C2String testCompName = "c2.v4l2.h264.decoder";
+const C2String testCompName = "c2.vda.avc.decoder";
 const c2_node_id_t testCompNodeId = 12345;
 
 const char* MEDIA_MIMETYPE_VIDEO_RAW = "video/raw";
diff --git a/tests/C2VDAComponent_test.cpp b/tests/C2VDAComponent_test.cpp
index d24f2a7..efbba6e 100644
--- a/tests/C2VDAComponent_test.cpp
+++ b/tests/C2VDAComponent_test.cpp
@@ -111,18 +111,18 @@
 // - |width| and |height| are for video size (in pixels).
 // - |numFrames| is the number of picture frames.
 // - |numFragments| is the NALU (h264) or frame (VP8/9) count by MediaExtractor.
-const char* gTestVideoData = "bear.mp4:v4l2.h264.decode:640:368:82:84";
-//const char* gTestVideoData = "bear-vp8.webm:v4l2.vp8.decode:640:368:82:82";
-//const char* gTestVideoData = "bear-vp9.webm:v4l2.vp9.decode:320:256:82:82";
+const char* gTestVideoData = "bear.mp4:c2.vda.avc.decoder:640:368:82:84";
+//const char* gTestVideoData = "bear-vp8.webm:c2.vda.vp8.decoder:640:368:82:82";
+//const char* gTestVideoData = "bear-vp9.webm:c2.vda.vp9.decoder:320:256:82:82";
 
 // Record decoded output frames as raw YUV format.
 // The recorded file will be named as "<video_name>_output_<width>x<height>.yuv" under the same
 // folder of input video file.
 bool gRecordOutputYUV = false;
 
-const std::string kH264DecoderName = "c2.v4l2.h264.decoder";
-const std::string kVP8DecoderName = "c2.v4l2.vp8.decoder";
-const std::string kVP9DecoderName = "c2.v4l2.vp9.decoder";
+const std::string kH264DecoderName = "c2.vda.avc.decoder";
+const std::string kVP8DecoderName = "c2.vda.vp8.decoder";
+const std::string kVP9DecoderName = "c2.vda.vp9.decoder";
 
 // Magic constants for indicating the timing of flush being called.
 enum FlushPoint : int { END_OF_STREAM_FLUSH = -3, MID_STREAM_FLUSH = -2, NO_FLUSH = -1 };
