I'm starting to read about smooth vector bundles. My notes suggest that instead of giving a local trivialisation at each point, it is sufficient to give a local frame.
I can see that given a rank $r$ vector bundle $(E, \pi)$ over $M$ and a local frame $\{s_i: 1 \leq i \leq r\}$ for $E$ over $U \subseteq M$, we can define a local trivialisation $t$ by setting for $v_q \in E_q = \pi^{-1}(q)$, $$t(v_q) = (q, \alpha_1, \dots, \alpha_r) \label{eq}\tag{1}$$ where $v_q = \sum_{i=1}^r \alpha_i s_i(q)$. The only non-trivial part of seeing that $t$ is really a trivialisation is seeing that it is smooth. An argument for this assuming that $(E, \pi)$ already has the structure of a vector bundle is given here.
My understanding of what is written in my notes suggests that this is also true without assuming that $(E, \pi)$ is already a vector bundle. That is, we should have something like
Proposition: Let $\pi:E \to M$ be a smooth map of manifolds such that for each $p \in M$, $E_p = \pi^{-1}(p)$ is an $r$-dimensional vector space. Suppose further that for each $p \in M$, there is an open neighbourhood $U$ of $p$ and a smooth frame $s_1, \dots, s_r: U \to E$. Then $(1)$ defines a trivialisation of $E$ over $U$. In particular, $E$ is a rank $r$ vector bundle over $M$.
It is clear that we can use the argument given in the linked question as long as for each $p \in M$, $E_p$ is contained in an open subset of $E$ that is diffeomorphic to $U \times \mathbb{R}^r$ where $U$ is an open neighbourhood of $p$ in $M$ (by looking at a suitable restriction of a local frame at $p$). However it is not clear to me that such a subset of $E$ should exist without assuming that some trivialisation already exists.
I'd like to know if my proposition is true and if so how this attempt at a proof may be fixed (or if there is some entirely different argument that works).