diff --git a/src/video/device.cpp b/src/video/device.cpp
index d3634433e93a47bdc70a69b1085f1de41059d65e..2e48d2be625b39beb5566dd92984ada3d5c53b1e 100644
--- a/src/video/device.cpp
+++ b/src/video/device.cpp
@@ -69,11 +69,11 @@ d_ptr(new VideoDevicePrivate(this))
             }
          }
 
-         // Sort rates in increasing order.
+         // Sort rates in decreasing order.
          qSort(res->d_ptr->m_lValidRates.begin(),
          res->d_ptr->m_lValidRates.end(),
          [](Video::Rate* rateA, Video::Rate* rateB) {
-             return rateA->name().toInt() > rateB->name().toInt();
+             return rateA->name().toInt() < rateB->name().toInt();
          });
       }
 
@@ -199,7 +199,6 @@ Video::Channel* Video::Device::activeChannel() const
    return d_ptr->m_pCurrentChannel;
 }
 
-
 void VideoDevicePrivate::saveIdle()
 {
    m_RequireSave = false;