diff --git a/fffw/wrapper/params.py b/fffw/wrapper/params.py
index 11dc74a..a509f88 100644
--- a/fffw/wrapper/params.py
+++ b/fffw/wrapper/params.py
@@ -1,4 +1,4 @@
-from dataclasses import field, dataclass, Field, fields
+from dataclasses import field, dataclass, Field, fields, MISSING
 from typing import Any, Optional, Tuple, cast, List, Callable
 
 
@@ -89,7 +89,7 @@ class Params:
         for f in self._fields:  # type: Field
             key = f.name
             value = getattr(self, key)
-            if f.default == value and f.init:
+            if f.default is not MISSING and f.default == value and f.init:
                 # if field value has default value and is configurable via
                 # __init__, we omit this field
                 continue

diff --git a/tests/test_wrapper.py b/tests/test_wrapper.py
index ba68852..d6e4ea4 100644
--- a/tests/test_wrapper.py
+++ b/tests/test_wrapper.py
@@ -7,8 +7,10 @@ from dataclasses import dataclass
 from typing import List
 from unittest import TestCase, mock
 
+from fffw.graph import TS
 from fffw.wrapper import param
 from fffw.wrapper.base import UniversalLineReader, BaseWrapper
+from fffw.wrapper.params import Params
 
 
 @dataclass
@@ -119,3 +121,20 @@ class UniversalLineReaderTestCase(TestCase):
 
         with self.assertRaises(asyncio.LimitOverrunError):
             self.assert_lines(lines)
+
+
+@dataclass
+class Wrapper(Params):
+    field: TS  # no default and TS instance
+
+
+class ParamsTestCase(TestCase):
+    """ Check command line parameters rendering."""
+
+    def test_as_pairs_if_default_is_missing(self):
+        """
+        Checks that missing default does not checks value for equality with
+        dataclasses.MISSING.
+        """
+        w = Wrapper(TS(42.0))
+        self.assertEqual(w.as_pairs(), [('field', '42.0')])

Incorrect as_pairs behavior if default is not set
```python
  File "/data/encoder/virtualenv/lib/python3.6/site-packages/fffw/wrapper/params.py", line 92, in as_pairs
    if f.default == value and f.init:
  File "/data/encoder/virtualenv/lib/python3.6/site-packages/fffw/graph/meta.py", line 104, in wrapper
    return cast(BinaryOp, func)(self, TS(value))  # noqa
  File "/data/encoder/virtualenv/lib/python3.6/site-packages/fffw/graph/meta.py", line 144, in __new__
    return super().__new__(cls, value)  # type: ignore
TypeError: float() argument must be a string or a number, not '_MISSING_TYPE'
```

There should be a MISSING check

tests/test_wrapper.py::ParamsTestCase::test_as_pairs_if_default_is_missing
tests/test_wrapper.py::WrapperTestCase::test_child_timeout tests/test_wrapper.py::WrapperTestCase::test_run_child_process tests/test_wrapper.py::UniversalLineReaderTestCase::test_buffer_overrun tests/test_wrapper.py::UniversalLineReaderTestCase::test_empty_lines tests/test_wrapper.py::UniversalLineReaderTestCase::test_empty_stream tests/test_wrapper.py::UniversalLineReaderTestCase::test_last_incomplete_line tests/test_wrapper.py::UniversalLineReaderTestCase::test_read_cr tests/test_wrapper.py::UniversalLineReaderTestCase::test_read_crlf tests/test_wrapper.py::UniversalLineReaderTestCase::test_read_lf